{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Steady Level Flight" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The discipline of Aircraft Flight Mechanics requires the formulation of relationships between aircraft forces, and aircraft motion. In order to define *motion*, it was necessary to define the different airspeeds in the preceding section.\n", "\n", "Aircraft have six degrees of freedom - three translational ($x, y, z$), and three rotational ($\\phi, \\theta, \\psi$), and in order to develop the expressions describing aircraft flight, *nine* coupled equations are required. This course will get to that point, and those equations will derived and utilised - but before that, some really handy relationships can be defined for flight constrained to a single direction.\n", "\n", "The simplest flight regime is best to start with, which is steady, level (meaning no change in altitude) flight.\n", "\n", "```{admonition} A word about SLUF... \n", ":class: dropdown \n", "\n", "Sometimes you may see this flight regime caled SLUF, standing for **S**teady **L**evel **U**naccellerated **F**light. I don't particularly like this acronym as:\n", "- Steady *means* unaccelerated, so it's tautologous\n", "- There's another, arguably better [definition for SLUF](https://en.wiktionary.org/wiki/SLUF)\n", "\n", "```\n", "\n", "\n", "Let's explore what this regime means, and the assumptions we make\n", "\n", "- We assume that the aircraft is a **point mass**, whereby we assume that the aircraft dimensions are negligible when compared to the dimensions of motion.\n", "\n", "- **Steady** flight means no acceleration, so we can infer from Newton's first law that the sum of forces acting on the aircraft is zero $\\sum\\vec{F}=0$ . This is the **equilibrium steady flight condition**.\n", "\n", "The definition of forces on the aircraft can change depending on the purpose - and it is only be convention that we define lift and drag in the directions we do.\n", "\n", "The semantics notwithstanding, it is traditional to define four mutually-orthogonal forces - see {ref}`CruiseForces`. \n", "- Two aerodynamic; **lift and drag**. \n", "- One propulsive; **thrust**. \n", "- One inertial; **weight**.\n", "\n", "```{figure} ../Images/CruiseForces.png\n", "---\n", "height: 300px\n", "name: CruiseForces\n", "---\n", "Equilibrium Forces\n", "```\n", "\n", "For this regime, it is further assumed that the aerodynamic incidence is small, and that the thrust offset is negligible. Therefore we assume that lift and weight are *perpendicular* to aircraft motion, and that thrust and drag are parallel to aircraft motion." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Vertical Forces\n", "\n", "Looking at the vertical forces, $\\sum F_z =0$, therefore $L=W$:\n", "\n", "$$C_L = \\frac{L}{\\tfrac{1}{2}\\rho V^2S}$$\n", " \n", "$$ = \\frac{W}{\\tfrac{1}{2}\\rho V^2S}$$\n", " \n", "rearranging to find flight speed:\n", "\n", "```{math}\n", ":label: ACSpeedEquation\n", "V = \\sqrt{\\frac{\\frac{W}{S}}{\\tfrac{1}{2}\\rho C_L}}\n", "```\n", "Equation {eq}`ACSpeedEquation` is the **Aircraft Speed Equation** for steady level flight, and some basic aerodynamic behaviour may be inferred from it:\n", "\n", "- Slower flight is possible by reducing wing loading - reducing aircraft mass, or increasing wing area. Or by increasing $C_L$ - increasing $\\alpha$\n", "\n", "- The minimum possible flight speed occurs at $C_{L_{max}}$ - just before stall\n", "\n", "- Flight speed may be increased by reducing $\\rho$ - by flying at increased altitude\n", "\n", "### Stall speed\n", "\n", "From {eq}`ACSpeedEquation`, the _stall speed_ may be determined if $C_{L_{max}}$ is known.\n", "\n", "## Longitudinal Forces\n", "\n", "Looking at the longitudinal forces, $\\sum F_x =0$, therefore $T=D$:\n", "\n", "$$\\begin{aligned}\n", " C_D &= \\frac{D}{\\tfrac{1}{2}\\rho V^2S}\\nonumber\\\\\n", " &= \\frac{T}{\\tfrac{1}{2}\\rho V^2S}\\nonumber\\end{aligned}$$\n", " \n", "Drag estimation is complex, and can be performed via a variety of means from datasheets, CFD, wind tunnel testing or - more commonly - a combination of all. A good breakdown of drag sources is given by MacCormick{cite}`MacCormick:1995wq`, and a reproduction of the breakdown given is found in the dropdown below - but this is far beyond the complexity required for Aircraft Performance.\n", "\n", "```{admonition} Drag Breakdown (well beyond what we need, but included for reference)\n", ":class: dropdown\n", "\n", "The following is an extract from MacCormick{cite}`MacCormick:1995wq` [pp. 162-163]:\n", "\n", "**Induced Drag** The drag that results from the generation of a trailing vortex system downstream of a lifting surface of finite aspect ratio.\n", "\n", "**Parasite Drag** The total drag of an airplane minus the induced drag. Thus, it is the drag not directly associated with the production of lift. The parasite drag is composed of many drag components, the definitions of which follow.\n", "\n", "**Skin Friction Drag** The drag on a body resulting from viscous shearing stresses over its wetted surface.\n", "\n", "**Form Drag** (Sometimes Called Pressure Drag) The drag on a body resulting from the integrated effect of the static pressure acting normal to its surface resolved in the drag direction.\n", "\n", "**Interference Drag** The increment in drag resulting from bringing two bodies in proximity to each other. For example, the total drag of a wing-fuselage combination will usually be greater than the sum of the wing drag and fuselage drag independent of each other.\n", "\n", "**Trim Drag** The increment in drag resulting from the aerodynamic forces required to trim the airplane about its center of gravity. Usually this takes the form of added induced and form drag on the horizontal tail.\n", "\n", "**Profile Drag** Usually taken to mean the total of the skin friction drag and form drag for a two-dimensional airfoil section.\n", "\n", "**Cooling Drag** The drag resulting from the momentum lost by the air that passes through the power plant installation for purposes of cooling the engine, oil, and accessories.\n", "\n", "**Base Drag** The specific contribution to the pressure drag attributed to the blunt after-end of a body.\n", "\n", "**Wave Drag** Limited to supersonic flow, this drag is a pressure drag resulting from non-canceling static pressure components to either side of a shock wave acting on the surface of the body from which the wave is emanating.\n", "```\n", "\n", "\n", "In flight performance, we assume that the aircraft is operating in the region of linear aerodynamics, and utilise a drag model as given by Equation {eq}`DragEquation`:\n", "\n", "```{math}\n", ":label: DragEquation\n", " \\underbrace{C_D}_{\\text{Total Drag}} = \\underbrace{C_{D0}}_{\\substack{\\text{Zero incidence} \\\\ \\text{drag}}} + \\underbrace{K\\cdot C_L^2}_{\\substack{\\text{Induced Drag +} \\\\ \\text{$\\alpha$-dependent form drag}}}\n", "```\n", "\n", "where\n", "\n", "$$ K=\\frac{k}{\\pi AR} = \\frac{1}{\\pi\\,e_0\\,AR}$$\n", "\n", "The first term represents the drag that is independent of aerodynamic incidence, whilst the second term is proportional to $C_L^2$, which represents the induced drag and the component of form drag that varies with incidence.\n", "\n", "The parameter $k\\sim 1.1-1.4$ for most aircraft, and $AR$ is the wing aspect ratio $AR = \\frac{b^2}{S}$. $K$, $C_{D0}$ usually assumed constant, but can depend on:\n", "\n", "- configuration changes (flap deployment)\n", "\n", "- Reynolds Number (speed and height)\n", "\n", "- Compressibility (shock waves)\n", "\n", "Or sometimes can be presented as the Oswold efficiency factor, $e_0$, which can be related to $K$ through the aspect ratio.\n", "\n", "Equation {eq}`DragEquation` assumes that the minimum drag occurs at zero lift. This is the case for a symmetric aerofoil, but not for a cambered one. Since most airfcraft have a cambered wing, Equation {eq}`DragEquation` should be modified to\n", "\n", "$$C_D = C_{D, min} + K\\left(C_L - C_{L0}\\right)^2$$\n", "\n", "The second equation is more realistic for real aircraft - but adds complexity to the algebra, and the difference between $C_{D0}$ and $C_{D,min}$ is very small even for wings of moderate camber{cite}`Anderson:1999AP`. For simplicity, Equation {eq}`DragEquation` will be used in development of the Aircraft Performance Equations.\n", "\n", "Equation {eq}`ACSpeedEquation` and Equation {eq}`DragEquation` underpin the basics of aircraft performance.\n", "\n", "### Drag Polar\n", "\n", "The relationship between lift and drag is given through the aircraft drag polar - often plotted as $C_L$ vs $C_D$. Values for $C_L$ and $C_D$ are commonplace in the literature - a quick search yielded data for the Cessna 172S {cite}`Haberkorn:2016bj`.\n", "\n", "You will see that the drag model works well for low values of lift - that is, in the linear aerodynamic region. The behaviour at the 'bottom' of the curve is sometimes called the 'drag bucket' - and I spent many years *collecting* these data in a wind tunnel.\n", "\n", "The drag polar shows the aerodynamic efficiency of a given aircraft - that is, it represents the lift-to-drag ratio. You can find the best (highest) lift to drag ratio as the tangent of a line drawn from the origin to the curve.\n", "\n", "It would be great to be able to find the best lift to drag ratio without having to draw the drag polar. If you looka the source code for the image below, then it's obvious that I haven't drawn the tangent to find the best lift to drag ratio - rather I have drawn the tangent after having found the best lift to drag ratio.\n", "\n", "Expand the code to see the source data and coefficients used in the drag model." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "scrolled": true, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZkAAAEaCAYAAADDgSq4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd3hU1dbA4d9KQIpAQALXaEAQFKSHYhBFQD8sKAIK0hSwgChRrxUEUbFcG4oiFxGlSBcRBblYUAGliBAhlACaICVSEyCEEkjZ3x97EpOQnpmcmWS9z5OHzMyZM2uGzKzZbW0xxqCUUkp5gp/TASillCq5NMkopZTyGE0ySimlPEaTjFJKKY/RJKOUUspjNMkopZTyGE0yymeJyHQRedXpOJR3EJE6ImJEpEw+jh0kIquKI67STpNMKSciu0XkjIgkiMhxEVkjIkNFpNj+NlzJ4pyInBSRoyKyTEQaFtfj5xBT2gfWSdfPIRFZIiKdC3AOr/sgc8fzclMcu13/54FZrt/kiq9OccajPEeTjALoaoypDFwGvAEMB6bkdLCI+HsghreMMZWAYOAwMN0DjwGAWPn926/qiqs5sAz4UkQGeSq2YpTv55WflkEh/QX0zfA4TYEKHnos5RBNMiqdMSbeGLMY6A0MFJEmkN7S+FBElorIKaCTiNwmIhtF5ISI7BORlzKeS0QGiMgeEYkTkdGub67/l48YTgNzgLTHvkpEVrhaWdtE5I7s7ici1VzfyI+IyDHX78EZbl8hIq+JyGrgNHB5AV+bg8aY94GXgDfTkpSIjBCRaFdLMFJEeqTFDUwCrnG1GI67rs/1dcvynLaLyO0ZLpcRkVgRaSki5UVkluv1PS4i60XkXwV5Tnk8r90iMlxENgOnXI+d7XN1He8vIu+44vtLRMLy0XU1ExiQ4fJAYEaW1yBARGa4/l/3iMjzGWL0F5GxrsfcBdyWzX2niMgBEflbRF710BcklQtNMuo8xpjfgBigfYar+wGvAZWBVcAp7AdEVeyb+2ER6Q4gIo2AiUB/IAgIAC7Nz2OLSCXX/TaKSFnga+B7oCbwKDBbRBpkc1c/YBq2NVYbOANMyHLMvcAQ13PY40pEI/ITVwYLXbGkxRCNfZ0CgDHALBEJMsZsB4YCa40xlYwxVV3H5/i6ZWMuGb7pAzcDscaY37EfyAFALaC667HOFPC55Pa8cD32bdhWT3JOz9V17GDgVqAF0BLI6Tll9CtQxfVFwh/75WZWlmM+cD3e5UAH7Gt3X4bHvB0IAVoDPbPc91MgGajvOuYm4MF8xKXcSJOMysl+4KIMlxcZY1YbY1KNMYnGmBXGmC2uy5uxH4gdXMf2BL42xqwyxpwDXgDyKpL3tOvbfhRQCRgEtHX9/oYx5pwx5idgCZk/eAEwxsQZY74wxpw2xiRgE2KHLIdNN8ZsM8YkG2OSjDG3G2PeKMBrAvZ1AddrY4z53Biz3/U6fAb8CVyd053zeN2ymgPcISIVXZf7ua4DSMIml/rGmBRjTLgx5kQBn0uOz8tlvDFmnzHmjCv23J7r3cD7xpgYY8wxbLdrfqS1ZjoDO4C/027IkHieM8YkGGN2A+9gvyykPeZ7rhiPAq9nuO+/sEnv38aYU8aYw8A4oE8+41Ju4qm+VuX7LgWOZri8L+ONIhKK/SBpAlwAlAM+d918ScbjjTGnRSQuj8cba4x5PstjtAb2GWNSM1y9h2xaRa4P4nHALUA119WVRcTfGJOS3XMopLTHPup63AHAk0Ad1/WVgMDz75YeZ26vWybGmCgR2Q50FZGvgTuw38jBfjjXAuaJSFVsC2CUMSbJHc/LJev/eW7P9ZIsx+f3tZ4J/AzUJUtXmevcF2D/z9Nk/P/P+pgZj7sMKAscEJG06/wKEJdyE23JqPOISBvsGznjzKisLZE5wGKgljEmADv+kPZuPoAdwE87XwXst+6C2g/UyjJIX5sM33YzeArb1RNqjKkCXJ/28Lk8h8LogZ2YsFNELgM+BsKA6q4usa0ZHjO7x8vtdctOWpdZNyDSGBMF4GqJjTHGNALaYbuNBuR8mvw/rwzXpcefj+ea6f8cmwDzZIzZg50A0AXbZZdRLLbFdlmG6zL+/x/I8ji1M/y+DzgLBBpjqrp+qhhjGucnLuU+mmRUOhGp4hpongfMMsZsyeXwysBRY0yiiFyN7cpJswD77budiFyA7b/P7YM0J+uwYxjPikhZEekIdHXFl108Z4DjInIR8GIhHi9HIvIvEQlznfc5V+vqQuwH8RHXMffhmrDgcggIdr0GGePM6XXLzjzsWMLD/NNVhoh0EpGmri6lE9gP45TsT1Hg55WdvJ7rfOBxEbnU1bIaXoAwHgBuMMacynilqwU6H3hNRCq7Et2T/DNuMx94TESCRaQaMCLDfQ9gx/Lecf1d+4lIPRHJqWtSeYgmGQXwtYgkYL/9jQLe5Z/B1Zw8Arzsut8L2Dc8AMaYbdhB+nnYb5sJ2G/JZwsSlGs85w5s33osdjLBAGPMjmwOfw87/TUWO6D8bV7nF5FvRGRkHocdFzujbgv223YvY8xUV3yR2DGCtdiE0hRYneG+PwHbgIMiEuu6LsfXLTuuD8u12NbKZxluuhibzE8A24GVuD58RWSSiEwq7PPKIY68nuvH2A/1zcBGYCl20D3PxGeMiTbGbMjh5kexXzR2YVvWc4C0OD8GvgMigN85vyU0ANvdFgkcw75eQahiJbppmfI014yx48AVxpi/nI5HeZ6I3ApMMsZclufBqkTTlozyCBHpKiIVReRCYCz2G/NuZ6NSniIiFUSki2s9zaXY7rcvnY5LOc9rkoyI1BKR5WIXoG0TkcezOUZEZLyIRInIZhFp6USsKl+6YQfu9wNXAH2MNptLMsGOvR3Ddpdtx3YHqlLOa7rLXIu6gowxv4tIZSAc6O7qC047pgu2j7YLEIqdlx/qSMBKKaXy5DUtGWPMAddKZlyL6bZz/nqIbsAMY/0KVM2w4lgppZSX8Zokk5HYCqwh2CmsGV1K5sVUMeSzXIlSSqni53Ur/l0zkb7AloPIWiYju7UW5/X3icgQbI0qypcv36p27drn3clXpKam4ufnld8F8kXjd5bG7xxfjh3gjz/+iDXG1CjqebwqybgKIn4BzDbGZJ3zDrblknGFbzD/1FxKZ4yZDEwGaNCggdm5c2fWQ3zGihUr6Nixo9NhFJrG7yyN373OnIEK+dyMwNtiLygR2ZP3UXnzmjQrtsDQFGC7MebdHA5bDAxwzTJrC8S7FqsppZTHGAPz50O9evDNN05H41u8qSVzLba66hYR2eS6biSuekTGmEnYVcRdsJV6T5P3qnSllCqS6GgIC4Nvv4WWLeFfBd61p3TzmiRjjFlFHvWtXOsshhVPREqp0uzsWRg7Fl59FcqWhfffh2HDwF+3PSsQr0kyxSkpKYmYmBgSExOdDiVPAQEBbN++3ekwCi0t/vLlyxMcHEzZsmWdDkmpPK1YAQ8/DDt2QK9eMG4cXKrzWAulVCaZmJgYKleuTJ06dciw14RXSkhIoHLlyk6HUWgJCQlUqlSJuLg4YmJiqFu3rtMhKZWjI0fg6adhxgyoWxeWLoVbb3U6Kt/mNQP/xSkxMZHq1at7fYIpKUSE6tWr+0TLUZVOqanwySfQoAHMnQsjR8LWrZpg3KFUtmQATTDFTF9v5a22bIGhQ2HNGrj+evjwQ2jUyOmoSo5S2ZLxBv7+/rRo0YLGjRvTvHlz3n33XVJTc9ovytq9ezdz5szJ9RilVP6cOgXPPgshIfDHHzB9uh2L0QTjXppk8jBpZTRromMzXbcmOpZJK6OLdN4KFSqwadMmtm3bxrJly1i6dCljxozJ9T6aZJRyj8WLbTJ5+2247z47wD9wIGiD2/00yeShWXAAYXM2pieaNdGxhM3ZSLPgALc9Rs2aNZk8eTITJkzAGMPu3btp3749LVu2pH379qxZswaAESNG8Msvv9CiRQvGjRuX6biWLVumH6eUyt7evdC9O3TrBlWqwKpV8PHHUL2605GVXKV2TCa/2tULZEK/EMLmbOSe0NrMWreXCf1CaFcv0K2Pc/nll5Oamsrhw4epWbMmy5Yto3z58mzcuJHBgwezYcMG3njjDcaOHcuSJUsAOH36dPpxf/75J3379mXDhpx2sVWq9EpKgvHj4cUX7SD/m2/CE0/Y9S/KszTJ5EO7eoHcE1qb8T9F8dgN9d2eYNKk7e2TlJREWFgYmzZtQkSIiorK9viMx/n7+/PHH394JC6lfNnatXZgf/NmuP12+OADqFPH6ahKD00y+bAmOpZZ6/by2A31mbVuL23rVXd7otm1axf+/v7UrFmTMWPG8K9//YuIiAji4+OpUSP7Qqjjxo1LPy41NZXy5cu7NSalfNmxYzBiBEyeDMHB8OWXtptMx12Kl47J5CFtDGZCvxCevKlBetdZ1skARXHkyBGGDh1KWFgYIkJ8fDxBQUH4+fkxb948UlJSAKhcuTIJCQnp98t43MyZM9OPU6o0MwZmzbJrXqZMgaeegu3b7VhMiUkwp07Bb785HUW+aEsmD5tj4jONwaSN0WyOiS9Sa+bMmTO0aNGCpKQkypQpw7333suTTz4JwCOPPMJdd93F559/zrXXXsuFF14IQLNmzShTpgzNmzdn0KBBmY7r1KlT+nFKlVY7d9pyMMuXQ9u2sGwZNG/udFRucvQofP01LFwI338P5crB4cNwwQVOR5YrTTJ5GNqh3nnXtasXWOTustxaHVdccQWbN28GbFmWd955B4CyZcvy448/Zjo27TiA119/vUgxKeWrzpyB11+3A/oVK8KkSTB4MPjwnmHW33/DV1/ZxLJyJaSk2L6/wYOhRw+fqNapSUYp5dO+/x4eecSW5L/nHls52afL8f/xhx1AWrjwny6xhg3tytEePaB1a5/q99Mko5TySQcO2GnIn30GV14JP/4IN9zgdFSFYAxs3PhPYomMtNe3bg2vvWYTy1VXORtjEWiSUUr5lJQU2x02cqTd8+Xll+2X/HLlnI6sAFJSYPVqm1i+/BL27LF9e9dfDw89ZGcp1K7tdJRuoUlGKeUzfv/dfgZv2ACdO8PEiVC/vtNR5VNyMvz8M3z+uW2xHD5sM2PnzvDCC9C1K+SwXMGXaZJRSnm9Eydg9GiYMMF+Ds+dC717+8DQRHKyrbr5+ee2xXLkiJ2ZcNtt0LOn3UvAh/eLyg9NMkopr2WM/Xx+/HE4eNAO8L/6KlSt6nRkuUhKgp9+4soPPrCJJC4OLrzQtlTSEkvFik5HWWx8fYKfzypMqf/Ceumll84rTzNu3DhEpEC1zqZPn05YWFiRj1EqP3btgueea8rdd8PFF8O6dbYl45UJ5tw5+OYbuP9+O7XtlluouXw53HzzPy2YuXPhrrtKVYIBbck4Jq3UP8Dhw4fp168f8fHx55X7T05OdsvjNW3alHnz5vH8888DsGDBAhrpxhnKC507Z6chv/IK+PkF8N57MGwYlPG2T6uzZ+1qzwULYNEiOH7clnbu1g169mRN+fJcf9NNTkfpOG3JeIGspf6nT59Or1696Nq1K927d+fkyZPceOONtGzZkqZNm7Jo0aL0+77yyis0bNiQzp0707dvX8aOHZvtY3Tv3j39frt27SIgICBTTbS5c+fStGlTmjRpwvDhw9OvnzZtGldeeSUdOnRg9erV6dcfOXKEu+66izZt2tCmTZtMtylVWCtXQosWMGqULWY5ffpvPP64FyWYs2ftqvt774WaNW0X2KJFNrEsWWIH82fMgDvuINXLV+IXF2/5r3POv/8NrhaF27RoAe+9V6C7ZCz1D7B27Vo2b95M2bJlKV++PF9++SVVqlQhNjaWtm3bcscddxAeHs4XX3zBxo0bSU5OpmXLlrRq1Srb81epUoVatWqxdetWFi1aRO/evZk2bRoA+/fvZ/jw4YSHh1OtWjVuuukmvvrqK0JDQ3nxxRcJDw8nICCATp06ERISAsDjjz/OE088wXXXXcfevXu5+eab2b59exFeNFWaHTkCzzwDn35qKyT/73/QpQusWHHO6dDs4P3y5TBvnp0Vdvw4VKtmu7569YIbb/T60i5O0iTjRdJK/QN07tyZiy66iISEBIwxjBw5kp9//hk/Pz/+/vtvDh06xKpVq+jWrRsVKlQAoGvXrrmev0+fPsybN4/vvvuOH3/8MT3JrF+/no4dO6a3bPr378/PP/8MkOn63r17p28n8MMPPxCZtmgMOHHiRKbinUrlR2oqTJ1q17mcPGnXvowa5QXDFqmpsGaNTSyff25bKJUr24WRffrA//2fbkaTT5pkCtji8JSMpf6BTMUuZ8+ezZEjRwgPD6ds2bLUqVOHxMTETEkpP7p27cozzzxD69atqVKlSvr1uZ1Hcpgjmpqaytq1a9MTnFIFtXWr3edl9Wpo394usHR0mNAYCA+3ieWzzyAmBipUsP12ffvaWWG6nUaB6ZiMF8ha6j+r+Ph4atasSdmyZVm+fDl79uwB4LrrruPrr78mMTGRkydP8r///S/Xx6lQoQJvvvkmo0aNynR9aGgoK1euJDY2lpSUFObOnUuHDh0IDQ1lxYoVxMXFkZSUxOeff55+n5tuuokJEyakX97k7i5HVWKdOgXDh0NICOzYAdOm2bEYxxLMtm3w/PNwxRXQpo3dQjMkBGbPhkOHYP5824LRBFMo2pJxSG6l/rPq378/Xbt2pXXr1rRo0YKGDRsC0KZNG+644w6aN2/OZZddRuvWrQkICMj1cfv06XPedUFBQbz++ut06tQJYwxdunShW7dugJ3+fM011xAUFETLli3Tq0ePHz+eYcOG0axZM5KTk7n++uuZNGlSUV4SVQp8/TWEhcHevfDAA7ZqcvXqDgQSFWVbK/Pm2SaVn58dWxk50iaUatUcCCp/Jq2MpllwQKZK8GuiY9kcE59t1XjHGWNK9M+VV15psoqMjDzvOm914sSJXG9PSEgwxhhz6tQp06pVKxMeHl4cYeVbxvh96XVPs3z5cqdDKBJviX/vXmN69DAGjGnc2Jhffsnf/dwa/6FDxrz/vjFt2thAwJjrrjNmwgRjDh503+O4eOq1Xx11xIS8/L1ZHXUk28vuAmwwbvgM1paMjxsyZAiRkZEkJiYycOBAWrZs6XRISqVLTra9Ty+8YMfS33jDVk4utslYp07ZKcazZtk9AVJS7OzPt9+2dWlq1fLow3ui1ZG2cWLYnI3cE1qbWev2ZtpY0V3xuYsmGR83Z84cp0NQKlu//moH9iMibKmuCRPs9GSPS06Gn36yiWXhQptoate2U9j694fGjYshCKtZcED69u3t6gVm2s69KNrVC+Se0NqM/ymKx26oX+hNFD0VX0aaZJRSbnXsGDz3HEyeDJdeaj/nu3f3cDHLtD1ZZs2y5VsOHoSAAOjXz+5kdt11+d4m052tD3e2OjJaEx3LrHV7eeyG+sxat5e29aoX6pyeii8jnV2mlHILY+xnfMOG8MkntlssMtKOo3sswezeDf/5j22dtGplm0vXXANffGETzeTJdo+WAuzDnPbtfk10LED6t/tmwblPqslJxlbHPaG13ZJg0lobT97UID1JpMXrdHxZaUtGKVVkO3faCsk//QRXXw3ffWeHPjwiPt7ODJs1C375xV7Xvj189JGtcnzRRUU6vbu/3bur1ZFmc0x8pnjS4t0cE1+o87o7vqw0ySilCi0xEV5/3Q7oV6gAH34IgweDv7+bHyglxe6vPH26rWqcmAgNG7LuwScpc09/WnX4Z8KLO6bzumvMI2Oro129QNrWq57pcmFk97za1QssdILJKT530e4ypVShLFsGTZva7Y979bKtmaFD3ZtgKuzbZ+vM1Kljy+Z/+61dYLN+PURGkjLiOQb/HOe2rq00Wb/dF7YrKrdWhzcolvjcMQ/aHT/AVOAwsDWH2zsC8cAm188L+TlvSV8n4+10nYyzPBH/gQPG9O1rl5lccYUxP/zg5gc4ftyYyZONadfOPoifnzG33WbM558bk5h43uFp60Te+W6HW9aLuGsdiq//7eCmdTLe1JKZDtySxzG/GGNauH5eLoaYPC6vopZKeYuUFJg4ERo0sDPGxoyBzZvtQnm3nHzZMjvF+OKLYcgQOH6c6KFDbQ2xJUvseEu5cufd1d0D197e+vA1XjMmY4z5WUTqOB1Hcdq9ezd1imXhgFJF8/vvtits/XpbgHjiRFvqq8j+/NOOs8yYYZNJtWp2d8n77oNWrdi3ciX1goJyPYW7B67dOeahQGyryDu4kswSY0yTbG7rCHwBxAD7gaeNMdtyOM8QYAhAjRo1Ws2fPz/T7QEBAdSvX9+doRfK4sWLOXHiBPfcc0+Ox6SkpODv9lHU4pMx/qioKOLjfevb4MmTJ6lUqZLTYRRaUeM/dcqfadPq8uWXlxIQkMSwYVHccMPhIk1J9jt7lho//0zQkiVU3bwZ4+fH0TZtOHjLLcS1a5dps6+84t8el8LETYk80qI8V1X3P++yk3z9b6dTp07hxpjWRT6RO/rc3PUD1CHnMZkqQCXX712AP/NzTneMycyaZcxllxkjYv+dNatAd8/RyJEjTURERK7H6JiMs3y9X72w8aem2iGQSy6xf/ePPGLMsWNFDGbTJmOGDTOJF1a2Yy316xvz+uvG7N9vVkcdMR+uiCpw/B+uiDpvrCSncxU3X//bobTVLjPGnMjw+1IRmSgigcaYwk37yKfZs2338OnT9vKePfYy2O7jovj999+Ji4ujTJky9OrViw4dOhTthEq5wV9/2UrJS5fatS5ffmnXvhTKiRN2Bf4nn8CGDVCuHCduvp2R1dty38iBtKtfo0ilTLRry/v5TJIRkYuBQ8YYIyJXY6dfx3n6cUeN+ifBpDl92l5f1CTzzTffFO0ESrnRuXPwzjt2SnKZMjBunE02ZQr6KWEMrF1rE8tnn9k3TNOmtlJm//7UuOgi7nMlFk+VMlHew2uSjIjMxU5TDhSRGOBFoCyAMWYS0BN4WESSgTNAH1eTzqP27i3Y9Ur5op9/tgP727fbrevfew+Cgwt4kthYmDnTJpfISLjwQls7bPBguxlYhoEcdy12VN7Pa5KMMaZvHrdPACbkdown1K5tu8iyu74octrWGHLfDlkpd4qNhWeesRO86tSxM4Vvu60AJzAG1qyxS/0//9w2h0JD4eOPbSn9ypWzvZunS5ko7+FN62S80muvQcWKma+rWNFeXxQ5DZIdOHCADh068NZbbzFw4ECmTp1Kz5492bp1KwBjxozh8ccf58UXX+TIkSPcd999xMTEcP/995OUlFS0oFSpkZoKU6faNS+zZtmqydu2FSDBJCTApEnQvLmtcLx4sW2xRETYGv8PPphrgnFngUfl3TTJ5KF/f1vI9bLLbGv/ssvs5aKOx4DdPjksLIwBAwYwbdo0ADZu3Midd97Js88+S3x8PIMGDaJXr17s2bOHv//+m6SkJKpWrcqvv/5KjRo1qF27Nk899RTjx4+nbNmyRQ9KlXhbt0KHDrY6S+PGsGmTLWSc9ctUtrZssZUwL7kEHn7Y1pD56CPYv99WQG7WLM9T6GLH0sVrusu8Wf/+7kkqGe3bt4/Q0FAmTLA9gDfccAMDBgxg06ZN9OjRg6SkJKpXr46fnx9bt25l8ODBjB49mvfff58jR46wb98+Tp48ya5duyhTpoxPz8dXxePUKXjlFTu4HxBgWzKDBuWjDP/Zs7Bgge0SW73arrrv3dsmmdDQAtfx1xlhpYsmGYeEh4fTqlWr9MsVK1bEz8+PqKgorrzySjZv3sxVV10F2MoAtWvXpnHjxowdO5a4uDhCQkJ47LHHePXVV5k/fz4rVqygY8eODj0b5e2WLLEzxfbssQvq33wTAvP6TN+1y7ZSpk61gzf168PYsTYzVa9eHGGrEkCTjEPCw8Pp1asXABEREdSuXRsRYcqUKQC0aNGCFi1akJCQwMyZMwF46qmnsj3XM888UzxBK59z5Eg57rzTrnVp1MjOImvfPpc7GGNriI0fbxfK+PnBHXfYVsuNNxZo8y+lQJOMY8LDw4mLi6NcuXL4+/vz5ptvOh2SKkGSk+GDD2DUqDaA3fPlySchQ8WWzE6etPXDPvgAduyAmjXh+eftyuMCz2VW6h+aZByydOlSp0NQJdS6dfDQQ3aiV2hoPHPnVqdu3RwO3rUL/vtfmDLF7jjZqpVNNnffnW3FY6UKSpOMUiXEsWMwcqQdRrnkErvNfbVqW6hbt2PmA42x+ySPHw9ff21niPXsCY89Bm3bFnggX6ncaJJRyscZA3Pm2O6w2Fi4oedxho9KoXPz6qxYYY9ZEx1L5J8HeHDPGptcIiOhRg1bH2noULj0Ukefgyq5NMko5cP++MMuW/nxR1vE8ttv4UyVZMLmbOTCSrbg5Pq1W9k+4j8MjPgG4o9DSAhMmwZ9+kD58g4/A1XSaZJRygclJsIbb9gB/QoV7CZiQ4bYni+wixvHjVvIUxsX0HzdClqnJiPdu8MTT9gV+tolpoqJJhmlfMyyZbb1EhVl60++847dsRiwfWc//ki7sWNp9913nClTjsguvWjx7hi7zkWpYqZJRikfcfCgHXeZO9dufbxsmd0KGbCFKT/7zGaciAjOBdbg4xsHse+22/j+ZAATpCrtnAxelVq6skopL5eSYiu6NGxoZ4y9+CJs3uxKMMePw1tvweWXw4ABkJRE1Ovvcf3D0wj56G1uCQnUApTKUdqScUBcXBw33ngjAAcPHsTf358aNWoA8Ntvv3FBjivmPGPTpk3s37+fLl26FOvjqrxt3Ggnf/32m11wP3EiXHkltlkzbpzNPgkJcMMNtrz+zTfzwy9/8W5wAO3qBbJiX+YClFofTBU3TTIOqF69Ops2bQLgpZdeolKlSjz99NOOxbNp0yY2bNigScaLJCTACy/Y2caBgXYb8L59QXb/BY+8beuJJSVBr14wfLidMeaiBSiVNyn1Sebf/7alzt2pRQu7s2BBfPzxx0yePJlz585Rv359Zs6cScWKFRk6dCjVq1dnw4YNHDx4kLfeeouePXuSmppKWFgYK1eupG7duqSmpnL//ffTs2dPwsPDefLJJz+XpFQAACAASURBVDl58iSBgYFMnz6doKAgOnbsSGhoKMuXL+f48eNMmTKF0NBQXnjhBc6cOcOqVat47rnn6N27t3tfEJVvxsDChfD447Z6/kMP2TL81fZvgwFv2AEZPz9bpPLZZ3UwX3k9HZPxEnfeeSfr168nIiKCq666Kr1QJsCBAwdYtWoVS5YsYcSIEQAsXLiQ3bt3s2XLFj755BPWrl0LQFJSEo8++igLFiwgPDyc+++/n1GjRqWfKzk5md9++4333nuPMWPGcMEFF/Dyyy/Tu3dvNm3apAnGQX/9BbffbhffBwa6NpwctI5q93WHJk1slcvHH7cHTp6sCUb5hFLfkiloi8NTtm7dyvPPP8/x48c5efIkN998c/pt3bt3x8/Pj0aNGnHo0CEAVq1aRa9evfDz8+Piiy+mU6dOAOzcuZOtW7fSuXNnAFJSUggKCko/15133glAq1at2L17dzE9O5Wbc+fg3Xfh5ZdtI+XddwyPNllOmVGv2fIv1arZ0f5HH9US+8rnlPok4y0GDRrEV199RfPmzZk+fTor0uqBAOUyFCo0xmT6NytjDI0bN05v2WSVdi5/f3+Sk5PdFL0qrF9+sQP7kZFw552G9+5aRa2Jz8FTqyEoyO7fMmRIjlsZK+XttLvMSyQkJBAUFERSUhKzZ8/O8/jrrruOL774gtTUVA4dOpSelBo0aMCRI0cydZ9t27Yt13NVrlyZhISEIj8HlX+xsXbzsOuvh1OnDF+/sokvDrWnVv/r7c5iEyfabrGnntIEo3yaJhkv8corrxAaGkrnzp1p2LBhnsffddddBAcH06RJEx566CFCQ0MJCAjgggsuYMGCBQwfPpzmzZvTokUL1qxZk+u5OnXqRGRkJC1atOCzzz5z11NS2UhNtWXDGjaEmTMNw3v/xbaL/4/bR4f8k1yiouwmYVpqX5UExpgS/XPllVearCIjI8+7zludOHEix9sSEhKMMcbExsaayy+/3Bw4cKC4wsq3jPH70uueZvny5W4719atxrRvbwwYc12To2ZL8/72QnCwMRMnGpOY6LbHSuPO+J3gy/H7cuzGGANsMG74DNYxGR92++23c/z4cc6dO8fo0aO5OL2AlfImp0/DK6/Y4ZUqFZKYUu9tBm19Hr9awXYx5X33aatFlViaZHxYxskByjv9738QFga7d8N9Qd/y1oF7CAyoAB9O1OSiSoVSm2SMMYiWOy82JofZcCVVTIxd0rJwIVxVeR8r6c/1Sdth3PN2Opnu46JKiVI58F++fHni4uJK3QefU4wxxMXFUb6EfbBOWhl9XtHJn3fG0isslqsaprJ00Tn+w0g2EcL1L3eGXbtsiYkS9joolZtS2ZIJDg4mJiaGI0eOOB1KnhITE336wzkt/vLlyxMcHOx0OG7VLDiAsDkbmdAvhHb1Avlk4XGefNifhMPVuFW+YULZJ7n8idthxE5dRKlKrVKZZMqWLUvdunWdDiNfVqxYQUiG4oe+xtfjz01adeOhU7YQsLEJq7+tThAHmeb3EHc+eBHywg9w6aVOh6mUo0plklHKHYyBPb9eRMz7bdh2ugKP8z5jekRQ5a3/aF0xpVxK5ZiMUkX1559wU6tY+t3jR/3TkSytew9HB/uz9e2xmmCUykCTjFIFkJgIYx45SNOG5/htY1lerTiSaeMjuTl6Dg8N76c7UCqVhXaXKZVPP8w/yiODz/HniYvpW3YBvQdEUfPZMBpfdQmgO1AqlR1NMkrl4dC+czzZLYo5GxtRnz/5/q5FdP74bqjW87xjdQdKpTLzmu4yEZkqIodFZGsOt4uIjBeRKBHZLCItiztGVbqkpsIP48/RoE4iCzbW48Ur5rBli9B5wUN2jxelVJ68JskA04Fbcrn9VuAK188Q4MNiiEmVUpuWxNAucCevfXkTrcptZfNHv/LSH/0o30QH9ZUqCK9JMsaYn4GjuRzSDZjhKhD6K1BVRIJyOV6pPM2eDXXq2B0p69SBTyae5cm2q2nVNYi/jlXjnU5T+OFoKxoM6eB0qEr5JF8ak7kU2JfhcozrugPOhKN83ezZdtPJ06ft5T17YMiwssA1PHTFT/znq8ZEHK6HlNcilkoVli8lmeyqWWZbfExEhmC71KhRo4ZPVys+efKkxu8hTz3VltOnM5fsMfhRvfIpek8uQ8ThnV4df35o/M7x5djdyh2b0rjrB6gDbM3hto+Avhku7wSC8jpndpuW+RJf3/jIm+OHVGPX7Wf+EfnnGG+OPz80fuf4cuzGuG/TMq8Zk8mHxcAA1yyztkC8MUa7ylShrJqyk7KSnO1ttWsXczBKlWBe010mInOBjkCgiMQALwJlAYwxk4ClQBcgCjgN3OdMpMqXxe49zfAuW5i6LZTqEkdCmaqcS/ZPv71iRXjtNQcDVKqE8ZokY4zpm8ftBhhWTOGoEsYY+HTUTp5+swbxqS0Z3uJbRi9py1cr/Bk1CvbutS2Y116D/v2djlapksNrkoxSnhK54TQPd9vPz/sbcG25DXz431SaPmCXZPXvr0lFKU/ypTEZpQrk9GkYec9emrcpy9b91fjkhjn8fLghTR+42unQlCo1tCWjSqSlCxMZNugkuxNqM6jyAt6aeQk1uvVzOiylSh1tySifNmlldKbS+n//DZ2vPcRtd5WnQsJhVtz1AdMO3EqNbu0cjFKp0kuTjPJpzYIDCJuzkZ93xvL+uFQa1D3LqjVVGFPpDTZ9e4gOCx6FCy90OkylSi3tLlM+rV29QB5p3Iau16dy4rAft/ATr3T8itYL39BKyUp5AW3JKJ91/DgMGwZDegZQ6UgiM8r049Gnt9D6p0maYJTyEppklM8xBubNg6saGiZ9mMpj5n3mXdqDs1Me4PkqIazZFed0iEopF00yyqf8+SfcfDP07QvBJ7axzlxNk+t/w/+HRTw44EYm9AshbM7GTJMBlFLO0SSjfMLZs/Dyy9C0KaxbdY4JFzzJrxVv5OBbw2g0dTztGlwM2DGaCf1C2BwT73DESinQgX/lA376CR5+GP74A/rUW8+70XcQdF19mBvO7cHB5x3frl4g7eoFOhCpUiorbckor3XoENx7L9x4I6ScTea7Kx9lbvTVBD07wGaebBKMUsq7aEtGeZ3UVPj4YxgxAk6dgtGD9vHc0vZUiIuDhQuhRw+nQ1RK5VORWzIi0t4dgSgFEBEB114LQ4dCSAhsfn4+L8+uR4XKZeDXXzXBKOVj3NFd1ssN51Cl3MmT8NRT0KoVREfDzGnJ/NhwGA1f7A2dOsH69dC4sdNhKqUKqMDdZSKyGPgL+B0IL8w5lEpjDCxaBI8+CjEx8NBD8Ppz8VR7sCf88AM88wy8/jr4++d9MqWU18kzQYjIaOC0MeYdAGPMHSJyGdAS6ANc5tkQVUm1Z49NLl9/Dc2awfz5cE3wPujSBXbsgGnTYNAgp8NUShVBfrrL7gU+zHiFMWYPUB04ZYy5zROBqZIrKQneegsaNbKTxMaOhfBwuKb8RggNtdtUfvONJhilSoD8JJkzxpjT2Vw/A7jHzfGoEm7VKmjZEoYPh5tugshIOxZTZtk30L49lCkDq1fD//2f06EqpdwgX0lGRIKyXmmMOQckuz8kVRLFxcGDD9o8cuKEHYf58kuoXRtbiOyOO+CKK+wMsiZNnA5XKeUm+Uky7wCLXOMw6USkJpDqkahUiWEMfPopNGwI06fbcfzISJtTAJg8Gfr1g3btYOVKuOQSJ8NVSrlZngP/xpjPRaQiEC4ivwKbsMmpF/CSZ8NTvmz7dnjiiRZERNgcMmmSrT2WbuxYm3W6dIEFC6BCBcdiVUp5Rr7WyRhjPgXqAvOBskAi0NcYM9uDsSkfdfo0jBoFzZvDrl0X8vHH8MsvGRKMMfDCCzbB9O5t+800wShVIuV7jYsxJgE72K9Ujr75xm4k9tdfMHAgdO/+G927X5v5oJdegldegQcegI8+0jUwSpVgWiBTucXff0OvXrbnq1w5WL7cjsFUrZoEwKSV0XaPl1dftTX7H3iANcP/w6RVux2NWynlWZpkVJGkpMD48XDVVbBkic0hERHQsWPm45oFB7Bh6HAYPRoGDmTN8P8QNi+CZsEBjsStlCoeWhJGFdr69baQ5e+/wy23wIQJUK9e9se2+98c2v0wlaXNbmBn72eZOS+CCf1CdN8XpUo4bcmoAouPh7Awuzj/wAFbDmbp0pwTDJ99Bv/+N/Towc43xvP+yr+4J7S2JhilSgFNMirfjLHrJhs2hA8/tIlmxw47FiOS/X2qhofbncfat2ftq+OZuWE/j91Qn1nr9toxGqVUiabdZSpfoqLsrLHvv7fl+L/+Glq3zuNOGzfS5IUXoEED1r03lWFfbE/vImtbrzphczZql5lSJZy2ZFSuzp61s42bNIG1a+GDD2DdunwkmAMH4PbbSa5UCb75ho0nyJRQ2tULZEK/EDbHxHv+SSilHKMtGZWjn36CRx6BnTvtmsl3381n1ZfERLuDZXw8W95/nzbBwQwNPv+wdvUCtRWjVAmnLRl1nsOH7TDKjTfasvzffmvHYvKVYIyBIUNsc2fmTE7lOBtAKVUaaJJR6VJTbb3KBg3shLDnn4etW+HmmwtwknHjYOZMu+CyRw+PxaqU8g3aXaYAu4By6FBbab9jRzt7rGHDAp5kzRp49lm4806boZRSpZ5XtWRE5BYR2SkiUSIyIpvbO4pIvIhscv284EScJcnJk/D003bGWHQ0zJhhx2IKnGCOHoW+fe0GMVOn5jynWSlVqnhNS0ZE/IH/Ap2BGGC9iCw2xkRmOfQXY8ztxR5gCbRoETz6KOzbZ4dRXn8dLrqoECcyBu6/384oW70aArRUjFLK8qaWzNVAlDFml2vXzXlAN4djKpH27IFu3aB7d6ha1eaFjz4qZIIB+Phjm7HefBPatHFrrEop3ybGGKdjAEBEegK3GGMedF2+Fwg1xoRlOKYj8AW2pbMfeNoYsy2bcw0BhgDUqFGj1fz58z3/BDzk5MmTVKpUyS3nSk4WFiwI5tNP6wAwaNBu7rorhjJlCv83UO7gQdrcfz8JDRsS8c4753WTuTN+J2j8zvLl+H05doBOnTqFG2PyWhGXN2OMV/xgd9r8JMPle4EPshxTBajk+r0L8Gde573yyiuNL1u+fLlbzrNqlTFNmhgDxnTrZsyePW44aWqqMZ07G3Phhcb89Ve2h7grfqdo/M7y5fh9OXZjjAE2GDd8tntTd1kMUCvD5WBsayWdMeaEMeak6/elQFkR0dV8uTh6FAYPhuuus4Utv/rK/tSu7YaTT5kCy5bB229DnTpuOKFSqqTxpiSzHrhCROqKyAVAH2BxxgNE5GIR2x8jIldj448r9kh9gDF2pliDBjBtmt3pODLSjsW4xdGjMGIEtG8PDz3kppMqpUoar5ldZoxJFpEw4DvAH5hqjNkmIkNdt08CegIPi0gycAbo42rWqQy2b4eHH4aVK+Gaa2DSJGjWzM0PMno0HDtmN5Hx86bvKkopb+I1SQbSu8CWZrluUobfJwATijsuX3HmDLz2Grz1FlSqZFfvP/CAB3JARITNXI884oHspZQqSbwqyajC+/ZbW4p/1y4YMMAOk9Ss6aEHe/ppqFbNlo5RSqlcaD+Hj9u/31ZIvvVWKFvWrtb/9FP3J5hJK6PtJmMrV8IPP8DIkaw5msKkldHufSClVImiScZHpaTYvV0aNoTFi+2eLxER0KmTZx6vWXAAYbN/J/6ZERAUxK839yJszkaaBevqfqVUzrS7zAdt2GCLWYaHw003wcSJ4OmK+u3qBTKz7kkC1v/Kj8NG88zCHbqrpVIqT9qS8SHx8bbW2NVXw99/23L8337r+QSTpvG8KZyqFsjD5VtyT2htTTBKqTxpkvEBxsD8+XDVVfDf/0JYGOzYAXffXYzFjnfsgKVLmdGiC0NvuopZ6/baMRqllMqFdpd5ub//Ls+tt8J330HLlnb8pXXRqwkV2MFX3qJambK0fmMEba5uQNt61Qmbs1G7zJRSudKWjJc6exZefRXuv78Na9bA+PHw22/OJBjOnOGir+YT37UHba6+CrBjNBP6hbA5Jt6BgJRSvkJbMl5o+XK7Yn/nTujYMY7Zs2tyySUOBrRoERecPkXNR4dmurpdvUBtxSilcqVJxoscPmxrjM2YAZdfDt98A+XLR3LJJZ5aVZlPM2ZArVrQoYOzcSilfI52l3mB1FS771fDhjB3LowaBVu3wi23OB0ZthDm999D//5ao0wpVWDaknHY5s12zcvatbah8OGHdhaZ1/juO7vy023lm5VSpYl+NXXIyZO2a6xlS/jzT1sKZvlyL0swAEuWQI0auq2yUqpQtCXjgEWL7KLKffvshmJvvAEXXeR0VNlITbWrPW+/Hfz9nY5GKeWDtCVTjPbuhe7d7U9AAKxaZcvxe2WCATu97ehRHfBXShWaJplikJQEY8farrBly+x+L7//Dtde63RkeVi71v57zTXOxqGU8lnaXeZha9bYgf0tW6BrV1s5+bLLnI4qn379FapWtXs4K6VUIWhLxkOOHoUhQ2xr5fhx+OorWxLGZxIM2HnULVro1GWlVKHpp4ebGQMzZ9o1L1On2k0kIyN9dAbwzp3ailFKFYl2l7nRjh22HMyKFdC2rR1/ad7c6agKKTbWNsc0ySilikBbMm5w5gyMHg3NmsGmTfDRR7B6tQ8nGLDzqwHq1HE0DKWUb9OWTBF99x088gjs2gX33mtnkdV0uNSYWxw5Yv8tEU9GKeUUbckU0v790KePrS9Wtiz8+KOtI1kSPpMnrYzmj6277IUaNQBYEx3LpJXRDkallPJFmmQKKCUFJkywa16++gpefhkiIuCGG5yOzH2aBQewYHmkvVClCmuiYwmbs5FmwQHOBqaU8jnaXVYA4eHw0EP2386dYeJEqF/f6ajcr129QC5uGQRLYOKq3XyyPUF3wFRKFYq2ZPIhPh4eewyuvhr+/hvmzbNjMSUxwaS5vGp5AD5cvZd7QmtrglFKFYommVwYA59/brvGJkywA/w7dkDv3iDidHSe9VfcKQAevvYyZq3by5roWIcjUkr5Ik0yOYiOhi5d4O67ISgI1q2zJWECSsGwxJroWGZsOwbAI20uZkK/EMLmbNREo5QqME0yWZw9C6+9Bk2a2LUu778Pv/1WurZT2RwTT58bG9sLJ07Qrl4gE/qFsDkm3tnAlFI+Rwf+M1i50haz3LEDevWCcePg0kudjqr4De1QD5J32wtxcYCdDKDjMkqpgtKWDHbd4aBB0LGjbcksXQrz55fOBJOudm377969zsahlPJppTrJpKbCJ5/Y8lxz5sDIkbbw8K23Oh2ZF6hVy/67e7ejYSilfFup7S7bssV2ja1ZA9dfDx9+CI0aOR2VFylfHi65BKKinI5EKeXDSl1L5tQpePZZCAmBP/6A6dNt1WRNMNlo3txW/FRKqULyqiQjIreIyE4RiRKREdncLiIy3nX7ZhFpWZDzf/21TSZvvw333WcH+AcOLPlrXgotJMRuhpOY6HQkSikf5TVJRkT8gf8CtwKNgL4ikrV9cStwhetnCPBhfs69dy/06AF33AFVqsCqVfDxx1C9uhufQEnUsqUt1hYR4XQkSikf5TVJBrgaiDLG7DLGnAPmAVn3k+wGzDDWr0BVEQnK7aTHjl1Ao0a2DMybb8Lvv9stkVU+XHed/Xf5cmfjUEr5LG8a+L8U2JfhcgwQmo9jLgUO5HTSI0d2c9FFHbniCjs1eelSd4VbPI4fP07VqlWdC+DCC212/vbbQt3d8fiLSON3li/H78uxu5M3JZnsRkZMIY5BRIZgu9Pw9y9HrVrHSUz0zaGFlJQUjh8/7tjjV6hQgXJxccQfPYrxK3jD1+n4i0rjd5Yvx+/LsbuTNyWZGKBWhsvBwP5CHIMxZjIwGaBBgwZmkw/PkFqxYgUdO3Z0LoAffrD7GowZYwe2Csjx+ItI43eWL8fvy7EDiJtmRHnTmMx64AoRqSsiFwB9gMVZjlkMDHDNMmsLxBtjcuwqU27QsaPdHfOzz5yORCnlg7ymJWOMSRaRMOA7wB+YaozZJiJDXbdPApYCXYAo4DRwn1PxlhplysBdd9m9pU+dsmM0SimVT16TZACMMUuxiSTjdZMy/G6AYcUdV6nXty9MmgQLFtiFRUoplU/e1F2mvFX79hyrXY+EcR9kunpNdCyTVkY7FJRSyhdoklF5E+HYwPupHBFOxOKfAJtgwuZspFlwKdjFTSlVaJpkVL5c/uQjpFSoyJ6X3uTd73cSNmcjE/qF6B4zSqlcaZJR+VO1Kv5DBnPb5p9Y+OVq7gmtrQlGKZUnTTIq3zb0vJ8UhP/uW8asdXtZEx3rdEhKKS+nSUbly5roWIYsP8TRu/vRfNlCJnesSdicjZpolFK50iSj8mVzTDwT+oVw8etjQITWH7/DhH4hbI6Jdzo0pZQX0ySj8mVoh3p2DOayy+Df/4aZM2l3fA9DO9RzOjSllBfTJKMK7rnnIDAQnnoKzHn1SZVSKp0mGVVwAQHw8suwciXMnet0NEopL6ZJRhXOkCFw9dW26ywuzulolFJeSpOMKhx/f7uH9bFjtttMKaWyoUlGFV6zZvDMM/Dpp3Z/a6WUykKTjCqa0aOhUSMYNAiOHHE6GqWUl9Eko4qmQgWYMweOHoUHH9TZZkqpTDTJqKJr3hzeeAMWL4aPPnI6GqWUF9Eko9zj8cfh5pvtbLMNG5yORinlJTTJKPfw84NZs+Dii+HOO+HwYacjUkp5AU0yyn0CA2HhQjsBoE8fSE52OiKllMM0ySj3atkSJk2C5cthxAino1FKOayM0wGoEmjgQNi0CWrXdjoSpZTDNMkozxg3zv67YoWjYSilnKXdZUoppTxGk4xSSimP0SSjlFLKYzTJKKWU8hhNMkoppTxGk4xSSimP0SSjlFLKYzTJKKWU8hhNMkoppTxGk4xSSimP0SSjlFLKYzTJKKWU8hhNMkoppTzGK6owi8hFwGdAHWA3cLcx5lg2x+0GEoAUINkY07r4olRKKVVQ3tKSGQH8aIy5AvjRdTknnYwxLTTBKKWU9/OWJNMN+NT1+6dAdwdjUUop5SZe0V0G/MsYcwDAGHNARGrmcJwBvhcRA3xkjJmc3UEiMgQY4rp4VkS2uj3i4hMIxDodRBFo/M7S+J3jy7EDNHDHSYotyYjID8DF2dw0qgCnudYYs9+VhJaJyA5jzM9ZD3Iln8mux93gy11rGr+zNH5n+XL8vhw72PjdcZ5iSzLGmP/L6TYROSQiQa5WTBBwOIdz7Hf9e1hEvgSuBs5LMkoppbyDt4zJLAYGun4fCCzKeoCIXCgildN+B24CfLkbTCmlSjxvSTJvAJ1F5E+gs+syInKJiCx1HfMvYJWIRAC/Af8zxnybj3NnO27jQzR+Z2n8zvLl+H05dnBT/GKMccd5lFJKqfN4S0tGKaVUCaRJRimllMf4dJIRkVtEZKeIRInIeVUCxBrvun2ziLTM732LQ2HjF5FaIrJcRLaLyDYRedxXYs9wu7+IbBSRJcUXdabHL8rfTlURWSAiO1z/B9cUb/RFjv8J19/NVhGZKyLlizf6fMXfUETWishZEXm6IPctDoWN3xveu644Cv36u27P//vXGOOTP4A/EA1cDlwARACNshzTBfgGEKAtsC6/9/Xy+IOAlq7fKwN/FGf8RYk9w+1PAnOAJb70t+O67VPgQdfvFwBVfSV+4FLgL6CC6/J8YJAXxl8TaAO8BjxdkPt6efyOvneLGn+G2/P9/vXllszVQJQxZpcx5hwwD1ueJqNuwAxj/QpUda3Dyc99Pa3Q8RtjDhhjfgcwxiQA27EfHl4fO4CIBAO3AZ8UY8wZFTp+EakCXA9MATDGnDPGHC/O4Cni649dH1dBRMoAFYH9xRW4S57xG2MOG2PWA0kFvW8xKHT8XvDehaK9/gV+//pykrkU2Jfhcgzn/2fldEx+7utpRYk/nYjUAUKAdW6PMGdFjf094Fkg1VMB5qEo8V8OHAGmuboLPhG7bqs4FTp+Y8zfwFhgL3AAiDfGfO/BWLNTlPefr7x38+TQexeKHn+B3r++nGQkm+uyzsfO6Zj83NfTihK/vVGkEvAF8G9jzAk3xpaXQscuIrcDh40x4e4PK9+K8tqXAVoCHxpjQoBT5F413BOK8vpXw35rrQtcAlwoIve4Ob68FOX95yvv3dxP4Nx7F4oQf2Hev76cZGKAWhkuB3N+sz+nY/JzX08rSvyISFnsH+lsY8xCD8aZnaLEfi1wh9i9geYBN4jILM+Fmq2i/u3EGGPSvn0uwCad4lSU+P8P+MsYc8QYkwQsBNp5MNbsFOX95yvv3Rw5/N6FosVf8PdvcQ44ufMH+41yF/YbWdrgVeMsx9xG5sHP3/J7Xy+PX4AZwHu+9tpnOaYjzgz8Fyl+4Beggev3l4C3fSV+IBTYhh2LEewkhke9Lf4Mx75E5oFzn3jv5hK/o+/dosaf5bZ8vX8deZJufLG6YGdnRAOjXNcNBYZm+A/9r+v2LUDr3O7rK/ED12Gbt5uBTa6fLr4Qe2H+SL0tfqAFsMH1+n8FVPOx+McAO7C1/2YC5bww/oux37hPAMddv1fJ6b6+Er83vHeL+vpnOEe+3r9aVkYppZTH+PKYjFJKKS+nSUYppZTHaJJRSinlMZpklFJKeYwmGaWUUh6jSUYppZTHaJJRqhiJSC8RWecqvx8lIi86HZNSnqRJRqliIiIDgeHAXcaYZthFnaedjUopz9LFmEoVA9cWAX8BbYwxu5yOR6nioi0ZpYpHD+zGYZpgVKlSxukAlColGmPrVJ1HRNZj9xSpAiw3xkwrzsCU8iRNMkoVj1NAhaxXikgtbAsnzHX5JxGZYYxJKe4AlfIE7S5TqngsBXqJyL8ARKSciAwGWgEZN4A6jXM7hirldppklCoGxu6X/hLwIm1fNQAAAHZJREFUnYhswXad1SRDkhGR5sBeo7NxVAmis8uUcpCILAV2A2eBFGCMMSbB0aCUciNNMkoppTxGu8uUUkp5jCYZpZRSHqNJRimllMdoklFKKeUxmmSUUkp5jCYZpZRSHqNJRimllMdoklFKKeUxmmSUUkp5zP8DnWQIACZVfwEAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Aircraft Drag polar\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# Data for this graph has been taken from here: \n", "# https://www.researchgate.net/figure/Figure-A10-Drag-polar-for-the-Cessna-172S-This-plot-is-created-for-NACA-2412-airfoil_fig25_328578766\n", "\n", "# Discrete points:\n", "Cd = np.array([0.033099, 0.035185, 0.035214, 0.041961, 0.051143,\\\n", "0.064192, 0.080106, 0.096683, 0.104613, 0.11364, 0.121425, 0.130259, 0.138232])\n", "Cl = np.array([0.1454, -0.09219, 0.38303, 0.6238, 0.86305, 1.09772,\\\n", "1.31082, 1.45757, 1.51784, 1.55342, 1.58437, 1.60452, 1.58455])\n", "\n", "a = np.asarray([Cl, Cd])\n", "np.savetxt(\"CessnaDragPolar.csv\", a.transpose(), delimiter=\",\", header=\"Cl, Cd\")\n", "\n", "plt.plot(Cd, Cl, 'x', label='Data')\n", "\n", "# Put the drag model on top\n", "Clvector = np.linspace(min(Cl) - .2, max(Cl) + .2, int(1e3))\n", "Cd0 = 0.033\n", "Cl0 = 0.14\n", "K = 0.035\n", "Cdvector = Cd0 + K*(Clvector - Cl0)**2\n", "plt.plot(Cdvector, Clvector, '-r', label=\"Drag Model\")\n", "plt.legend\n", "plt.xlabel('$C_D$')\n", "plt.ylabel('$C_L$')\n", "\n", "plt.title('Drag Polar: Data vs. Drag Model');\n", "\n", "# Determine minimum drag\n", "Clmind = np.sqrt(Cd0/K + Cl0**2)\n", "Cdmind = Cd0 + K*(Clmind - Cl0)**2\n", "\n", "# plot it\n", "plt.plot(Cdmind, Clmind, 'ob', label=\"$\\\\frac{L}{D}_{max}$\")\n", "\n", "# show that this is the tangent\n", "plt.plot([0, Cdmind*2], [0, Clmind*2], '-b', label=\"Tangent\")\n", "plt.gca().set_xlim(0, .14);\n", "plt.gca().set_ylim(-.5, 2);\n", "plt.gca().grid('on')\n", "plt.axhline(0, color='black');\n", "\n", "# Legend\n", "plt.legend();\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Best lift to drag ratio\n", "\n", "The highest lift to drag ratio gives the position of best aerodynamic efficiency, and sets the best _glide ratio_ for an aircraft.\n", "\n", "In the following, the values of $C_L$ and $C_D$ for optimum aerodynamic efficiency - but before diving into the mathematics, some consideration of their significance might be necessary for some readers.\n", "\n", "```{admonition} Why do we want to know $C_L$?\n", ":class: dropdown\n", "\n", "In the aviation world, pilots tend to be excellent at intuiting flight physics - and being able to relate control movement to aircraft flight, without needed to understand the physics (often in spite of thinking they do). \n", "\n", "By contrast, aerospace engineers tend to be be excellent and understanding the mathematics of flight physics - without any consideration of the physical significance of what they are actually deriving. By way of an example ask yourself - *'what control would you change to effect an altitude change?'*, and if your answer is simply *'pull the stick/yoke back'*, then this highlights a misunderstanding of the aircraft controls and physics. In reality, it would be a combination of throttle and stick, but fundamentally you need to _gain potential energy_ which requires an increase in energy from somewhere, *i.e.,* the engine. \n", "\n", "---------------\n", "\n", "Back to the problem at hand:\n", "\n", "Consider what *\"to fly at a $C_L=X$\"* actually means - the pilot controls the *pitch* of the aircraft using fore-aft motion of the stick/yoke. A change in pitch changes the _angle of attack_ of the aircraft, which changes the aircraft lift coefficient.\n", "\n", "In reality, a pilot will not tend to consider the numerical value of $\\alpha$ they are flying at - and they are even less likely to know the $C_L$ of the aircraft under a given flight regime.\n", "\n", "For a given $C_L$, the aircraft speed determines the dimensional value of lift being produced. If $L=W$, this is steady level flight. If $L>W$, the aircraft climbs, if $L\n", " window.PlotlyConfig = {MathJaxConfig: 'local'};\n", " if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}\n", " if (typeof require !== 'undefined') {\n", " require.undef(\"plotly\");\n", " define('plotly', function(require, exports, module) {\n", " /**\n", "* plotly.js v1.54.6\n", "* Copyright 2012-2020, Plotly, Inc.\n", "* All rights reserved.\n", "* Licensed under the MIT license\n", "*/\n", "!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{(\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this).Plotly=t()}}((function(){return function t(e,r,n){function a(o,s){if(!r[o]){if(!e[o]){var l=\"function\"==typeof require&&require;if(!s&&l)return l(o,!0);if(i)return i(o,!0);var c=new Error(\"Cannot find module '\"+o+\"'\");throw c.code=\"MODULE_NOT_FOUND\",c}var u=r[o]={exports:{}};e[o][0].call(u.exports,(function(t){return a(e[o][1][t]||t)}),u,u.exports,t,e,r,n)}return r[o].exports}for(var i=\"function\"==typeof require&&require,o=0;o:not(.watermark)\":\"opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;\",\"X:hover .modebar--hover .modebar-group\":\"opacity:1;\",\"X .modebar-group\":\"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;\",\"X .modebar-btn\":\"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;\",\"X .modebar-btn svg\":\"position:relative;top:2px;\",\"X .modebar.vertical\":\"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;\",\"X .modebar.vertical svg\":\"top:-1px;\",\"X .modebar.vertical .modebar-group\":\"display:block;float:none;padding-left:0px;padding-bottom:8px;\",\"X .modebar.vertical .modebar-group .modebar-btn\":\"display:block;text-align:center;\",\"X [data-title]:before,X [data-title]:after\":\"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;\",\"X [data-title]:hover:before,X [data-title]:hover:after\":\"display:block;opacity:1;\",\"X [data-title]:before\":\"content:'';position:absolute;background:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;\",\"X [data-title]:after\":\"content:attr(data-title);background:#69738a;color:white;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;\",\"X .vertical [data-title]:before,X .vertical [data-title]:after\":\"top:0%;right:200%;\",\"X .vertical [data-title]:before\":\"border:6px solid transparent;border-left-color:#69738a;margin-top:8px;margin-right:-30px;\",\"X .select-outline\":\"fill:none;stroke-width:1;shape-rendering:crispEdges;\",\"X .select-outline-1\":\"stroke:white;\",\"X .select-outline-2\":\"stroke:black;stroke-dasharray:2px 2px;\",Y:\"font-family:'Open Sans', verdana, arial, sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;\",\"Y p\":\"margin:0;\",\"Y .notifier-note\":\"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,0.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;\",\"Y .notifier-close\":\"color:#fff;opacity:0.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;\",\"Y .notifier-close:hover\":\"color:#444;text-decoration:none;cursor:pointer;\"};for(var i in a){var o=i.replace(/^,/,\" ,\").replace(/X/g,\".js-plotly-plot .plotly\").replace(/Y/g,\".plotly-notifier\");n.addStyleRule(o,a[i])}},{\"../src/lib\":728}],2:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/aggregate\")},{\"../src/transforms/aggregate\":1311}],3:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/bar\")},{\"../src/traces/bar\":877}],4:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/barpolar\")},{\"../src/traces/barpolar\":890}],5:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/box\")},{\"../src/traces/box\":900}],6:[function(t,e,r){\"use strict\";e.exports=t(\"../src/components/calendars\")},{\"../src/components/calendars\":593}],7:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/candlestick\")},{\"../src/traces/candlestick\":909}],8:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/carpet\")},{\"../src/traces/carpet\":928}],9:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/choropleth\")},{\"../src/traces/choropleth\":942}],10:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/choroplethmapbox\")},{\"../src/traces/choroplethmapbox\":949}],11:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/cone\")},{\"../src/traces/cone\":955}],12:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/contour\")},{\"../src/traces/contour\":970}],13:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/contourcarpet\")},{\"../src/traces/contourcarpet\":981}],14:[function(t,e,r){\"use strict\";e.exports=t(\"../src/core\")},{\"../src/core\":706}],15:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/densitymapbox\")},{\"../src/traces/densitymapbox\":989}],16:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/filter\")},{\"../src/transforms/filter\":1312}],17:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/funnel\")},{\"../src/traces/funnel\":999}],18:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/funnelarea\")},{\"../src/traces/funnelarea\":1008}],19:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/groupby\")},{\"../src/transforms/groupby\":1313}],20:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/heatmap\")},{\"../src/traces/heatmap\":1021}],21:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/heatmapgl\")},{\"../src/traces/heatmapgl\":1031}],22:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram\")},{\"../src/traces/histogram\":1043}],23:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram2d\")},{\"../src/traces/histogram2d\":1049}],24:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/histogram2dcontour\")},{\"../src/traces/histogram2dcontour\":1053}],25:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/image\")},{\"../src/traces/image\":1060}],26:[function(t,e,r){\"use strict\";var n=t(\"./core\");n.register([t(\"./bar\"),t(\"./box\"),t(\"./heatmap\"),t(\"./histogram\"),t(\"./histogram2d\"),t(\"./histogram2dcontour\"),t(\"./contour\"),t(\"./scatterternary\"),t(\"./violin\"),t(\"./funnel\"),t(\"./waterfall\"),t(\"./image\"),t(\"./pie\"),t(\"./sunburst\"),t(\"./treemap\"),t(\"./funnelarea\"),t(\"./scatter3d\"),t(\"./surface\"),t(\"./isosurface\"),t(\"./volume\"),t(\"./mesh3d\"),t(\"./cone\"),t(\"./streamtube\"),t(\"./scattergeo\"),t(\"./choropleth\"),t(\"./scattergl\"),t(\"./splom\"),t(\"./pointcloud\"),t(\"./heatmapgl\"),t(\"./parcoords\"),t(\"./parcats\"),t(\"./scattermapbox\"),t(\"./choroplethmapbox\"),t(\"./densitymapbox\"),t(\"./sankey\"),t(\"./indicator\"),t(\"./table\"),t(\"./carpet\"),t(\"./scattercarpet\"),t(\"./contourcarpet\"),t(\"./ohlc\"),t(\"./candlestick\"),t(\"./scatterpolar\"),t(\"./scatterpolargl\"),t(\"./barpolar\")]),n.register([t(\"./aggregate\"),t(\"./filter\"),t(\"./groupby\"),t(\"./sort\")]),n.register([t(\"./calendars\")]),e.exports=n},{\"./aggregate\":2,\"./bar\":3,\"./barpolar\":4,\"./box\":5,\"./calendars\":6,\"./candlestick\":7,\"./carpet\":8,\"./choropleth\":9,\"./choroplethmapbox\":10,\"./cone\":11,\"./contour\":12,\"./contourcarpet\":13,\"./core\":14,\"./densitymapbox\":15,\"./filter\":16,\"./funnel\":17,\"./funnelarea\":18,\"./groupby\":19,\"./heatmap\":20,\"./heatmapgl\":21,\"./histogram\":22,\"./histogram2d\":23,\"./histogram2dcontour\":24,\"./image\":25,\"./indicator\":27,\"./isosurface\":28,\"./mesh3d\":29,\"./ohlc\":30,\"./parcats\":31,\"./parcoords\":32,\"./pie\":33,\"./pointcloud\":34,\"./sankey\":35,\"./scatter3d\":36,\"./scattercarpet\":37,\"./scattergeo\":38,\"./scattergl\":39,\"./scattermapbox\":40,\"./scatterpolar\":41,\"./scatterpolargl\":42,\"./scatterternary\":43,\"./sort\":44,\"./splom\":45,\"./streamtube\":46,\"./sunburst\":47,\"./surface\":48,\"./table\":49,\"./treemap\":50,\"./violin\":51,\"./volume\":52,\"./waterfall\":53}],27:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/indicator\")},{\"../src/traces/indicator\":1068}],28:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/isosurface\")},{\"../src/traces/isosurface\":1074}],29:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/mesh3d\")},{\"../src/traces/mesh3d\":1079}],30:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/ohlc\")},{\"../src/traces/ohlc\":1084}],31:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/parcats\")},{\"../src/traces/parcats\":1093}],32:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/parcoords\")},{\"../src/traces/parcoords\":1103}],33:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/pie\")},{\"../src/traces/pie\":1114}],34:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/pointcloud\")},{\"../src/traces/pointcloud\":1123}],35:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/sankey\")},{\"../src/traces/sankey\":1129}],36:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatter3d\")},{\"../src/traces/scatter3d\":1166}],37:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattercarpet\")},{\"../src/traces/scattercarpet\":1173}],38:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattergeo\")},{\"../src/traces/scattergeo\":1181}],39:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattergl\")},{\"../src/traces/scattergl\":1194}],40:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scattermapbox\")},{\"../src/traces/scattermapbox\":1204}],41:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterpolar\")},{\"../src/traces/scatterpolar\":1212}],42:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterpolargl\")},{\"../src/traces/scatterpolargl\":1219}],43:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/scatterternary\")},{\"../src/traces/scatterternary\":1227}],44:[function(t,e,r){\"use strict\";e.exports=t(\"../src/transforms/sort\")},{\"../src/transforms/sort\":1315}],45:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/splom\")},{\"../src/traces/splom\":1236}],46:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/streamtube\")},{\"../src/traces/streamtube\":1244}],47:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/sunburst\")},{\"../src/traces/sunburst\":1252}],48:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/surface\")},{\"../src/traces/surface\":1261}],49:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/table\")},{\"../src/traces/table\":1269}],50:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/treemap\")},{\"../src/traces/treemap\":1278}],51:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/violin\")},{\"../src/traces/violin\":1290}],52:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/volume\")},{\"../src/traces/volume\":1298}],53:[function(t,e,r){\"use strict\";e.exports=t(\"../src/traces/waterfall\")},{\"../src/traces/waterfall\":1306}],54:[function(t,e,r){\"use strict\";e.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=a(),f=i();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=t(\"turntable-camera-controller\"),a=t(\"orbit-camera-controller\"),i=t(\"matrix-camera-controller\");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;[[\"flush\",1],[\"idle\",1],[\"lookAt\",4],[\"rotate\",4],[\"pan\",4],[\"translate\",4],[\"setMatrix\",2],[\"setDistanceLimits\",2],[\"setDistance\",2]].forEach((function(t){for(var e=t[0],r=[],n=0;n1||a>1)}function M(t,e,r){return t.sort(E),t.forEach((function(n,a){var i,o,s=0;if(H(n,r)&&A(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 S(t,r,a,i){var o=e.min(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),M(t.links.filter((function(t){return\"top\"==t.circularLinkType})),r,i),M(t.links.filter((function(t){return\"bottom\"==t.circularLinkType})),r,i),t.links.forEach((function(e){if(e.circular){if(e.circularPathData.arcRadius=e.width+10,e.circularPathData.leftNodeBuffer=5,e.circularPathData.rightNodeBuffer=5,e.circularPathData.sourceWidth=e.source.x1-e.source.x0,e.circularPathData.sourceX=e.source.x0+e.circularPathData.sourceWidth,e.circularPathData.targetX=e.target.x0,e.circularPathData.sourceY=e.y0,e.circularPathData.targetY=e.y1,H(e,i)&&A(e))e.circularPathData.leftSmallArcRadius=10+e.width/2,e.circularPathData.leftLargeArcRadius=10+e.width/2,e.circularPathData.rightSmallArcRadius=10+e.width/2,e.circularPathData.rightLargeArcRadius=10+e.width/2,\"bottom\"==e.circularLinkType?(e.circularPathData.verticalFullExtent=e.source.y1+25+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=e.source.y0-25-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius);else{var s=e.source.column,l=e.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));\"bottom\"==e.circularLinkType?c.sort(L):c.sort(C);var u=0;c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.leftSmallArcRadius=10+e.width/2+u,e.circularPathData.leftLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),s=e.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),\"bottom\"==e.circularLinkType?c.sort(I):c.sort(P),u=0,c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.rightSmallArcRadius=10+e.width/2+u,e.circularPathData.rightLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),\"bottom\"==e.circularLinkType?(e.circularPathData.verticalFullExtent=Math.max(a,e.source.y1,e.target.y1)+25+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=o-25-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius)}e.circularPathData.leftInnerExtent=e.circularPathData.sourceX+e.circularPathData.leftNodeBuffer,e.circularPathData.rightInnerExtent=e.circularPathData.targetX-e.circularPathData.rightNodeBuffer,e.circularPathData.leftFullExtent=e.circularPathData.sourceX+e.circularPathData.leftLargeArcRadius+e.circularPathData.leftNodeBuffer,e.circularPathData.rightFullExtent=e.circularPathData.targetX-e.circularPathData.rightLargeArcRadius-e.circularPathData.rightNodeBuffer}if(e.circular)e.path=function(t){var e=\"\";e=\"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;return e}(e);else{var h=n.linkHorizontal().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));e.path=h(e)}}))}function E(t,e){return z(t)==z(e)?\"bottom\"==t.circularLinkType?L(t,e):C(t,e):z(e)-z(t)}function C(t,e){return t.y0-e.y0}function L(t,e){return e.y0-t.y0}function P(t,e){return t.y1-e.y1}function I(t,e){return e.y1-t.y1}function z(t){return t.target.column-t.source.column}function O(t){return t.target.x0-t.source.x1}function D(t,e){var r=T(t),n=O(e)/Math.tan(r);return\"up\"==q(t)?t.y1+n:t.y1-n}function R(t,e){var r=T(t),n=O(e)/Math.tan(r);return\"up\"==q(t)?t.y1-n:t.y1+n}function F(t,e,r,n){t.links.forEach((function(a){if(!a.circular&&a.target.column-a.source.column>1){var i=a.source.column+1,o=a.target.column-1,s=1,l=o-i+1;for(s=1;i<=o;i++,s++)t.nodes.forEach((function(o){if(o.column==i){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),g=h*a.y0+f*a.y0+p*a.y1+d*a.y1,m=g-a.width/2,v=g+a.width/2;m>o.y0&&mo.y0&&vo.y1)&&(c=v-o.y0+10,o=N(o,c,e,r),t.nodes.forEach((function(t){b(t,n)!=b(o,n)&&t.column==o.column&&t.y0o.y1&&N(t,c,e,r)})))}}))}}))}function B(t,e){return t.y0>e.y0&&t.y0e.y0&&t.y1e.y1)}function N(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 j(t,e,r,n){t.nodes.forEach((function(a){n&&a.y+(a.y1-a.y0)>e&&(a.y=a.y-(a.y+(a.y1-a.y0)-e));var i=t.links.filter((function(t){return b(t.source,r)==b(a,r)})),o=i.length;o>1&&i.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!U(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var r=R(e,t);return t.y1-r}if(e.target.column>t.target.column)return R(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=a.y0;i.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),i.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(!U(t,e))return t.y0-e.y0;if(e.source.column0?\"up\":\"down\"}function H(t,e){return b(t.source,e)==b(t.target,e)}function G(t,r,n){var a=t.nodes,i=t.links,o=!1,s=!1;if(i.forEach((function(t){\"top\"==t.circularLinkType?o=!0:\"bottom\"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=e.min(a,(function(t){return t.y0})),c=(n-r)/(e.max(a,(function(t){return t.y1}))-l);a.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),i.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}t.sankeyCircular=function(){var t,n,a=0,i=0,b=1,T=1,A=24,M=m,E=o,C=v,L=y,P=32,I=2,z=null;function O(){var t={nodes:C.apply(null,arguments),links:L.apply(null,arguments)};D(t),_(t,M,z),R(t),B(t),w(t,M),N(t,P,M),U(t);for(var e=4,r=0;r0?r+25+10:r,bottom:n=n>0?n+25+10:n,left:i=i>0?i+25+10:i,right:a=a>0?a+25+10:a}}(o),h=function(t,r){var n=e.max(t.nodes,(function(t){return t.column})),o=b-a,s=T-i,l=o/(o+r.right+r.left),c=s/(s+r.top+r.bottom);return a=a*l+r.left,b=0==r.right?b:b*l,i=i*c+r.top,T*=c,t.nodes.forEach((function(t){t.x0=a+t.column*((b-a-A)/n),t.x1=t.x0+A})),c}(o,u);l*=h,o.links.forEach((function(t){t.width=t.value*l})),c.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==c.length-1&&1==e||0==t.depth&&1==e?(t.y0=T/2-t.value*l,t.y1=t.y0+t.value*l):t.partOfCycle?0==k(t,r)?(t.y0=T/2+n,t.y1=t.y0+t.value*l):\"top\"==t.circularLinkType?(t.y0=i+n,t.y1=t.y0+t.value*l):(t.y0=T-t.value*l-n,t.y1=t.y0+t.value*l):0==u.top||0==u.bottom?(t.y0=(T-i)/e*n,t.y1=t.y0+t.value*l):(t.y0=(T-i)/2-e/2+n,t.y1=t.y0+t.value*l)}))}))}(l),y();for(var u=1,m=s;m>0;--m)v(u*=.99,l),y();function v(t,r){var n=c.length;c.forEach((function(a){var i=a.length,o=a[0].depth;a.forEach((function(a){var s;if(a.sourceLinks.length||a.targetLinks.length)if(a.partOfCycle&&k(a,r)>0);else if(0==o&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else if(o==n-1&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else{var l=e.mean(a.sourceLinks,g),c=e.mean(a.targetLinks,d),u=((l&&c?(l+c)/2:l||c)-p(a))*t;a.y0+=u,a.y1+=u}}))}))}function y(){c.forEach((function(e){var r,n,a,o=i,s=e.length;for(e.sort(h),a=0;a0&&(r.y0+=n,r.y1+=n),o=r.y1+t;if((n=o-t-T)>0)for(o=r.y0-=n,r.y1-=n,a=s-2;a>=0;--a)(n=(r=e[a]).y1+t-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}function U(t){t.nodes.forEach((function(t){t.sourceLinks.sort(u),t.targetLinks.sort(c)})),t.nodes.forEach((function(t){var e=t.y0,r=e,n=t.y1,a=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=a-t.width/2,a-=t.width):(t.y1=r+t.width/2,r+=t.width)}))}))}return O.nodeId=function(t){return arguments.length?(M=\"function\"==typeof t?t:s(t),O):M},O.nodeAlign=function(t){return arguments.length?(E=\"function\"==typeof t?t:s(t),O):E},O.nodeWidth=function(t){return arguments.length?(A=+t,O):A},O.nodePadding=function(e){return arguments.length?(t=+e,O):t},O.nodes=function(t){return arguments.length?(C=\"function\"==typeof t?t:s(t),O):C},O.links=function(t){return arguments.length?(L=\"function\"==typeof t?t:s(t),O):L},O.size=function(t){return arguments.length?(a=i=0,b=+t[0],T=+t[1],O):[b-a,T-i]},O.extent=function(t){return arguments.length?(a=+t[0][0],b=+t[1][0],i=+t[0][1],T=+t[1][1],O):[[a,i],[b,T]]},O.iterations=function(t){return arguments.length?(P=+t,O):P},O.circularLinkGap=function(t){return arguments.length?(I=+t,O):I},O.nodePaddingRatio=function(t){return arguments.length?(n=+t,O):n},O.sortNodes=function(t){return arguments.length?(z=t,O):z},O.update=function(t){return w(t,M),U(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y1i&&(b=i);var o=e.min(a,(function(t){return(y-n-(t.length-1)*b)/e.sum(t,u)}));a.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*o}))})),t.links.forEach((function(t){t.width=t.value*o}))}(),d();for(var i=1,o=A;o>0;--o)l(i*=.99),d(),s(i),d();function s(t){a.forEach((function(r){r.forEach((function(r){if(r.targetLinks.length){var n=(e.sum(r.targetLinks,f)/e.sum(r.targetLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function l(t){a.slice().reverse().forEach((function(r){r.forEach((function(r){if(r.sourceLinks.length){var n=(e.sum(r.sourceLinks,p)/e.sum(r.sourceLinks,u)-h(r))*t;r.y0+=n,r.y1+=n}}))}))}function d(){a.forEach((function(t){var e,r,a,i=n,o=t.length;for(t.sort(c),a=0;a0&&(e.y0+=r,e.y1+=r),i=e.y1+b;if((r=i-b-y)>0)for(i=e.y0-=r,e.y1-=r,a=o-2;a>=0;--a)(r=(e=t[a]).y1+b-i)>0&&(e.y0-=r,e.y1-=r),i=e.y0}))}}function P(t){t.nodes.forEach((function(t){t.sourceLinks.sort(l),t.targetLinks.sort(s)})),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 P(t),t},M.nodeId=function(t){return arguments.length?(_=\"function\"==typeof t?t:o(t),M):_},M.nodeAlign=function(t){return arguments.length?(w=\"function\"==typeof t?t:o(t),M):w},M.nodeWidth=function(t){return arguments.length?(x=+t,M):x},M.nodePadding=function(t){return arguments.length?(b=+t,M):b},M.nodes=function(t){return arguments.length?(T=\"function\"==typeof t?t:o(t),M):T},M.links=function(t){return arguments.length?(k=\"function\"==typeof t?t:o(t),M):k},M.size=function(e){return arguments.length?(t=n=0,a=+e[0],y=+e[1],M):[a-t,y-n]},M.extent=function(e){return arguments.length?(t=+e[0][0],a=+e[1][0],n=+e[0][1],y=+e[1][1],M):[[t,n],[a,y]]},M.iterations=function(t){return arguments.length?(A=+t,M):A},M},t.sankeyCenter=function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?e.min(t.sourceLinks,a)-1:0},t.sankeyLeft=function(t){return t.depth},t.sankeyRight=function(t,e){return e-1-t.height},t.sankeyJustify=i,t.sankeyLinkHorizontal=function(){return n.linkHorizontal().source(y).target(x)},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{\"d3-array\":153,\"d3-collection\":154,\"d3-shape\":162}],57:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/meta\");function a(t){var e=0;if(t&&t.length>0){e+=Math.abs(i(t[0]));for(var r=1;r2){for(s=0;st[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]=0))throw new Error(\"precision must be a positive number\");var r=Math.pow(10,e||0);return Math.round(t*r)/r},r.radiansToLength=h,r.lengthToRadians=f,r.lengthToDegrees=function(t,e){return p(f(t,e))},r.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},r.radiansToDegrees=p,r.degreesToRadians=function(t){return t%360*Math.PI/180},r.convertLength=function(t,e,r){if(void 0===e&&(e=\"kilometers\"),void 0===r&&(r=\"kilometers\"),!(t>=0))throw new Error(\"length must be a positive number\");return h(f(t,e),r)},r.convertArea=function(t,e,n){if(void 0===e&&(e=\"meters\"),void 0===n&&(n=\"kilometers\"),!(t>=0))throw new Error(\"area must be a positive number\");var a=r.areaFactors[e];if(!a)throw new Error(\"invalid original units\");var i=r.areaFactors[n];if(!i)throw new Error(\"invalid final units\");return t/a*i},r.isNumber=d,r.isObject=function(t){return!!t&&t.constructor===Object},r.validateBBox=function(t){if(!t)throw new Error(\"bbox is required\");if(!Array.isArray(t))throw new Error(\"bbox must be an Array\");if(4!==t.length&&6!==t.length)throw new Error(\"bbox must be an Array of 4 or 6 numbers\");t.forEach((function(t){if(!d(t))throw new Error(\"bbox must only contain numbers\")}))},r.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\")},r.radians2degrees=function(){throw new Error(\"method has been renamed to `radiansToDegrees`\")},r.degrees2radians=function(){throw new Error(\"method has been renamed to `degreesToRadians`\")},r.distanceToDegrees=function(){throw new Error(\"method has been renamed to `lengthToDegrees`\")},r.distanceToRadians=function(){throw new Error(\"method has been renamed to `lengthToRadians`\")},r.radiansToDistance=function(){throw new Error(\"method has been renamed to `radiansToLength`\")},r.bearingToAngle=function(){throw new Error(\"method has been renamed to `bearingToAzimuth`\")},r.convertDistance=function(){throw new Error(\"method has been renamed to `convertLength`\")}},{}],61:[function(t,e,r){\"use strict\";Object.defineProperty(r,\"__esModule\",{value:!0});var n=t(\"@turf/helpers\");function a(t,e,r){if(null!==t)for(var n,i,o,s,l,c,u,h,f=0,p=0,d=t.type,g=\"FeatureCollection\"===d,m=\"Feature\"===d,v=g?t.features.length:1,y=0;yc||p>u||d>h)return l=a,c=r,u=p,h=d,void(o=0);var g=n.lineString([l,a],t.properties);if(!1===e(g,r,i,d,o))return!1;o++,l=a}))&&void 0}}}))}function u(t,e){if(!t)throw new Error(\"geojson is required\");l(t,(function(t,r,a){if(null!==t.geometry){var i=t.geometry.type,o=t.geometry.coordinates;switch(i){case\"LineString\":if(!1===e(t,r,a,0,0))return!1;break;case\"Polygon\":for(var s=0;sa&&(a=t[o]),t[o] \n", " * @license MIT\n", " */function a(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,a=0,i=Math.min(r,n);a=0;c--)if(u[c]!==h[c])return!1;for(c=u.length-1;c>=0;c--)if(s=u[c],!x(t[s],e[s],r,n))return!1;return!0}(t,e,r,n))}return r?t===e:t==e}function b(t){return\"[object Arguments]\"==Object.prototype.toString.call(t)}function _(t,e){if(!t||!e)return!1;if(\"[object RegExp]\"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function w(t,e,r,n){var a;if(\"function\"!=typeof e)throw new TypeError('\"block\" argument must be a function');\"string\"==typeof r&&(n=r,r=null),a=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?\" (\"+r.name+\").\":\".\")+(n?\" \"+n:\".\"),t&&!a&&v(a,r,\"Missing expected exception\"+n);var i=\"string\"==typeof n,s=!t&&a&&!r;if((!t&&o.isError(a)&&i&&_(a,r)||s)&&v(a,r,\"Got unwanted exception\"+n),t&&a&&r&&!_(a,r)||!t&&a)throw a}f.AssertionError=function(t){this.name=\"AssertionError\",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=function(t){return g(m(t.actual),128)+\" \"+t.operator+\" \"+g(m(t.expected),128)}(this),this.generatedMessage=!0);var e=t.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,a=d(e),i=n.indexOf(\"\\n\"+a);if(i>=0){var o=n.indexOf(\"\\n\",i+1);n=n.substring(o+1)}this.stack=n}}},o.inherits(f.AssertionError,Error),f.fail=v,f.ok=y,f.equal=function(t,e,r){t!=e&&v(t,e,r,\"==\",f.equal)},f.notEqual=function(t,e,r){t==e&&v(t,e,r,\"!=\",f.notEqual)},f.deepEqual=function(t,e,r){x(t,e,!1)||v(t,e,r,\"deepEqual\",f.deepEqual)},f.deepStrictEqual=function(t,e,r){x(t,e,!0)||v(t,e,r,\"deepStrictEqual\",f.deepStrictEqual)},f.notDeepEqual=function(t,e,r){x(t,e,!1)&&v(t,e,r,\"notDeepEqual\",f.notDeepEqual)},f.notDeepStrictEqual=function t(e,r,n){x(e,r,!0)&&v(e,r,n,\"notDeepStrictEqual\",t)},f.strictEqual=function(t,e,r){t!==e&&v(t,e,r,\"===\",f.strictEqual)},f.notStrictEqual=function(t,e,r){t===e&&v(t,e,r,\"!==\",f.notStrictEqual)},f.throws=function(t,e,r){w(!0,t,e,r)},f.doesNotThrow=function(t,e,r){w(!1,t,e,r)},f.ifError=function(t){if(t)throw t},f.strict=n((function t(e,r){e||v(e,!0,r,\"==\",t)}),f,{equal:f.strictEqual,deepEqual:f.deepStrictEqual,notEqual:f.notStrictEqual,notDeepEqual:f.notDeepStrictEqual}),f.strict.strict=f.strict;var T=Object.keys||function(t){var e=[];for(var r in t)s.call(t,r)&&e.push(r);return e}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"object-assign\":452,\"util/\":74}],72:[function(t,e,r){\"function\"==typeof Object.create?e.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],73:[function(t,e,r){e.exports=function(t){return t&&\"object\"==typeof t&&\"function\"==typeof t.copy&&\"function\"==typeof t.fill&&\"function\"==typeof t.readUInt8}},{}],74:[function(t,e,r){(function(e,n){var a=/%[sdj%]/g;r.format=function(t){if(!v(t)){for(var e=[],r=0;r=i)return t;switch(t){case\"%s\":return String(n[r++]);case\"%d\":return Number(n[r++]);case\"%j\":try{return JSON.stringify(n[r++])}catch(t){return\"[Circular]\"}default:return t}})),l=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(e)?n.showHidden=e:e&&r._extend(n,e),y(n.showHidden)&&(n.showHidden=!1),y(n.depth)&&(n.depth=2),y(n.colors)&&(n.colors=!1),y(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),u(n,t,n.depth)}function l(t,e){var r=s.styles[e];return r?\"\\x1b[\"+s.colors[r][0]+\"m\"+t+\"\\x1b[\"+s.colors[r][1]+\"m\":t}function c(t,e){return t}function u(t,e,n){if(t.customInspect&&e&&T(e.inspect)&&e.inspect!==r.inspect&&(!e.constructor||e.constructor.prototype!==e)){var a=e.inspect(n,t);return v(a)||(a=u(t,a,n)),a}var i=function(t,e){if(y(e))return t.stylize(\"undefined\",\"undefined\");if(v(e)){var r=\"'\"+JSON.stringify(e).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return t.stylize(r,\"string\")}if(m(e))return t.stylize(\"\"+e,\"number\");if(d(e))return t.stylize(\"\"+e,\"boolean\");if(g(e))return t.stylize(\"null\",\"null\")}(t,e);if(i)return i;var o=Object.keys(e),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(e)),w(e)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return h(e);if(0===o.length){if(T(e)){var l=e.name?\": \"+e.name:\"\";return t.stylize(\"[Function\"+l+\"]\",\"special\")}if(x(e))return t.stylize(RegExp.prototype.toString.call(e),\"regexp\");if(_(e))return t.stylize(Date.prototype.toString.call(e),\"date\");if(w(e))return h(e)}var c,b=\"\",k=!1,A=[\"{\",\"}\"];(p(e)&&(k=!0,A=[\"[\",\"]\"]),T(e))&&(b=\" [Function\"+(e.name?\": \"+e.name:\"\")+\"]\");return x(e)&&(b=\" \"+RegExp.prototype.toString.call(e)),_(e)&&(b=\" \"+Date.prototype.toUTCString.call(e)),w(e)&&(b=\" \"+h(e)),0!==o.length||k&&0!=e.length?n<0?x(e)?t.stylize(RegExp.prototype.toString.call(e),\"regexp\"):t.stylize(\"[Object]\",\"special\"):(t.seen.push(e),c=k?function(t,e,r,n,a){for(var i=[],o=0,s=e.length;o=0&&0,t+e.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1}),0)>60)return r[0]+(\"\"===e?\"\":e+\"\\n \")+\" \"+t.join(\",\\n \")+\" \"+r[1];return r[0]+e+\" \"+t.join(\", \")+\" \"+r[1]}(c,b,A)):A[0]+b+A[1]}function h(t){return\"[\"+Error.prototype.toString.call(t)+\"]\"}function f(t,e,r,n,a,i){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,a)||{value:e[a]}).get?s=l.set?t.stylize(\"[Getter/Setter]\",\"special\"):t.stylize(\"[Getter]\",\"special\"):l.set&&(s=t.stylize(\"[Setter]\",\"special\")),E(n,a)||(o=\"[\"+a+\"]\"),s||(t.seen.indexOf(l.value)<0?(s=g(r)?u(t,l.value,null):u(t,l.value,r-1)).indexOf(\"\\n\")>-1&&(s=i?s.split(\"\\n\").map((function(t){return\" \"+t})).join(\"\\n\").substr(2):\"\\n\"+s.split(\"\\n\").map((function(t){return\" \"+t})).join(\"\\n\")):s=t.stylize(\"[Circular]\",\"special\")),y(o)){if(i&&a.match(/^\\d+$/))return s;(o=JSON.stringify(\"\"+a)).match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(o=o.substr(1,o.length-2),o=t.stylize(o,\"name\")):(o=o.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),o=t.stylize(o,\"string\"))}return o+\": \"+s}function p(t){return Array.isArray(t)}function d(t){return\"boolean\"==typeof t}function g(t){return null===t}function m(t){return\"number\"==typeof t}function v(t){return\"string\"==typeof t}function y(t){return void 0===t}function x(t){return b(t)&&\"[object RegExp]\"===k(t)}function b(t){return\"object\"==typeof t&&null!==t}function _(t){return b(t)&&\"[object Date]\"===k(t)}function w(t){return b(t)&&(\"[object Error]\"===k(t)||t instanceof Error)}function T(t){return\"function\"==typeof t}function k(t){return Object.prototype.toString.call(t)}function A(t){return t<10?\"0\"+t.toString(10):t.toString(10)}r.debuglog=function(t){if(y(i)&&(i=e.env.NODE_DEBUG||\"\"),t=t.toUpperCase(),!o[t])if(new RegExp(\"\\\\b\"+t+\"\\\\b\",\"i\").test(i)){var n=e.pid;o[t]=function(){var e=r.format.apply(r,arguments);console.error(\"%s %d: %s\",t,n,e)}}else o[t]=function(){};return o[t]},r.inspect=s,s.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]},s.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},r.isArray=p,r.isBoolean=d,r.isNull=g,r.isNullOrUndefined=function(t){return null==t},r.isNumber=m,r.isString=v,r.isSymbol=function(t){return\"symbol\"==typeof t},r.isUndefined=y,r.isRegExp=x,r.isObject=b,r.isDate=_,r.isError=w,r.isFunction=T,r.isPrimitive=function(t){return null===t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||\"symbol\"==typeof t||\"undefined\"==typeof t},r.isBuffer=t(\"./support/isBuffer\");var M=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];function S(){var t=new Date,e=[A(t.getHours()),A(t.getMinutes()),A(t.getSeconds())].join(\":\");return[t.getDate(),M[t.getMonth()],e].join(\" \")}function E(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.log=function(){console.log(\"%s - %s\",S(),r.format.apply(r,arguments))},r.inherits=t(\"inherits\"),r._extend=function(t,e){if(!e||!b(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}}).call(this,t(\"_process\"),\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"./support/isBuffer\":73,_process:480,inherits:72}],75:[function(t,e,r){e.exports=function(t){return atob(t)}},{}],76:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=e.length,i=new Array(r+1),o=0;o0?o-4:o;for(r=0;r>16&255,l[u++]=e>>8&255,l[u++]=255&e;2===s&&(e=a[t.charCodeAt(r)]<<2|a[t.charCodeAt(r+1)]>>4,l[u++]=255&e);1===s&&(e=a[t.charCodeAt(r)]<<10|a[t.charCodeAt(r+1)]<<4|a[t.charCodeAt(r+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e);return l},r.fromByteArray=function(t){for(var e,r=t.length,a=r%3,i=[],o=0,s=r-a;os?s:o+16383));1===a?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+\"==\")):2===a&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+\"=\"));return i.join(\"\")};for(var n=[],a=[],i=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",s=0,l=o.length;s0)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 u(t,e,r){for(var a,i,o=[],s=e;s>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return o.join(\"\")}a[\"-\".charCodeAt(0)]=62,a[\"_\".charCodeAt(0)]=63},{}],78:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]).add(e[0].mul(t[1])),t[1].mul(e[1]))}},{\"./lib/rationalize\":88}],79:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t[0].mul(e[1]).cmp(e[0].mul(t[1]))}},{}],80:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]),t[1].mul(e[0]))}},{\"./lib/rationalize\":88}],81:[function(t,e,r){\"use strict\";var n=t(\"./is-rat\"),a=t(\"./lib/is-bn\"),i=t(\"./lib/num-to-bn\"),o=t(\"./lib/str-to-bn\"),s=t(\"./lib/rationalize\"),l=t(\"./div\");e.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(a(e))c=e.clone();else if(\"string\"==typeof e)c=o(e);else{if(0===e)return[i(0),i(1)];if(e===Math.floor(e))c=i(e);else{for(;e!==Math.floor(e);)e*=Math.pow(2,256),h-=256;c=i(e)}}if(n(r))c.mul(r[1]),u=r[0].clone();else if(a(r))u=r.clone();else if(\"string\"==typeof r)u=o(r);else if(r)if(r===Math.floor(r))u=i(r);else{for(;r!==Math.floor(r);)r*=Math.pow(2,256),h+=256;u=i(r)}else u=i(1);h>0?c=c.ushln(h):h<0&&(u=u.ushln(-h));return s(c,u)}},{\"./div\":80,\"./is-rat\":82,\"./lib/is-bn\":86,\"./lib/num-to-bn\":87,\"./lib/rationalize\":88,\"./lib/str-to-bn\":89}],82:[function(t,e,r){\"use strict\";var n=t(\"./lib/is-bn\");e.exports=function(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}},{\"./lib/is-bn\":86}],83:[function(t,e,r){\"use strict\";var n=t(\"bn.js\");e.exports=function(t){return t.cmp(new n(0))}},{\"bn.js\":97}],84:[function(t,e,r){\"use strict\";var n=t(\"./bn-sign\");e.exports=function(t){var e=t.length,r=t.words,a=0;if(1===e)a=r[0];else if(2===e)a=r[0]+67108864*r[1];else for(var i=0;i20)return 52;return r+32}},{\"bit-twiddle\":95,\"double-bits\":168}],86:[function(t,e,r){\"use strict\";t(\"bn.js\");e.exports=function(t){return t&&\"object\"==typeof t&&Boolean(t.words)}},{\"bn.js\":97}],87:[function(t,e,r){\"use strict\";var n=t(\"bn.js\"),a=t(\"double-bits\");e.exports=function(t){var e=a.exponent(t);return e<52?new n(t):new n(t*Math.pow(2,52-e)).ushln(e-52)}},{\"bn.js\":97,\"double-bits\":168}],88:[function(t,e,r){\"use strict\";var n=t(\"./num-to-bn\"),a=t(\"./bn-sign\");e.exports=function(t,e){var r=a(t),i=a(e);if(0===r)return[n(0),n(1)];if(0===i)return[n(0),n(0)];i<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);if(o.cmpn(1))return[t.div(o),e.div(o)];return[t,e]}},{\"./bn-sign\":83,\"./num-to-bn\":87}],89:[function(t,e,r){\"use strict\";var n=t(\"bn.js\");e.exports=function(t){return new n(t)}},{\"bn.js\":97}],90:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}},{\"./lib/rationalize\":88}],91:[function(t,e,r){\"use strict\";var n=t(\"./lib/bn-sign\");e.exports=function(t){return n(t[0])*n(t[1])}},{\"./lib/bn-sign\":83}],92:[function(t,e,r){\"use strict\";var n=t(\"./lib/rationalize\");e.exports=function(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},{\"./lib/rationalize\":88}],93:[function(t,e,r){\"use strict\";var n=t(\"./lib/bn-to-num\"),a=t(\"./lib/ctz\");e.exports=function(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var i=e.abs().divmod(r.abs()),o=i.div,s=n(o),l=i.mod,c=e.negative!==r.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=a(s)+4,h=n(l.ushln(u).divRound(r));return c*(s+h*Math.pow(2,-u))}var f=r.bitLength()-l.bitLength()+53;h=n(l.ushln(f).divRound(r));return f<1023?c*h*Math.pow(2,-f):(h*=Math.pow(2,-1023),c*h*Math.pow(2,1023-f))}},{\"./lib/bn-to-num\":84,\"./lib/ctz\":85}],94:[function(t,e,r){\"use strict\";function n(t,e,r,n,a){var i=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",a?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a[m]\"];return a?e.indexOf(\"c\")<0?i.push(\";if(x===y){return m}else if(x<=y){\"):i.push(\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):i.push(\";if(\",e,\"){i=m;\"),r?i.push(\"l=m+1}else{h=m-1}\"):i.push(\"h=m-1}else{l=m+1}\"),i.push(\"}\"),a?i.push(\"return -1};\"):i.push(\"return i};\"),i.join(\"\")}function a(t,e,r,a){return new Function([n(\"A\",\"x\"+t+\"y\",e,[\"y\"],a),n(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],a),\"function dispatchBsearch\",r,\"(a,y,c,l,h){if(typeof(c)==='function'){return P(a,(l===void 0)?0:l|0,(h===void 0)?a.length-1:h|0,y,c)}else{return A(a,(c===void 0)?0:c|0,(l===void 0)?a.length-1:l|0,y)}}return dispatchBsearch\",r].join(\"\"))()}e.exports={ge:a(\">=\",!1,\"GE\"),gt:a(\">\",!1,\"GT\"),lt:a(\"<\",!0,\"LT\"),le:a(\"<=\",!0,\"LE\"),eq:a(\"-\",!0,\"EQ\",!0)}},{}],95:[function(t,e,r){\"use strict\";function n(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}r.INT_BITS=32,r.INT_MAX=2147483647,r.INT_MIN=-1<<31,r.sign=function(t){return(t>0)-(t<0)},r.abs=function(t){var e=t>>31;return(t^e)-e},r.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},r.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},r.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var a=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,a=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--a;t[e]=n<>>8&255]<<16|a[t>>>16&255]<<8|a[t>>>24&255]},r.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},r.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},r.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},r.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},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],96:[function(t,e,r){\"use strict\";var n=t(\"clamp\");e.exports=function(t,e){e||(e={});var r,o,s,l,c,u,h,f,p,d,g,m=null==e.cutoff?.25:e.cutoff,v=null==e.radius?8:e.radius,y=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error(\"For raw data width and height should be provided by options\");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,p=h.getImageData(0,0,r,o),l=p.data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(f=t.canvas,h=t,r=f.width,o=f.height,p=h.getImageData(0,0,r,o),l=p.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,g=c.length;d=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return n}function l(t,e,r,n){for(var a=0,i=Math.min(t.length,r),o=e;o=49?s-49+10:s>=17?s-17+10:s}return a}i.isBN=function(t){return t instanceof i||null!==t&&\"object\"==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,e){return t.cmp(e)>0?t:e},i.min=function(t,e){return t.cmp(e)<0?t:e},i.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 a=0;\"-\"===(t=t.toString().replace(/\\s+/g,\"\"))[0]&&a++,16===e?this._parseHex(t,a):this._parseBase(t,e,a),\"-\"===t[0]&&(this.negative=1),this.strip(),\"le\"===r&&this._initArray(this.toArray(),e,r)},i.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(n(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),\"le\"===r&&this._initArray(this.toArray(),e,r)},i.prototype._initArray=function(t,e,r){if(n(\"number\"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var a=0;a=0;a-=3)o=t[a]|t[a-1]<<8|t[a-2]<<16,this.words[i]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);else if(\"le\"===r)for(a=0,i=0;a>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)a=s(t,r,r+6),this.words[n]|=a<>>26-i&4194303,(i+=24)>=26&&(i-=26,n++);r+6!==e&&(a=s(t,e,r+6),this.words[n]|=a<>>26-i&4194303),this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,a=1;a<=67108863;a*=e)n++;n--,a=a/e|0;for(var i=t.length-r,o=i%n,s=Math.min(i,i-o)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?\"\"};var c=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],u=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var a=0|t.words[0],i=0|e.words[0],o=a*i,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=(a=0|t.words[d])*(i=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()}i.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||\"hex\"===t){r=\"\";for(var a=0,i=0,o=0;o>>24-a&16777215)||o!==this.length-1?c[6-l.length]+l+r:l+r,(a+=2)>=26&&(a-=26,o--)}for(0!==i&&(r=i.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 f=u[t],p=h[t];r=\"\";var d=this.clone();for(d.negative=0;!d.isZero();){var g=d.modn(p).toString(t);r=(d=d.idivn(p)).isZero()?g+r:c[f-g.length]+g+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\")},i.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},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,e){return n(\"undefined\"!=typeof o),this.toArrayLike(o,t,e)},i.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},i.prototype.toArrayLike=function(t,e,r){var a=this.byteLength(),i=r||Math.max(1,a);n(a<=i,\"byte array longer than desired length\"),n(i>0,\"Requested array length <= 0\"),this.strip();var o,s,l=\"le\"===e,c=new t(i),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},i.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},i.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.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)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.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)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.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 a=0;a0&&(this.words[a]=~this.words[a]&67108863>>26-r),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,e){n(\"number\"==typeof t&&t>=0);var r=t/26|0,a=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 a=0,i=0;i>>26;for(;0!==a&&i>>26;if(this.length=r.length,0!==a)this.words[this.length]=a,this.length++;else if(r!==this)for(;it.length?this.clone().iadd(t):t.clone().iadd(this)},i.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,a=this.cmp(t);if(0===a)return this.negative=0,this.length=1,this.words[0]=0,this;a>0?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>26,this.words[o]=67108863&e;for(;0!==i&&o>26,this.words[o]=67108863&e;if(0===i&&o>>13,p=0|o[1],d=8191&p,g=p>>>13,m=0|o[2],v=8191&m,y=m>>>13,x=0|o[3],b=8191&x,_=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,P=0|o[7],I=8191&P,z=P>>>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],V=8191&j,U=j>>>13,q=0|s[1],H=8191&q,G=q>>>13,Y=0|s[2],W=8191&Y,Z=Y>>>13,X=0|s[3],J=8191&X,K=X>>>13,Q=0|s[4],$=8191&Q,tt=Q>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,at=0|s[6],it=8191&at,ot=at>>>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,gt=pt>>>13;r.negative=t.negative^e.negative,r.length=19;var mt=(c+(n=Math.imul(h,V))|0)+((8191&(a=(a=Math.imul(h,U))+Math.imul(f,V)|0))<<13)|0;c=((i=Math.imul(f,U))+(a>>>13)|0)+(mt>>>26)|0,mt&=67108863,n=Math.imul(d,V),a=(a=Math.imul(d,U))+Math.imul(g,V)|0,i=Math.imul(g,U);var vt=(c+(n=n+Math.imul(h,H)|0)|0)+((8191&(a=(a=a+Math.imul(h,G)|0)+Math.imul(f,H)|0))<<13)|0;c=((i=i+Math.imul(f,G)|0)+(a>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,V),a=(a=Math.imul(v,U))+Math.imul(y,V)|0,i=Math.imul(y,U),n=n+Math.imul(d,H)|0,a=(a=a+Math.imul(d,G)|0)+Math.imul(g,H)|0,i=i+Math.imul(g,G)|0;var yt=(c+(n=n+Math.imul(h,W)|0)|0)+((8191&(a=(a=a+Math.imul(h,Z)|0)+Math.imul(f,W)|0))<<13)|0;c=((i=i+Math.imul(f,Z)|0)+(a>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(b,V),a=(a=Math.imul(b,U))+Math.imul(_,V)|0,i=Math.imul(_,U),n=n+Math.imul(v,H)|0,a=(a=a+Math.imul(v,G)|0)+Math.imul(y,H)|0,i=i+Math.imul(y,G)|0,n=n+Math.imul(d,W)|0,a=(a=a+Math.imul(d,Z)|0)+Math.imul(g,W)|0,i=i+Math.imul(g,Z)|0;var xt=(c+(n=n+Math.imul(h,J)|0)|0)+((8191&(a=(a=a+Math.imul(h,K)|0)+Math.imul(f,J)|0))<<13)|0;c=((i=i+Math.imul(f,K)|0)+(a>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(T,V),a=(a=Math.imul(T,U))+Math.imul(k,V)|0,i=Math.imul(k,U),n=n+Math.imul(b,H)|0,a=(a=a+Math.imul(b,G)|0)+Math.imul(_,H)|0,i=i+Math.imul(_,G)|0,n=n+Math.imul(v,W)|0,a=(a=a+Math.imul(v,Z)|0)+Math.imul(y,W)|0,i=i+Math.imul(y,Z)|0,n=n+Math.imul(d,J)|0,a=(a=a+Math.imul(d,K)|0)+Math.imul(g,J)|0,i=i+Math.imul(g,K)|0;var bt=(c+(n=n+Math.imul(h,$)|0)|0)+((8191&(a=(a=a+Math.imul(h,tt)|0)+Math.imul(f,$)|0))<<13)|0;c=((i=i+Math.imul(f,tt)|0)+(a>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(M,V),a=(a=Math.imul(M,U))+Math.imul(S,V)|0,i=Math.imul(S,U),n=n+Math.imul(T,H)|0,a=(a=a+Math.imul(T,G)|0)+Math.imul(k,H)|0,i=i+Math.imul(k,G)|0,n=n+Math.imul(b,W)|0,a=(a=a+Math.imul(b,Z)|0)+Math.imul(_,W)|0,i=i+Math.imul(_,Z)|0,n=n+Math.imul(v,J)|0,a=(a=a+Math.imul(v,K)|0)+Math.imul(y,J)|0,i=i+Math.imul(y,K)|0,n=n+Math.imul(d,$)|0,a=(a=a+Math.imul(d,tt)|0)+Math.imul(g,$)|0,i=i+Math.imul(g,tt)|0;var _t=(c+(n=n+Math.imul(h,rt)|0)|0)+((8191&(a=(a=a+Math.imul(h,nt)|0)+Math.imul(f,rt)|0))<<13)|0;c=((i=i+Math.imul(f,nt)|0)+(a>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(C,V),a=(a=Math.imul(C,U))+Math.imul(L,V)|0,i=Math.imul(L,U),n=n+Math.imul(M,H)|0,a=(a=a+Math.imul(M,G)|0)+Math.imul(S,H)|0,i=i+Math.imul(S,G)|0,n=n+Math.imul(T,W)|0,a=(a=a+Math.imul(T,Z)|0)+Math.imul(k,W)|0,i=i+Math.imul(k,Z)|0,n=n+Math.imul(b,J)|0,a=(a=a+Math.imul(b,K)|0)+Math.imul(_,J)|0,i=i+Math.imul(_,K)|0,n=n+Math.imul(v,$)|0,a=(a=a+Math.imul(v,tt)|0)+Math.imul(y,$)|0,i=i+Math.imul(y,tt)|0,n=n+Math.imul(d,rt)|0,a=(a=a+Math.imul(d,nt)|0)+Math.imul(g,rt)|0,i=i+Math.imul(g,nt)|0;var wt=(c+(n=n+Math.imul(h,it)|0)|0)+((8191&(a=(a=a+Math.imul(h,ot)|0)+Math.imul(f,it)|0))<<13)|0;c=((i=i+Math.imul(f,ot)|0)+(a>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(I,V),a=(a=Math.imul(I,U))+Math.imul(z,V)|0,i=Math.imul(z,U),n=n+Math.imul(C,H)|0,a=(a=a+Math.imul(C,G)|0)+Math.imul(L,H)|0,i=i+Math.imul(L,G)|0,n=n+Math.imul(M,W)|0,a=(a=a+Math.imul(M,Z)|0)+Math.imul(S,W)|0,i=i+Math.imul(S,Z)|0,n=n+Math.imul(T,J)|0,a=(a=a+Math.imul(T,K)|0)+Math.imul(k,J)|0,i=i+Math.imul(k,K)|0,n=n+Math.imul(b,$)|0,a=(a=a+Math.imul(b,tt)|0)+Math.imul(_,$)|0,i=i+Math.imul(_,tt)|0,n=n+Math.imul(v,rt)|0,a=(a=a+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,i=i+Math.imul(y,nt)|0,n=n+Math.imul(d,it)|0,a=(a=a+Math.imul(d,ot)|0)+Math.imul(g,it)|0,i=i+Math.imul(g,ot)|0;var Tt=(c+(n=n+Math.imul(h,lt)|0)|0)+((8191&(a=(a=a+Math.imul(h,ct)|0)+Math.imul(f,lt)|0))<<13)|0;c=((i=i+Math.imul(f,ct)|0)+(a>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(D,V),a=(a=Math.imul(D,U))+Math.imul(R,V)|0,i=Math.imul(R,U),n=n+Math.imul(I,H)|0,a=(a=a+Math.imul(I,G)|0)+Math.imul(z,H)|0,i=i+Math.imul(z,G)|0,n=n+Math.imul(C,W)|0,a=(a=a+Math.imul(C,Z)|0)+Math.imul(L,W)|0,i=i+Math.imul(L,Z)|0,n=n+Math.imul(M,J)|0,a=(a=a+Math.imul(M,K)|0)+Math.imul(S,J)|0,i=i+Math.imul(S,K)|0,n=n+Math.imul(T,$)|0,a=(a=a+Math.imul(T,tt)|0)+Math.imul(k,$)|0,i=i+Math.imul(k,tt)|0,n=n+Math.imul(b,rt)|0,a=(a=a+Math.imul(b,nt)|0)+Math.imul(_,rt)|0,i=i+Math.imul(_,nt)|0,n=n+Math.imul(v,it)|0,a=(a=a+Math.imul(v,ot)|0)+Math.imul(y,it)|0,i=i+Math.imul(y,ot)|0,n=n+Math.imul(d,lt)|0,a=(a=a+Math.imul(d,ct)|0)+Math.imul(g,lt)|0,i=i+Math.imul(g,ct)|0;var kt=(c+(n=n+Math.imul(h,ht)|0)|0)+((8191&(a=(a=a+Math.imul(h,ft)|0)+Math.imul(f,ht)|0))<<13)|0;c=((i=i+Math.imul(f,ft)|0)+(a>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(B,V),a=(a=Math.imul(B,U))+Math.imul(N,V)|0,i=Math.imul(N,U),n=n+Math.imul(D,H)|0,a=(a=a+Math.imul(D,G)|0)+Math.imul(R,H)|0,i=i+Math.imul(R,G)|0,n=n+Math.imul(I,W)|0,a=(a=a+Math.imul(I,Z)|0)+Math.imul(z,W)|0,i=i+Math.imul(z,Z)|0,n=n+Math.imul(C,J)|0,a=(a=a+Math.imul(C,K)|0)+Math.imul(L,J)|0,i=i+Math.imul(L,K)|0,n=n+Math.imul(M,$)|0,a=(a=a+Math.imul(M,tt)|0)+Math.imul(S,$)|0,i=i+Math.imul(S,tt)|0,n=n+Math.imul(T,rt)|0,a=(a=a+Math.imul(T,nt)|0)+Math.imul(k,rt)|0,i=i+Math.imul(k,nt)|0,n=n+Math.imul(b,it)|0,a=(a=a+Math.imul(b,ot)|0)+Math.imul(_,it)|0,i=i+Math.imul(_,ot)|0,n=n+Math.imul(v,lt)|0,a=(a=a+Math.imul(v,ct)|0)+Math.imul(y,lt)|0,i=i+Math.imul(y,ct)|0,n=n+Math.imul(d,ht)|0,a=(a=a+Math.imul(d,ft)|0)+Math.imul(g,ht)|0,i=i+Math.imul(g,ft)|0;var At=(c+(n=n+Math.imul(h,dt)|0)|0)+((8191&(a=(a=a+Math.imul(h,gt)|0)+Math.imul(f,dt)|0))<<13)|0;c=((i=i+Math.imul(f,gt)|0)+(a>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(B,H),a=(a=Math.imul(B,G))+Math.imul(N,H)|0,i=Math.imul(N,G),n=n+Math.imul(D,W)|0,a=(a=a+Math.imul(D,Z)|0)+Math.imul(R,W)|0,i=i+Math.imul(R,Z)|0,n=n+Math.imul(I,J)|0,a=(a=a+Math.imul(I,K)|0)+Math.imul(z,J)|0,i=i+Math.imul(z,K)|0,n=n+Math.imul(C,$)|0,a=(a=a+Math.imul(C,tt)|0)+Math.imul(L,$)|0,i=i+Math.imul(L,tt)|0,n=n+Math.imul(M,rt)|0,a=(a=a+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,i=i+Math.imul(S,nt)|0,n=n+Math.imul(T,it)|0,a=(a=a+Math.imul(T,ot)|0)+Math.imul(k,it)|0,i=i+Math.imul(k,ot)|0,n=n+Math.imul(b,lt)|0,a=(a=a+Math.imul(b,ct)|0)+Math.imul(_,lt)|0,i=i+Math.imul(_,ct)|0,n=n+Math.imul(v,ht)|0,a=(a=a+Math.imul(v,ft)|0)+Math.imul(y,ht)|0,i=i+Math.imul(y,ft)|0;var Mt=(c+(n=n+Math.imul(d,dt)|0)|0)+((8191&(a=(a=a+Math.imul(d,gt)|0)+Math.imul(g,dt)|0))<<13)|0;c=((i=i+Math.imul(g,gt)|0)+(a>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(B,W),a=(a=Math.imul(B,Z))+Math.imul(N,W)|0,i=Math.imul(N,Z),n=n+Math.imul(D,J)|0,a=(a=a+Math.imul(D,K)|0)+Math.imul(R,J)|0,i=i+Math.imul(R,K)|0,n=n+Math.imul(I,$)|0,a=(a=a+Math.imul(I,tt)|0)+Math.imul(z,$)|0,i=i+Math.imul(z,tt)|0,n=n+Math.imul(C,rt)|0,a=(a=a+Math.imul(C,nt)|0)+Math.imul(L,rt)|0,i=i+Math.imul(L,nt)|0,n=n+Math.imul(M,it)|0,a=(a=a+Math.imul(M,ot)|0)+Math.imul(S,it)|0,i=i+Math.imul(S,ot)|0,n=n+Math.imul(T,lt)|0,a=(a=a+Math.imul(T,ct)|0)+Math.imul(k,lt)|0,i=i+Math.imul(k,ct)|0,n=n+Math.imul(b,ht)|0,a=(a=a+Math.imul(b,ft)|0)+Math.imul(_,ht)|0,i=i+Math.imul(_,ft)|0;var St=(c+(n=n+Math.imul(v,dt)|0)|0)+((8191&(a=(a=a+Math.imul(v,gt)|0)+Math.imul(y,dt)|0))<<13)|0;c=((i=i+Math.imul(y,gt)|0)+(a>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(B,J),a=(a=Math.imul(B,K))+Math.imul(N,J)|0,i=Math.imul(N,K),n=n+Math.imul(D,$)|0,a=(a=a+Math.imul(D,tt)|0)+Math.imul(R,$)|0,i=i+Math.imul(R,tt)|0,n=n+Math.imul(I,rt)|0,a=(a=a+Math.imul(I,nt)|0)+Math.imul(z,rt)|0,i=i+Math.imul(z,nt)|0,n=n+Math.imul(C,it)|0,a=(a=a+Math.imul(C,ot)|0)+Math.imul(L,it)|0,i=i+Math.imul(L,ot)|0,n=n+Math.imul(M,lt)|0,a=(a=a+Math.imul(M,ct)|0)+Math.imul(S,lt)|0,i=i+Math.imul(S,ct)|0,n=n+Math.imul(T,ht)|0,a=(a=a+Math.imul(T,ft)|0)+Math.imul(k,ht)|0,i=i+Math.imul(k,ft)|0;var Et=(c+(n=n+Math.imul(b,dt)|0)|0)+((8191&(a=(a=a+Math.imul(b,gt)|0)+Math.imul(_,dt)|0))<<13)|0;c=((i=i+Math.imul(_,gt)|0)+(a>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(B,$),a=(a=Math.imul(B,tt))+Math.imul(N,$)|0,i=Math.imul(N,tt),n=n+Math.imul(D,rt)|0,a=(a=a+Math.imul(D,nt)|0)+Math.imul(R,rt)|0,i=i+Math.imul(R,nt)|0,n=n+Math.imul(I,it)|0,a=(a=a+Math.imul(I,ot)|0)+Math.imul(z,it)|0,i=i+Math.imul(z,ot)|0,n=n+Math.imul(C,lt)|0,a=(a=a+Math.imul(C,ct)|0)+Math.imul(L,lt)|0,i=i+Math.imul(L,ct)|0,n=n+Math.imul(M,ht)|0,a=(a=a+Math.imul(M,ft)|0)+Math.imul(S,ht)|0,i=i+Math.imul(S,ft)|0;var Ct=(c+(n=n+Math.imul(T,dt)|0)|0)+((8191&(a=(a=a+Math.imul(T,gt)|0)+Math.imul(k,dt)|0))<<13)|0;c=((i=i+Math.imul(k,gt)|0)+(a>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,n=Math.imul(B,rt),a=(a=Math.imul(B,nt))+Math.imul(N,rt)|0,i=Math.imul(N,nt),n=n+Math.imul(D,it)|0,a=(a=a+Math.imul(D,ot)|0)+Math.imul(R,it)|0,i=i+Math.imul(R,ot)|0,n=n+Math.imul(I,lt)|0,a=(a=a+Math.imul(I,ct)|0)+Math.imul(z,lt)|0,i=i+Math.imul(z,ct)|0,n=n+Math.imul(C,ht)|0,a=(a=a+Math.imul(C,ft)|0)+Math.imul(L,ht)|0,i=i+Math.imul(L,ft)|0;var Lt=(c+(n=n+Math.imul(M,dt)|0)|0)+((8191&(a=(a=a+Math.imul(M,gt)|0)+Math.imul(S,dt)|0))<<13)|0;c=((i=i+Math.imul(S,gt)|0)+(a>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,n=Math.imul(B,it),a=(a=Math.imul(B,ot))+Math.imul(N,it)|0,i=Math.imul(N,ot),n=n+Math.imul(D,lt)|0,a=(a=a+Math.imul(D,ct)|0)+Math.imul(R,lt)|0,i=i+Math.imul(R,ct)|0,n=n+Math.imul(I,ht)|0,a=(a=a+Math.imul(I,ft)|0)+Math.imul(z,ht)|0,i=i+Math.imul(z,ft)|0;var Pt=(c+(n=n+Math.imul(C,dt)|0)|0)+((8191&(a=(a=a+Math.imul(C,gt)|0)+Math.imul(L,dt)|0))<<13)|0;c=((i=i+Math.imul(L,gt)|0)+(a>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(B,lt),a=(a=Math.imul(B,ct))+Math.imul(N,lt)|0,i=Math.imul(N,ct),n=n+Math.imul(D,ht)|0,a=(a=a+Math.imul(D,ft)|0)+Math.imul(R,ht)|0,i=i+Math.imul(R,ft)|0;var It=(c+(n=n+Math.imul(I,dt)|0)|0)+((8191&(a=(a=a+Math.imul(I,gt)|0)+Math.imul(z,dt)|0))<<13)|0;c=((i=i+Math.imul(z,gt)|0)+(a>>>13)|0)+(It>>>26)|0,It&=67108863,n=Math.imul(B,ht),a=(a=Math.imul(B,ft))+Math.imul(N,ht)|0,i=Math.imul(N,ft);var zt=(c+(n=n+Math.imul(D,dt)|0)|0)+((8191&(a=(a=a+Math.imul(D,gt)|0)+Math.imul(R,dt)|0))<<13)|0;c=((i=i+Math.imul(R,gt)|0)+(a>>>13)|0)+(zt>>>26)|0,zt&=67108863;var Ot=(c+(n=Math.imul(B,dt))|0)+((8191&(a=(a=Math.imul(B,gt))+Math.imul(N,dt)|0))<<13)|0;return c=((i=Math.imul(N,gt))+(a>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,l[0]=mt,l[1]=vt,l[2]=yt,l[3]=xt,l[4]=bt,l[5]=_t,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]=Pt,l[16]=It,l[17]=zt,l[18]=Ot,0!==c&&(l[19]=c,r.length++),r};function d(t,e,r){return(new g).mulp(t,e,r)}function g(t,e){this.x=t,this.y=e}Math.imul||(p=f),i.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):r<63?f(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,a=0,i=0;i>>26)|0)>>>26,o&=67108863}r.words[i]=s,n=o,o=a}return 0!==n?r.words[i]=n:r.length--,r.strip()}(this,t,e):d(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),r=i.prototype._countBits(t)-1,n=0;n>=1;return n},g.prototype.permute=function(t,e,r,n,a,i){for(var o=0;o>>=1)a++;return 1<>>=13,r[2*o+1]=8191&i,i>>>=13;for(o=2*e;o>=26,e+=a/67108864|0,e+=i>>>26,this.words[r]=67108863&i}return 0!==e&&(this.words[r]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>a}return e}(t);if(0===e.length)return new i(1);for(var r=this,n=0;n=0);var e,r=t%26,a=(t-r)/26,i=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!==a){for(e=this.length-1;e>=0;e--)this.words[e+a]=this.words[e];for(e=0;e=0),a=e?(e-e%26)/26:0;var i=t%26,o=Math.min((t-i)/26,this.length),s=67108863^67108863>>>i<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=a);c--){var h=0|this.words[c];this.words[c]=u<<26-i|h>>>i,u=h&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,e,r){return n(0===this.negative),this.iushrn(t,e,r)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){n(\"number\"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,a=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 a=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},i.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[a+r]=67108863&i}for(;a>26,this.words[a+r]=67108863&i;if(0===s)return this.strip();for(n(-1===s),s=0,a=0;a>26,this.words[a]=67108863&i;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),a=t,o=0|a.words[a.length-1];0!==(r=26-this._countBits(o))&&(a=a.ushln(r),n.iushln(r),o=0|a.words[a.length-1]);var s,l=n.length-a.length;if(\"mod\"!==e){(s=new i(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c=0;h--){var f=67108864*(0|n.words[a.length+h])+(0|n.words[a.length+h-1]);for(f=Math.min(f/o|0,67108863),n._ishlnsubmul(a,f,h);0!==n.negative;)f--,n.negative=0,n._ishlnsubmul(a,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}},i.prototype.divmod=function(t,e,r){return n(!t.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),\"mod\"!==e&&(a=s.div.neg()),\"div\"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:a,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),\"mod\"!==e&&(a=s.div.neg()),{div:a,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 i(0),mod:this}:1===t.length?\"div\"===e?{div:this.divn(t.words[0]),mod:null}:\"mod\"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e);var a,o,s},i.prototype.div=function(t){return this.divmod(t,\"div\",!1).div},i.prototype.mod=function(t){return this.divmod(t,\"mod\",!1).mod},i.prototype.umod=function(t){return this.divmod(t,\"mod\",!0).mod},i.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),a=t.andln(1),i=r.cmp(n);return i<0||1===a&&0===i?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){n(t<=67108863);for(var e=(1<<26)%t,r=0,a=this.length-1;a>=0;a--)r=(e*r+(0|this.words[a]))%t;return r},i.prototype.idivn=function(t){n(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var a=(0|this.words[r])+67108864*e;this.words[r]=a/t|0,e=a%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.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 a=new i(1),o=new i(0),s=new i(0),l=new i(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;)(a.isOdd()||o.isOdd())&&(a.iadd(u),o.isub(h)),a.iushrn(1),o.iushrn(1);for(var d=0,g=1;0==(r.words[0]&g)&&d<26;++d,g<<=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),a.isub(s),o.isub(l)):(r.isub(e),s.isub(a),l.isub(o))}return{a:s,b:l,gcd:r.iushln(c)}},i.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 a,o=new i(1),s=new i(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(a=0===e.cmpn(1)?o:s).cmpn(0)<0&&a.iadd(t),a},i.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 a=e.cmp(r);if(a<0){var i=e;e=r,r=i}else if(0===a||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){n(\"number\"==typeof t);var e=t%26,r=(t-e)/26,a=1<>>26,s&=67108863,this.words[o]=s}return 0!==i&&(this.words[o]=i,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.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 a=0|this.words[0];e=a===t?0:at.length)return 1;if(this.length=0;r--){var n=0|this.words[r],a=0|t.words[r];if(n!==a){na&&(e=1);break}}return e},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new w(t)},i.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)},i.prototype.fromRed=function(){return n(this.red,\"fromRed works only with numbers in reduction context\"),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return n(!this.red,\"Already a number in reduction context\"),this._forceRed(t)},i.prototype.redAdd=function(t){return n(this.red,\"redAdd works only with red numbers\"),this.red.add(this,t)},i.prototype.redIAdd=function(t){return n(this.red,\"redIAdd works only with red numbers\"),this.red.iadd(this,t)},i.prototype.redSub=function(t){return n(this.red,\"redSub works only with red numbers\"),this.red.sub(this,t)},i.prototype.redISub=function(t){return n(this.red,\"redISub works only with red numbers\"),this.red.isub(this,t)},i.prototype.redShl=function(t){return n(this.red,\"redShl works only with red numbers\"),this.red.shl(this,t)},i.prototype.redMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.imul(this,t)},i.prototype.redSqr=function(){return n(this.red,\"redSqr works only with red numbers\"),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,\"redISqr works only with red numbers\"),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,\"redSqrt works only with red numbers\"),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,\"redInvm works only with red numbers\"),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,\"redNeg works only with red numbers\"),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(t){return n(this.red&&!t.red,\"redPow(normalNum)\"),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,\"k256\",\"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f\")}function x(){v.call(this,\"p224\",\"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001\")}function b(){v.call(this,\"p192\",\"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff\")}function _(){v.call(this,\"25519\",\"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed\")}function w(t){if(\"string\"==typeof t){var e=i._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 T(t){w.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(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 i(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):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)},a(y,v),y.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,a=i}a>>>=22,t.words[n-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},y.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]=a,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function(t){if(m[t])return m[t];var e;if(\"k256\"===t)e=new y;else if(\"p224\"===t)e=new x;else if(\"p192\"===t)e=new b;else{if(\"p25519\"!==t)throw new Error(\"Unknown prime \"+t);e=new _}return m[t]=e,e},w.prototype._verify1=function(t){n(0===t.negative,\"red works only with positives\"),n(t.red,\"red works only with red numbers\")},w.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\")},w.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},w.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},w.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)},w.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},w.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)},w.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},w.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},w.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},w.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},w.prototype.isqr=function(t){return this.imul(t,t.clone())},w.prototype.sqr=function(t){return this.mul(t,t)},w.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 i(1)).iushrn(2);return this.pow(t,r)}for(var a=this.m.subn(1),o=0;!a.isZero()&&0===a.andln(1);)o++,a.iushrn(1);n(!a.isZero());var s=new i(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new i(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var h=this.pow(u,a),f=this.pow(t,a.addn(1).iushrn(1)),p=this.pow(t,a),d=o;0!==p.cmp(s);){for(var g=p,m=0;0!==g.cmp(s);m++)g=g.redSqr();n(m=0;n--){for(var c=e.words[n],u=l-1;u>=0;u--){var h=c>>u&1;a!==r[0]&&(a=this.sqr(a)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===u)&&(a=this.mul(a,r[o]),s=0,o=0)):s=0}l=26}return a},w.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},w.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new T(t)},a(T,w),T.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},T.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},T.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),i=a;return a.cmp(this.m)>=0?i=a.isub(this.m):a.cmpn(0)<0&&(i=a.iadd(this.m)),i._forceRed(this)},T.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),o=a;return a.cmp(this.m)>=0?o=a.isub(this.m):a.cmpn(0)<0&&(o=a.iadd(this.m)),o._forceRed(this)},T.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(\"undefined\"==typeof e||e,this)},{buffer:106}],98:[function(t,e,r){\"use strict\";e.exports=function(t){var e,r,n,a=t.length,i=0;for(e=0;e>>1;if(!(u<=0)){var h,f=a.mallocDouble(2*u*s),p=a.mallocInt32(s);if((s=l(t,u,f,p))>0){if(1===u&&n)i.init(s),h=i.sweepComplete(u,r,0,s,f,p,0,s,f,p);else{var d=a.mallocDouble(2*u*c),g=a.mallocInt32(c);(c=l(e,u,d,g))>0&&(i.init(s+c),h=1===u?i.sweepBipartite(u,r,0,s,f,p,0,c,d,g):o(u,r,n,s,f,p,c,d,g),a.free(d),a.free(g))}a.free(f),a.free(p)}return h}}}function u(t,e){n.push([t,e])}function h(t){return n=[],c(t,t,u,!0),n}function f(t,e){return n=[],c(t,e,u,!1),n}},{\"./lib/intersect\":101,\"./lib/sweep\":105,\"typedarray-pool\":547}],100:[function(t,e,r){\"use strict\";var n=[\"d\",\"ax\",\"vv\",\"rs\",\"re\",\"rb\",\"ri\",\"bs\",\"be\",\"bb\",\"bi\"];function a(t){var e=\"bruteForce\"+(t?\"Full\":\"Partial\"),r=[],a=n.slice();t||a.splice(3,0,\"fp\");var i=[\"function \"+e+\"(\"+a.join()+\"){\"];function o(e,a){var o=function(t,e,r){var a=\"bruteForce\"+(t?\"Red\":\"Blue\")+(e?\"Flip\":\"\")+(r?\"Full\":\"\"),i=[\"function \",a,\"(\",n.join(),\"){\",\"var \",\"es\",\"=2*\",\"d\",\";\"],o=\"for(var i=rs,rp=es*rs;ibe-bs){\"),t?(o(!0,!1),i.push(\"}else{\"),o(!1,!1)):(i.push(\"if(fp){\"),o(!0,!0),i.push(\"}else{\"),o(!0,!1),i.push(\"}}else{if(fp){\"),o(!1,!0),i.push(\"}else{\"),o(!1,!1),i.push(\"}\")),i.push(\"}}return \"+e);var s=r.join(\"\")+i.join(\"\");return new Function(s)()}r.partial=a(!1),r.full=a(!0)},{}],101:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i,u,w,T,k,A){!function(t,e){var r=8*a.log2(e+1)*(t+1)|0,i=a.nextPow2(6*r);v.length0;){var C=6*(S-=1),L=v[C],P=v[C+1],I=v[C+2],z=v[C+3],O=v[C+4],D=v[C+5],R=2*S,F=y[R],B=y[R+1],N=1&D,j=!!(16&D),V=u,U=w,q=k,H=A;if(N&&(V=k,U=A,q=u,H=w),!(2&D&&(I=p(t,L,P,I,V,U,B),P>=I)||4&D&&(P=d(t,L,P,I,V,U,F))>=I)){var G=I-P,Y=O-z;if(j){if(t*G*(G+Y)<1<<22){if(void 0!==(M=l.scanComplete(t,L,e,P,I,V,U,z,O,q,H)))return M;continue}}else{if(t*Math.min(G,Y)<128){if(void 0!==(M=o(t,L,e,N,P,I,V,U,z,O,q,H)))return M;continue}if(t*G*Y<1<<22){if(void 0!==(M=l.scanBipartite(t,L,e,N,P,I,V,U,z,O,q,H)))return M;continue}}var W=h(t,L,P,I,V,U,F,B);if(P=p0)&&!(p1>=hi)\",[\"p0\",\"p1\"]),f=u(\"lo===p0\",[\"p0\"]),p=u(\"lo>>1,h=2*t,f=u,p=o[h*u+e];for(;l=y?(f=v,p=y):m>=b?(f=g,p=m):(f=x,p=b):y>=b?(f=v,p=y):b>=m?(f=g,p=m):(f=x,p=b);for(var _=h*(c-1),w=h*f,T=0;Tr&&a[h+e]>c;--u,h-=o){for(var f=h,p=h+o,d=0;d=0&&n.push(\"lo=e[k+n]\");t.indexOf(\"hi\")>=0&&n.push(\"hi=e[k+o]\");return r.push(\"for(var j=2*a,k=j*c,l=k,m=c,n=b,o=a+b,p=c;d>p;++p,k+=j){var _;if($)if(m===p)m+=1,l+=j;else{for(var s=0;j>s;++s){var t=e[k+s];e[k+s]=e[l],e[l++]=t}var u=f[p];f[p]=f[m],f[m++]=u}}return m\".replace(\"_\",n.join()).replace(\"$\",t)),Function.apply(void 0,r)}},{}],104:[function(t,e,r){\"use strict\";e.exports=function(t,e){e<=128?n(0,e-1,t):function t(e,r,u){var h=(r-e+1)/6|0,f=e+h,p=r-h,d=e+r>>1,g=d-h,m=d+h,v=f,y=g,x=d,b=m,_=p,w=e+1,T=r-1,k=0;l(v,y,u)&&(k=v,v=y,y=k);l(b,_,u)&&(k=b,b=_,_=k);l(v,x,u)&&(k=v,v=x,x=k);l(y,x,u)&&(k=y,y=x,x=k);l(v,b,u)&&(k=v,v=b,b=k);l(x,b,u)&&(k=x,x=b,b=k);l(y,_,u)&&(k=y,y=_,_=k);l(y,x,u)&&(k=y,y=x,x=k);l(b,_,u)&&(k=b,b=_,_=k);for(var A=u[2*y],M=u[2*y+1],S=u[2*b],E=u[2*b+1],C=2*v,L=2*x,P=2*_,I=2*f,z=2*d,O=2*p,D=0;D<2;++D){var R=u[C+D],F=u[L+D],B=u[P+D];u[I+D]=R,u[z+D]=F,u[O+D]=B}i(g,e,u),i(m,r,u);for(var N=w;N<=T;++N)if(c(N,A,M,u))N!==w&&a(N,w,u),++w;else if(!c(N,S,E,u))for(;;){if(c(T,S,E,u)){c(T,A,M,u)?(o(N,w,T,u),++w,--T):(a(N,T,u),--T);break}if(--Tt;){var c=r[l-2],u=r[l-1];if(cr[e+1])}function c(t,e,r,n){var a=n[t*=2];return a>>1;i(f,M);var S=0,E=0;for(w=0;w=1<<28)p(l,c,E--,C=C-(1<<28)|0);else if(C>=0)p(o,s,S--,C);else if(C<=-(1<<28)){C=-C-(1<<28)|0;for(var L=0;L>>1;i(f,E);var C=0,L=0,P=0;for(k=0;k>1==f[2*k+3]>>1&&(z=2,k+=1),I<0){for(var O=-(I>>1)-1,D=0;D>1)-1;0===z?p(o,s,C--,O):1===z?p(l,c,L--,O):2===z&&p(u,h,P--,O)}}},scanBipartite:function(t,e,r,n,a,l,c,u,h,g,m,v){var y=0,x=2*t,b=e,_=e+t,w=1,T=1;n?T=1<<28:w=1<<28;for(var k=a;k>>1;i(f,E);var C=0;for(k=0;k=1<<28?(P=!n,A-=1<<28):(P=!!n,A-=1),P)d(o,s,C++,A);else{var I=v[A],z=x*A,O=m[z+e+1],D=m[z+e+1+t];t:for(var R=0;R>>1;i(f,w);var T=0;for(y=0;y=1<<28)o[T++]=x-(1<<28);else{var A=p[x-=1],M=g*x,S=h[M+e+1],E=h[M+e+1+t];t:for(var C=0;C=0;--C)if(o[C]===x){for(z=C+1;z0&&s.length>i){s.warned=!0;var l=new Error(\"Possible EventEmitter memory leak detected. \"+s.length+' \"'+String(e)+'\" listeners added. Use emitter.setMaxListeners() to increase limit.');l.name=\"MaxListenersExceededWarning\",l.emitter=t,l.type=e,l.count=s.length,\"object\"==typeof console&&console.warn&&console.warn(\"%s: %s\",l.name,l.message)}}else s=o[e]=r,++t._eventsCount;return t}function v(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var t=new Array(arguments.length),e=0;e1&&(e=arguments[1]),e instanceof Error)throw e;var l=new Error('Unhandled \"error\" event. ('+e+\")\");throw l.context=e,l}if(!(r=o[t]))return!1;var c=\"function\"==typeof r;switch(n=arguments.length){case 1:h(r,c,this);break;case 2:f(r,c,this,arguments[1]);break;case 3:p(r,c,this,arguments[1],arguments[2]);break;case 4:d(r,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(a=new Array(n-1),i=1;i=0;o--)if(r[o]===e||r[o].listener===e){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(t,e){for(var r=e,n=r+1,a=t.length;n=0;i--)this.removeListener(t,e[i]);return this},o.prototype.listeners=function(t){return x(this,t,!0)},o.prototype.rawListeners=function(t){return x(this,t,!1)},o.listenerCount=function(t,e){return\"function\"==typeof t.listenerCount?t.listenerCount(e):b.call(t,e)},o.prototype.listenerCount=b,o.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],108:[function(t,e,r){(function(e){\n", "/*!\n", " * The buffer module from node.js, for the browser.\n", " *\n", " * @author Feross Aboukhadijeh \n", " * @license MIT\n", " */\n", "\"use strict\";var n=t(\"base64-js\"),a=t(\"ieee754\");r.Buffer=e,r.SlowBuffer=function(t){+t!=t&&(t=0);return e.alloc(+t)},r.INSPECT_MAX_BYTES=50;function i(t){if(t>2147483647)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"');var r=new Uint8Array(t);return r.__proto__=e.prototype,r}function e(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 l(t)}return o(t,e,r)}function o(t,r,n){if(\"string\"==typeof t)return function(t,r){\"string\"==typeof r&&\"\"!==r||(r=\"utf8\");if(!e.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r);var n=0|h(t,r),a=i(n),o=a.write(t,r);o!==n&&(a=a.slice(0,o));return a}(t,r);if(ArrayBuffer.isView(t))return c(t);if(null==t)throw TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,r,n){if(r<0||t.byteLength=2147483647)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+2147483647..toString(16)+\" bytes\");return 0|t}function h(t,r){if(e.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(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 '+typeof t);var n=t.length,a=arguments.length>2&&!0===arguments[2];if(!a&&0===n)return 0;for(var i=!1;;)switch(r){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":return D(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return R(t).length;default:if(i)return a?-1:D(t).length;r=(\"\"+r).toLowerCase(),i=!0}}function f(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 M(this,e,r);case\"utf8\":case\"utf-8\":return T(this,e,r);case\"ascii\":return k(this,e,r);case\"latin1\":case\"binary\":return A(this,e,r);case\"base64\":return w(this,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return S(this,e,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),n=!0}}function p(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function d(t,r,n,a,i){if(0===t.length)return-1;if(\"string\"==typeof n?(a=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),N(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if(\"string\"==typeof r&&(r=e.from(r,a)),e.isBuffer(r))return 0===r.length?-1:g(t,r,n,a,i);if(\"number\"==typeof r)return r&=255,\"function\"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,r,n):Uint8Array.prototype.lastIndexOf.call(t,r,n):g(t,[r],n,a,i);throw new TypeError(\"val must be string, number or Buffer\")}function g(t,e,r,n,a){var i,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(a){var u=-1;for(i=r;is&&(r=s-l),i=r;i>=0;i--){for(var h=!0,f=0;fa&&(n=a):n=a;var i=e.length;n>i/2&&(n=i/2);for(var o=0;o>8,a=r%256,i.push(a),i.push(n);return i}(e,t.length-r),t,r,n)}function w(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function T(t,e,r){r=Math.min(t.length,r);for(var n=[],a=e;a239?4:c>223?3:c>191?2:1;if(a+h<=r)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(i=t[a+1]))&&(l=(31&c)<<6|63&i)>127&&(u=l);break;case 3:i=t[a+1],o=t[a+2],128==(192&i)&&128==(192&o)&&(l=(15&c)<<12|(63&i)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:i=t[a+1],o=t[a+2],s=t[a+3],128==(192&i)&&128==(192&o)&&128==(192&s)&&(l=(15&c)<<18|(63&i)<<12|(63&o)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),a+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);var r=\"\",n=0;for(;ne&&(t+=\" ... \"),\"\"},e.prototype.compare=function(t,r,n,a,i){if(B(t,Uint8Array)&&(t=e.from(t,t.offset,t.byteLength)),!e.isBuffer(t))throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===r&&(r=0),void 0===n&&(n=t?t.length:0),void 0===a&&(a=0),void 0===i&&(i=this.length),r<0||n>t.length||a<0||i>this.length)throw new RangeError(\"out of range index\");if(a>=i&&r>=n)return 0;if(a>=i)return-1;if(r>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(a>>>=0),s=(n>>>=0)-(r>>>=0),l=Math.min(o,s),c=this.slice(a,i),u=t.slice(r,n),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n=\"utf8\")):(n=r,r=void 0)}var a=this.length-e;if((void 0===r||r>a)&&(r=a),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var i=!1;;)switch(n){case\"hex\":return m(this,t,e,r);case\"utf8\":case\"utf-8\":return v(this,t,e,r);case\"ascii\":return y(this,t,e,r);case\"latin1\":case\"binary\":return x(this,t,e,r);case\"base64\":return b(this,t,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return _(this,t,e,r);default:if(i)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),i=!0}},e.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};function k(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var a=e;an)&&(r=n);for(var a=\"\",i=e;ir)throw new RangeError(\"Trying to access beyond buffer length\")}function C(t,r,n,a,i,o){if(!e.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(r>i||rt.length)throw new RangeError(\"Index out of range\")}function L(t,e,r,n,a,i){if(r+n>t.length)throw new RangeError(\"Index out of range\");if(r<0)throw new RangeError(\"Index out of range\")}function P(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,4),a.write(t,e,r,n,23,4),r+4}function I(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,8),a.write(t,e,r,n,52,8),r+8}e.prototype.slice=function(t,r){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(r=void 0===r?n:~~r)<0?(r+=n)<0&&(r=0):r>n&&(r=n),r>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t+--e],a=1;e>0&&(a*=256);)n+=this[t+--e]*a;return n},e.prototype.readUInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),this[t]},e.prototype.readUInt16LE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]|this[t+1]<<8},e.prototype.readUInt16BE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]<<8|this[t+1]},e.prototype.readUInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},e.prototype.readUInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},e.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i=(a*=128)&&(n-=Math.pow(2,8*e)),n},e.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=e,a=1,i=this[t+--n];n>0&&(a*=256);)i+=this[t+--n]*a;return i>=(a*=128)&&(i-=Math.pow(2,8*e)),i},e.prototype.readInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},e.prototype.readInt16LE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt16BE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},e.prototype.readInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},e.prototype.readFloatLE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!0,23,4)},e.prototype.readFloatBE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!1,23,4)},e.prototype.readDoubleLE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!0,52,8)},e.prototype.readDoubleBE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!1,52,8)},e.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8*r)-1,0);var a=1,i=0;for(this[e]=255&t;++i>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8*r)-1,0);var a=r-1,i=1;for(this[e+a]=255&t;--a>=0&&(i*=256);)this[e+a]=t/i&255;return e+r},e.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,255,0),this[e]=255&t,e+1},e.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(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},e.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(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},e.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8*r-1);C(this,t,e,r,a-1,-a)}var i=0,o=1,s=0;for(this[e]=255&t;++i>0)-s&255;return e+r},e.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8*r-1);C(this,t,e,r,a-1,-a)}var i=r-1,o=1,s=0;for(this[e+i]=255&t;--i>=0&&(o*=256);)t<0&&0===s&&0!==this[e+i+1]&&(s=1),this[e+i]=(t/o>>0)-s&255;return e+r},e.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},e.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(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},e.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(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},e.prototype.writeFloatLE=function(t,e,r){return P(this,t,e,!0,r)},e.prototype.writeFloatBE=function(t,e,r){return P(this,t,e,!1,r)},e.prototype.writeDoubleLE=function(t,e,r){return I(this,t,e,!0,r)},e.prototype.writeDoubleBE=function(t,e,r){return I(this,t,e,!1,r)},e.prototype.copy=function(t,r,n,a){if(!e.isBuffer(t))throw new TypeError(\"argument should be a Buffer\");if(n||(n=0),a||0===a||(a=this.length),r>=t.length&&(r=t.length),r||(r=0),a>0&&a=this.length)throw new RangeError(\"Index out of range\");if(a<0)throw new RangeError(\"sourceEnd out of bounds\");a>this.length&&(a=this.length),t.length-r=0;--o)t[o+r]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,a),r);return i},e.prototype.fill=function(t,r,n,a){if(\"string\"==typeof t){if(\"string\"==typeof r?(a=r,r=0,n=this.length):\"string\"==typeof n&&(a=n,n=this.length),void 0!==a&&\"string\"!=typeof a)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof a&&!e.isEncoding(a))throw new TypeError(\"Unknown encoding: \"+a);if(1===t.length){var i=t.charCodeAt(0);(\"utf8\"===a&&i<128||\"latin1\"===a)&&(t=i)}}else\"number\"==typeof t&&(t&=255);if(r<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),\"number\"==typeof t)for(o=r;o55295&&r<57344){if(!a){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}a=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),a=r;continue}r=65536+(a-55296<<10|r-56320)}else a&&(e-=3)>-1&&i.push(239,191,189);if(a=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.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;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function R(t){return n.toByteArray(function(t){if((t=(t=t.split(\"=\")[0]).trim().replace(z,\"\")).length<2)return\"\";for(;t.length%4!=0;)t+=\"=\";return t}(t))}function F(t,e,r,n){for(var a=0;a=e.length||a>=t.length);++a)e[a+r]=t[a];return a}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function N(t){return t!=t}}).call(this,t(\"buffer\").Buffer)},{\"base64-js\":77,buffer:108,ieee754:411}],109:[function(t,e,r){\"use strict\";var n=t(\"./lib/monotone\"),a=t(\"./lib/triangulation\"),i=t(\"./lib/delaunay\"),o=t(\"./lib/filter\");function s(t){return[Math.min(t[0],t[1]),Math.max(t[0],t[1])]}function l(t,e){return t[0]-e[0]||t[1]-e[1]}function c(t,e,r){return e in t?t[e]:r}e.exports=function(t,e,r){Array.isArray(e)?(r=r||{},e=e||[]):(r=e||{},e=[]);var u=!!c(r,\"delaunay\",!0),h=!!c(r,\"interior\",!0),f=!!c(r,\"exterior\",!0),p=!!c(r,\"infinity\",!1);if(!h&&!f||0===t.length)return[];var d=n(t,e);if(u||h!==f||p){for(var g=a(t.length,function(t){return t.map(s).sort(l)}(e)),m=0;m0;){for(var p=r.pop(),d=(s=r.pop(),u=-1,h=-1,l=o[s],1);d=0||(e.flip(s,p),a(t,e,r,u,s,h),a(t,e,r,s,h,u),a(t,e,r,h,p,u),a(t,e,r,p,u,h)))}}},{\"binary-search-bounds\":94,\"robust-in-sphere\":498}],111:[function(t,e,r){\"use strict\";var n,a=t(\"binary-search-bounds\");function i(t,e,r,n,a,i,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=a,this.next=i,this.boundary=o}function o(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}e.exports=function(t,e,r){var n=function(t,e){for(var r=t.cells(),n=r.length,a=0;a0||l.length>0;){for(;s.length>0;){var p=s.pop();if(c[p]!==-a){c[p]=a;u[p];for(var d=0;d<3;++d){var g=f[3*p+d];g>=0&&0===c[g]&&(h[3*p+d]?l.push(g):(s.push(g),c[g]=a))}}}var m=l;l=s,s=m,l.length=0,a=-a}var v=function(t,e,r){for(var n=0,a=0;a1&&a(r[f[p-2]],r[f[p-1]],i)>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&&a(r[d[p-2]],r[d[p-1]],i)<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]&&a.push(new o(d,p,2,l),new o(p,d,1,l))}a.sort(s);for(var g=a[0].a[0]-(1+Math.abs(a[0].a[0]))*Math.pow(2,-52),m=[new i([g,1],[g,0],-1,[],[],[],[])],v=[],y=(l=0,a.length);l=0}}(),i.removeTriangle=function(t,e,r){var n=this.stars;o(n[t],e,r),o(n[e],r,t),o(n[r],t,e)},i.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},i.opposite=function(t,e){for(var r=this.stars[e],n=1,a=r.length;nr?r:t:te?e:t}},{}],118:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n;if(r){n=e;for(var a=new Array(e.length),i=0;ie[2]?1:0)}function v(t,e,r){if(0!==t.length){if(e)for(var n=0;n=0;--i){var x=e[u=(S=n[i])[0]],b=x[0],_=x[1],w=t[b],T=t[_];if((w[0]-T[0]||w[1]-T[1])<0){var k=b;b=_,_=k}x[0]=b;var A,M=x[1]=S[1];for(a&&(A=x[2]);i>0&&n[i-1][0]===u;){var S,E=(S=n[--i])[1];a?e.push([M,E,A]):e.push([M,E]),M=E}a?e.push([M,_,A]):e.push([M,_])}return f}(t,e,f,m,r));return v(e,y,r),!!y||(f.length>0||m.length>0)}},{\"./lib/rat-seg-intersect\":119,\"big-rat\":81,\"big-rat/cmp\":79,\"big-rat/to-float\":93,\"box-intersect\":99,nextafter:449,\"rat-vec\":484,\"robust-segment-intersect\":503,\"union-find\":548}],119:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var i=s(e,t),h=s(n,r),f=u(i,h);if(0===o(f))return null;var p=s(t,r),d=u(h,p),g=a(d,f),m=c(i,g);return l(t,m)};var n=t(\"big-rat/mul\"),a=t(\"big-rat/div\"),i=t(\"big-rat/sub\"),o=t(\"big-rat/sign\"),s=t(\"rat-vec/sub\"),l=t(\"rat-vec/add\"),c=t(\"rat-vec/muls\");function u(t,e){return i(n(t[0],e[1]),n(t[1],e[0]))}},{\"big-rat/div\":80,\"big-rat/mul\":90,\"big-rat/sign\":91,\"big-rat/sub\":92,\"rat-vec/add\":483,\"rat-vec/muls\":485,\"rat-vec/sub\":486}],120:[function(t,e,r){\"use strict\";var n=t(\"clamp\");function a(t,e){null==e&&(e=!0);var r=t[0],a=t[1],i=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(r*=255,a*=255,i*=255,o*=255),16777216*(r=255&n(r,0,255))+((a=255&n(a,0,255))<<16)+((i=255&n(i,0,255))<<8)+(o=255&n(o,0,255))}e.exports=a,e.exports.to=a,e.exports.from=function(t,e){var r=(t=+t)>>>24,n=(16711680&t)>>>16,a=(65280&t)>>>8,i=255&t;return!1===e?[r,n,a,i]:[r/255,n/255,a/255,i/255]}},{clamp:117}],121:[function(t,e,r){\"use strict\";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},{}],122:[function(t,e,r){\"use strict\";var n=t(\"color-rgba\"),a=t(\"clamp\"),i=t(\"dtype\");e.exports=function(t,e){\"float\"!==e&&e||(e=\"array\"),\"uint\"===e&&(e=\"uint8\"),\"uint_clamped\"===e&&(e=\"uint8_clamped\");var r=new(i(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]=a(Math.floor(255*t[0]),0,255),r[1]=a(Math.floor(255*t[1]),0,255),r[2]=a(Math.floor(255*t[2]),0,255),r[3]=null==t[3]?255:a(Math.floor(255*t[3]),0,255)),r)}},{clamp:117,\"color-rgba\":124,dtype:170}],123:[function(t,e,r){(function(r){\"use strict\";var n=t(\"color-name\"),a=t(\"is-plain-obj\"),i=t(\"defined\");e.exports=function(t){var e,s,l=[],c=1;if(\"string\"==typeof t)if(n[t])l=n[t].slice(),s=\"rgb\";else if(\"transparent\"===t)c=0,s=\"rgb\",l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var u=(p=t.slice(1)).length;c=1,u<=4?(l=[parseInt(p[0]+p[0],16),parseInt(p[1]+p[1],16),parseInt(p[2]+p[2],16)],4===u&&(c=parseInt(p[3]+p[3],16)/255)):(l=[parseInt(p[0]+p[1],16),parseInt(p[2]+p[3],16),parseInt(p[4]+p[5],16)],8===u&&(c=parseInt(p[6]+p[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s=\"rgb\"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(t)){var h=e[1],f=\"rgb\"===h,p=h.replace(/a$/,\"\");s=p;u=\"cmyk\"===p?4:\"gray\"===p?1:3;l=e[2].trim().split(/\\s*,\\s*/).map((function(t,e){if(/%$/.test(t))return e===u?parseFloat(t)/100:\"rgb\"===p?255*parseFloat(t)/100:parseFloat(t);if(\"h\"===p[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==o[t])return o[t]}return parseFloat(t)})),h===p&&l.push(1),c=f||void 0===l[u]?1:l[u],l=l.slice(0,u)}else t.length>10&&/[0-9](?:\\s|\\/)/.test(t)&&(l=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),s=t.match(/([a-z])/gi).join(\"\").toLowerCase());else if(isNaN(t))if(a(t)){var d=i(t.r,t.red,t.R,null);null!==d?(s=\"rgb\",l=[d,i(t.g,t.green,t.G),i(t.b,t.blue,t.B)]):(s=\"hsl\",l=[i(t.h,t.hue,t.H),i(t.s,t.saturation,t.S),i(t.l,t.lightness,t.L,t.b,t.brightness)]),c=i(t.a,t.alpha,t.opacity,1),null!=t.opacity&&(c/=100)}else(Array.isArray(t)||r.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(t))&&(l=[t[0],t[1],t[2]],s=\"rgb\",c=4===t.length?t[3]:1);else s=\"rgb\",l=[t>>>16,(65280&t)>>>8,255&t];return{space:s,values:l,alpha:c}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"color-name\":121,defined:165,\"is-plain-obj\":422}],124:[function(t,e,r){\"use strict\";var n=t(\"color-parse\"),a=t(\"color-space/hsl\"),i=t(\"clamp\");e.exports=function(t){var e,r=n(t);return r.space?((e=Array(3))[0]=i(r.values[0],0,255),e[1]=i(r.values[1],0,255),e[2]=i(r.values[2],0,255),\"h\"===r.space[0]&&(e=a.rgb(e)),e.push(i(r.alpha,0,1)),e):[]}},{clamp:117,\"color-parse\":123,\"color-space/hsl\":125}],125:[function(t,e,r){\"use strict\";var n=t(\"./rgb\");e.exports={name:\"hsl\",min:[0,0,0],max:[360,100,100],channel:[\"hue\",\"saturation\",\"lightness\"],alias:[\"HSL\"],rgb:function(t){var e,r,n,a,i,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[i=255*l,i,i];e=2*l-(r=l<.5?l*(1+s):l+s-l*s),a=[0,0,0];for(var c=0;c<3;c++)(n=o+1/3*-(c-1))<0?n++:n>1&&n--,i=6*n<1?e+6*(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,a[c]=255*i;return a}},n.hsl=function(t){var e,r,n=t[0]/255,a=t[1]/255,i=t[2]/255,o=Math.min(n,a,i),s=Math.max(n,a,i),l=s-o;return s===o?e=0:n===s?e=(a-i)/l:a===s?e=2+(i-n)/l:i===s&&(e=4+(n-a)/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]}},{\"./rgb\":126}],126:[function(t,e,r){\"use strict\";e.exports={name:\"rgb\",min:[0,0,0],max:[255,255,255],channel:[\"red\",\"green\",\"blue\"],alias:[\"RGB\"]}},{}],127:[function(t,e,r){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],cool:[{index:0,rgb:[0,255,255]},{index:1,rgb:[255,0,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]}]}},{}],128:[function(t,e,r){\"use strict\";var n=t(\"./colorScale\"),a=t(\"lerp\");function i(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(\",\")+\")\"}e.exports=function(t){var e,r,l,c,u,h,f,p,d,g;t||(t={});p=(t.nshades||72)-1,f=t.format||\"hex\",(h=t.colormap)||(h=\"jet\");if(\"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 m=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})),v=[];for(g=0;g0||l(t,e,i)?-1:1:0===s?c>0||l(t,e,r)?1:-1:a(c-s)}var f=n(t,e,r);return f>0?o>0&&n(t,e,i)>0?1:-1:f<0?o>0||n(t,e,i)>0?1:-1:n(t,e,i)>0||l(t,e,r)?1:-1};var n=t(\"robust-orientation\"),a=t(\"signum\"),i=t(\"two-sum\"),o=t(\"robust-product\"),s=t(\"robust-sum\");function l(t,e,r){var n=i(t[0],-e[0]),a=i(t[1],-e[1]),l=i(r[0],-e[0]),c=i(r[1],-e[1]),u=s(o(n,l),o(a,c));return u[u.length-1]>=0}},{\"robust-orientation\":500,\"robust-product\":501,\"robust-sum\":505,signum:506,\"two-sum\":535}],130:[function(t,e,r){e.exports=function(t,e){var r=t.length,i=t.length-e.length;if(i)return i;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return t[0]+t[1]-e[0]-e[1]||n(t[0],t[1])-n(e[0],e[1]);case 3:var o=t[0]+t[1],s=e[0]+e[1];if(i=o+t[2]-(s+e[2]))return i;var l=n(t[0],t[1]),c=n(e[0],e[1]);return n(l,t[2])-n(c,e[2])||n(l+t[2],o)-n(c+e[2],s);case 4:var u=t[0],h=t[1],f=t[2],p=t[3],d=e[0],g=e[1],m=e[2],v=e[3];return u+h+f+p-(d+g+m+v)||n(u,h,f,p)-n(d,g,m,v,d)||n(u+h,u+f,u+p,h+f,h+p,f+p)-n(d+g,d+m,d+v,g+m,g+v,m+v)||n(u+h+f,u+h+p,u+f+p,h+f+p)-n(d+g+m,d+g+v,d+m+v,g+m+v);default:for(var y=t.slice().sort(a),x=e.slice().sort(a),b=0;bt[r][0]&&(r=n);return er?[[r],[e]]:[[e]]}},{}],134:[function(t,e,r){\"use strict\";e.exports=function(t){var e=n(t),r=e.length;if(r<=2)return[];for(var a=new Array(r),i=e[r-1],o=0;o=e[l]&&(s+=1);i[o]=s}}return t}(n(i,!0),r)}};var n=t(\"incremental-convex-hull\"),a=t(\"affine-hull\")},{\"affine-hull\":65,\"incremental-convex-hull\":412}],136:[function(t,e,r){e.exports={AFG:\"afghan\",ALA:\"\\\\b\\\\wland\",ALB:\"albania\",DZA:\"algeria\",ASM:\"^(?=.*americ).*samoa\",AND:\"andorra\",AGO:\"angola\",AIA:\"anguill?a\",ATA:\"antarctica\",ATG:\"antigua\",ARG:\"argentin\",ARM:\"armenia\",ABW:\"^(?!.*bonaire).*\\\\baruba\",AUS:\"australia\",AUT:\"^(?!.*hungary).*austria|\\\\baustri.*\\\\bemp\",AZE:\"azerbaijan\",BHS:\"bahamas\",BHR:\"bahrain\",BGD:\"bangladesh|^(?=.*east).*paki?stan\",BRB:\"barbados\",BLR:\"belarus|byelo\",BEL:\"^(?!.*luxem).*belgium\",BLZ:\"belize|^(?=.*british).*honduras\",BEN:\"benin|dahome\",BMU:\"bermuda\",BTN:\"bhutan\",BOL:\"bolivia\",BES:\"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\\\bbes.?islands\",BIH:\"herzegovina|bosnia\",BWA:\"botswana|bechuana\",BVT:\"bouvet\",BRA:\"brazil\",IOT:\"british.?indian.?ocean\",BRN:\"brunei\",BGR:\"bulgaria\",BFA:\"burkina|\\\\bfaso|upper.?volta\",BDI:\"burundi\",CPV:\"verde\",KHM:\"cambodia|kampuchea|khmer\",CMR:\"cameroon\",CAN:\"canada\",CYM:\"cayman\",CAF:\"\\\\bcentral.african.republic\",TCD:\"\\\\bchad\",CHL:\"\\\\bchile\",CHN:\"^(?!.*\\\\bmac)(?!.*\\\\bhong)(?!.*\\\\btai)(?!.*\\\\brep).*china|^(?=.*peo)(?=.*rep).*china\",CXR:\"christmas\",CCK:\"\\\\bcocos|keeling\",COL:\"colombia\",COM:\"comoro\",COG:\"^(?!.*\\\\bdem)(?!.*\\\\bd[\\\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\\\bcongo\",COK:\"\\\\bcook\",CRI:\"costa.?rica\",CIV:\"ivoire|ivory\",HRV:\"croatia\",CUB:\"\\\\bcuba\",CUW:\"^(?!.*bonaire).*\\\\bcura(c|\\xe7)ao\",CYP:\"cyprus\",CSK:\"czechoslovakia\",CZE:\"^(?=.*rep).*czech|czechia|bohemia\",COD:\"\\\\bdem.*congo|congo.*\\\\bdem|congo.*\\\\bd[\\\\.]?r|\\\\bd[\\\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc\",DNK:\"denmark\",DJI:\"djibouti\",DMA:\"dominica(?!n)\",DOM:\"dominican.rep\",ECU:\"ecuador\",EGY:\"egypt\",SLV:\"el.?salvador\",GNQ:\"guine.*eq|eq.*guine|^(?=.*span).*guinea\",ERI:\"eritrea\",EST:\"estonia\",ETH:\"ethiopia|abyssinia\",FLK:\"falkland|malvinas\",FRO:\"faroe|faeroe\",FJI:\"fiji\",FIN:\"finland\",FRA:\"^(?!.*\\\\bdep)(?!.*martinique).*france|french.?republic|\\\\bgaul\",GUF:\"^(?=.*french).*guiana\",PYF:\"french.?polynesia|tahiti\",ATF:\"french.?southern\",GAB:\"gabon\",GMB:\"gambia\",GEO:\"^(?!.*south).*georgia\",DDR:\"german.?democratic.?republic|democratic.?republic.*germany|east.germany\",DEU:\"^(?!.*east).*germany|^(?=.*\\\\bfed.*\\\\brep).*german\",GHA:\"ghana|gold.?coast\",GIB:\"gibraltar\",GRC:\"greece|hellenic|hellas\",GRL:\"greenland\",GRD:\"grenada\",GLP:\"guadeloupe\",GUM:\"\\\\bguam\",GTM:\"guatemala\",GGY:\"guernsey\",GIN:\"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea\",GNB:\"bissau|^(?=.*portu).*guinea\",GUY:\"guyana|british.?guiana\",HTI:\"haiti\",HMD:\"heard.*mcdonald\",VAT:\"holy.?see|vatican|papal.?st\",HND:\"^(?!.*brit).*honduras\",HKG:\"hong.?kong\",HUN:\"^(?!.*austr).*hungary\",ISL:\"iceland\",IND:\"india(?!.*ocea)\",IDN:\"indonesia\",IRN:\"\\\\biran|persia\",IRQ:\"\\\\biraq|mesopotamia\",IRL:\"(^ireland)|(^republic.*ireland)\",IMN:\"^(?=.*isle).*\\\\bman\",ISR:\"israel\",ITA:\"italy\",JAM:\"jamaica\",JPN:\"japan\",JEY:\"jersey\",JOR:\"jordan\",KAZ:\"kazak\",KEN:\"kenya|british.?east.?africa|east.?africa.?prot\",KIR:\"kiribati\",PRK:\"^(?=.*democrat|people|north|d.*p.*.r).*\\\\bkorea|dprk|korea.*(d.*p.*r)\",KWT:\"kuwait\",KGZ:\"kyrgyz|kirghiz\",LAO:\"\\\\blaos?\\\\b\",LVA:\"latvia\",LBN:\"lebanon\",LSO:\"lesotho|basuto\",LBR:\"liberia\",LBY:\"libya\",LIE:\"liechtenstein\",LTU:\"lithuania\",LUX:\"^(?!.*belg).*luxem\",MAC:\"maca(o|u)\",MDG:\"madagascar|malagasy\",MWI:\"malawi|nyasa\",MYS:\"malaysia\",MDV:\"maldive\",MLI:\"\\\\bmali\\\\b\",MLT:\"\\\\bmalta\",MHL:\"marshall\",MTQ:\"martinique\",MRT:\"mauritania\",MUS:\"mauritius\",MYT:\"\\\\bmayotte\",MEX:\"\\\\bmexic\",FSM:\"fed.*micronesia|micronesia.*fed\",MCO:\"monaco\",MNG:\"mongolia\",MNE:\"^(?!.*serbia).*montenegro\",MSR:\"montserrat\",MAR:\"morocco|\\\\bmaroc\",MOZ:\"mozambique\",MMR:\"myanmar|burma\",NAM:\"namibia\",NRU:\"nauru\",NPL:\"nepal\",NLD:\"^(?!.*\\\\bant)(?!.*\\\\bcarib).*netherlands\",ANT:\"^(?=.*\\\\bant).*(nether|dutch)\",NCL:\"new.?caledonia\",NZL:\"new.?zealand\",NIC:\"nicaragua\",NER:\"\\\\bniger(?!ia)\",NGA:\"nigeria\",NIU:\"niue\",NFK:\"norfolk\",MNP:\"mariana\",NOR:\"norway\",OMN:\"\\\\boman|trucial\",PAK:\"^(?!.*east).*paki?stan\",PLW:\"palau\",PSE:\"palestin|\\\\bgaza|west.?bank\",PAN:\"panama\",PNG:\"papua|new.?guinea\",PRY:\"paraguay\",PER:\"peru\",PHL:\"philippines\",PCN:\"pitcairn\",POL:\"poland\",PRT:\"portugal\",PRI:\"puerto.?rico\",QAT:\"qatar\",KOR:\"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\\\bkorea(?!.*d.*p.*r)\",MDA:\"moldov|b(a|e)ssarabia\",REU:\"r(e|\\xe9)union\",ROU:\"r(o|u|ou)mania\",RUS:\"\\\\brussia|soviet.?union|u\\\\.?s\\\\.?s\\\\.?r|socialist.?republics\",RWA:\"rwanda\",BLM:\"barth(e|\\xe9)lemy\",SHN:\"helena\",KNA:\"kitts|\\\\bnevis\",LCA:\"\\\\blucia\",MAF:\"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)\",SPM:\"miquelon\",VCT:\"vincent\",WSM:\"^(?!.*amer).*samoa\",SMR:\"san.?marino\",STP:\"\\\\bs(a|\\xe3)o.?tom(e|\\xe9)\",SAU:\"\\\\bsa\\\\w*.?arabia\",SEN:\"senegal\",SRB:\"^(?!.*monte).*serbia\",SYC:\"seychell\",SLE:\"sierra\",SGP:\"singapore\",SXM:\"^(?!.*martin)(?!.*saba).*maarten\",SVK:\"^(?!.*cze).*slovak\",SVN:\"slovenia\",SLB:\"solomon\",SOM:\"somali\",ZAF:\"south.africa|s\\\\\\\\..?africa\",SGS:\"south.?georgia|sandwich\",SSD:\"\\\\bs\\\\w*.?sudan\",ESP:\"spain\",LKA:\"sri.?lanka|ceylon\",SDN:\"^(?!.*\\\\bs(?!u)).*sudan\",SUR:\"surinam|dutch.?guiana\",SJM:\"svalbard\",SWZ:\"swaziland\",SWE:\"sweden\",CHE:\"switz|swiss\",SYR:\"syria\",TWN:\"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china\",TJK:\"tajik\",THA:\"thailand|\\\\bsiam\",MKD:\"macedonia|fyrom\",TLS:\"^(?=.*leste).*timor|^(?=.*east).*timor\",TGO:\"togo\",TKL:\"tokelau\",TON:\"tonga\",TTO:\"trinidad|tobago\",TUN:\"tunisia\",TUR:\"turkey\",TKM:\"turkmen\",TCA:\"turks\",TUV:\"tuvalu\",UGA:\"uganda\",UKR:\"ukrain\",ARE:\"emirates|^u\\\\.?a\\\\.?e\\\\.?$|united.?arab.?em\",GBR:\"united.?kingdom|britain|^u\\\\.?k\\\\.?$\",TZA:\"tanzania\",USA:\"united.?states\\\\b(?!.*islands)|\\\\bu\\\\.?s\\\\.?a\\\\.?\\\\b|^\\\\s*u\\\\.?s\\\\.?\\\\b(?!.*islands)\",UMI:\"minor.?outlying.?is\",URY:\"uruguay\",UZB:\"uzbek\",VUT:\"vanuatu|new.?hebrides\",VEN:\"venezuela\",VNM:\"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam\",VGB:\"^(?=.*\\\\bu\\\\.?\\\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin\",VIR:\"^(?=.*\\\\bu\\\\.?\\\\s?s).*virgin|^(?=.*states).*virgin\",WLF:\"futuna|wallis\",ESH:\"western.sahara\",YEM:\"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YMD:\"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YUG:\"yugoslavia\",ZMB:\"zambia|northern.?rhodesia\",EAZ:\"zanzibar\",ZWE:\"zimbabwe|^(?!.*northern).*rhodesia\"}},{}],137:[function(t,e,r){e.exports=[\"xx-small\",\"x-small\",\"small\",\"medium\",\"large\",\"x-large\",\"xx-large\",\"larger\",\"smaller\"]},{}],138:[function(t,e,r){e.exports=[\"normal\",\"condensed\",\"semi-condensed\",\"extra-condensed\",\"ultra-condensed\",\"expanded\",\"semi-expanded\",\"extra-expanded\",\"ultra-expanded\"]},{}],139:[function(t,e,r){e.exports=[\"normal\",\"italic\",\"oblique\"]},{}],140:[function(t,e,r){e.exports=[\"normal\",\"bold\",\"bolder\",\"lighter\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"]},{}],141:[function(t,e,r){\"use strict\";e.exports={parse:t(\"./parse\"),stringify:t(\"./stringify\")}},{\"./parse\":143,\"./stringify\":144}],142:[function(t,e,r){\"use strict\";var n=t(\"css-font-size-keywords\");e.exports={isSize:function(t){return/^[\\d\\.]/.test(t)||-1!==t.indexOf(\"/\")||-1!==n.indexOf(t)}}},{\"css-font-size-keywords\":137}],143:[function(t,e,r){\"use strict\";var n=t(\"unquote\"),a=t(\"css-global-keywords\"),i=t(\"css-system-font-keywords\"),o=t(\"css-font-weight-keywords\"),s=t(\"css-font-style-keywords\"),l=t(\"css-font-stretch-keywords\"),c=t(\"string-split-by\"),u=t(\"./lib/util\").isSize;e.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!==i.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!==a.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}},{\"./lib/util\":142,\"css-font-stretch-keywords\":138,\"css-font-style-keywords\":139,\"css-font-weight-keywords\":140,\"css-global-keywords\":145,\"css-system-font-keywords\":146,\"string-split-by\":520,unquote:550}],144:[function(t,e,r){\"use strict\";var n=t(\"pick-by-alias\"),a=t(\"./lib/util\").isSize,i=g(t(\"css-global-keywords\")),o=g(t(\"css-system-font-keywords\")),s=g(t(\"css-font-weight-keywords\")),l=g(t(\"css-font-style-keywords\")),c=g(t(\"css-font-stretch-keywords\")),u={normal:1,\"small-caps\":1},h={serif:1,\"sans-serif\":1,monospace:1,cursive:1,fantasy:1,\"system-ui\":1},f=\"1rem\",p=\"serif\";function d(t,e){if(t&&!e[t]&&!i[t])throw Error(\"Unknown keyword `\"+t+\"`\");return t}function g(t){for(var e={},r=0;r=0;--p)i[p]=c*t[p]+u*e[p]+h*r[p]+f*n[p];return i}return c*t+u*e+h*r+f*n},e.exports.derivative=function(t,e,r,n,a,i){var o=6*a*a-6*a,s=3*a*a-4*a+1,l=-6*a*a+6*a,c=3*a*a-2*a;if(t.length){i||(i=new Array(t.length));for(var u=t.length-1;u>=0;--u)i[u]=o*t[u]+s*e[u]+l*r[u]+c*n[u];return i}return o*t+s*e+l*r[u]+c*n}},{}],148:[function(t,e,r){\"use strict\";var n=t(\"./lib/thunk.js\");function a(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName=\"\",this.pre=null,this.body=null,this.post=null,this.debug=!1}e.exports=function(t){var e=new a;e.pre=t.pre,e.body=t.body,e.post=t.post;var r=t.args.slice(0);e.argTypes=r;for(var i=0;i0)throw new Error(\"cwise: pre() block may not reference array args\");if(i0)throw new Error(\"cwise: post() block may not reference array args\")}else if(\"scalar\"===o)e.scalarArgs.push(i),e.shimArgs.push(\"scalar\"+i);else if(\"index\"===o){if(e.indexArgs.push(i),i0)throw new Error(\"cwise: pre() block may not reference array index\");if(i0)throw new Error(\"cwise: post() block may not reference array index\")}else if(\"shape\"===o){if(e.shapeArgs.push(i),ir.length)throw new Error(\"cwise: Too many arguments in pre() block\");if(e.body.args.length>r.length)throw new Error(\"cwise: Too many arguments in body() block\");if(e.post.args.length>r.length)throw new Error(\"cwise: Too many arguments in post() block\");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||\"cwise\",e.blockSize=t.blockSize||64,n(e)}},{\"./lib/thunk.js\":150}],149:[function(t,e,r){\"use strict\";var n=t(\"uniq\");function a(t,e,r){var n,a,i=t.length,o=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],c=[],u=0,h=0;for(n=0;n0&&l.push(\"var \"+c.join(\",\")),n=i-1;n>=0;--n)u=t[n],l.push([\"for(i\",n,\"=0;i\",n,\"0&&l.push([\"index[\",h,\"]-=s\",h].join(\"\")),l.push([\"++index[\",u,\"]\"].join(\"\"))),l.push(\"}\")}return l.join(\"\\n\")}function i(t,e,r){for(var n=t.body,a=[],i=[],o=0;o0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join(\"\")}e.exports=function(t,e){for(var r=e[1].length-Math.abs(t.arrayBlockIndices[0])|0,s=new Array(t.arrayArgs.length),l=new Array(t.arrayArgs.length),c=0;c0&&x.push(\"shape=SS.slice(0)\"),t.indexArgs.length>0){var b=new Array(r);for(c=0;c0&&y.push(\"var \"+x.join(\",\")),c=0;c3&&y.push(i(t.pre,t,l));var k=i(t.body,t,l),A=function(t){for(var e=0,r=t[0].length;e0,c=[],u=0;u0;){\"].join(\"\")),c.push([\"if(j\",u,\"<\",s,\"){\"].join(\"\")),c.push([\"s\",e[u],\"=j\",u].join(\"\")),c.push([\"j\",u,\"=0\"].join(\"\")),c.push([\"}else{s\",e[u],\"=\",s].join(\"\")),c.push([\"j\",u,\"-=\",s,\"}\"].join(\"\")),l&&c.push([\"index[\",e[u],\"]=j\",u].join(\"\"));for(u=0;u3&&y.push(i(t.post,t,l)),t.debug&&console.log(\"-----Generated cwise routine for \",e,\":\\n\"+y.join(\"\\n\")+\"\\n----------\");var M=[t.funcName||\"unnamed\",\"_cwise_loop_\",s[0].join(\"s\"),\"m\",A,o(l)].join(\"\");return new Function([\"function \",M,\"(\",v.join(\",\"),\"){\",y.join(\"\\n\"),\"} return \",M].join(\"\"))()}},{uniq:549}],150:[function(t,e,r){\"use strict\";var n=t(\"./compile.js\");e.exports=function(t){var e=[\"'use strict'\",\"var CACHED={}\"],r=[],a=t.funcName+\"_cwise_thunk\";e.push([\"return function \",a,\"(\",t.shimArgs.join(\",\"),\"){\"].join(\"\"));for(var i=[],o=[],s=[[\"array\",t.arrayArgs[0],\".shape.slice(\",Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?\",\"+t.arrayBlockIndices[0]+\")\":\")\"].join(\"\")],l=[],c=[],u=0;u0&&(l.push(\"array\"+t.arrayArgs[0]+\".shape.length===array\"+h+\".shape.length+\"+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[u]))),c.push(\"array\"+t.arrayArgs[0]+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[0])+\"]===array\"+h+\".shape[shapeIndex+\"+Math.max(0,t.arrayBlockIndices[u])+\"]\"))}for(t.arrayArgs.length>1&&(e.push(\"if (!(\"+l.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same dimensionality!')\"),e.push(\"for(var shapeIndex=array\"+t.arrayArgs[0]+\".shape.length-\"+Math.abs(t.arrayBlockIndices[0])+\"; shapeIndex--\\x3e0;) {\"),e.push(\"if (!(\"+c.join(\" && \")+\")) throw new Error('cwise: Arrays do not all have the same shape!')\"),e.push(\"}\")),u=0;ue?1:t>=e?0:NaN}function r(t){var r;return 1===t.length&&(r=t,t=function(t,n){return e(r(t),n)}),{left:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}var n=r(e),a=n.right,i=n.left;function o(t,e){return[t,e]}function s(t){return null===t?NaN:+t}function l(t,e){var r,n,a=t.length,i=0,o=-1,l=0,c=0;if(null==e)for(;++o1)return c/(i-1)}function c(t,e){var r=l(t,e);return r?Math.sqrt(r):r}function u(t,e){var r,n,a,i=t.length,o=-1;if(null==e){for(;++o=r)for(n=a=r;++or&&(n=r),a=r)for(n=a=r;++or&&(n=r),a=0?(i>=v?10:i>=y?5:i>=x?2:1)*Math.pow(10,a):-Math.pow(10,-a)/(i>=v?10:i>=y?5:i>=x?2:1)}function _(t,e,r){var n=Math.abs(e-t)/Math.max(0,r),a=Math.pow(10,Math.floor(Math.log(n)/Math.LN10)),i=n/a;return i>=v?a*=10:i>=y?a*=5:i>=x&&(a*=2),e=1)return+r(t[n-1],n-1,t);var n,a=(n-1)*e,i=Math.floor(a),o=+r(t[i],i,t);return o+(+r(t[i+1],i+1,t)-o)*(a-i)}}function k(t,e){var r,n,a=t.length,i=-1;if(null==e){for(;++i=r)for(n=r;++ir&&(n=r)}else for(;++i=r)for(n=r;++ir&&(n=r);return n}function A(t){if(!(a=t.length))return[];for(var e=-1,r=k(t,M),n=new Array(r);++et?1:e>=t?0:NaN},t.deviation=c,t.extent=u,t.histogram=function(){var t=g,e=u,r=w;function n(n){var i,o,s=n.length,l=new Array(s);for(i=0;ih;)f.pop(),--p;var d,g=new Array(p+1);for(i=0;i<=p;++i)(d=g[i]=[]).x0=i>0?f[i-1]:u,d.x1=i=r)for(n=r;++in&&(n=r)}else for(;++i=r)for(n=r;++in&&(n=r);return n},t.mean=function(t,e){var r,n=t.length,a=n,i=-1,o=0;if(null==e)for(;++i=0;)for(e=(n=t[a]).length;--e>=0;)r[--o]=n[e];return r},t.min=k,t.pairs=function(t,e){null==e&&(e=o);for(var r=0,n=t.length-1,a=t[0],i=new Array(n<0?0:n);r0)return[t];if((n=e0)for(t=Math.ceil(t/o),e=Math.floor(e/o),i=new Array(a=Math.ceil(e-t+1));++s=l.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var s,c,h,f=-1,p=n.length,d=l[a++],g=r(),m=i();++fl.length)return r;var a,i=c[n-1];return null!=e&&n>=l.length?a=r.entries():(a=[],r.each((function(e,r){a.push({key:r,values:t(e,n)})}))),null!=i?a.sort((function(t,e){return i(t.key,e.key)})):a}(u(t,0,i,o),0)},key:function(t){return l.push(t),s},sortKeys:function(t){return c[l.length-1]=t,s},sortValues:function(e){return t=e,s},rollup:function(t){return e=t,s}}},t.set=c,t.map=r,t.keys=function(t){var e=[];for(var r in t)e.push(r);return e},t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],155:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function r(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function n(){}var a=\"\\\\s*([+-]?\\\\d+)\\\\s*\",i=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",o=\"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",s=/^#([0-9a-f]{3,8})$/,l=new RegExp(\"^rgb\\\\(\"+[a,a,a]+\"\\\\)$\"),c=new RegExp(\"^rgb\\\\(\"+[o,o,o]+\"\\\\)$\"),u=new RegExp(\"^rgba\\\\(\"+[a,a,a,i]+\"\\\\)$\"),h=new RegExp(\"^rgba\\\\(\"+[o,o,o,i]+\"\\\\)$\"),f=new RegExp(\"^hsl\\\\(\"+[i,o,o]+\"\\\\)$\"),p=new RegExp(\"^hsla\\\\(\"+[i,o,o,i]+\"\\\\)$\"),d={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 g(){return this.rgb().formatHex()}function m(){return this.rgb().formatRgb()}function v(t){var e,r;return t=(t+\"\").trim().toLowerCase(),(e=s.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?y(e):3===r?new w(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?x(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?x(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=l.exec(t))?new w(e[1],e[2],e[3],1):(e=c.exec(t))?new w(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=u.exec(t))?x(e[1],e[2],e[3],e[4]):(e=h.exec(t))?x(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=f.exec(t))?M(e[1],e[2]/100,e[3]/100,1):(e=p.exec(t))?M(e[1],e[2]/100,e[3]/100,e[4]):d.hasOwnProperty(t)?y(d[t]):\"transparent\"===t?new w(NaN,NaN,NaN,0):null}function y(t){return new w(t>>16&255,t>>8&255,255&t,1)}function x(t,e,r,n){return n<=0&&(t=e=r=NaN),new w(t,e,r,n)}function b(t){return t instanceof n||(t=v(t)),t?new w((t=t.rgb()).r,t.g,t.b,t.opacity):new w}function _(t,e,r,n){return 1===arguments.length?b(t):new w(t,e,r,null==n?1:n)}function w(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function T(){return\"#\"+A(this.r)+A(this.g)+A(this.b)}function k(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?\"rgb(\":\"rgba(\")+Math.max(0,Math.min(255,Math.round(this.r)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.g)||0))+\", \"+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?\")\":\", \"+t+\")\")}function A(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?\"0\":\"\")+t.toString(16)}function M(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new C(t,e,r,n)}function S(t){if(t instanceof C)return new C(t.h,t.s,t.l,t.opacity);if(t instanceof n||(t=v(t)),!t)return new C;if(t instanceof C)return t;var e=(t=t.rgb()).r/255,r=t.g/255,a=t.b/255,i=Math.min(e,r,a),o=Math.max(e,r,a),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(r-a)/l+6*(r0&&c<1?0:s,new C(s,l,c,t.opacity)}function E(t,e,r,n){return 1===arguments.length?S(t):new C(t,e,r,null==n?1:n)}function C(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function L(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}e(n,v,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:g,formatHex:g,formatHsl:function(){return S(this).formatHsl()},formatRgb:m,toString:m}),e(w,_,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},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:T,formatHex:T,formatRgb:k,toString:k})),e(C,E,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new C(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new C(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,a=2*r-n;return new w(L(t>=240?t-240:t+120,a,n),L(t,a,n),L(t<120?t+240:t-120,a,n),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=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?\"hsl(\":\"hsla(\")+(this.h||0)+\", \"+100*(this.s||0)+\"%, \"+100*(this.l||0)+\"%\"+(1===t?\")\":\", \"+t+\")\")}}));var P=Math.PI/180,I=180/Math.PI,z=6/29,O=3*z*z;function D(t){if(t instanceof F)return new F(t.l,t.a,t.b,t.opacity);if(t instanceof H)return G(t);t instanceof w||(t=b(t));var e,r,n=V(t.r),a=V(t.g),i=V(t.b),o=B((.2225045*n+.7168786*a+.0606169*i)/1);return n===a&&a===i?e=r=o:(e=B((.4360747*n+.3850649*a+.1430804*i)/.96422),r=B((.0139322*n+.0971045*a+.7141733*i)/.82521)),new F(116*o-16,500*(e-o),200*(o-r),t.opacity)}function R(t,e,r,n){return 1===arguments.length?D(t):new F(t,e,r,null==n?1:n)}function F(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function B(t){return t>.008856451679035631?Math.pow(t,1/3):t/O+4/29}function N(t){return t>z?t*t*t:O*(t-4/29)}function j(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function V(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function U(t){if(t instanceof H)return new H(t.h,t.c,t.l,t.opacity);if(t instanceof F||(t=D(t)),0===t.a&&0===t.b)return new H(NaN,0=0&&(r=t.slice(n+1),t=t.slice(0,n)),t&&!e.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);return{type:t,name:r}}))}function i(t,e){for(var r,n=0,a=t.length;n0)for(var r,n,a=new Array(r),i=0;if+c||np+c||iu.index){var h=f-s.x-s.vx,m=p-s.y-s.vy,v=h*h+m*m;vt.r&&(t.r=t[e].r)}function f(){if(r){var e,a,i=r.length;for(n=new Array(i),e=0;e=c)){(t.data!==r||t.next)&&(0===h&&(d+=(h=o())*h),0===f&&(d+=(f=o())*f),d1?(null==r?u.remove(t):u.set(t,v(r)),e):u.get(t)},find:function(e,r,n){var a,i,o,s,l,c=0,u=t.length;for(null==n?n=1/0:n*=n,c=0;c1?(f.on(t,r),e):f.on(t)}}},t.forceX=function(t){var e,r,n,a=i(.1);function o(t){for(var a,i=0,o=e.length;i=0;)e+=r[n].value;else e=1;t.value=e}function i(t,e){var r,n,a,i,s,u=new c(t),h=+t.value&&(u.value=t.value),f=[u];for(null==e&&(e=o);r=f.pop();)if(h&&(r.value=+r.data.value),(a=e(r.data))&&(s=a.length))for(r.children=new Array(s),i=s-1;i>=0;--i)f.push(n=r.children[i]=new c(a[i])),n.parent=r,n.depth=r.depth+1;return u.eachBefore(l)}function o(t){return t.children}function s(t){t.data=t.data.data}function l(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function c(t){this.data=t,this.depth=this.height=0,this.parent=null}c.prototype=i.prototype={constructor:c,count:function(){return this.eachAfter(a)},each:function(t){var e,r,n,a,i=this,o=[i];do{for(e=o.reverse(),o=[];i=e.pop();)if(t(i),r=i.children)for(n=0,a=r.length;n=0;--r)a.push(e[r]);return this},sum:function(t){return this.eachAfter((function(e){for(var r=+t(e.data)||0,n=e.children,a=n&&n.length;--a>=0;)r+=n[a].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(),a=null;t=r.pop(),e=n.pop();for(;t===e;)a=t,t=r.pop(),e=n.pop();return a}(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var a=n.length;t!==r;)n.splice(a,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 i(this).eachBefore(s)}};var u=Array.prototype.slice;function h(t){for(var e,r,n=0,a=(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}(u.call(t))).length,i=[];n0&&r*r>n*n+a*a}function g(t,e){for(var r=0;r(o*=o)?(n=(c+o-a)/(2*c),i=Math.sqrt(Math.max(0,o/c-n*n)),r.x=t.x-n*s-i*l,r.y=t.y-n*l+i*s):(n=(c+a-o)/(2*c),i=Math.sqrt(Math.max(0,a/c-n*n)),r.x=e.x+n*s-i*l,r.y=e.y+n*l+i*s)):(r.x=e.x+r.r,r.y=e.y)}function b(t,e){var r=t.r+e.r-1e-6,n=e.x-t.x,a=e.y-t.y;return r>0&&r*r>n*n+a*a}function _(t){var e=t._,r=t.next._,n=e.r+r.r,a=(e.x*r.r+r.x*e.r)/n,i=(e.y*r.r+r.y*e.r)/n;return a*a+i*i}function w(t){this._=t,this.next=null,this.previous=null}function T(t){if(!(a=t.length))return 0;var e,r,n,a,i,o,s,l,c,u,f;if((e=t[0]).x=0,e.y=0,!(a>1))return e.r;if(r=t[1],e.x=-r.r,r.x=e.r,r.y=0,!(a>2))return e.r+r.r;x(r,e,n=t[2]),e=new w(e),r=new w(r),n=new w(n),e.next=n.previous=r,r.next=e.previous=n,n.next=r.previous=e;t:for(s=3;sf&&(f=s),m=u*u*g,(p=Math.max(f/m,m/h))>d){u-=s;break}d=p}v.push(o={value:u,dice:l1?e:1)},r}(G);var Z=function t(e){function r(t,r,n,a,i){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}(G);t.cluster=function(){var t=e,a=1,i=1,o=!1;function s(e){var s,l=0;e.eachAfter((function(e){var a=e.children;a?(e.x=function(t){return t.reduce(r,0)/t.length}(a),e.y=function(t){return 1+t.reduce(n,0)}(a)):(e.x=s?l+=t(e,s):0,e.y=0,s=e)}));var c=function(t){for(var e;e=t.children;)t=e[0];return t}(e),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(e),h=c.x-t(c,u)/2,f=u.x+t(u,c)/2;return e.eachAfter(o?function(t){t.x=(t.x-e.x)*a,t.y=(e.y-t.y)*i}:function(t){t.x=(t.x-h)/(f-h)*a,t.y=(1-(e.y?t.y/e.y:1))*i})}return s.separation=function(e){return arguments.length?(t=e,s):t},s.size=function(t){return arguments.length?(o=!1,a=+t[0],i=+t[1],s):o?null:[a,i]},s.nodeSize=function(t){return arguments.length?(o=!0,a=+t[0],i=+t[1],s):o?[a,i]:null},s},t.hierarchy=i,t.pack=function(){var t=null,e=1,r=1,n=M;function a(a){return a.x=e/2,a.y=r/2,t?a.eachBefore(C(t)).eachAfter(L(n,.5)).eachBefore(P(1)):a.eachBefore(C(E)).eachAfter(L(M,1)).eachAfter(L(n,a.r/Math.min(e,r))).eachBefore(P(Math.min(e,r)/(2*a.r))),a}return a.radius=function(e){return arguments.length?(t=k(e),a):t},a.size=function(t){return arguments.length?(e=+t[0],r=+t[1],a):[e,r]},a.padding=function(t){return arguments.length?(n=\"function\"==typeof t?t:S(+t),a):n},a},t.packEnclose=h,t.packSiblings=function(t){return T(t),t},t.partition=function(){var t=1,e=1,r=0,n=!1;function a(a){var i=a.height+1;return a.x0=a.y0=r,a.x1=t,a.y1=e/i,a.eachBefore(function(t,e){return function(n){n.children&&z(n,n.x0,t*(n.depth+1)/e,n.x1,t*(n.depth+2)/e);var a=n.x0,i=n.y0,o=n.x1-r,s=n.y1-r;o0)throw new Error(\"cycle\");return i}return r.id=function(e){return arguments.length?(t=A(e),r):t},r.parentId=function(t){return arguments.length?(e=A(t),r):e},r},t.tree=function(){var t=B,e=1,r=1,n=null;function a(a){var l=function(t){for(var e,r,n,a,i,o=new q(t,0),s=[o];e=s.pop();)if(n=e._.children)for(e.children=new Array(i=n.length),a=i-1;a>=0;--a)s.push(r=e.children[a]=new q(n[a],a)),r.parent=e;return(o.parent=new q(null,0)).children=[o],o}(a);if(l.eachAfter(i),l.parent.m=-l.z,l.eachBefore(o),n)a.eachBefore(s);else{var c=a,u=a,h=a;a.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),g=r/(h.depth||1);a.eachBefore((function(t){t.x=(t.x+p)*d,t.y=t.depth*g}))}return a}function i(e){var r=e.children,n=e.parent.children,a=e.i?n[e.i-1]:null;if(r){!function(t){for(var e,r=0,n=0,a=t.children,i=a.length;--i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(e);var i=(r[0].z+r[r.length-1].z)/2;a?(e.z=a.z+t(e._,a._),e.m=e.z-i):e.z=i}else a&&(e.z=a.z+t(e._,a._));e.parent.A=function(e,r,n){if(r){for(var a,i=e,o=e,s=r,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=j(s),i=N(i),s&&i;)l=N(l),(o=j(o)).a=e,(a=s.z+h-i.z-c+t(s._,i._))>0&&(V(U(s,e,n),e,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!j(o)&&(o.t=s,o.m+=h-u),i&&!N(l)&&(l.t=i,l.m+=c-f,n=e)}return n}(e,a,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 a.separation=function(e){return arguments.length?(t=e,a):t},a.size=function(t){return arguments.length?(n=!1,e=+t[0],r=+t[1],a):n?null:[e,r]},a.nodeSize=function(t){return arguments.length?(n=!0,e=+t[0],r=+t[1],a):n?[e,r]:null},a},t.treemap=function(){var t=W,e=!1,r=1,n=1,a=[0],i=M,o=M,s=M,l=M,c=M;function u(t){return t.x0=t.y0=0,t.x1=r,t.y1=n,t.eachBefore(h),a=[0],e&&t.eachBefore(I),t}function h(e){var r=a[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=a,u.y0=i,u.x1=o,void(u.y1=l)}var h=c[e],f=n/2+h,p=e+1,d=r-1;for(;p>>1;c[g]l-i){var y=(a*v+o*m)/n;t(e,p,m,a,i,y,l),t(p,r,v,y,i,o,l)}else{var x=(i*v+l*m)/n;t(e,p,m,a,i,o,x),t(p,r,v,a,x,o,l)}}(0,l,t.value,e,r,n,a)},t.treemapDice=z,t.treemapResquarify=Z,t.treemapSlice=H,t.treemapSliceDice=function(t,e,r,n,a){(1&t.depth?H:z)(t,e,r,n,a)},t.treemapSquarify=W,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],159:[function(t,e,r){!function(n,a){\"object\"==typeof r&&\"undefined\"!=typeof e?a(r,t(\"d3-color\")):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){\"use strict\";function r(t,e,r,n,a){var i=t*t,o=i*t;return((1-3*t+3*i-o)*e+(4-6*i+3*o)*r+(1+3*t+3*i-3*o)*n+o*a)/6}function n(t){var e=t.length-1;return function(n){var a=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[a],o=t[a+1],s=a>0?t[a-1]:2*i-o,l=a180||r<-180?r-360*Math.round(r/360):r):i(isNaN(t)?e:t)}function l(t){return 1==(t=+t)?c: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):i(isNaN(e)?r:e)}}function c(t,e){var r=e-t;return r?o(t,r):i(isNaN(t)?e:t)}var u=function t(r){var n=l(r);function a(t,r){var a=n((t=e.rgb(t)).r,(r=e.rgb(r)).r),i=n(t.g,r.g),o=n(t.b,r.b),s=c(t.opacity,r.opacity);return function(e){return t.r=a(e),t.g=i(e),t.b=o(e),t.opacity=s(e),t+\"\"}}return a.gamma=t,a}(1);function h(t){return function(r){var n,a,i=r.length,o=new Array(i),s=new Array(i),l=new Array(i);for(n=0;ni&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:y(r,n)})),i=_.lastIndex;return i180?e+=360:e-t>180&&(t+=360),i.push({i:r.push(a(r)+\"rotate(\",null,n)-2,x:y(t,e)})):e&&r.push(a(r)+\"rotate(\"+e+n)}(i.rotate,o.rotate,s,l),function(t,e,r,i){t!==e?i.push({i:r.push(a(r)+\"skewX(\",null,n)-2,x:y(t,e)}):e&&r.push(a(r)+\"skewX(\"+e+n)}(i.skewX,o.skewX,s,l),function(t,e,r,n,i,o){if(t!==r||e!==n){var s=i.push(a(i)+\"scale(\",null,\",\",null,\")\");o.push({i:s-4,x:y(t,r)},{i:s-2,x:y(e,n)})}else 1===r&&1===n||i.push(a(i)+\"scale(\"+r+\",\"+n+\")\")}(i.scaleX,i.scaleY,o.scaleX,o.scaleY,s,l),i=o=null,function(t){for(var e,r=-1,n=l.length;++r1e-6)if(Math.abs(h*l-c*u)>1e-6&&i){var p=n-o,d=a-s,g=l*l+c*c,m=p*p+d*d,v=Math.sqrt(g),y=Math.sqrt(f),x=i*Math.tan((e-Math.acos((g+f-m)/(2*v*y)))/2),b=x/y,_=x/v;Math.abs(b-1)>1e-6&&(this._+=\"L\"+(t+b*u)+\",\"+(r+b*h)),this._+=\"A\"+i+\",\"+i+\",0,0,\"+ +(h*p>u*d)+\",\"+(this._x1=t+_*l)+\",\"+(this._y1=r+_*c)}else this._+=\"L\"+(this._x1=t)+\",\"+(this._y1=r);else;},arc:function(t,a,i,o,s,l){t=+t,a=+a,l=!!l;var c=(i=+i)*Math.cos(o),u=i*Math.sin(o),h=t+c,f=a+u,p=1^l,d=l?o-s:s-o;if(i<0)throw new Error(\"negative radius: \"+i);null===this._x1?this._+=\"M\"+h+\",\"+f:(Math.abs(this._x1-h)>1e-6||Math.abs(this._y1-f)>1e-6)&&(this._+=\"L\"+h+\",\"+f),i&&(d<0&&(d=d%r+r),d>n?this._+=\"A\"+i+\",\"+i+\",0,1,\"+p+\",\"+(t-c)+\",\"+(a-u)+\"A\"+i+\",\"+i+\",0,1,\"+p+\",\"+(this._x1=h)+\",\"+(this._y1=f):d>1e-6&&(this._+=\"A\"+i+\",\"+i+\",0,\"+ +(d>=e)+\",\"+p+\",\"+(this._x1=t+i*Math.cos(s))+\",\"+(this._y1=a+i*Math.sin(s))))},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._}},t.path=i,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],161:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?n(r):n((t=t||self).d3=t.d3||{})}(this,(function(t){\"use strict\";function e(t,e,r,n){if(isNaN(e)||isNaN(r))return t;var a,i,o,s,l,c,u,h,f,p=t._root,d={data:n},g=t._x0,m=t._y0,v=t._x1,y=t._y1;if(!p)return t._root=d,t;for(;p.length;)if((c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o,a=p,!(p=p[h=u<<1|c]))return a[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,a?a[h]=d:t._root=d,t;do{a=a?a[h]=new Array(4):t._root=new Array(4),(c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o}while((h=u<<1|c)==(f=(l>=o)<<1|s>=i));return a[f]=p,a[h]=d,t}function r(t,e,r,n,a){this.node=t,this.x0=e,this.y0=r,this.x1=n,this.y1=a}function n(t){return t[0]}function a(t){return t[1]}function i(t,e,r){var i=new o(null==e?n:e,null==r?a:r,NaN,NaN,NaN,NaN);return null==t?i:i.addAll(t)}function o(t,e,r,n,a,i){this._x=t,this._y=e,this._x0=r,this._y0=n,this._x1=a,this._y1=i,this._root=void 0}function s(t){for(var e={data:t.data},r=e;t=t.next;)r=r.next={data:t.data};return e}var l=i.prototype=o.prototype;l.copy=function(){var t,e,r=new o(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root;if(!n)return r;if(!n.length)return r._root=s(n),r;for(t=[{source:n,target:r._root=new Array(4)}];n=t.pop();)for(var a=0;a<4;++a)(e=n.source[a])&&(e.length?t.push({source:e,target:n.target[a]=new Array(4)}):n.target[a]=s(e));return r},l.add=function(t){var r=+this._x.call(null,t),n=+this._y.call(null,t);return e(this.cover(r,n),r,n,t)},l.addAll=function(t){var r,n,a,i,o=t.length,s=new Array(o),l=new Array(o),c=1/0,u=1/0,h=-1/0,f=-1/0;for(n=0;nh&&(h=a),if&&(f=i));if(c>h||u>f)return this;for(this.cover(c,u).cover(h,f),n=0;nt||t>=a||n>e||e>=i;)switch(s=(ep||(o=c.y0)>d||(s=c.x1)=y)<<1|t>=v)&&(c=g[g.length-1],g[g.length-1]=g[g.length-1-u],g[g.length-1-u]=c)}else{var x=t-+this._x.call(null,m.data),b=e-+this._y.call(null,m.data),_=x*x+b*b;if(_=(s=(d+m)/2))?d=s:m=s,(u=o>=(l=(g+v)/2))?g=l:v=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(a=p.next)&&delete p.next,n?(a?n.next=a:delete n.next,this):e?(a?e[h]=a: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=a,this)},l.removeAll=function(t){for(var e=0,r=t.length;e1?0:t<-1?u:Math.acos(t)}function d(t){return t>=1?h:t<=-1?-h:Math.asin(t)}function g(t){return t.innerRadius}function m(t){return t.outerRadius}function v(t){return t.startAngle}function y(t){return t.endAngle}function x(t){return t&&t.padAngle}function b(t,e,r,n,a,i,o,s){var l=r-t,c=n-e,u=o-a,h=s-i,f=h*l-u*c;if(!(f*f<1e-12))return[t+(f=(u*(e-i)-h*(t-a))/f)*l,e+f*c]}function _(t,e,r,n,a,i,s){var l=t-r,u=e-n,h=(s?i:-i)/c(l*l+u*u),f=h*u,p=-h*l,d=t+f,g=e+p,m=r+f,v=n+p,y=(d+m)/2,x=(g+v)/2,b=m-d,_=v-g,w=b*b+_*_,T=a-i,k=d*v-m*g,A=(_<0?-1:1)*c(o(0,T*T*w-k*k)),M=(k*_-b*A)/w,S=(-k*b-_*A)/w,E=(k*_+b*A)/w,C=(-k*b+_*A)/w,L=M-y,P=S-x,I=E-y,z=C-x;return L*L+P*P>I*I+z*z&&(M=E,S=C),{cx:M,cy:S,x01:-f,y01:-p,x11:M*(a/T-1),y11:S*(a/T-1)}}function w(t){this._context=t}function T(t){return new w(t)}function k(t){return t[0]}function A(t){return t[1]}function M(){var t=k,n=A,a=r(!0),i=null,o=T,s=null;function l(r){var l,c,u,h=r.length,f=!1;for(null==i&&(s=o(u=e.path())),l=0;l<=h;++l)!(l=h;--f)c.point(v[f],y[f]);c.lineEnd(),c.areaEnd()}m&&(v[u]=+t(p,u,r),y[u]=+a(p,u,r),c.point(n?+n(p,u,r):v[u],i?+i(p,u,r):y[u]))}if(d)return c=null,d+\"\"||null}function h(){return M().defined(o).curve(l).context(s)}return u.x=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),n=null,u):t},u.x0=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),u):t},u.x1=function(t){return arguments.length?(n=null==t?null:\"function\"==typeof t?t:r(+t),u):n},u.y=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),i=null,u):a},u.y0=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),u):a},u.y1=function(t){return arguments.length?(i=null==t?null:\"function\"==typeof t?t:r(+t),u):i},u.lineX0=u.lineY0=function(){return h().x(t).y(a)},u.lineY1=function(){return h().x(t).y(i)},u.lineX1=function(){return h().x(n).y(a)},u.defined=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(!!t),u):o},u.curve=function(t){return arguments.length?(l=t,null!=s&&(c=l(s)),u):l},u.context=function(t){return arguments.length?(null==t?s=c=null:c=l(s=t),u):s},u}function E(t,e){return et?1:e>=t?0:NaN}function C(t){return t}w.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var L=I(T);function P(t){this._curve=t}function I(t){function e(e){return new P(t(e))}return e._curve=t,e}function z(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function O(){return z(M().curve(L))}function D(){var t=S().curve(L),e=t.curve,r=t.lineX0,n=t.lineX1,a=t.lineY0,i=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return z(r())},delete t.lineX0,t.lineEndAngle=function(){return z(n())},delete t.lineX1,t.lineInnerRadius=function(){return z(a())},delete t.lineY0,t.lineOuterRadius=function(){return z(i())},delete t.lineY1,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function R(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}P.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};var F=Array.prototype.slice;function B(t){return t.source}function N(t){return t.target}function j(t){var n=B,a=N,i=k,o=A,s=null;function l(){var r,l=F.call(arguments),c=n.apply(this,l),u=a.apply(this,l);if(s||(s=r=e.path()),t(s,+i.apply(this,(l[0]=c,l)),+o.apply(this,l),+i.apply(this,(l[0]=u,l)),+o.apply(this,l)),r)return s=null,r+\"\"||null}return l.source=function(t){return arguments.length?(n=t,l):n},l.target=function(t){return arguments.length?(a=t,l):a},l.x=function(t){return arguments.length?(i=\"function\"==typeof t?t:r(+t),l):i},l.y=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(+t),l):o},l.context=function(t){return arguments.length?(s=null==t?null:t,l):s},l}function V(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,a,n,a)}function U(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e,r=(r+a)/2,n,r,n,a)}function q(t,e,r,n,a){var i=R(e,r),o=R(e,r=(r+a)/2),s=R(n,r),l=R(n,a);t.moveTo(i[0],i[1]),t.bezierCurveTo(o[0],o[1],s[0],s[1],l[0],l[1])}var H={draw:function(t,e){var r=Math.sqrt(e/u);t.moveTo(r,0),t.arc(0,0,r,0,f)}},G={draw:function(t,e){var r=Math.sqrt(e/5)/2;t.moveTo(-3*r,-r),t.lineTo(-r,-r),t.lineTo(-r,-3*r),t.lineTo(r,-3*r),t.lineTo(r,-r),t.lineTo(3*r,-r),t.lineTo(3*r,r),t.lineTo(r,r),t.lineTo(r,3*r),t.lineTo(-r,3*r),t.lineTo(-r,r),t.lineTo(-3*r,r),t.closePath()}},Y=Math.sqrt(1/3),W=2*Y,Z={draw:function(t,e){var r=Math.sqrt(e/W),n=r*Y;t.moveTo(0,-r),t.lineTo(n,0),t.lineTo(0,r),t.lineTo(-n,0),t.closePath()}},X=Math.sin(u/10)/Math.sin(7*u/10),J=Math.sin(f/10)*X,K=-Math.cos(f/10)*X,Q={draw:function(t,e){var r=Math.sqrt(.8908130915292852*e),n=J*r,a=K*r;t.moveTo(0,-r),t.lineTo(n,a);for(var i=1;i<5;++i){var o=f*i/5,s=Math.cos(o),l=Math.sin(o);t.lineTo(l*r,-s*r),t.lineTo(s*n-l*a,l*n+s*a)}t.closePath()}},$={draw:function(t,e){var r=Math.sqrt(e),n=-r/2;t.rect(n,n,r,r)}},tt=Math.sqrt(3),et={draw:function(t,e){var r=-Math.sqrt(e/(3*tt));t.moveTo(0,2*r),t.lineTo(-tt*r,-r),t.lineTo(tt*r,-r),t.closePath()}},rt=-.5,nt=Math.sqrt(3)/2,at=1/Math.sqrt(12),it=3*(at/2+1),ot={draw:function(t,e){var r=Math.sqrt(e/it),n=r/2,a=r*at,i=n,o=r*at+r,s=-i,l=o;t.moveTo(n,a),t.lineTo(i,o),t.lineTo(s,l),t.lineTo(rt*n-nt*a,nt*n+rt*a),t.lineTo(rt*i-nt*o,nt*i+rt*o),t.lineTo(rt*s-nt*l,nt*s+rt*l),t.lineTo(rt*n+nt*a,rt*a-nt*n),t.lineTo(rt*i+nt*o,rt*o-nt*i),t.lineTo(rt*s+nt*l,rt*l-nt*s),t.closePath()}},st=[H,G,Z,$,Q,et,ot];function lt(){}function ct(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function ut(t){this._context=t}function ht(t){this._context=t}function ft(t){this._context=t}function pt(t,e){this._basis=new ut(t),this._beta=e}ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ct(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ht.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ft.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},pt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n,a=t[0],i=e[0],o=t[r]-a,s=e[r]-i,l=-1;++l<=r;)n=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(a+n*o),this._beta*e[l]+(1-this._beta)*(i+n*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var dt=function t(e){function r(t){return 1===e?new ut(t):new pt(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function gt(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function mt(t,e){this._context=t,this._k=(1-e)/6}mt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:gt(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var vt=function t(e){function r(t){return new mt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function yt(t,e){this._context=t,this._k=(1-e)/6}yt.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xt=function t(e){function r(t){return new yt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bt(t,e){this._context=t,this._k=(1-e)/6}bt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var _t=function t(e){function r(t){return new bt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function wt(t,e,r){var n=t._x1,a=t._y1,i=t._x2,o=t._y2;if(t._l01_a>1e-12){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,a=(a*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>1e-12){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3*t._l23_a*(t._l23_a+t._l12_a);i=(i*c+t._x1*t._l23_2a-e*t._l12_2a)/u,o=(o*c+t._y1*t._l23_2a-r*t._l12_2a)/u}t._context.bezierCurveTo(n,a,i,o,t._x2,t._y2)}function Tt(t,e){this._context=t,this._alpha=e}Tt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var kt=function t(e){function r(t){return e?new Tt(t,e):new mt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function At(t,e){this._context=t,this._alpha=e}At.prototype={areaStart:lt,areaEnd:lt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Mt=function t(e){function r(t){return e?new At(t,e):new yt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function St(t,e){this._context=t,this._alpha=e}St.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:wt(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Et=function t(e){function r(t){return e?new St(t,e):new bt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ct(t){this._context=t}function Lt(t){return t<0?-1:1}function Pt(t,e,r){var n=t._x1-t._x0,a=e-t._x1,i=(t._y1-t._y0)/(n||a<0&&-0),o=(r-t._y1)/(a||n<0&&-0),s=(i*a+o*n)/(n+a);return(Lt(i)+Lt(o))*Math.min(Math.abs(i),Math.abs(o),.5*Math.abs(s))||0}function It(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function zt(t,e,r){var n=t._x0,a=t._y0,i=t._x1,o=t._y1,s=(i-n)/3;t._context.bezierCurveTo(n+s,a+s*e,i-s,o-s*r,i,o)}function Ot(t){this._context=t}function Dt(t){this._context=new Rt(t)}function Rt(t){this._context=t}function Ft(t){this._context=t}function Bt(t){var e,r,n=t.length-1,a=new Array(n),i=new Array(n),o=new Array(n);for(a[0]=0,i[0]=2,o[0]=t[0]+2*t[1],e=1;e=0;--e)a[e]=(o[e]-a[e+1])/i[e];for(i[n-1]=(t[n]+a[n-1])/2,e=0;e1)for(var r,n,a,i=1,o=t[e[0]],s=o.length;i=0;)r[e]=e;return r}function Ut(t,e){return t[e]}function qt(t){var e=t.map(Ht);return Vt(t).sort((function(t,r){return e[t]-e[r]}))}function Ht(t){for(var e,r=-1,n=0,a=t.length,i=-1/0;++ri&&(i=e,n=r);return n}function Gt(t){var e=t.map(Yt);return Vt(t).sort((function(t,r){return e[t]-e[r]}))}function Yt(t){for(var e,r=0,n=-1,a=t.length;++n=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},t.arc=function(){var t=g,o=m,w=r(0),T=null,k=v,A=y,M=x,S=null;function E(){var r,g,m=+t.apply(this,arguments),v=+o.apply(this,arguments),y=k.apply(this,arguments)-h,x=A.apply(this,arguments)-h,E=n(x-y),C=x>y;if(S||(S=r=e.path()),v1e-12)if(E>f-1e-12)S.moveTo(v*i(y),v*l(y)),S.arc(0,0,v,y,x,!C),m>1e-12&&(S.moveTo(m*i(x),m*l(x)),S.arc(0,0,m,x,y,C));else{var L,P,I=y,z=x,O=y,D=x,R=E,F=E,B=M.apply(this,arguments)/2,N=B>1e-12&&(T?+T.apply(this,arguments):c(m*m+v*v)),j=s(n(v-m)/2,+w.apply(this,arguments)),V=j,U=j;if(N>1e-12){var q=d(N/m*l(B)),H=d(N/v*l(B));(R-=2*q)>1e-12?(O+=q*=C?1:-1,D-=q):(R=0,O=D=(y+x)/2),(F-=2*H)>1e-12?(I+=H*=C?1:-1,z-=H):(F=0,I=z=(y+x)/2)}var G=v*i(I),Y=v*l(I),W=m*i(D),Z=m*l(D);if(j>1e-12){var X,J=v*i(z),K=v*l(z),Q=m*i(O),$=m*l(O);if(E1e-12?U>1e-12?(L=_(Q,$,G,Y,v,U,C),P=_(J,K,W,Z,v,U,C),S.moveTo(L.cx+L.x01,L.cy+L.y01),U1e-12&&R>1e-12?V>1e-12?(L=_(W,Z,J,K,m,-V,C),P=_(G,Y,Q,$,m,-V,C),S.lineTo(L.cx+L.x01,L.cy+L.y01),V0&&(d+=h);for(null!=e?g.sort((function(t,r){return e(m[t],m[r])})):null!=n&&g.sort((function(t,e){return n(r[t],r[e])})),s=0,c=d?(y-p*b)/d:0;s0?h*c:0)+b,m[l]={data:r[l],index:s,value:h,startAngle:v,endAngle:u,padAngle:x};return m}return s.value=function(e){return arguments.length?(t=\"function\"==typeof e?e:r(+e),s):t},s.sortValues=function(t){return arguments.length?(e=t,n=null,s):e},s.sort=function(t){return arguments.length?(n=t,e=null,s):n},s.startAngle=function(t){return arguments.length?(a=\"function\"==typeof t?t:r(+t),s):a},s.endAngle=function(t){return arguments.length?(i=\"function\"==typeof t?t:r(+t),s):i},s.padAngle=function(t){return arguments.length?(o=\"function\"==typeof t?t:r(+t),s):o},s},t.pointRadial=R,t.radialArea=D,t.radialLine=O,t.stack=function(){var t=r([]),e=Vt,n=jt,a=Ut;function i(r){var i,o,s=t.apply(this,arguments),l=r.length,c=s.length,u=new Array(c);for(i=0;i0)for(var r,n,a,i,o,s,l=0,c=t[e[0]].length;l0?(n[0]=i,n[1]=i+=a):a<0?(n[1]=o,n[0]=o+=a):(n[0]=0,n[1]=a)},t.stackOffsetExpand=function(t,e){if((n=t.length)>0){for(var r,n,a,i=0,o=t[0].length;i0){for(var r,n=0,a=t[e[0]],i=a.length;n0&&(n=(r=t[e[0]]).length)>0){for(var r,n,a,i=0,o=1;o=0&&r._call.call(null,t),r=r._next;--n}function m(){s=(o=c.now())+l,n=a=0;try{g()}finally{n=0,function(){var t,n,a=e,i=1/0;for(;a;)a._call?(i>a._time&&(i=a._time),t=a,a=a._next):(n=a._next,a._next=null,a=t?t._next=n:e=n);r=t,y(i)}(),s=0}}function v(){var t=c.now(),e=t-o;e>1e3&&(l-=e,o=t)}function y(t){n||(a&&(a=clearTimeout(a)),t-s>24?(t<1/0&&(a=setTimeout(m,t-c.now()-l)),i&&(i=clearInterval(i))):(i||(o=c.now(),i=setInterval(v,1e3)),n=1,u(m)))}p.prototype=d.prototype={constructor:p,restart:function(t,n,a){if(\"function\"!=typeof t)throw new TypeError(\"callback is not a function\");a=(null==a?h():+a)+(null==n?0:+n),this._next||r===this||(r?r._next=this:e=this,r=this),this._call=t,this._time=a,y()},stop:function(){this._call&&(this._call=null,this._time=1/0,y())}},t.interval=function(t,e,r){var n=new p,a=e;return null==e?(n.restart(t,e,r),n):(e=+e,r=null==r?h():+r,n.restart((function i(o){o+=a,n.restart(i,a+=e,r),t(o)}),e,r),n)},t.now=h,t.timeout=function(t,e,r){var n=new p;return e=null==e?0:+e,n.restart((function(r){n.stop(),t(r+e)}),e,r),n},t.timer=d,t.timerFlush=g,Object.defineProperty(t,\"__esModule\",{value:!0})}))},{}],164:[function(t,e,r){!function(){var t={version:\"3.5.17\"},r=[].slice,n=function(t){return r.call(t)},a=this.document;function i(t){return t&&(t.ownerDocument||t.document||t).documentElement}function o(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(a)try{n(a.documentElement.childNodes)[0].nodeType}catch(t){n=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}),a)try{a.createElement(\"DIV\").style.setProperty(\"opacity\",0,\"\")}catch(t){var s=this.Element.prototype,l=s.setAttribute,c=s.setAttributeNS,u=this.CSSStyleDeclaration.prototype,h=u.setProperty;s.setAttribute=function(t,e){l.call(this,t,e+\"\")},s.setAttributeNS=function(t,e,r){c.call(this,t,e,r+\"\")},u.setProperty=function(t,e,r){h.call(this,t,e+\"\",r)}}function f(t,e){return te?1:t>=e?0:NaN}function p(t){return null===t?NaN:+t}function d(t){return!isNaN(t)}function g(t){return{left:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}t.ascending=f,t.descending=function(t,e){return et?1:e>=t?0:NaN},t.min=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a=n){r=n;break}for(;++an&&(r=n)}else{for(;++a=n){r=n;break}for(;++an&&(r=n)}return r},t.max=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a=n){r=n;break}for(;++ar&&(r=n)}else{for(;++a=n){r=n;break}for(;++ar&&(r=n)}return r},t.extent=function(t,e){var r,n,a,i=-1,o=t.length;if(1===arguments.length){for(;++i=n){r=a=n;break}for(;++in&&(r=n),a=n){r=a=n;break}for(;++in&&(r=n),a1)return o/(l-1)},t.deviation=function(){var e=t.variance.apply(this,arguments);return e?Math.sqrt(e):e};var m=g(f);function v(t){return t.length}t.bisectLeft=m.left,t.bisect=t.bisectRight=m.right,t.bisector=function(t){return g(1===t.length?function(e,r){return f(t(e),r)}:t)},t.shuffle=function(t,e,r){(i=arguments.length)<3&&(r=t.length,i<2&&(e=0));for(var n,a,i=r-e;i;)a=Math.random()*i--|0,n=t[i+e],t[i+e]=t[a+e],t[a+e]=n;return t},t.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},t.pairs=function(t){for(var e=0,r=t.length-1,n=t[0],a=new Array(r<0?0:r);e=0;)for(e=(n=t[a]).length;--e>=0;)r[--o]=n[e];return r};var y=Math.abs;function x(t){for(var e=1;t*e%1;)e*=10;return e}function b(t,e){for(var r in e)Object.defineProperty(t.prototype,r,{value:e[r],enumerable:!1})}function _(){this._=Object.create(null)}t.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,a=[],i=x(y(r)),o=-1;if(t*=i,e*=i,(r*=i)<0)for(;(n=t+r*++o)>e;)a.push(n/i);else for(;(n=t+r*++o)=a.length)return r?r.call(n,i):e?i.sort(e):i;for(var l,c,u,h,f=-1,p=i.length,d=a[s++],g=new _;++f=a.length)return e;var n=[],o=i[r++];return e.forEach((function(e,a){n.push({key:e,values:t(a,r)})})),o?n.sort((function(t,e){return o(t.key,e.key)})):n}(o(t.map,e,0),0)},n.key=function(t){return a.push(t),n},n.sortKeys=function(t){return i[a.length-1]=t,n},n.sortValues=function(t){return e=t,n},n.rollup=function(t){return r=t,n},n},t.set=function(t){var e=new C;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}},t.event=null,t.requote=function(t){return t.replace(j,\"\\\\$&\")};var j=/[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g,V={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var r in e)t[r]=e[r]};function U(t){return V(t,Y),t}var q=function(t,e){return e.querySelector(t)},H=function(t,e){return e.querySelectorAll(t)},G=function(t,e){var r=t.matches||t[I(t,\"matchesSelector\")];return(G=function(t,e){return r.call(t,e)})(t,e)};\"function\"==typeof Sizzle&&(q=function(t,e){return Sizzle(t,e)[0]||null},H=Sizzle,G=Sizzle.matchesSelector),t.selection=function(){return t.select(a.documentElement)};var Y=t.selection.prototype=[];function W(t){return\"function\"==typeof t?t:function(){return q(t,this)}}function Z(t){return\"function\"==typeof t?t:function(){return H(t,this)}}Y.select=function(t){var e,r,n,a,i=[];t=W(t);for(var o=-1,s=this.length;++o=0&&\"xmlns\"!==(r=t.slice(0,e))&&(t=t.slice(e+1)),J.hasOwnProperty(r)?{space:J[r],local:t}:t}},Y.attr=function(e,r){if(arguments.length<2){if(\"string\"==typeof e){var n=this.node();return(e=t.ns.qualify(e)).local?n.getAttributeNS(e.space,e.local):n.getAttribute(e)}for(r in e)this.each(K(r,e[r]));return this}return this.each(K(e,r))},Y.classed=function(t,e){if(arguments.length<2){if(\"string\"==typeof t){var r=this.node(),n=(t=tt(t)).length,a=-1;if(e=r.classList){for(;++a=0;)(r=n[a])&&(i&&i!==r.nextSibling&&i.parentNode.insertBefore(r,i),i=r);return this},Y.sort=function(t){t=ct.apply(this,arguments);for(var e=-1,r=this.length;++e=e&&(e=a+1);!(o=s[e])&&++e0&&(e=e.slice(0,o));var l=gt.get(e);function c(){var t=this[i];t&&(this.removeEventListener(e,t,t.$),delete this[i])}return l&&(e=l,s=vt),o?r?function(){var t=s(r,n(arguments));c.call(this),this.addEventListener(e,this[i]=t,t.$=a),t._=r}:c:r?O:function(){var r,n=new RegExp(\"^__on([^.]+)\"+t.requote(e)+\"$\");for(var a in this)if(r=a.match(n)){var i=this[a];this.removeEventListener(r[1],i,i.$),delete this[a]}}}t.selection.enter=ht,t.selection.enter.prototype=ft,ft.append=Y.append,ft.empty=Y.empty,ft.node=Y.node,ft.call=Y.call,ft.size=Y.size,ft.select=function(t){for(var e,r,n,a,i,o=[],s=-1,l=this.length;++s0?1:t<0?-1:0}function zt(t,e,r){return(e[0]-t[0])*(r[1]-t[1])-(e[1]-t[1])*(r[0]-t[0])}function Ot(t){return t>1?0:t<-1?Mt:Math.acos(t)}function Dt(t){return t>1?Ct:t<-1?-Ct:Math.asin(t)}function Rt(t){return((t=Math.exp(t))+1/t)/2}function Ft(t){return(t=Math.sin(t/2))*t}var Bt=Math.SQRT2;t.interpolateZoom=function(t,e){var r,n,a=t[0],i=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-a,h=l-i,f=u*u+h*h;if(f0&&(e=e.transition().duration(g)),e.call(w.event)}function S(){c&&c.domain(l.range().map((function(t){return(t-f.x)/f.k})).map(l.invert)),h&&h.domain(u.range().map((function(t){return(t-f.y)/f.k})).map(u.invert))}function E(t){m++||t({type:\"zoomstart\"})}function C(t){S(),t({type:\"zoom\",scale:f.k,translate:[f.x,f.y]})}function L(t){--m||(t({type:\"zoomend\"}),r=null)}function P(){var e=this,r=_.of(e,arguments),n=0,a=t.select(o(e)).on(y,l).on(x,c),i=T(t.mouse(e)),s=bt(e);function l(){n=1,A(t.mouse(e),i),C(r)}function c(){a.on(y,null).on(x,null),s(n),L(r)}vs.call(e),E(r)}function I(){var e,r=this,n=_.of(r,arguments),a={},i=0,o=\".zoom-\"+t.event.changedTouches[0].identifier,l=\"touchmove\"+o,c=\"touchend\"+o,u=[],h=t.select(r),p=bt(r);function d(){var n=t.touches(r);return e=f.k,n.forEach((function(t){t.identifier in a&&(a[t.identifier]=T(t))})),n}function g(){var e=t.event.target;t.select(e).on(l,m).on(c,y),u.push(e);for(var n=t.event.changedTouches,o=0,h=n.length;o1){v=p[0];var x=p[1],b=v[0]-x[0],_=v[1]-x[1];i=b*b+_*_}}function m(){var o,l,c,u,h=t.touches(r);vs.call(r);for(var f=0,p=h.length;f360?t-=360:t<0&&(t+=360),t<60?n+(a-n)*t/60:t<180?a:t<240?n+(a-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)-(a=r<=.5?r*(1+e):r+e-r*e),new ne(i(t+120),i(t),i(t-120))}function Yt(e,r,n){return this instanceof Yt?(this.h=+e,this.c=+r,void(this.l=+n)):arguments.length<2?e instanceof Yt?new Yt(e.h,e.c,e.l):$t(e instanceof Xt?e.l:(e=ue((e=t.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Yt(e,r,n)}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)},t.hcl=Yt;var Wt=Yt.prototype=new Ut;function Zt(t,e,r){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(r,Math.cos(t*=Lt)*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 Yt?Zt(t.h,t.c,t.l):ue((t=ne(t)).r,t.g,t.b):new Xt(t,e,r)}Wt.brighter=function(t){return new Yt(this.h,this.c,Math.min(100,this.l+Jt*(arguments.length?t:1)))},Wt.darker=function(t){return new Yt(this.h,this.c,Math.max(0,this.l-Jt*(arguments.length?t:1)))},Wt.rgb=function(){return Zt(this.h,this.c,this.l).rgb()},t.lab=Xt;var Jt=18,Kt=Xt.prototype=new Ut;function Qt(t,e,r){var n=(t+16)/116,a=n+e/500,i=n-r/200;return new ne(re(3.2404542*(a=.95047*te(a))-1.5371385*(n=1*te(n))-.4985314*(i=1.08883*te(i))),re(-.969266*a+1.8760108*n+.041556*i),re(.0556434*a-.2040259*n+1.0572252*i))}function $t(t,e,r){return t>0?new Yt(Math.atan2(r,e)*Pt,Math.sqrt(e*e+r*r),t):new Yt(NaN,NaN,t)}function te(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function ee(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function re(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function ne(t,e,r){return this instanceof ne?(this.r=~~t,this.g=~~e,void(this.b=~~r)):arguments.length<2?t instanceof ne?new ne(t.r,t.g,t.b):le(\"\"+t,ne,Gt):new ne(t,e,r)}function ae(t){return new ne(t>>16,t>>8&255,255&t)}function ie(t){return ae(t)+\"\"}Kt.brighter=function(t){return new Xt(Math.min(100,this.l+Jt*(arguments.length?t:1)),this.a,this.b)},Kt.darker=function(t){return new Xt(Math.max(0,this.l-Jt*(arguments.length?t:1)),this.a,this.b)},Kt.rgb=function(){return Qt(this.l,this.a,this.b)},t.rgb=ne;var oe=ne.prototype=new Ut;function se(t){return t<16?\"0\"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function le(t,e,r){var n,a,i,o=0,s=0,l=0;if(n=/([a-z]+)\\((.*)\\)/.exec(t=t.toLowerCase()))switch(a=n[2].split(\",\"),n[1]){case\"hsl\":return r(parseFloat(a[0]),parseFloat(a[1])/100,parseFloat(a[2])/100);case\"rgb\":return e(fe(a[0]),fe(a[1]),fe(a[2]))}return(i=pe.get(t))?e(i.r,i.g,i.b):(null==t||\"#\"!==t.charAt(0)||isNaN(i=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&i)>>4,o|=o>>4,s=240&i,s|=s>>4,l=15&i,l|=l<<4):7===t.length&&(o=(16711680&i)>>16,s=(65280&i)>>8,l=255&i)),e(o,s,l))}function ce(t,e,r){var n,a,i=Math.min(t/=255,e/=255,r/=255),o=Math.max(t,e,r),s=o-i,l=(o+i)/2;return s?(a=l<.5?s/(o+i):s/(2-o-i),n=t==o?(e-r)/s+(e0&&l<1?0:n),new qt(n,a,l)}function ue(t,e,r){var n=ee((.4124564*(t=he(t))+.3575761*(e=he(e))+.1804375*(r=he(r)))/.95047),a=ee((.2126729*t+.7151522*e+.072175*r)/1);return Xt(116*a-16,500*(n-a),200*(a-ee((.0193339*t+.119192*e+.9503041*r)/1.08883)))}function he(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function fe(t){var e=parseFloat(t);return\"%\"===t.charAt(t.length-1)?Math.round(2.55*e):e}oe.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,r=this.g,n=this.b,a=30;return e||r||n?(e&&e=200&&e<300||304===e){try{t=a.call(o,c)}catch(t){return void s.error.call(o,t)}s.load.call(o,t)}else s.error.call(o,c)}return this.XDomainRequest&&!(\"withCredentials\"in c)&&/^(http(s)?:)?\\/\\//.test(e)&&(c=new XDomainRequest),\"onload\"in c?c.onload=c.onerror=h:c.onreadystatechange=function(){c.readyState>3&&h()},c.onprogress=function(e){var r=t.event;t.event=e;try{s.progress.call(o,c)}finally{t.event=r}},o.header=function(t,e){return t=(t+\"\").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+\"\",o)},o.mimeType=function(t){return arguments.length?(r=null==t?null:t+\"\",o):r},o.responseType=function(t){return arguments.length?(u=t,o):u},o.response=function(t){return a=t,o},[\"get\",\"post\"].forEach((function(t){o[t]=function(){return o.send.apply(o,[t].concat(n(arguments)))}})),o.send=function(t,n,a){if(2===arguments.length&&\"function\"==typeof n&&(a=n,n=null),c.open(t,e,!0),null==r||\"accept\"in l||(l.accept=r+\",*/*\"),c.setRequestHeader)for(var i in l)c.setRequestHeader(i,l[i]);return null!=r&&c.overrideMimeType&&c.overrideMimeType(r),null!=u&&(c.responseType=u),null!=a&&o.on(\"error\",a).on(\"load\",(function(t){a(null,t)})),s.beforesend.call(o,c),c.send(null==n?null:n),o},o.abort=function(){return c.abort(),o},t.rebind(o,s,\"on\"),null==i?o:o.get(function(t){return 1===t.length?function(e,r){t(null==e?r:null)}:t}(i))}pe.forEach((function(t,e){pe.set(t,ae(e))})),t.functor=de,t.xhr=ge(L),t.dsv=function(t,e){var r=new RegExp('[\"'+t+\"\\n]\"),n=t.charCodeAt(0);function a(t,r,n){arguments.length<3&&(n=r,r=null);var a=me(t,e,null==r?i:o(r),n);return a.row=function(t){return arguments.length?a.response(null==(r=t)?i:o(t)):r},a}function i(t){return a.parse(t.responseText)}function o(t){return function(e){return a.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 a.parse=function(t,e){var r;return a.parseRows(t,(function(t,n){if(r)return r(t,n-1);var a=new Function(\"d\",\"return {\"+t.map((function(t,e){return JSON.stringify(t)+\": d[\"+e+\"]\"})).join(\",\")+\"}\");r=e?function(t,r){return e(a(t),r)}:a}))},a.parseRows=function(t,e){var r,a,i={},o={},s=[],l=t.length,c=0,u=0;function h(){if(c>=l)return o;if(a)return a=!1,i;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++24?(isFinite(e)&&(clearTimeout(be),be=setTimeout(Te,e)),xe=0):(xe=1,_e(Te))}function ke(){for(var t=Date.now(),e=ve;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Ae(){for(var t,e=ve,r=1/0;e;)e.c?(e.t8?function(t){return t/r}:function(t){return t*r},symbol:t}}));function Ee(e){var r=e.decimal,n=e.thousands,a=e.grouping,i=e.currency,o=a&&n?function(t,e){for(var r=t.length,i=[],o=0,s=a[0],l=0;r>0&&s>0&&(l+s+1>e&&(s=Math.max(1,e-l)),i.push(t.substring(r-=s,r+s)),!((l+=s+1)>e));)s=a[o=(o+1)%a.length];return i.reverse().join(n)}:L;return function(e){var n=Ce.exec(e),a=n[1]||\" \",s=n[2]||\">\",l=n[3]||\"-\",c=n[4]||\"\",u=n[5],h=+n[6],f=n[7],p=n[8],d=n[9],g=1,m=\"\",v=\"\",y=!1,x=!0;switch(p&&(p=+p.substring(1)),(u||\"0\"===a&&\"=\"===s)&&(u=a=\"0\",s=\"=\"),d){case\"n\":f=!0,d=\"g\";break;case\"%\":g=100,v=\"%\",d=\"f\";break;case\"p\":g=100,v=\"%\",d=\"r\";break;case\"b\":case\"o\":case\"x\":case\"X\":\"#\"===c&&(m=\"0\"+d.toLowerCase());case\"c\":x=!1;case\"d\":y=!0,p=0;break;case\"s\":g=-1,d=\"r\"}\"$\"===c&&(m=i[0],v=i[1]),\"r\"!=d||p||(d=\"g\"),null!=p&&(\"g\"==d?p=Math.max(1,Math.min(21,p)):\"e\"!=d&&\"f\"!=d||(p=Math.max(0,Math.min(20,p)))),d=Le.get(d)||Pe;var b=u&&f;return function(e){var n=v;if(y&&e%1)return\"\";var i=e<0||0===e&&1/e<0?(e=-e,\"-\"):\"-\"===l?\"\":l;if(g<0){var c=t.formatPrefix(e,p);e=c.scale(e),n=c.symbol+v}else e*=g;var _,w,T=(e=d(e,p)).lastIndexOf(\".\");if(T<0){var k=x?e.lastIndexOf(\"e\"):-1;k<0?(_=e,w=\"\"):(_=e.substring(0,k),w=e.substring(k))}else _=e.substring(0,T),w=r+e.substring(T+1);!u&&f&&(_=o(_,1/0));var A=m.length+_.length+w.length+(b?0:i.length),M=A\"===s?M+i+e:\"^\"===s?M.substring(0,A>>=1)+i+e+M.substring(A):i+(b?e:M+e))+n}}}t.formatPrefix=function(e,r){var n=0;return(e=+e)&&(e<0&&(e*=-1),r&&(e=t.round(e,Me(e,r))),n=1+Math.floor(1e-12+Math.log(e)/Math.LN10),n=Math.max(-24,Math.min(24,3*Math.floor((n-1)/3)))),Se[8+n/3]};var Ce=/(?:([^{])?([<>=^]))?([+\\- ])?([$#])?(0)?(\\d+)?(,)?(\\.-?\\d+)?([a-z%])?/i,Le=t.map({b:function(t){return t.toString(2)},c:function(t){return String.fromCharCode(t)},o:function(t){return t.toString(8)},x:function(t){return t.toString(16)},X:function(t){return t.toString(16).toUpperCase()},g:function(t,e){return t.toPrecision(e)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},r:function(e,r){return(e=t.round(e,Me(e,r))).toFixed(Math.max(0,Math.min(20,Me(e*(1+1e-15),r))))}});function Pe(t){return t+\"\"}var Ie=t.time={},ze=Date;function Oe(){this._=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}Oe.prototype={getDate:function(){return this._.getUTCDate()},getDay:function(){return this._.getUTCDay()},getFullYear:function(){return this._.getUTCFullYear()},getHours:function(){return this._.getUTCHours()},getMilliseconds:function(){return this._.getUTCMilliseconds()},getMinutes:function(){return this._.getUTCMinutes()},getMonth:function(){return this._.getUTCMonth()},getSeconds:function(){return this._.getUTCSeconds()},getTime:function(){return this._.getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this._.valueOf()},setDate:function(){De.setUTCDate.apply(this._,arguments)},setDay:function(){De.setUTCDay.apply(this._,arguments)},setFullYear:function(){De.setUTCFullYear.apply(this._,arguments)},setHours:function(){De.setUTCHours.apply(this._,arguments)},setMilliseconds:function(){De.setUTCMilliseconds.apply(this._,arguments)},setMinutes:function(){De.setUTCMinutes.apply(this._,arguments)},setMonth:function(){De.setUTCMonth.apply(this._,arguments)},setSeconds:function(){De.setUTCSeconds.apply(this._,arguments)},setTime:function(){De.setTime.apply(this._,arguments)}};var De=Date.prototype;function Re(t,e,r){function n(e){var r=t(e),n=i(r,1);return e-r1)for(;o=c)return-1;if(37===(a=e.charCodeAt(s++))){if(o=e.charAt(s++),!(i=w[o in Ne?e.charAt(s++):o])||(n=i(t,r,n))<0)return-1}else if(a!=r.charCodeAt(n++))return-1}return n}u.utc=function(t){var e=u(t);function r(t){try{var r=new(ze=Oe);return r._=t,e(r)}finally{ze=Date}}return r.parse=function(t){try{ze=Oe;var r=e.parse(t);return r&&r._}finally{ze=Date}},r.toString=e.toString,r},u.multi=u.utc.multi=or;var f=t.map(),p=qe(o),d=He(o),g=qe(s),m=He(s),v=qe(l),y=He(l),x=qe(c),b=He(c);i.forEach((function(t,e){f.set(t.toLowerCase(),e)}));var _={a:function(t){return s[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return l[t.getMonth()]},c:u(r),d:function(t,e){return Ue(t.getDate(),e,2)},e:function(t,e){return Ue(t.getDate(),e,2)},H:function(t,e){return Ue(t.getHours(),e,2)},I:function(t,e){return Ue(t.getHours()%12||12,e,2)},j:function(t,e){return Ue(1+Ie.dayOfYear(t),e,3)},L:function(t,e){return Ue(t.getMilliseconds(),e,3)},m:function(t,e){return Ue(t.getMonth()+1,e,2)},M:function(t,e){return Ue(t.getMinutes(),e,2)},p:function(t){return i[+(t.getHours()>=12)]},S:function(t,e){return Ue(t.getSeconds(),e,2)},U:function(t,e){return Ue(Ie.sundayOfYear(t),e,2)},w:function(t){return t.getDay()},W:function(t,e){return Ue(Ie.mondayOfYear(t),e,2)},x:u(n),X:u(a),y:function(t,e){return Ue(t.getFullYear()%100,e,2)},Y:function(t,e){return Ue(t.getFullYear()%1e4,e,4)},Z:ar,\"%\":function(){return\"%\"}},w={a:function(t,e,r){g.lastIndex=0;var n=g.exec(e.slice(r));return n?(t.w=m.get(n[0].toLowerCase()),r+n[0].length):-1},A:function(t,e,r){p.lastIndex=0;var n=p.exec(e.slice(r));return n?(t.w=d.get(n[0].toLowerCase()),r+n[0].length):-1},b:function(t,e,r){x.lastIndex=0;var n=x.exec(e.slice(r));return n?(t.m=b.get(n[0].toLowerCase()),r+n[0].length):-1},B:function(t,e,r){v.lastIndex=0;var n=v.exec(e.slice(r));return n?(t.m=y.get(n[0].toLowerCase()),r+n[0].length):-1},c:function(t,e,r){return h(t,_.c.toString(),e,r)},d:Qe,e:Qe,H:tr,I:tr,j:$e,L:nr,m:Ke,M:er,p:function(t,e,r){var n=f.get(e.slice(r,r+=2).toLowerCase());return null==n?-1:(t.p=n,r)},S:rr,U:Ye,w:Ge,W:We,x:function(t,e,r){return h(t,_.x.toString(),e,r)},X:function(t,e,r){return h(t,_.X.toString(),e,r)},y:Xe,Y:Ze,Z:Je,\"%\":ir};return u}Ie.year=Re((function(t){return(t=Ie.day(t)).setMonth(0,1),t}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t){return t.getFullYear()})),Ie.years=Ie.year.range,Ie.years.utc=Ie.year.utc.range,Ie.day=Re((function(t){var e=new ze(2e3,0);return e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),e}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t){return t.getDate()-1})),Ie.days=Ie.day.range,Ie.days.utc=Ie.day.utc.range,Ie.dayOfYear=function(t){var e=Ie.year(t);return Math.floor((t-e-6e4*(t.getTimezoneOffset()-e.getTimezoneOffset()))/864e5)},[\"sunday\",\"monday\",\"tuesday\",\"wednesday\",\"thursday\",\"friday\",\"saturday\"].forEach((function(t,e){e=7-e;var r=Ie[t]=Re((function(t){return(t=Ie.day(t)).setDate(t.getDate()-(t.getDay()+e)%7),t}),(function(t,e){t.setDate(t.getDate()+7*Math.floor(e))}),(function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)-(r!==e)}));Ie[t+\"s\"]=r.range,Ie[t+\"s\"].utc=r.utc.range,Ie[t+\"OfYear\"]=function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)}})),Ie.week=Ie.sunday,Ie.weeks=Ie.sunday.range,Ie.weeks.utc=Ie.sunday.utc.range,Ie.weekOfYear=Ie.sundayOfYear;var Ne={\"-\":\"\",_:\" \",0:\"0\"},je=/^\\s*\\d+/,Ve=/^%/;function Ue(t,e,r){var n=t<0?\"-\":\"\",a=(n?-t:t)+\"\",i=a.length;return n+(i68?1900:2e3),r+a[0].length):-1}function Je(t,e,r){return/^[+-]\\d{4}$/.test(e=e.slice(r,r+5))?(t.Z=-e,r+5):-1}function Ke(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function Qe(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function $e(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.j=+n[0],r+n[0].length):-1}function tr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function er(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function rr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function nr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function ar(t){var e=t.getTimezoneOffset(),r=e>0?\"-\":\"+\",n=y(e)/60|0,a=y(e)%60;return r+Ue(n,\"0\",2)+Ue(a,\"0\",2)}function ir(t,e,r){Ve.lastIndex=0;var n=Ve.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function or(t){for(var e=t.length,r=-1;++r=0?1:-1,s=o*i,l=Math.cos(e),c=Math.sin(e),u=a*c,h=n*l+u*Math.cos(s),f=u*o*Math.sin(s);Er.add(Math.atan2(f,h)),r=t,n=l,a=c}Cr.point=function(o,s){Cr.point=i,r=(t=o)*Lt,n=Math.cos(s=(e=s)*Lt/2+Mt/4),a=Math.sin(s)},Cr.lineEnd=function(){i(t,e)}}function Pr(t){var e=t[0],r=t[1],n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}function Ir(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function zr(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 Or(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Dr(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function Rr(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}function Fr(t){return[Math.atan2(t[1],t[0]),Dt(t[2])]}function Br(t,e){return y(t[0]-e[0])kt?a=90:c<-kt&&(r=-90),h[0]=e,h[1]=n}};function p(t,i){u.push(h=[e=t,n=t]),ia&&(a=i)}function d(t,o){var s=Pr([t*Lt,o*Lt]);if(l){var c=zr(l,s),u=zr([c[1],-c[0],0],c);Rr(u),u=Fr(u);var h=t-i,f=h>0?1:-1,d=u[0]*Pt*f,g=y(h)>180;if(g^(f*ia&&(a=m);else if(g^(f*i<(d=(d+360)%360-180)&&da&&(a=o);g?t_(e,n)&&(n=t):_(t,n)>_(e,n)&&(e=t):n>=e?(tn&&(n=t)):t>i?_(e,t)>_(e,n)&&(n=t):_(t,n)>_(e,n)&&(e=t)}else p(t,o);l=s,i=t}function g(){f.point=d}function m(){h[0]=e,h[1]=n,f.point=p,l=null}function v(t,e){if(l){var r=t-i;c+=y(r)>180?r+(r>0?360:-360):r}else o=t,s=e;Cr.point(t,e),d(t,e)}function x(){Cr.lineStart()}function b(){v(o,s),Cr.lineEnd(),y(c)>kt&&(e=-(n=180)),h[0]=e,h[1]=n,l=null}function _(t,e){return(e-=t)<0?e+360:e}function w(t,e){return t[0]-e[0]}function T(t,e){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t_(g[0],g[1])&&(g[1]=p[1]),_(p[0],g[1])>_(g[0],g[1])&&(g[0]=p[0])):s.push(g=p);for(var l,c,p,d=-1/0,g=(o=0,s[c=s.length-1]);o<=c;g=p,++o)p=s[o],(l=_(g[1],p[0]))>d&&(d=l,e=p[0],n=g[1])}return u=h=null,e===1/0||r===1/0?[[NaN,NaN],[NaN,NaN]]:[[e,r],[n,a]]}}(),t.geo.centroid=function(e){vr=yr=xr=br=_r=wr=Tr=kr=Ar=Mr=Sr=0,t.geo.stream(e,Nr);var r=Ar,n=Mr,a=Sr,i=r*r+n*n+a*a;return i=0;--s)a.point((h=u[s])[0],h[1]);else n(p.x,p.p.x,-1,a);p=p.p}u=(p=p.o).z,d=!d}while(!p.v);a.lineEnd()}}}function Zr(t){if(e=t.length){for(var e,r,n=0,a=t[0];++n=0?1:-1,T=w*_,k=T>Mt,A=d*x;if(Er.add(Math.atan2(A*w*Math.sin(T),g*b+A*Math.cos(T))),i+=k?_+w*St:_,k^f>=r^v>=r){var M=zr(Pr(h),Pr(t));Rr(M);var S=zr(a,M);Rr(S);var E=(k^_>=0?-1:1)*Dt(S[2]);(n>E||n===E&&(M[0]||M[1]))&&(o+=k^_>=0?1:-1)}if(!m++)break;f=v,d=x,g=b,h=t}}return(i<-kt||i0){for(x||(o.polygonStart(),x=!0),o.lineStart();++i1&&2&e&&r.push(r.pop().concat(r.shift())),s.push(r.filter(Kr))}return u}}function Kr(t){return t.length>1}function Qr(){var t,e=[];return{lineStart:function(){e.push(t=[])},point:function(e,r){t.push([e,r])},lineEnd:O,buffer:function(){var r=e;return e=[],t=null,r},rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))}}}function $r(t,e){return((t=t.x)[0]<0?t[1]-Ct-kt:Ct-t[1])-((e=e.x)[0]<0?e[1]-Ct-kt:Ct-e[1])}var tn=Jr(Yr,(function(t){var e,r=NaN,n=NaN,a=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(i,o){var s=i>0?Mt:-Mt,l=y(i-r);y(l-Mt)0?Ct:-Ct),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),t.point(i,n),e=0):a!==s&&l>=Mt&&(y(r-a)kt?Math.atan((Math.sin(e)*(i=Math.cos(n))*Math.sin(r)-Math.sin(n)*(a=Math.cos(e))*Math.sin(t))/(a*i*o)):(e+n)/2}(r,n,i,o),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),e=0),t.point(r=i,n=o),a=s},lineEnd:function(){t.lineEnd(),r=n=NaN},clean:function(){return 2-e}}}),(function(t,e,r,n){var a;if(null==t)a=r*Ct,n.point(-Mt,a),n.point(0,a),n.point(Mt,a),n.point(Mt,0),n.point(Mt,-a),n.point(0,-a),n.point(-Mt,-a),n.point(-Mt,0),n.point(-Mt,a);else if(y(t[0]-e[0])>kt){var i=t[0]0,n=y(e)>kt;return Jr(a,(function(t){var e,s,l,c,u;return{lineStart:function(){c=l=!1,u=1},point:function(h,f){var p,d=[h,f],g=a(h,f),m=r?g?0:o(h,f):g?o(h+(h<0?Mt:-Mt),f):0;if(!e&&(c=l=g)&&t.lineStart(),g!==l&&(p=i(e,d),(Br(e,p)||Br(d,p))&&(d[0]+=kt,d[1]+=kt,g=a(d[0],d[1]))),g!==l)u=0,g?(t.lineStart(),p=i(d,e),t.point(p[0],p[1])):(p=i(e,d),t.point(p[0],p[1]),t.lineEnd()),e=p;else if(n&&e&&r^g){var v;m&s||!(v=i(d,e,!0))||(u=0,r?(t.lineStart(),t.point(v[0][0],v[0][1]),t.point(v[1][0],v[1][1]),t.lineEnd()):(t.point(v[1][0],v[1][1]),t.lineEnd(),t.lineStart(),t.point(v[0][0],v[0][1])))}!g||e&&Br(e,d)||t.point(d[0],d[1]),e=d,l=g,s=m},lineEnd:function(){l&&t.lineEnd(),e=null},clean:function(){return u|(c&&l)<<1}}}),Bn(t,6*Lt),r?[0,-t]:[-Mt,t-Mt]);function a(t,r){return Math.cos(t)*Math.cos(r)>e}function i(t,r,n){var a=[1,0,0],i=zr(Pr(t),Pr(r)),o=Ir(i,i),s=i[0],l=o-s*s;if(!l)return!n&&t;var c=e*o/l,u=-e*s/l,h=zr(a,i),f=Dr(a,c);Or(f,Dr(i,u));var p=h,d=Ir(f,p),g=Ir(p,p),m=d*d-g*(Ir(f,f)-1);if(!(m<0)){var v=Math.sqrt(m),x=Dr(p,(-d-v)/g);if(Or(x,f),x=Fr(x),!n)return x;var b,_=t[0],w=r[0],T=t[1],k=r[1];w<_&&(b=_,_=w,w=b);var A=w-_,M=y(A-Mt)0^x[1]<(y(x[0]-_)Mt^(_<=x[0]&&x[0]<=w)){var S=Dr(p,(-d+v)/g);return Or(S,f),[x,Fr(S)]}}}function o(e,n){var a=r?t:Mt-t,i=0;return e<-a?i|=1:e>a&&(i|=2),n<-a?i|=4:n>a&&(i|=8),i}}function rn(t,e,r,n){return function(a){var i,o=a.a,s=a.b,l=o.x,c=o.y,u=0,h=1,f=s.x-l,p=s.y-c;if(i=t-l,f||!(i>0)){if(i/=f,f<0){if(i0){if(i>h)return;i>u&&(u=i)}if(i=r-l,f||!(i<0)){if(i/=f,f<0){if(i>h)return;i>u&&(u=i)}else if(f>0){if(i0)){if(i/=p,p<0){if(i0){if(i>h)return;i>u&&(u=i)}if(i=n-c,p||!(i<0)){if(i/=p,p<0){if(i>h)return;i>u&&(u=i)}else if(p>0){if(i0&&(a.a={x:l+u*f,y:c+u*p}),h<1&&(a.b={x:l+h*f,y:c+h*p}),a}}}}}}function nn(e,r,n,a){return function(l){var c,u,h,f,p,d,g,m,v,y,x,b=l,_=Qr(),w=rn(e,r,n,a),T={point:M,lineStart:function(){T.point=S,u&&u.push(h=[]);y=!0,v=!1,g=m=NaN},lineEnd:function(){c&&(S(f,p),d&&v&&_.rejoin(),c.push(_.buffer()));T.point=M,v&&l.lineEnd()},polygonStart:function(){l=_,c=[],u=[],x=!0},polygonEnd:function(){l=b,c=t.merge(c);var r=function(t){for(var e=0,r=u.length,n=t[1],a=0;an&&zt(c,i,t)>0&&++e:i[1]<=n&&zt(c,i,t)<0&&--e,c=i;return 0!==e}([e,a]),n=x&&r,i=c.length;(n||i)&&(l.polygonStart(),n&&(l.lineStart(),k(null,null,1,l),l.lineEnd()),i&&Wr(c,o,r,k,l),l.polygonEnd()),c=u=h=null}};function k(t,o,l,c){var u=0,h=0;if(null==t||(u=i(t,l))!==(h=i(o,l))||s(t,o)<0^l>0)do{c.point(0===u||3===u?e:n,u>1?a:r)}while((u=(u+l+4)%4)!==h);else c.point(o[0],o[1])}function A(t,i){return e<=t&&t<=n&&r<=i&&i<=a}function M(t,e){A(t,e)&&l.point(t,e)}function S(t,e){var r=A(t=Math.max(-1e9,Math.min(1e9,t)),e=Math.max(-1e9,Math.min(1e9,e)));if(u&&h.push([t,e]),y)f=t,p=e,d=r,y=!1,r&&(l.lineStart(),l.point(t,e));else if(r&&v)l.point(t,e);else{var n={a:{x:g,y:m},b:{x:t,y:e}};w(n)?(v||(l.lineStart(),l.point(n.a.x,n.a.y)),l.point(n.b.x,n.b.y),r||l.lineEnd(),x=!1):r&&(l.lineStart(),l.point(t,e),x=!1)}g=t,m=e,v=r}return T};function i(t,a){return y(t[0]-e)0?0:3:y(t[0]-n)0?2:1:y(t[1]-r)0?1:0:a>0?3:2}function o(t,e){return s(t.x,e.x)}function s(t,e){var r=i(t,1),n=i(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]}}function an(t){var e=0,r=Mt/3,n=Ln(t),a=n(e,r);return a.parallels=function(t){return arguments.length?n(e=t[0]*Mt/180,r=t[1]*Mt/180):[e/Mt*180,r/Mt*180]},a}function on(t,e){var r=Math.sin(t),n=(r+Math.sin(e))/2,a=1+r*(2*n-r),i=Math.sqrt(a)/n;function o(t,e){var r=Math.sqrt(a-2*n*Math.sin(e))/n;return[r*Math.sin(t*=n),i-r*Math.cos(t)]}return o.invert=function(t,e){var r=i-e;return[Math.atan2(t,r)/n,Dt((a-(t*t+r*r)*n*n)/(2*n))]},o}t.geo.clipExtent=function(){var t,e,r,n,a,i,o={stream:function(t){return a&&(a.valid=!1),(a=i(t)).valid=!0,a},extent:function(s){return arguments.length?(i=nn(t=+s[0][0],e=+s[0][1],r=+s[1][0],n=+s[1][1]),a&&(a.valid=!1,a=null),o):[[t,e],[r,n]]}};return o.extent([[0,0],[960,500]])},(t.geo.conicEqualArea=function(){return an(on)}).raw=on,t.geo.albers=function(){return t.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},t.geo.albersUsa=function(){var e,r,n,a,i=t.geo.albers(),o=t.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),s=t.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),l={point:function(t,r){e=[t,r]}};function c(t){var i=t[0],o=t[1];return e=null,r(i,o),e||(n(i,o),e)||a(i,o),e}return c.invert=function(t){var e=i.scale(),r=i.translate(),n=(t[0]-r[0])/e,a=(t[1]-r[1])/e;return(a>=.12&&a<.234&&n>=-.425&&n<-.214?o:a>=.166&&a<.234&&n>=-.214&&n<-.115?s:i).invert(t)},c.stream=function(t){var e=i.stream(t),r=o.stream(t),n=s.stream(t);return{point:function(t,a){e.point(t,a),r.point(t,a),n.point(t,a)},sphere:function(){e.sphere(),r.sphere(),n.sphere()},lineStart:function(){e.lineStart(),r.lineStart(),n.lineStart()},lineEnd:function(){e.lineEnd(),r.lineEnd(),n.lineEnd()},polygonStart:function(){e.polygonStart(),r.polygonStart(),n.polygonStart()},polygonEnd:function(){e.polygonEnd(),r.polygonEnd(),n.polygonEnd()}}},c.precision=function(t){return arguments.length?(i.precision(t),o.precision(t),s.precision(t),c):i.precision()},c.scale=function(t){return arguments.length?(i.scale(t),o.scale(.35*t),s.scale(t),c.translate(i.translate())):i.scale()},c.translate=function(t){if(!arguments.length)return i.translate();var e=i.scale(),u=+t[0],h=+t[1];return r=i.translate(t).clipExtent([[u-.455*e,h-.238*e],[u+.455*e,h+.238*e]]).stream(l).point,n=o.translate([u-.307*e,h+.201*e]).clipExtent([[u-.425*e+kt,h+.12*e+kt],[u-.214*e-kt,h+.234*e-kt]]).stream(l).point,a=s.translate([u-.205*e,h+.212*e]).clipExtent([[u-.214*e+kt,h+.166*e+kt],[u-.115*e-kt,h+.234*e-kt]]).stream(l).point,c},c.scale(1070)};var sn,ln,cn,un,hn,fn,pn={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ln=0,pn.lineStart=dn},polygonEnd:function(){pn.lineStart=pn.lineEnd=pn.point=O,sn+=y(ln/2)}};function dn(){var t,e,r,n;function a(t,e){ln+=n*t-r*e,r=t,n=e}pn.point=function(i,o){pn.point=a,t=r=i,e=n=o},pn.lineEnd=function(){a(t,e)}}var gn={point:function(t,e){thn&&(hn=t);efn&&(fn=e)},lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O};function mn(){var t=vn(4.5),e=[],r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(e){return t=vn(e),r},result:function(){if(e.length){var t=e.join(\"\");return e=[],t}}};function n(r,n){e.push(\"M\",r,\",\",n,t)}function a(t,n){e.push(\"M\",t,\",\",n),r.point=i}function i(t,r){e.push(\"L\",t,\",\",r)}function o(){r.point=n}function s(){e.push(\"Z\")}return r}function vn(t){return\"m0,\"+t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+-2*t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+2*t+\"z\"}var yn,xn={point:bn,lineStart:_n,lineEnd:wn,polygonStart:function(){xn.lineStart=Tn},polygonEnd:function(){xn.point=bn,xn.lineStart=_n,xn.lineEnd=wn}};function bn(t,e){xr+=t,br+=e,++_r}function _n(){var t,e;function r(r,n){var a=r-t,i=n-e,o=Math.sqrt(a*a+i*i);wr+=o*(t+r)/2,Tr+=o*(e+n)/2,kr+=o,bn(t=r,e=n)}xn.point=function(n,a){xn.point=r,bn(t=n,e=a)}}function wn(){xn.point=bn}function Tn(){var t,e,r,n;function a(t,e){var a=t-r,i=e-n,o=Math.sqrt(a*a+i*i);wr+=o*(r+t)/2,Tr+=o*(n+e)/2,kr+=o,Ar+=(o=n*t-r*e)*(r+t),Mr+=o*(n+e),Sr+=3*o,bn(r=t,n=e)}xn.point=function(i,o){xn.point=a,bn(t=r=i,e=n=o)},xn.lineEnd=function(){a(t,e)}}function kn(t){var e=4.5,r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(t){return e=t,r},result:O};function n(r,n){t.moveTo(r+e,n),t.arc(r,n,e,0,St)}function a(e,n){t.moveTo(e,n),r.point=i}function i(e,r){t.lineTo(e,r)}function o(){r.point=n}function s(){t.closePath()}return r}function An(t){var e=.5,r=Math.cos(30*Lt),n=16;function a(t){return(n?o:i)(t)}function i(e){return En(e,(function(r,n){r=t(r,n),e.point(r[0],r[1])}))}function o(e){var r,a,i,o,l,c,u,h,f,p,d,g,m={point:v,lineStart:y,lineEnd:b,polygonStart:function(){e.polygonStart(),m.lineStart=_},polygonEnd:function(){e.polygonEnd(),m.lineStart=y}};function v(r,n){r=t(r,n),e.point(r[0],r[1])}function y(){h=NaN,m.point=x,e.lineStart()}function x(r,a){var i=Pr([r,a]),o=t(r,a);s(h,f,u,p,d,g,h=o[0],f=o[1],u=r,p=i[0],d=i[1],g=i[2],n,e),e.point(h,f)}function b(){m.point=v,e.lineEnd()}function _(){y(),m.point=w,m.lineEnd=T}function w(t,e){x(r=t,e),a=h,i=f,o=p,l=d,c=g,m.point=x}function T(){s(h,f,u,p,d,g,a,i,r,o,l,c,n,e),m.lineEnd=b,b()}return m}function s(n,a,i,o,l,c,u,h,f,p,d,g,m,v){var x=u-n,b=h-a,_=x*x+b*b;if(_>4*e&&m--){var w=o+p,T=l+d,k=c+g,A=Math.sqrt(w*w+T*T+k*k),M=Math.asin(k/=A),S=y(y(k)-1)e||y((x*P+b*I)/_-.5)>.3||o*p+l*d+c*g0&&16,a):Math.sqrt(e)},a}function Mn(t){var e=An((function(e,r){return t([e*Pt,r*Pt])}));return function(t){return Pn(e(t))}}function Sn(t){this.stream=t}function En(t,e){return{point:e,sphere:function(){t.sphere()},lineStart:function(){t.lineStart()},lineEnd:function(){t.lineEnd()},polygonStart:function(){t.polygonStart()},polygonEnd:function(){t.polygonEnd()}}}function Cn(t){return Ln((function(){return t}))()}function Ln(e){var r,n,a,i,o,s,l=An((function(t,e){return[(t=r(t,e))[0]*c+i,o-t[1]*c]})),c=150,u=480,h=250,f=0,p=0,d=0,g=0,m=0,v=tn,y=L,x=null,b=null;function _(t){return[(t=a(t[0]*Lt,t[1]*Lt))[0]*c+i,o-t[1]*c]}function w(t){return(t=a.invert((t[0]-i)/c,(o-t[1])/c))&&[t[0]*Pt,t[1]*Pt]}function T(){a=Gr(n=On(d,g,m),r);var t=r(f,p);return i=u-t[0]*c,o=h+t[1]*c,k()}function k(){return s&&(s.valid=!1,s=null),_}return _.stream=function(t){return s&&(s.valid=!1),(s=Pn(v(n,l(y(t))))).valid=!0,s},_.clipAngle=function(t){return arguments.length?(v=null==t?(x=t,tn):en((x=+t)*Lt),k()):x},_.clipExtent=function(t){return arguments.length?(b=t,y=t?nn(t[0][0],t[0][1],t[1][0],t[1][1]):L,k()):b},_.scale=function(t){return arguments.length?(c=+t,T()):c},_.translate=function(t){return arguments.length?(u=+t[0],h=+t[1],T()):[u,h]},_.center=function(t){return arguments.length?(f=t[0]%360*Lt,p=t[1]%360*Lt,T()):[f*Pt,p*Pt]},_.rotate=function(t){return arguments.length?(d=t[0]%360*Lt,g=t[1]%360*Lt,m=t.length>2?t[2]%360*Lt:0,T()):[d*Pt,g*Pt,m*Pt]},t.rebind(_,l,\"precision\"),function(){return r=e.apply(this,arguments),_.invert=r.invert&&w,T()}}function Pn(t){return En(t,(function(e,r){t.point(e*Lt,r*Lt)}))}function In(t,e){return[t,e]}function zn(t,e){return[t>Mt?t-St:t<-Mt?t+St:t,e]}function On(t,e,r){return t?e||r?Gr(Rn(t),Fn(e,r)):Rn(t):e||r?Fn(e,r):zn}function Dn(t){return function(e,r){return[(e+=t)>Mt?e-St:e<-Mt?e+St:e,r]}}function Rn(t){var e=Dn(t);return e.invert=Dn(-t),e}function Fn(t,e){var r=Math.cos(t),n=Math.sin(t),a=Math.cos(e),i=Math.sin(e);function o(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*r+s*n;return[Math.atan2(l*a-u*i,s*r-c*n),Dt(u*a+l*i)]}return o.invert=function(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*a-l*i;return[Math.atan2(l*a+c*i,s*r+u*n),Dt(u*r-s*n)]},o}function Bn(t,e){var r=Math.cos(t),n=Math.sin(t);return function(a,i,o,s){var l=o*e;null!=a?(a=Nn(r,a),i=Nn(r,i),(o>0?ai)&&(a+=o*St)):(a=t+o*St,i=t-.5*l);for(var c,u=a;o>0?u>i:u2?t[2]*Lt:0),e.invert=function(e){return(e=t.invert(e[0]*Lt,e[1]*Lt))[0]*=Pt,e[1]*=Pt,e},e},zn.invert=In,t.geo.circle=function(){var t,e,r=[0,0],n=6;function a(){var t=\"function\"==typeof r?r.apply(this,arguments):r,n=On(-t[0]*Lt,-t[1]*Lt,0).invert,a=[];return e(null,null,1,{point:function(t,e){a.push(t=n(t,e)),t[0]*=Pt,t[1]*=Pt}}),{type:\"Polygon\",coordinates:[a]}}return a.origin=function(t){return arguments.length?(r=t,a):r},a.angle=function(r){return arguments.length?(e=Bn((t=+r)*Lt,n*Lt),a):t},a.precision=function(r){return arguments.length?(e=Bn(t*Lt,(n=+r)*Lt),a):n},a.angle(90)},t.geo.distance=function(t,e){var r,n=(e[0]-t[0])*Lt,a=t[1]*Lt,i=e[1]*Lt,o=Math.sin(n),s=Math.cos(n),l=Math.sin(a),c=Math.cos(a),u=Math.sin(i),h=Math.cos(i);return Math.atan2(Math.sqrt((r=h*o)*r+(r=c*u-l*h*s)*r),l*u+c*h*s)},t.geo.graticule=function(){var e,r,n,a,i,o,s,l,c,u,h,f,p=10,d=p,g=90,m=360,v=2.5;function x(){return{type:\"MultiLineString\",coordinates:b()}}function b(){return t.range(Math.ceil(a/g)*g,n,g).map(h).concat(t.range(Math.ceil(l/m)*m,s,m).map(f)).concat(t.range(Math.ceil(r/p)*p,e,p).filter((function(t){return y(t%g)>kt})).map(c)).concat(t.range(Math.ceil(o/d)*d,i,d).filter((function(t){return y(t%m)>kt})).map(u))}return x.lines=function(){return b().map((function(t){return{type:\"LineString\",coordinates:t}}))},x.outline=function(){return{type:\"Polygon\",coordinates:[h(a).concat(f(s).slice(1),h(n).reverse().slice(1),f(l).reverse().slice(1))]}},x.extent=function(t){return arguments.length?x.majorExtent(t).minorExtent(t):x.minorExtent()},x.majorExtent=function(t){return arguments.length?(a=+t[0][0],n=+t[1][0],l=+t[0][1],s=+t[1][1],a>n&&(t=a,a=n,n=t),l>s&&(t=l,l=s,s=t),x.precision(v)):[[a,l],[n,s]]},x.minorExtent=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],o=+t[0][1],i=+t[1][1],r>e&&(t=r,r=e,e=t),o>i&&(t=o,o=i,i=t),x.precision(v)):[[r,o],[e,i]]},x.step=function(t){return arguments.length?x.majorStep(t).minorStep(t):x.minorStep()},x.majorStep=function(t){return arguments.length?(g=+t[0],m=+t[1],x):[g,m]},x.minorStep=function(t){return arguments.length?(p=+t[0],d=+t[1],x):[p,d]},x.precision=function(t){return arguments.length?(v=+t,c=jn(o,i,90),u=Vn(r,e,v),h=jn(l,s,90),f=Vn(a,n,v),x):v},x.majorExtent([[-180,-90+kt],[180,90-kt]]).minorExtent([[-180,-80-kt],[180,80+kt]])},t.geo.greatArc=function(){var e,r,n=Un,a=qn;function i(){return{type:\"LineString\",coordinates:[e||n.apply(this,arguments),r||a.apply(this,arguments)]}}return i.distance=function(){return t.geo.distance(e||n.apply(this,arguments),r||a.apply(this,arguments))},i.source=function(t){return arguments.length?(n=t,e=\"function\"==typeof t?null:t,i):n},i.target=function(t){return arguments.length?(a=t,r=\"function\"==typeof t?null:t,i):a},i.precision=function(){return arguments.length?i:0},i},t.geo.interpolate=function(t,e){return r=t[0]*Lt,n=t[1]*Lt,a=e[0]*Lt,i=e[1]*Lt,o=Math.cos(n),s=Math.sin(n),l=Math.cos(i),c=Math.sin(i),u=o*Math.cos(r),h=o*Math.sin(r),f=l*Math.cos(a),p=l*Math.sin(a),d=2*Math.asin(Math.sqrt(Ft(i-n)+o*l*Ft(a-r))),g=1/Math.sin(d),(m=d?function(t){var e=Math.sin(t*=d)*g,r=Math.sin(d-t)*g,n=r*u+e*f,a=r*h+e*p,i=r*s+e*c;return[Math.atan2(a,n)*Pt,Math.atan2(i,Math.sqrt(n*n+a*a))*Pt]}:function(){return[r*Pt,n*Pt]}).distance=d,m;var r,n,a,i,o,s,l,c,u,h,f,p,d,g,m},t.geo.length=function(e){return yn=0,t.geo.stream(e,Hn),yn};var Hn={sphere:O,point:O,lineStart:function(){var t,e,r;function n(n,a){var i=Math.sin(a*=Lt),o=Math.cos(a),s=y((n*=Lt)-t),l=Math.cos(s);yn+=Math.atan2(Math.sqrt((s=o*Math.sin(s))*s+(s=r*i-e*o*l)*s),e*i+r*o*l),t=n,e=i,r=o}Hn.point=function(a,i){t=a*Lt,e=Math.sin(i*=Lt),r=Math.cos(i),Hn.point=n},Hn.lineEnd=function(){Hn.point=Hn.lineEnd=O}},lineEnd:O,polygonStart:O,polygonEnd:O};function Gn(t,e){function r(e,r){var n=Math.cos(e),a=Math.cos(r),i=t(n*a);return[i*a*Math.sin(e),i*Math.sin(r)]}return r.invert=function(t,r){var n=Math.sqrt(t*t+r*r),a=e(n),i=Math.sin(a),o=Math.cos(a);return[Math.atan2(t*i,n*o),Math.asin(n&&r*i/n)]},r}var Yn=Gn((function(t){return Math.sqrt(2/(1+t))}),(function(t){return 2*Math.asin(t/2)}));(t.geo.azimuthalEqualArea=function(){return Cn(Yn)}).raw=Yn;var Wn=Gn((function(t){var e=Math.acos(t);return e&&e/Math.sin(e)}),L);function Zn(t,e){var r=Math.cos(t),n=function(t){return Math.tan(Mt/4+t/2)},a=t===e?Math.sin(t):Math.log(r/Math.cos(e))/Math.log(n(e)/n(t)),i=r*Math.pow(n(t),a)/a;if(!a)return Kn;function o(t,e){i>0?e<-Ct+kt&&(e=-Ct+kt):e>Ct-kt&&(e=Ct-kt);var r=i/Math.pow(n(e),a);return[r*Math.sin(a*t),i-r*Math.cos(a*t)]}return o.invert=function(t,e){var r=i-e,n=It(a)*Math.sqrt(t*t+r*r);return[Math.atan2(t,r)/a,2*Math.atan(Math.pow(i/n,1/a))-Ct]},o}function Xn(t,e){var r=Math.cos(t),n=t===e?Math.sin(t):(r-Math.cos(e))/(e-t),a=r/n+t;if(y(n)1&&zt(t[r[n-2]],t[r[n-1]],t[a])<=0;)--n;r[n++]=a}return r.slice(0,n)}function ia(t,e){return t[0]-e[0]||t[1]-e[1]}(t.geo.stereographic=function(){return Cn(ta)}).raw=ta,ea.invert=function(t,e){return[-e,2*Math.atan(Math.exp(t))-Ct]},(t.geo.transverseMercator=function(){var t=Qn(ea),e=t.center,r=t.rotate;return t.center=function(t){return t?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return t?r([t[0],t[1],t.length>2?t[2]+90:90]):[(t=r())[0],t[1],t[2]-90]},r([0,0,90])}).raw=ea,t.geom={},t.geom.hull=function(t){var e=ra,r=na;if(arguments.length)return n(t);function n(t){if(t.length<3)return[];var n,a=de(e),i=de(r),o=t.length,s=[],l=[];for(n=0;n=0;--n)p.push(t[s[c[n]][2]]);for(n=+h;nkt)s=s.L;else{if(!((a=i-Ta(s,o))>kt)){n>-kt?(e=s.P,r=s):a>-kt?(e=s,r=s.N):e=r=s;break}if(!s.R){e=s;break}s=s.R}var l=ya(t);if(fa.insert(e,l),e||r){if(e===r)return Ea(e),r=ya(e.site),fa.insert(l,r),l.edge=r.edge=Pa(e.site,l.site),Sa(e),void Sa(r);if(r){Ea(e),Ea(r);var c=e.site,u=c.x,h=c.y,f=t.x-u,p=t.y-h,d=r.site,g=d.x-u,m=d.y-h,v=2*(f*m-p*g),y=f*f+p*p,x=g*g+m*m,b={x:(m*y-p*x)/v+u,y:(f*x-g*y)/v+h};za(r.edge,c,d,b),l.edge=Pa(c,t,null,b),r.edge=Pa(t,d,null,b),Sa(e),Sa(r)}else l.edge=Pa(e.site,l.site)}}function wa(t,e){var r=t.site,n=r.x,a=r.y,i=a-e;if(!i)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/i-1/c,f=u/c;return h?(-f+Math.sqrt(f*f-2*h*(u*u/(-2*c)-l+c/2+a-i/2)))/h+n:(n+s)/2}function Ta(t,e){var r=t.N;if(r)return wa(r,e);var n=t.site;return n.y===e?n.x:1/0}function ka(t){this.site=t,this.edges=[]}function Aa(t,e){return e.angle-t.angle}function Ma(){Ra(this),this.x=this.y=this.arc=this.site=this.cy=null}function Sa(t){var e=t.P,r=t.N;if(e&&r){var n=e.site,a=t.site,i=r.site;if(n!==i){var o=a.x,s=a.y,l=n.x-o,c=n.y-s,u=i.x-o,h=2*(l*(m=i.y-s)-c*u);if(!(h>=-At)){var f=l*l+c*c,p=u*u+m*m,d=(m*f-c*p)/h,g=(l*p-u*f)/h,m=g+s,v=ma.pop()||new Ma;v.arc=t,v.site=a,v.x=d+o,v.y=m+Math.sqrt(d*d+g*g),v.cy=m,t.circle=v;for(var y=null,x=da._;x;)if(v.y=s)return;if(f>d){if(i){if(i.y>=c)return}else i={x:m,y:l};r={x:m,y:c}}else{if(i){if(i.y1)if(f>d){if(i){if(i.y>=c)return}else i={x:(l-a)/n,y:l};r={x:(c-a)/n,y:c}}else{if(i){if(i.y=s)return}else i={x:o,y:n*o+a};r={x:s,y:n*s+a}}else{if(i){if(i.xkt||y(a-r)>kt)&&(s.splice(o,0,new Oa(Ia(i.site,u,y(n-h)kt?{x:h,y:y(e-h)kt?{x:y(r-d)kt?{x:f,y:y(e-f)kt?{x:y(r-p)=r&&c.x<=a&&c.y>=n&&c.y<=o?[[r,o],[a,o],[a,n],[r,n]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(n(t,e)/kt)*kt,y:Math.round(a(t,e)/kt)*kt,i:e}}))}return o.links=function(t){return ja(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 ja(s(t)).cells.forEach((function(r,n){for(var a,i,o,s,l=r.site,c=r.edges.sort(Aa),u=-1,h=c.length,f=c[h-1].edge,p=f.l===l?f.r:f.l;++ui||h>o||f=_)<<1|e>=b,T=w+4;wi&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:Xa(r,n)})),i=Qa.lastIndex;return ig&&(g=l.x),l.y>m&&(m=l.y),c.push(l.x),u.push(l.y);else for(h=0;hg&&(g=b),_>m&&(m=_),c.push(b),u.push(_)}var w=g-p,T=m-d;function k(t,e,r,n,a,i,o,s){if(!isNaN(r)&&!isNaN(n))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(y(l-r)+y(c-n)<.01)A(t,e,r,n,a,i,o,s);else{var u=t.point;t.x=t.y=t.point=null,A(t,u,l,c,a,i,o,s),A(t,e,r,n,a,i,o,s)}else t.x=r,t.y=n,t.point=e}else A(t,e,r,n,a,i,o,s)}function A(t,e,r,n,a,i,o,s){var l=.5*(a+o),c=.5*(i+s),u=r>=l,h=n>=c,f=h<<1|u;t.leaf=!1,u?a=l:o=l,h?i=c:s=c,k(t=t.nodes[f]||(t.nodes[f]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,r,n,a,i,o,s)}w>T?m=d+w:g=p+T;var M={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){k(M,t,+v(t,++h),+x(t,h),p,d,g,m)},visit:function(t){Ga(t,M,p,d,g,m)},find:function(t){return Ya(M,t[0],t[1],p,d,g,m)}};if(h=-1,null==e){for(;++h=0&&!(n=t.interpolators[a](e,r)););return n}function ti(t,e){var r,n=[],a=[],i=t.length,o=e.length,s=Math.min(t.length,e.length);for(r=0;r=1?1:t(e)}}function ii(t){return function(e){return 1-t(1-e)}}function oi(t){return function(e){return.5*(e<.5?t(2*e):2-t(2-2*e))}}function si(t){return t*t}function li(t){return t*t*t}function ci(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}function ui(t){return 1-Math.cos(t*Ct)}function hi(t){return Math.pow(2,10*(t-1))}function fi(t){return 1-Math.sqrt(1-t*t)}function pi(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 di(t,e){return e-=t,function(r){return Math.round(t+e*r)}}function gi(t){var e,r,n,a=[t.a,t.b],i=[t.c,t.d],o=vi(a),s=mi(a,i),l=vi(((e=i)[0]+=(n=-s)*(r=a)[0],e[1]+=n*r[1],e))||0;a[0]*i[1]=0?t.slice(0,e):t,a=e>=0?t.slice(e+1):\"in\";return n=ri.get(n)||ei,ai((a=ni.get(a)||L)(n.apply(null,r.call(arguments,1))))},t.interpolateHcl=function(e,r){e=t.hcl(e),r=t.hcl(r);var n=e.h,a=e.c,i=e.l,o=r.h-n,s=r.c-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.c:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Zt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateHsl=function(e,r){e=t.hsl(e),r=t.hsl(r);var n=e.h,a=e.s,i=e.l,o=r.h-n,s=r.s-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.s:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Gt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateLab=function(e,r){e=t.lab(e),r=t.lab(r);var n=e.l,a=e.a,i=e.b,o=r.l-n,s=r.a-a,l=r.b-i;return function(t){return Qt(n+o*t,a+s*t,i+l*t)+\"\"}},t.interpolateRound=di,t.transform=function(e){var r=a.createElementNS(t.ns.prefix.svg,\"g\");return(t.transform=function(t){if(null!=t){r.setAttribute(\"transform\",t);var e=r.transform.baseVal.consolidate()}return new gi(e?e.matrix:yi)})(e)},gi.prototype.toString=function(){return\"translate(\"+this.translate+\")rotate(\"+this.rotate+\")skewX(\"+this.skew+\")scale(\"+this.scale+\")\"};var yi={a:1,b:0,c:0,d:1,e:0,f:0};function xi(t){return t.length?t.pop()+\",\":\"\"}function bi(e,r){var n=[],a=[];return e=t.transform(e),r=t.transform(r),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(\"translate(\",null,\",\",null,\")\");n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else(e[0]||e[1])&&r.push(\"translate(\"+e+\")\")}(e.translate,r.translate,n,a),function(t,e,r,n){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),n.push({i:r.push(xi(r)+\"rotate(\",null,\")\")-2,x:Xa(t,e)})):e&&r.push(xi(r)+\"rotate(\"+e+\")\")}(e.rotate,r.rotate,n,a),function(t,e,r,n){t!==e?n.push({i:r.push(xi(r)+\"skewX(\",null,\")\")-2,x:Xa(t,e)}):e&&r.push(xi(r)+\"skewX(\"+e+\")\")}(e.skew,r.skew,n,a),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(xi(r)+\"scale(\",null,\",\",null,\")\");n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else 1===e[0]&&1===e[1]||r.push(xi(r)+\"scale(\"+e+\")\")}(e.scale,r.scale,n,a),e=r=null,function(t){for(var e,r=-1,i=a.length;++r0?n=t:(e.c=null,e.t=NaN,e=null,l.end({type:\"end\",alpha:n=0})):t>0&&(l.start({type:\"start\",alpha:n=t}),e=we(s.tick)),s):n},s.start=function(){var t,e,r,n=v.length,l=y.length,u=c[0],d=c[1];for(t=0;t=0;)r.push(a[n])}function Oi(t,e){for(var r=[t],n=[];null!=(t=r.pop());)if(n.push(t),(i=t.children)&&(a=i.length))for(var a,i,o=-1;++o=0;)o.push(u=c[l]),u.parent=i,u.depth=i.depth+1;r&&(i.value=0),i.children=c}else r&&(i.value=+r.call(n,i,i.depth)||0),delete i.children;return Oi(a,(function(e){var n,a;t&&(n=e.children)&&n.sort(t),r&&(a=e.parent)&&(a.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&&(zi(t,(function(t){t.children&&(t.value=0)})),Oi(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},t.layout.partition=function(){var e=t.layout.hierarchy(),r=[1,1];function n(t,n){var a=e.call(this,t,n);return function t(e,r,n,a){var i=e.children;if(e.x=r,e.y=e.depth*a,e.dx=n,e.dy=a,i&&(o=i.length)){var o,s,l,c=-1;for(n=e.value?n/e.value:0;++cs&&(s=n),o.push(n)}for(r=0;ra&&(n=r,a=e);return n}function Zi(t){return t.reduce(Xi,0)}function Xi(t,e){return t+e[1]}function Ji(t,e){return Ki(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Ki(t,e){for(var r=-1,n=+t[0],a=(t[1]-n)/e,i=[];++r<=e;)i[r]=a*r+n;return i}function Qi(e){return[t.min(e),t.max(e)]}function $i(t,e){return t.value-e.value}function to(t,e){var r=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=r,r._pack_prev=e}function eo(t,e){t._pack_next=e,e._pack_prev=t}function ro(t,e){var r=e.x-t.x,n=e.y-t.y,a=t.r+e.r;return.999*a*a>r*r+n*n}function no(t){if((e=t.children)&&(l=e.length)){var e,r,n,a,i,o,s,l,c=1/0,u=-1/0,h=1/0,f=-1/0;if(e.forEach(ao),(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(oo(r,n,a=e[2]),x(a),to(r,a),r._pack_prev=a,to(a,n),n=r._pack_next,i=3;i0)for(o=-1;++o=h[0]&&l<=h[1]&&((s=c[t.bisect(f,l,1,d)-1]).y+=g,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(r=t,i):r},i.range=function(t){return arguments.length?(n=de(t),i):n},i.bins=function(t){return arguments.length?(a=\"number\"==typeof t?function(e){return Ki(e,t)}:de(t),i):a},i.frequency=function(t){return arguments.length?(e=!!t,i):e},i},t.layout.pack=function(){var e,r=t.layout.hierarchy().sort($i),n=0,a=[1,1];function i(t,i){var o=r.call(this,t,i),s=o[0],l=a[0],c=a[1],u=null==e?Math.sqrt:\"function\"==typeof e?e:function(){return e};if(s.x=s.y=0,Oi(s,(function(t){t.r=+u(t.value)})),Oi(s,no),n){var h=n*(e?1:Math.max(2*s.r/l,2*s.r/c))/2;Oi(s,(function(t){t.r+=h})),Oi(s,no),Oi(s,(function(t){t.r-=h}))}return function t(e,r,n,a){var i=e.children;if(e.x=r+=a*e.x,e.y=n+=a*e.y,e.r*=a,i)for(var o=-1,s=i.length;++op.x&&(p=t),t.depth>d.depth&&(d=t)}));var g=r(f,p)/2-f.x,m=n[0]/(p.x+r(p,f)/2+g),v=n[1]/(d.depth||1);zi(u,(function(t){t.x=(t.x+g)*m,t.y=t.depth*v}))}return c}function o(t){var e=t.children,n=t.parent.children,a=t.i?n[t.i-1]:null;if(e.length){!function(t){var e,r=0,n=0,a=t.children,i=a.length;for(;--i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(t);var i=(e[0].z+e[e.length-1].z)/2;a?(t.z=a.z+r(t._,a._),t.m=t.z-i):t.z=i}else a&&(t.z=a.z+r(t._,a._));t.parent.A=function(t,e,n){if(e){for(var a,i=t,o=t,s=e,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=co(s),i=lo(i),s&&i;)l=lo(l),(o=co(o)).a=t,(a=s.z+h-i.z-c+r(s._,i._))>0&&(uo(ho(s,t,n),t,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!co(o)&&(o.t=s,o.m+=h-u),i&&!lo(l)&&(l.t=i,l.m+=c-f,n=t)}return n}(t,a,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*=n[0],t.y=t.depth*n[1]}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t)?l:null,i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null==(n=t)?null:l,i):a?n:null},Ii(i,e)},t.layout.cluster=function(){var e=t.layout.hierarchy().sort(null).value(null),r=so,n=[1,1],a=!1;function i(i,o){var s,l=e.call(this,i,o),c=l[0],u=0;Oi(c,(function(e){var n=e.children;n&&n.length?(e.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),e.y=function(e){return 1+t.max(e,(function(t){return t.y}))}(n)):(e.x=s?u+=r(e,s):0,e.y=0,s=e)}));var h=function t(e){var r=e.children;return r&&r.length?t(r[0]):e}(c),f=function t(e){var r,n=e.children;return n&&(r=n.length)?t(n[r-1]):e}(c),p=h.x-r(h,f)/2,d=f.x+r(f,h)/2;return Oi(c,a?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-p)/(d-p)*n[0],t.y=(1-(c.y?t.y/c.y:1))*n[1]}),l}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t),i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null!=(n=t),i):a?n:null},Ii(i,e)},t.layout.treemap=function(){var e,r=t.layout.hierarchy(),n=Math.round,a=[1,1],i=null,o=fo,s=!1,l=\"squarify\",c=.5*(1+Math.sqrt(5));function u(t,e){for(var r,n,a=-1,i=t.length;++a0;)s.push(r=c[a-1]),s.area+=r.area,\"squarify\"!==l||(n=p(s,g))<=f?(c.pop(),f=n):(s.area-=s.pop().area,d(s,g,i,!1),g=Math.min(i.dx,i.dy),s.length=s.area=0,f=1/0);s.length&&(d(s,g,i,!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),a=e.slice(),i=[];for(u(a,n.dx*n.dy/t.value),i.area=0;r=a.pop();)i.push(r),i.area+=r.area,null!=r.z&&(d(i,r.z?n.dx:n.dy,n,!a.length),i.length=i.area=0);e.forEach(f)}}function p(t,e){for(var r,n=t.area,a=0,i=1/0,o=-1,s=t.length;++oa&&(a=r));return e*=e,(n*=n)?Math.max(e*a*c/n,n/(e*i*c)):1/0}function d(t,e,r,a){var i,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((a||u>r.dy)&&(u=r.dy);++or.dx)&&(u=r.dx);++o1);return t+e*r*Math.sqrt(-2*Math.log(a)/a)}},logNormal:function(){var e=t.random.normal.apply(t,arguments);return function(){return Math.exp(e())}},bates:function(e){var r=t.random.irwinHall(e);return function(){return r()/e}},irwinHall:function(t){return function(){for(var e=0,r=0;r2?_o:vo,s=a?wi:_i;return i=t(e,r,s,n),o=t(r,e,s,$a),l}function l(t){return i(t)}return l.invert=function(t){return o(t)},l.domain=function(t){return arguments.length?(e=t.map(Number),s()):e},l.range=function(t){return arguments.length?(r=t,s()):r},l.rangeRound=function(t){return l.range(t).interpolate(di)},l.clamp=function(t){return arguments.length?(a=t,s()):a},l.interpolate=function(t){return arguments.length?(n=t,s()):n},l.ticks=function(t){return Ao(e,t)},l.tickFormat=function(t,r){return Mo(e,t,r)},l.nice=function(t){return To(e,t),s()},l.copy=function(){return t(e,r,n,a)},s()}([0,1],[0,1],$a,!1)};var So={s:1,g:1,p:1,r:1,e:1};function Eo(t){return-Math.floor(Math.log(t)/Math.LN10+.01)}t.scale.log=function(){return function e(r,n,a,i){function o(t){return(a?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(n)}function s(t){return a?Math.pow(n,t):-Math.pow(n,-t)}function l(t){return r(o(t))}return l.invert=function(t){return s(r.invert(t))},l.domain=function(t){return arguments.length?(a=t[0]>=0,r.domain((i=t.map(Number)).map(o)),l):i},l.base=function(t){return arguments.length?(n=+t,r.domain(i.map(o)),l):n},l.nice=function(){var t=yo(i.map(o),a?Math:Lo);return r.domain(t),i=t.map(s),l},l.ticks=function(){var t=go(i),e=[],r=t[0],l=t[1],c=Math.floor(o(r)),u=Math.ceil(o(l)),h=n%1?2:n;if(isFinite(u-c)){if(a){for(;c0;f--)e.push(s(c)*f);for(c=0;e[c]l;u--);e=e.slice(c,u)}return e},l.tickFormat=function(e,r){if(!arguments.length)return Co;arguments.length<2?r=Co:\"function\"!=typeof r&&(r=t.format(r));var a=Math.max(1,n*e/l.ticks().length);return function(t){var e=t/s(Math.round(o(t)));return e*n0?a[t-1]:r[0],th?0:1;if(c=Et)return l(c,p)+(s?l(s,1-p):\"\")+\"Z\";var d,g,m,v,y,x,b,_,w,T,k,A,M=0,S=0,E=[];if((v=(+o.apply(this,arguments)||0)/2)&&(m=n===Fo?Math.sqrt(s*s+c*c):+n.apply(this,arguments),p||(S*=-1),c&&(S=Dt(m/c*Math.sin(v))),s&&(M=Dt(m/s*Math.sin(v)))),c){y=c*Math.cos(u+S),x=c*Math.sin(u+S),b=c*Math.cos(h-S),_=c*Math.sin(h-S);var C=Math.abs(h-u-2*S)<=Mt?0:1;if(S&&qo(y,x,b,_)===p^C){var L=(u+h)/2;y=c*Math.cos(L),x=c*Math.sin(L),b=_=null}}else y=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 P=Math.abs(u-h+2*M)<=Mt?0:1;if(M&&qo(w,T,k,A)===1-p^P){var I=(u+h)/2;w=s*Math.cos(I),T=s*Math.sin(I),k=A=null}}else w=T=0;if(f>kt&&(d=Math.min(Math.abs(c-s)/2,+r.apply(this,arguments)))>.001){g=s0?0:1}function Ho(t,e,r,n,a){var i=t[0]-e[0],o=t[1]-e[1],s=(a?n:-n)/Math.sqrt(i*i+o*o),l=s*o,c=-s*i,u=t[0]+l,h=t[1]+c,f=e[0]+l,p=e[1]+c,d=(u+f)/2,g=(h+p)/2,m=f-u,v=p-h,y=m*m+v*v,x=r-n,b=u*p-f*h,_=(v<0?-1:1)*Math.sqrt(Math.max(0,x*x*y-b*b)),w=(b*v-m*_)/y,T=(-b*m-v*_)/y,k=(b*v+m*_)/y,A=(-b*m+v*_)/y,M=w-d,S=T-g,E=k-d,C=A-g;return M*M+S*S>E*E+C*C&&(w=k,T=A),[[w-l,T-c],[w*r/x,T*r/x]]}function Go(t){var e=ra,r=na,n=Yr,a=Wo,i=a.key,o=.7;function s(i){var s,l=[],c=[],u=-1,h=i.length,f=de(e),p=de(r);function d(){l.push(\"M\",a(t(c),o))}for(;++u1&&a.push(\"H\",n[0]);return a.join(\"\")},\"step-before\":Xo,\"step-after\":Jo,basis:$o,\"basis-open\":function(t){if(t.length<4)return Wo(t);var e,r=[],n=-1,a=t.length,i=[0],o=[0];for(;++n<3;)e=t[n],i.push(e[0]),o.push(e[1]);r.push(ts(ns,i)+\",\"+ts(ns,o)),--n;for(;++n9&&(a=3*e/Math.sqrt(a),o[s]=a*r,o[s+1]=a*n));s=-1;for(;++s<=l;)a=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),i.push([a||0,o[s]*a||0]);return i}(t))}});function Wo(t){return t.length>1?t.join(\"L\"):t+\"Z\"}function Zo(t){return t.join(\"L\")+\"Z\"}function Xo(t){for(var e=0,r=t.length,n=t[0],a=[n[0],\",\",n[1]];++e1){s=e[1],i=t[l],l++,n+=\"C\"+(a[0]+o[0])+\",\"+(a[1]+o[1])+\",\"+(i[0]-s[0])+\",\"+(i[1]-s[1])+\",\"+i[0]+\",\"+i[1];for(var c=2;cMt)+\",1 \"+e}function l(t,e,r,n){return\"Q 0,0 \"+n}return i.radius=function(t){return arguments.length?(r=de(t),i):r},i.source=function(e){return arguments.length?(t=de(e),i):t},i.target=function(t){return arguments.length?(e=de(t),i):e},i.startAngle=function(t){return arguments.length?(n=de(t),i):n},i.endAngle=function(t){return arguments.length?(a=de(t),i):a},i},t.svg.diagonal=function(){var t=Un,e=qn,r=cs;function n(n,a){var i=t.call(this,n,a),o=e.call(this,n,a),s=(i.y+o.y)/2,l=[i,{x:i.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=de(e),n):t},n.target=function(t){return arguments.length?(e=de(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},t.svg.diagonal.radial=function(){var e=t.svg.diagonal(),r=cs,n=e.projection;return e.projection=function(t){return arguments.length?n(us(r=t)):r},e},t.svg.symbol=function(){var t=fs,e=hs;function r(r,n){return(ds.get(t.call(this,r,n))||ps)(e.call(this,r,n))}return r.type=function(e){return arguments.length?(t=de(e),r):t},r.size=function(t){return arguments.length?(e=de(t),r):e},r};var ds=t.map({circle:ps,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*ms)),r=e*ms;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/gs),r=e*gs/2;return\"M0,\"+r+\"L\"+e+\",\"+-r+\" \"+-e+\",\"+-r+\"Z\"},\"triangle-up\":function(t){var e=Math.sqrt(t/gs),r=e*gs/2;return\"M0,\"+-r+\"L\"+e+\",\"+r+\" \"+-e+\",\"+r+\"Z\"}});t.svg.symbolTypes=ds.keys();var gs=Math.sqrt(3),ms=Math.tan(30*Lt);Y.transition=function(t){for(var e,r,n=bs||++Ts,a=Ms(t),i=[],o=_s||{time:Date.now(),ease:ci,delay:0,duration:250},s=-1,l=this.length;++s0;)c[--f].call(t,o);if(i>=1)return h.event&&h.event.end.call(t,t.__data__,e),--u.count?delete u[n]:delete t[r],1}h||(i=a.time,o=we((function(t){var e=h.delay;if(o.t=e+i,e<=t)return f(t-e);o.c=f}),0,i),h=u[n]={tween:new _,time:i,timer:o,delay:a.delay,duration:a.duration,ease:a.ease,index:e},a=null,++u.count)}ws.call=Y.call,ws.empty=Y.empty,ws.node=Y.node,ws.size=Y.size,t.transition=function(e,r){return e&&e.transition?bs?e.transition(r):e:t.selection().transition(e)},t.transition.prototype=ws,ws.select=function(t){var e,r,n,a=this.id,i=this.namespace,o=[];t=W(t);for(var s=-1,l=this.length;++srect,.s>rect\").attr(\"width\",s[1]-s[0])}function g(t){t.select(\".extent\").attr(\"y\",l[0]),t.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\",l[1]-l[0])}function m(){var h,m,v=this,y=t.select(t.event.target),x=n.of(v,arguments),b=t.select(v),_=y.datum(),w=!/^(n|s)$/.test(_)&&a,T=!/^(e|w)$/.test(_)&&i,k=y.classed(\"extent\"),A=bt(v),M=t.mouse(v),S=t.select(o(v)).on(\"keydown.brush\",L).on(\"keyup.brush\",P);if(t.event.changedTouches?S.on(\"touchmove.brush\",I).on(\"touchend.brush\",O):S.on(\"mousemove.brush\",I).on(\"mouseup.brush\",O),b.interrupt().selectAll(\"*\").interrupt(),k)M[0]=s[0]-M[0],M[1]=l[0]-M[1];else if(_){var E=+/w$/.test(_),C=+/^n/.test(_);m=[s[1-E]-M[0],l[1-C]-M[1]],M[0]=s[E],M[1]=l[C]}else t.event.altKey&&(h=M.slice());function L(){32==t.event.keyCode&&(k||(h=null,M[0]-=s[1],M[1]-=l[1],k=2),F())}function P(){32==t.event.keyCode&&2==k&&(M[0]+=s[1],M[1]+=l[1],k=0,F())}function I(){var e=t.mouse(v),r=!1;m&&(e[0]+=m[0],e[1]+=m[1]),k||(t.event.altKey?(h||(h=[(s[0]+s[1])/2,(l[0]+l[1])/2]),M[0]=s[+(e[0]1?{floor:function(e){for(;s(e=t.floor(e));)e=Ns(e-1);return e},ceil:function(e){for(;s(e=t.ceil(e));)e=Ns(+e+1);return e}}:t))},a.ticks=function(t,e){var r=go(a.domain()),n=null==t?i(r,10):\"number\"==typeof t?i(r,t):!t.range&&[{range:t},e];return n&&(t=n[0],e=n[1]),t.range(r[0],Ns(+r[1]+1),e<1?1:e)},a.tickFormat=function(){return n},a.copy=function(){return Bs(e.copy(),r,n)},wo(a,e)}function Ns(t){return new Date(t)}Os.iso=Date.prototype.toISOString&&+new Date(\"2000-01-01T00:00:00.000Z\")?Fs:Rs,Fs.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Fs.toString=Rs.toString,Ie.second=Re((function(t){return new ze(1e3*Math.floor(t/1e3))}),(function(t,e){t.setTime(t.getTime()+1e3*Math.floor(e))}),(function(t){return t.getSeconds()})),Ie.seconds=Ie.second.range,Ie.seconds.utc=Ie.second.utc.range,Ie.minute=Re((function(t){return new ze(6e4*Math.floor(t/6e4))}),(function(t,e){t.setTime(t.getTime()+6e4*Math.floor(e))}),(function(t){return t.getMinutes()})),Ie.minutes=Ie.minute.range,Ie.minutes.utc=Ie.minute.utc.range,Ie.hour=Re((function(t){var e=t.getTimezoneOffset()/60;return new ze(36e5*(Math.floor(t/36e5-e)+e))}),(function(t,e){t.setTime(t.getTime()+36e5*Math.floor(e))}),(function(t){return t.getHours()})),Ie.hours=Ie.hour.range,Ie.hours.utc=Ie.hour.utc.range,Ie.month=Re((function(t){return(t=Ie.day(t)).setDate(1),t}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t){return t.getMonth()})),Ie.months=Ie.month.range,Ie.months.utc=Ie.month.utc.range;var js=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Vs=[[Ie.second,1],[Ie.second,5],[Ie.second,15],[Ie.second,30],[Ie.minute,1],[Ie.minute,5],[Ie.minute,15],[Ie.minute,30],[Ie.hour,1],[Ie.hour,3],[Ie.hour,6],[Ie.hour,12],[Ie.day,1],[Ie.day,2],[Ie.week,1],[Ie.month,1],[Ie.month,3],[Ie.year,1]],Us=Os.multi([[\".%L\",function(t){return t.getMilliseconds()}],[\":%S\",function(t){return t.getSeconds()}],[\"%I:%M\",function(t){return t.getMinutes()}],[\"%I %p\",function(t){return t.getHours()}],[\"%a %d\",function(t){return t.getDay()&&1!=t.getDate()}],[\"%b %d\",function(t){return 1!=t.getDate()}],[\"%B\",function(t){return t.getMonth()}],[\"%Y\",Yr]]),qs={range:function(e,r,n){return t.range(Math.ceil(e/n)*n,+r,n).map(Ns)},floor:L,ceil:L};Vs.year=Ie.year,Ie.scale=function(){return Bs(t.scale.linear(),Vs,Us)};var Hs=Vs.map((function(t){return[t[0].utc,t[1]]})),Gs=Ds.multi([[\".%L\",function(t){return t.getUTCMilliseconds()}],[\":%S\",function(t){return t.getUTCSeconds()}],[\"%I:%M\",function(t){return t.getUTCMinutes()}],[\"%I %p\",function(t){return t.getUTCHours()}],[\"%a %d\",function(t){return t.getUTCDay()&&1!=t.getUTCDate()}],[\"%b %d\",function(t){return 1!=t.getUTCDate()}],[\"%B\",function(t){return t.getUTCMonth()}],[\"%Y\",Yr]]);function Ys(t){return JSON.parse(t.responseText)}function Ws(t){var e=a.createRange();return e.selectNode(a.body),e.createContextualFragment(t.responseText)}Hs.year=Ie.year.utc,Ie.scale.utc=function(){return Bs(t.scale.linear(),Hs,Gs)},t.text=ge((function(t){return t.responseText})),t.json=function(t,e){return me(t,\"application/json\",Ys,e)},t.html=function(t,e){return me(t,\"text/html\",Ws,e)},t.xml=ge((function(t){return t.responseXML})),\"object\"==typeof e&&e.exports?e.exports=t:this.d3=t}()},{}],165:[function(t,e,r){e.exports=function(){for(var t=0;t=2)return!1;t[r]=n}return!0})):_.filter((function(t){for(var e=0;e<=s;++e){var r=v[t[e]];if(r<0)return!1;t[e]=r}return!0}));if(1&s)for(u=0;u<_.length;++u){f=(b=_[u])[0];b[0]=b[1],b[1]=f}return _}},{\"incremental-convex-hull\":412,uniq:549}],167:[function(t,e,r){\"use strict\";e.exports=i;var n=(i.canvas=document.createElement(\"canvas\")).getContext(\"2d\"),a=o([32,126]);function i(t,e){Array.isArray(t)&&(t=t.join(\", \"));var r,i={},s=16,l=.05;e&&(2===e.length&&\"number\"==typeof e[0]?r=o(e):Array.isArray(e)?r=e:(e.o?r=o(e.o):e.pairs&&(r=e.pairs),e.fontSize&&(s=e.fontSize),null!=e.threshold&&(l=e.threshold))),r||(r=a),n.font=s+\"px \"+t;for(var c=0;cs*l){var p=(f-h)/s;i[u]=1e3*p}}return i}function o(t){for(var e=[],r=t[0];r<=t[1];r++)for(var n=String.fromCharCode(r),a=t[0];a>>31},e.exports.exponent=function(t){return(e.exports.hi(t)<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),a=1048575&n;return 2146435072&n&&(a+=1<<20),[r,a]},e.exports.denormalized=function(t){return!(2146435072&e.exports.hi(t))}}).call(this,t(\"buffer\").Buffer)},{buffer:108}],169:[function(t,e,r){var n=t(\"abs-svg-path\"),a=t(\"normalize-svg-path\"),i={M:\"moveTo\",C:\"bezierCurveTo\"};e.exports=function(t,e){t.beginPath(),a(n(e)).forEach((function(e){var r=e[0],n=e.slice(1);t[i[r]].apply(t,n)})),t.closePath()}},{\"abs-svg-path\":63,\"normalize-svg-path\":450}],170:[function(t,e,r){e.exports=function(t){switch(t){case\"int8\":return Int8Array;case\"int16\":return Int16Array;case\"int32\":return Int32Array;case\"uint8\":return Uint8Array;case\"uint16\":return Uint16Array;case\"uint32\":return Uint32Array;case\"float32\":return Float32Array;case\"float64\":return Float64Array;case\"array\":return Array;case\"uint8_clamped\":return Uint8ClampedArray}}},{}],171:[function(t,e,r){\"use strict\";e.exports=function(t,e){switch(\"undefined\"==typeof e&&(e=0),typeof t){case\"number\":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n80*r){n=l=t[0],s=c=t[1];for(var b=r;bl&&(l=u),p>c&&(c=p);d=0!==(d=Math.max(l-n,c-s))?1/d:0}return o(y,x,r,n,s,d),x}function a(t,e,r,n,a){var i,o;if(a===E(t,e,r,n)>0)for(i=e;i=e;i-=n)o=A(i,t[i],t[i+1],o);return o&&x(o,o.next)&&(M(o),o=o.next),o}function i(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!x(n,n.next)&&0!==y(n.prev,n,n.next))n=n.next;else{if(M(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function o(t,e,r,n,a,h,f){if(t){!f&&h&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=d(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=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)?(a=r,r=r.nextZ,s--):(a=n,n=n.nextZ,l--),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c*=2}while(o>1)}(a)}(t,n,a,h);for(var p,g,m=t;t.prev!==t.next;)if(p=t.prev,g=t.next,h?l(t,n,a,h):s(t))e.push(p.i/r),e.push(t.i/r),e.push(g.i/r),M(t),t=g.next,m=g.next;else if((t=g)===m){f?1===f?o(t=c(i(t),e,r),e,r,n,a,h,2):2===f&&u(t,e,r,n,a,h):o(i(t),e,r,n,a,h,1);break}}}function s(t){var e=t.prev,r=t,n=t.next;if(y(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(m(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&y(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function l(t,e,r,n){var a=t.prev,i=t,o=t.next;if(y(a,i,o)>=0)return!1;for(var s=a.xi.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,u=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,h=d(s,l,e,r,n),f=d(c,u,e,r,n),p=t.prevZ,g=t.nextZ;p&&p.z>=h&&g&&g.z<=f;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;p&&p.z>=h;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;g&&g.z<=f;){if(g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function c(t,e,r){var n=t;do{var a=n.prev,o=n.next.next;!x(a,o)&&b(a,n,n.next,o)&&T(a,o)&&T(o,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(o.i/r),M(n),M(n.next),n=t=o),n=n.next}while(n!==t);return i(n)}function u(t,e,r,n,a,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&v(l,c)){var u=k(l,c);return l=i(l,l.next),u=i(u,u.next),o(l,e,r,n,a,s),void o(u,e,r,n,a,s)}c=c.next}l=l.next}while(l!==t)}function h(t,e){return t.x-e.x}function f(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-1/0;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x=n.x&&n.x>=u&&a!==n.x&&m(ir.x||n.x===r.x&&p(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=k(e,t);i(e,e.next),i(r,r.next)}}function p(t,e){return y(t.prev,t,e.prev)<0&&y(e.next,t,t.next)<0}function d(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function g(t){var e=t,r=t;do{(e.x=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(i-s)-(a-o)*(n-s)>=0}function v(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&&b(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(T(t,e)&&T(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)*(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(y(t.prev,t,e.prev)||y(t,e.prev,e))||x(t,e)&&y(t.prev,t,t.next)>0&&y(e.prev,e,e.next)>0)}function y(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function x(t,e){return t.x===e.x&&t.y===e.y}function b(t,e,r,n){var a=w(y(t,e,r)),i=w(y(t,e,n)),o=w(y(r,n,t)),s=w(y(r,n,e));return a!==i&&o!==s||(!(0!==a||!_(t,r,e))||(!(0!==i||!_(t,n,e))||(!(0!==o||!_(r,t,n))||!(0!==s||!_(r,e,n)))))}function _(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 w(t){return t>0?1:t<0?-1:0}function T(t,e){return y(t.prev,t,t.next)<0?y(t,e,t.next)>=0&&y(t,t.prev,e)>=0:y(t,e,t.prev)<0||y(t,t.next,e)<0}function k(t,e){var r=new S(t.i,t.x,t.y),n=new S(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function A(t,e,r,n){var a=new S(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function M(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 S(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 E(t,e,r,n){for(var a=0,i=e,o=r-n;i0&&(n+=t[a-1].length,r.holes.push(n))}return r}},{}],173:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=t.length;if(\"number\"!=typeof e){e=0;for(var a=0;a=e}))}(e);for(var r,a=n(t).components.filter((function(t){return t.length>1})),i=1/0,o=0;o=55296&&y<=56319&&(w+=t[++r]),w=T?f.call(T,k,w,g):w,e?(p.value=w,d(m,g,p)):m[g]=w,++g;v=g}if(void 0===v)for(v=o(t.length),e&&(m=new e(v)),r=0;r0?1:-1}},{}],185:[function(t,e,r){\"use strict\";var n=t(\"../math/sign\"),a=Math.abs,i=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*i(a(t)):t}},{\"../math/sign\":182}],186:[function(t,e,r){\"use strict\";var n=t(\"./to-integer\"),a=Math.max;e.exports=function(t){return a(0,n(t))}},{\"./to-integer\":185}],187:[function(t,e,r){\"use strict\";var n=t(\"./valid-callable\"),a=t(\"./valid-value\"),i=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(t,e){return function(r,c){var u,h=arguments[2],f=arguments[3];return r=Object(a(r)),n(c),u=s(r),f&&u.sort(\"function\"==typeof f?i.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}))}}},{\"./valid-callable\":204,\"./valid-value\":206}],188:[function(t,e,r){\"use strict\";e.exports=t(\"./is-implemented\")()?Object.assign:t(\"./shim\")},{\"./is-implemented\":189,\"./shim\":190}],189:[function(t,e,r){\"use strict\";e.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\")}},{}],190:[function(t,e,r){\"use strict\";var n=t(\"../keys\"),a=t(\"../valid-value\"),i=Math.max;e.exports=function(t,e){var r,o,s,l=i(arguments.length,2);for(t=Object(a(t)),s=function(n){try{t[n]=e[n]}catch(t){r||(r=t)}},o=1;o-1}},{}],210:[function(t,e,r){\"use strict\";var n=Object.prototype.toString,a=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===a)||!1}},{}],211:[function(t,e,r){\"use strict\";var n=Object.create(null),a=Math.random;e.exports=function(){var t;do{t=a().toString(36).slice(2)}while(n[t]);return t}},{}],212:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/object/set-prototype-of\"),i=t(\"es5-ext/string/#/contains\"),o=t(\"d\"),s=t(\"es6-symbol\"),l=t(\"./\"),c=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?i.call(e,\"key+value\")?\"key+value\":i.call(e,\"key\")?\"key\":\"value\":\"value\",c(this,\"__kind__\",o(\"\",e))},a&&a(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\"))},{\"./\":215,d:152,\"es5-ext/object/set-prototype-of\":201,\"es5-ext/string/#/contains\":207,\"es6-symbol\":220}],213:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/object/valid-callable\"),i=t(\"es5-ext/string/is-string\"),o=t(\"./get\"),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;e.exports=function(t,e){var r,u,h,f,p,d,g,m,v=arguments[2];if(s(t)||n(t)?r=\"array\":i(t)?r=\"string\":t=o(t),a(e),h=function(){f=!0},\"array\"!==r)if(\"string\"!==r)for(u=t.next();!u.done;){if(l.call(e,v,u.value,h),f)return;u=t.next()}else for(d=t.length,p=0;p=55296&&m<=56319&&(g+=t[++p]),l.call(e,v,g,h),!f);++p);else c.call(t,(function(t){return l.call(e,v,t,h),f}))}},{\"./get\":214,\"es5-ext/function/is-arguments\":179,\"es5-ext/object/valid-callable\":204,\"es5-ext/string/is-string\":210}],214:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/string/is-string\"),i=t(\"./array\"),o=t(\"./string\"),s=t(\"./valid-iterable\"),l=t(\"es6-symbol\").iterator;e.exports=function(t){return\"function\"==typeof s(t)[l]?t[l]():n(t)?new i(t):a(t)?new o(t):new i(t)}},{\"./array\":212,\"./string\":217,\"./valid-iterable\":218,\"es5-ext/function/is-arguments\":179,\"es5-ext/string/is-string\":210,\"es6-symbol\":220}],215:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/array/#/clear\"),i=t(\"es5-ext/object/assign\"),o=t(\"es5-ext/object/valid-callable\"),s=t(\"es5-ext/object/valid-value\"),l=t(\"d\"),c=t(\"d/auto-bind\"),u=t(\"es6-symbol\"),h=Object.defineProperty,f=Object.defineProperties;e.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,i({_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__&&a.call(this.__redo__),this.__nextIndex__=0}))}))),h(n.prototype,u.iterator,l((function(){return this})))},{d:152,\"d/auto-bind\":151,\"es5-ext/array/#/clear\":175,\"es5-ext/object/assign\":188,\"es5-ext/object/valid-callable\":204,\"es5-ext/object/valid-value\":206,\"es6-symbol\":220}],216:[function(t,e,r){\"use strict\";var n=t(\"es5-ext/function/is-arguments\"),a=t(\"es5-ext/object/is-value\"),i=t(\"es5-ext/string/is-string\"),o=t(\"es6-symbol\").iterator,s=Array.isArray;e.exports=function(t){return!!a(t)&&(!!s(t)||(!!i(t)||(!!n(t)||\"function\"==typeof t[o])))}},{\"es5-ext/function/is-arguments\":179,\"es5-ext/object/is-value\":195,\"es5-ext/string/is-string\":210,\"es6-symbol\":220}],217:[function(t,e,r){\"use strict\";var n,a=t(\"es5-ext/object/set-prototype-of\"),i=t(\"d\"),o=t(\"es6-symbol\"),s=t(\"./\"),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),s.call(this,t),l(this,\"__length__\",i(\"\",t.length))},a&&a(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:i((function(){if(this.__list__)return this.__nextIndex__=55296&&e<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),l(n.prototype,o.toStringTag,i(\"c\",\"String Iterator\"))},{\"./\":215,d:152,\"es5-ext/object/set-prototype-of\":201,\"es6-symbol\":220}],218:[function(t,e,r){\"use strict\";var n=t(\"./is-iterable\");e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},{\"./is-iterable\":216}],219:[function(t,e,r){(function(n,a){\n", "/*!\n", " * @overview es6-promise - a tiny implementation of Promises/A+.\n", " * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n", " * @license Licensed under MIT license\n", " * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n", " * @version v4.2.8+1e68dce6\n", " */\n", "!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?e.exports=n():t.ES6Promise=n()}(this,(function(){\"use strict\";function e(t){return\"function\"==typeof t}var r=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},i=0,o=void 0,s=void 0,l=function(t,e){g[i]=t,g[i+1]=e,2===(i+=2)&&(s?s(m):_())};var c=\"undefined\"!=typeof window?window:void 0,u=c||{},h=u.MutationObserver||u.WebKitMutationObserver,f=\"undefined\"==typeof self&&\"undefined\"!=typeof n&&\"[object process]\"==={}.toString.call(n),p=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function d(){var t=setTimeout;return function(){return t(m,1)}}var g=new Array(1e3);function m(){for(var t=0;t=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(i(l[h-1],c[h-1],arguments[h])),a.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=i(c[f-1],u[f-1],arguments[f]);n.push(p),a.push((p-n[o++])*h)}}},s.set=function(t){var e=this.dimension;if(!(t0;--l)r.push(i(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,a=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(i(l[f-1],c[f-1],n[o++]+p)),a.push(p*h)}}},s.idle=function(t){var e=this.lastT();if(!(t=0;--h)n.push(i(l[h],c[h],n[o]+u*a[o])),a.push(0),o+=1}}},{\"binary-search-bounds\":238,\"cubic-hermite\":147}],238:[function(t,e,r){\"use strict\";function n(t,e,r,n,a,i){var o=[\"function \",t,\"(a,l,h,\",n.join(\",\"),\"){\",i?\"\":\"var i=\",r?\"l-1\":\"h+1\",\";while(l<=h){var m=(l+h)>>>1,x=a\",a?\".get(m)\":\"[m]\"];return i?e.indexOf(\"c\")<0?o.push(\";if(x===y){return m}else if(x<=y){\"):o.push(\";var p=c(x,y);if(p===0){return m}else if(p<=0){\"):o.push(\";if(\",e,\"){i=m;\"),r?o.push(\"l=m+1}else{h=m-1}\"):o.push(\"h=m-1}else{l=m+1}\"),o.push(\"}\"),i?o.push(\"return -1};\"):o.push(\"return i};\"),o.join(\"\")}function a(t,e,r,a){return new Function([n(\"A\",\"x\"+t+\"y\",e,[\"y\"],!1,a),n(\"B\",\"x\"+t+\"y\",e,[\"y\"],!0,a),n(\"P\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!1,a),n(\"Q\",\"c(x,y)\"+t+\"0\",e,[\"y\",\"c\"],!0,a),\"function dispatchBsearch\",r,\"(a,y,c,l,h){if(a.shape){if(typeof(c)==='function'){return Q(a,(l===undefined)?0:l|0,(h===undefined)?a.shape[0]-1:h|0,y,c)}else{return B(a,(c===undefined)?0:c|0,(l===undefined)?a.shape[0]-1:l|0,y)}}else{if(typeof(c)==='function'){return P(a,(l===undefined)?0:l|0,(h===undefined)?a.length-1:h|0,y,c)}else{return A(a,(c===undefined)?0:c|0,(l===undefined)?a.length-1:l|0,y)}}}return dispatchBsearch\",r].join(\"\"))()}e.exports={ge:a(\">=\",!1,\"GE\"),gt:a(\">\",!1,\"GT\"),lt:a(\"<\",!0,\"LT\"),le:a(\"<=\",!0,\"LE\"),eq:a(\"-\",!0,\"EQ\",!0)}},{}],239:[function(t,e,r){var n=t(\"dtype\");e.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 a,i,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(a=0,o=r;ae[0]-o[0]/2&&(f=o[0]/2,p+=o[1]);return r}},{\"css-font/stringify\":144}],241:[function(t,e,r){\"use strict\";function n(t,e){e||(e={}),(\"string\"==typeof t||Array.isArray(t))&&(e.family=t);var r=Array.isArray(e.family)?e.family.join(\", \"):e.family;if(!r)throw Error(\"`family` must be defined\");var s=e.size||e.fontSize||e.em||48,l=e.weight||e.fontWeight||\"\",c=(t=[e.style||e.fontStyle||\"\",l,s].join(\" \")+\"px \"+r,e.origin||\"top\");if(n.cache[r]&&s<=n.cache[r].em)return a(n.cache[r],c);var u=e.canvas||n.canvas,h=u.getContext(\"2d\"),f={upper:void 0!==e.upper?e.upper:\"H\",lower:void 0!==e.lower?e.lower:\"x\",descent:void 0!==e.descent?e.descent:\"p\",ascent:void 0!==e.ascent?e.ascent:\"h\",tittle:void 0!==e.tittle?e.tittle:\"i\",overshoot:void 0!==e.overshoot?e.overshoot:\"O\"},p=Math.ceil(1.5*s);u.height=p,u.width=.5*p,h.font=t;var d={top:0};h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillStyle=\"black\",h.fillText(\"H\",0,0);var g=i(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline=\"bottom\",h.fillText(\"H\",0,p);var m=i(h.getImageData(0,0,p,p));d.lineHeight=d.bottom=p-m+g,h.clearRect(0,0,p,p),h.textBaseline=\"alphabetic\",h.fillText(\"H\",0,p);var v=p-i(h.getImageData(0,0,p,p))-1+g;d.baseline=d.alphabetic=v,h.clearRect(0,0,p,p),h.textBaseline=\"middle\",h.fillText(\"H\",0,.5*p);var y=i(h.getImageData(0,0,p,p));d.median=d.middle=p-y-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"hanging\",h.fillText(\"H\",0,.5*p);var x=i(h.getImageData(0,0,p,p));d.hanging=p-x-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"ideographic\",h.fillText(\"H\",0,p);var b=i(h.getImageData(0,0,p,p));if(d.ideographic=p-b-1+g,f.upper&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.upper,0,0),d.upper=i(h.getImageData(0,0,p,p)),d.capHeight=d.baseline-d.upper),f.lower&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.lower,0,0),d.lower=i(h.getImageData(0,0,p,p)),d.xHeight=d.baseline-d.lower),f.tittle&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.tittle,0,0),d.tittle=i(h.getImageData(0,0,p,p))),f.ascent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.ascent,0,0),d.ascent=i(h.getImageData(0,0,p,p))),f.descent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.descent,0,0),d.descent=o(h.getImageData(0,0,p,p))),f.overshoot){h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.overshoot,0,0);var _=o(h.getImageData(0,0,p,p));d.overshoot=_-v}for(var w in d)d[w]/=s;return d.em=s,n.cache[r]=d,a(d,c)}function a(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 i(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)}e.exports=n,n.canvas=document.createElement(\"canvas\"),n.cache={}},{}],242:[function(t,e,r){\"use strict\";e.exports=function(t){return new s(t||g,null)};function n(t,e,r,n,a,i){this._color=t,this.key=e,this.value=r,this.left=n,this.right=a,this._count=i}function a(t){return new n(t._color,t.key,t.value,t.left,t.right,t._count)}function i(t,e){return new n(t,e.key,e.value,e.left,e.right,e._count)}function o(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function s(t,e){this._compare=t,this.root=e}var l=s.prototype;function c(t,e){var r;if(e.left&&(r=c(t,e.left)))return r;return(r=t(e.key,e.value))||(e.right?c(t,e.right):void 0)}function u(t,e,r,n){if(e(t,n.key)<=0){var a;if(n.left)if(a=u(t,e,r,n.left))return a;if(a=r(n.key,n.value))return a}if(n.right)return u(t,e,r,n.right)}function h(t,e,r,n,a){var i,o=r(t,a.key),s=r(e,a.key);if(o<=0){if(a.left&&(i=h(t,e,r,n,a.left)))return i;if(s>0&&(i=n(a.key,a.value)))return i}if(s>0&&a.right)return h(t,e,r,n,a.right)}function f(t,e){this.tree=t,this._stack=e}Object.defineProperty(l,\"keys\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(e)})),t}}),Object.defineProperty(l,\"values\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(r)})),t}}),Object.defineProperty(l,\"length\",{get:function(){return this.root?this.root._count:0}}),l.insert=function(t,e){for(var r=this._compare,a=this.root,l=[],c=[];a;){var u=r(t,a.key);l.push(a),c.push(u),a=u<=0?a.left:a.right}l.push(new n(0,t,e,null,null,1));for(var h=l.length-2;h>=0;--h){a=l[h];c[h]<=0?l[h]=new n(a._color,a.key,a.value,l[h+1],a.right,a._count+1):l[h]=new n(a._color,a.key,a.value,a.left,l[h+1],a._count+1)}for(h=l.length-1;h>1;--h){var f=l[h-1];a=l[h];if(1===f._color||1===a._color)break;var p=l[h-2];if(p.left===f)if(f.left===a){if(!(d=p.right)||0!==d._color){if(p._color=0,p.left=f.right,f._color=1,f.right=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).left===p?g.left=f:g.right=f;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else{if(!(d=p.right)||0!==d._color){if(f.right=a.left,p._color=0,p.left=a.right,a._color=1,a.left=f,a.right=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).left===p?g.left=a:g.right=a;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else if(f.right===a){if(!(d=p.left)||0!==d._color){if(p._color=0,p.right=f.left,f._color=1,f.left=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).right===p?g.right=f:g.left=f;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}else{var d;if(!(d=p.left)||0!==d._color){var g;if(f.left=a.right,p._color=0,p.right=a.left,a._color=1,a.right=f,a.left=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).right===p?g.right=a:g.left=a;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}}return l[0]._color=1,new s(r,l[0])},l.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return c(t,this.root);case 2:return u(e,this._compare,t,this.root);case 3:if(this._compare(e,r)>=0)return;return h(e,r,this._compare,t,this.root)}},Object.defineProperty(l,\"begin\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new f(this,t)}}),Object.defineProperty(l,\"end\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new f(this,t)}}),l.at=function(t){if(t<0)return new f(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t=e.right._count)break;e=e.right}return new f(this,[])},l.ge=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i<=0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.gt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i<0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.lt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i>0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.le=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i>=0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var a=e(t,r.key);if(n.push(r),0===a)return new f(this,n);r=a<=0?r.left:r.right}return new f(this,[])},l.remove=function(t){var e=this.find(t);return e?e.remove():this},l.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 p=f.prototype;function d(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function g(t,e){return te?1:0}Object.defineProperty(p,\"valid\",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,\"node\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new f(this.tree,this._stack.slice())},p.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var e=new Array(t.length),r=t[t.length-1];e[e.length-1]=new n(r._color,r.key,r.value,r.left,r.right,r._count);for(var l=t.length-2;l>=0;--l){(r=t[l]).left===t[l+1]?e[l]=new n(r._color,r.key,r.value,e[l+1],r.right,r._count):e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count)}if((r=e[e.length-1]).left&&r.right){var c=e.length;for(r=r.left;r.right;)e.push(r),r=r.right;var u=e[c-1];e.push(new n(r._color,u.key,u.value,r.left,r.right,r._count)),e[c-1].key=r.key,e[c-1].value=r.value;for(l=e.length-2;l>=c;--l)r=e[l],e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count);e[c-1].left=e[c]}if(0===(r=e[e.length-1])._color){var h=e[e.length-2];h.left===r?h.left=null:h.right===r&&(h.right=null),e.pop();for(l=0;l=0;--l){if(e=t[l],0===l)return void(e._color=1);if((r=t[l-1]).left===e){if((n=r.right).right&&0===n.right._color){if(s=(n=r.right=a(n)).right=a(n.right),r.right=n.left,n.left=r,n.right=s,n._color=r._color,e._color=1,r._color=1,s._color=1,o(r),o(n),l>1)(c=t[l-2]).left===r?c.left=n:c.right=n;return void(t[l-1]=n)}if(n.left&&0===n.left._color){if(s=(n=r.right=a(n)).left=a(n.left),r.right=s.left,n.left=s.right,s.left=r,s.right=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o(r),o(n),o(s),l>1)(c=t[l-2]).left===r?c.left=s:c.right=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.right=i(0,n));r.right=i(0,n);continue}n=a(n),r.right=n.left,n.left=r,n._color=r._color,r._color=0,o(r),o(n),l>1&&((c=t[l-2]).left===r?c.left=n:c.right=n),t[l-1]=n,t[l]=r,l+11)(c=t[l-2]).right===r?c.right=n:c.left=n;return void(t[l-1]=n)}if(n.right&&0===n.right._color){if(s=(n=r.left=a(n)).right=a(n.right),r.left=s.right,n.right=s.left,s.right=r,s.left=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o(r),o(n),o(s),l>1)(c=t[l-2]).right===r?c.right=s:c.left=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.left=i(0,n));r.left=i(0,n);continue}var c;n=a(n),r.left=n.right,n.right=r,n._color=r._color,r._color=0,o(r),o(n),l>1&&((c=t[l-2]).right===r?c.right=n:c.left=n),t[l-1]=n,t[l]=r,l+10)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(p,\"value\",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(p,\"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}),p.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(p,\"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}}),p.update=function(t){var e=this._stack;if(0===e.length)throw new Error(\"Can't update empty node!\");var r=new Array(e.length),a=e[e.length-1];r[r.length-1]=new n(a._color,a.key,t,a.left,a.right,a._count);for(var i=e.length-2;i>=0;--i)(a=e[i]).left===e[i+1]?r[i]=new n(a._color,a.key,a.value,r[i+1],a.right,a._count):r[i]=new n(a._color,a.key,a.value,a.left,r[i+1],a._count);return new s(this.tree._compare,r[0])},p.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(p,\"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}})},{}],243:[function(t,e,r){var n=[.9999999999998099,676.5203681218851,-1259.1392167224028,771.3234287776531,-176.6150291621406,12.507343278686905,-.13857109526572012,9984369578019572e-21,1.5056327351493116e-7],a=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];function i(t){if(t<0)return Number(\"0/0\");for(var e=a[0],r=a.length-1;r>0;--r)e+=a[r]/(t+r);var n=t+607/128+.5;return.5*Math.log(2*Math.PI)+(t+.5)*Math.log(n)-n+Math.log(e)-Math.log(t)}e.exports=function t(e){if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*t(1-e));if(e>100)return Math.exp(i(e));e-=1;for(var r=n[0],a=1;a<9;a++)r+=n[a]/(e+a);var o=e+7+.5;return Math.sqrt(2*Math.PI)*Math.pow(o,e+.5)*Math.exp(-o)*r},e.exports.log=i},{}],244:[function(t,e,r){e.exports=function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"must specify type string\");if(e=e||{},\"undefined\"==typeof document&&!e.canvas)return null;var r=e.canvas||document.createElement(\"canvas\");\"number\"==typeof e.width&&(r.width=e.width);\"number\"==typeof e.height&&(r.height=e.height);var n,a=e;try{var i=[t];0===t.indexOf(\"webgl\")&&i.push(\"experimental-\"+t);for(var o=0;o0?(p[u]=-1,d[u]=0):(p[u]=0,d[u]=1)}}var g=[0,0,0],m={model:l,view:l,projection:l,_ortho:!1};h.isOpaque=function(){return!0},h.isTransparent=function(){return!1},h.drawTransparent=function(t){};var v=[0,0,0],y=[0,0,0],x=[0,0,0];h.draw=function(t){t=t||m;for(var e=this.gl,r=t.model||l,n=t.view||l,a=t.projection||l,i=this.bounds,s=t._ortho||!1,u=o(r,n,a,i,s),h=u.cubeEdges,f=u.axis,b=n[12],_=n[13],w=n[14],T=n[15],k=(s?2:1)*this.pixelRatio*(a[3]*b+a[7]*_+a[11]*w+a[15]*T)/e.drawingBufferHeight,A=0;A<3;++A)this.lastCubeProps.cubeEdges[A]=h[A],this.lastCubeProps.axis[A]=f[A];var M=p;for(A=0;A<3;++A)d(p[A],A,this.bounds,h,f);e=this.gl;var S,E=g;for(A=0;A<3;++A)this.backgroundEnable[A]?E[A]=f[A]:E[A]=0;this._background.draw(r,n,a,i,E,this.backgroundColor),this._lines.bind(r,n,a,this);for(A=0;A<3;++A){var C=[0,0,0];f[A]>0?C[A]=i[1][A]:C[A]=i[0][A];for(var L=0;L<2;++L){var P=(A+1+L)%3,I=(A+1+(1^L))%3;this.gridEnable[P]&&this._lines.drawGrid(P,I,this.bounds,C,this.gridColor[P],this.gridWidth[P]*this.pixelRatio)}for(L=0;L<2;++L){P=(A+1+L)%3,I=(A+1+(1^L))%3;this.zeroEnable[I]&&Math.min(i[0][I],i[1][I])<=0&&Math.max(i[0][I],i[1][I])>=0&&this._lines.drawZero(P,I,this.bounds,C,this.zeroLineColor[I],this.zeroLineWidth[I]*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 z=c(v,M[A].primalMinor),O=c(y,M[A].mirrorMinor),D=this.lineTickLength;for(L=0;L<3;++L){var R=k/r[5*L];z[L]*=D[L]*R,O[L]*=D[L]*R}this.lineTickEnable[A]&&this._lines.drawAxisTicks(A,M[A].primalOffset,z,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio),this.lineTickMirror[A]&&this._lines.drawAxisTicks(A,M[A].mirrorOffset,O,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio)}this._lines.unbind(),this._text.bind(r,n,a,this.pixelRatio);var F,B;function N(t){(B=[0,0,0])[t]=1}function j(t,e,r){var n=(t+1)%3,a=(t+2)%3,i=e[n],o=e[a],s=r[n],l=r[a];i>0&&l>0||i>0&&l<0||i<0&&l>0||i<0&&l<0?N(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&N(a)}for(A=0;A<3;++A){var V=M[A].primalMinor,U=M[A].mirrorMinor,q=c(x,M[A].primalOffset);for(L=0;L<3;++L)this.lineTickEnable[A]&&(q[L]+=k*V[L]*Math.max(this.lineTickLength[L],0)/r[5*L]);var H=[0,0,0];if(H[A]=1,this.tickEnable[A]){-3600===this.tickAngle[A]?(this.tickAngle[A]=0,this.tickAlign[A]=\"auto\"):this.tickAlign[A]=-1,F=1,\"auto\"===(S=[this.tickAlign[A],.5,F])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]),B=[0,0,0],j(A,V,U);for(L=0;L<3;++L)q[L]+=k*V[L]*this.tickPad[L]/r[5*L];this._text.drawTicks(A,this.tickSize[A],this.tickAngle[A],q,this.tickColor[A],H,B,S)}if(this.labelEnable[A]){F=0,B=[0,0,0],this.labels[A].length>4&&(N(A),F=1),\"auto\"===(S=[this.labelAlign[A],.5,F])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]);for(L=0;L<3;++L)q[L]+=k*V[L]*this.labelPad[L]/r[5*L];q[A]+=.5*(i[0][A]+i[1][A]),this._text.drawLabel(A,this.labelSize[A],this.labelAngle[A],q,this.labelColor[A],[0,0,0],B,S)}}this._text.unbind()},h.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},{\"./lib/background.js\":246,\"./lib/cube.js\":247,\"./lib/lines.js\":248,\"./lib/text.js\":250,\"./lib/ticks.js\":251}],246:[function(t,e,r){\"use strict\";e.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 g=-1;g<=1;g+=2)h[u]=g,e.push(h[0],h[1],h[2],f[0],f[1],f[2]),s+=1}var m=c;c=u,u=m}var v=n(t,new Float32Array(e)),y=n(t,new Uint16Array(r),t.ELEMENT_ARRAY_BUFFER),x=a(t,[{buffer:v,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:v,type:t.FLOAT,size:3,offset:12,stride:24}],y),b=i(t);return b.attributes.position.location=0,b.attributes.normal.location=1,new o(t,v,x,b)};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders\").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,a,i){for(var o=!1,s=0;s<3;++s)o=o||a[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:a,colors:i},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()}},{\"./shaders\":249,\"gl-buffer\":253,\"gl-vao\":327}],247:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,i,p){a(s,e,t),a(s,r,s);for(var y=0,x=0;x<2;++x){u[2]=i[x][2];for(var b=0;b<2;++b){u[1]=i[b][1];for(var _=0;_<2;++_)u[0]=i[_][0],f(l[y],u,s),y+=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){if((N=R^1<c[B][0]&&(B=N)}var j=g;j[0]=j[1]=j[2]=0,j[n.log2(F^R)]=R&F,j[n.log2(R^B)]=R&B;var V=7^B;V===w||V===D?(V=7^F,j[n.log2(B^V)]=V&B):j[n.log2(F^V)]=V&F;var U=m,q=w;for(A=0;A<3;++A)U[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}\"]),l=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = color;\\n}\"]);r.text=function(t){return a(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}\"]),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}\"]);r.bg=function(t){return a(t,c,u,null,[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}])}},{\"gl-shader\":307,glslify:408}],250:[function(t,e,r){(function(r){\"use strict\";e.exports=function(t,e,r,i,s,l){var u=n(t),h=a(t,[{buffer:u,size:3}]),f=o(t);f.attributes.position.location=0;var p=new c(t,f,u,h);return p.update(e,r,i,s,l),p};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"vectorize-text\"),o=t(\"./shaders\").text,s=window||r.global||{},l=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};function c(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}var u=c.prototype,h=[0,0];u.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var a=this.shader.uniforms;a.model=t,a.view=e,a.projection=r,a.pixelScale=n,h[0]=this.gl.drawingBufferWidth,h[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=h},u.unbind=function(){this.vao.unbind()},u.update=function(t,e,r,n,a){var o=[];function s(t,e,r,n,a,s){var c=l[r];c||(c=l[r]={});var u=c[e];u||(u=c[e]=function(t,e){try{return i(t,e)}catch(e){return console.warn('error vectorizing text:\"'+t+'\" error:',e),{cells:[],positions:[]}}}(e,{triangles:!0,font:r,textAlign:\"center\",textBaseline:\"middle\",lineSpacing:a,styletags:s}));for(var h=(n||12)/12,f=u.positions,p=u.cells,d=0,g=p.length;d=0;--v){var y=f[m[v]];o.push(h*y[0],-h*y[1],t)}}for(var c=[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]=o.length/3|0,s(.5*(t[0][d]+t[1][d]),e[d],r[d],12,1.25,p),f[d]=(o.length/3|0)-h[d],c[d]=o.length/3|0;for(var g=0;g=0&&(a=r.length-n-1);var i=Math.pow(10,a),o=Math.round(t*e*i),s=o+\"\";if(s.indexOf(\"e\")>=0)return s;var l=o/i,c=o%i;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),a){for(var h=\"\"+c;h.length=t[0][a];--o)i.push({x:o*e[a],text:n(e[a],o)});r.push(i)}return r},r.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,i,a),r}function u(t,e){for(var r=n.malloc(t.length,e),a=t.length,i=0;i=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=i(s,t.shape);a.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}},e.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 a=t.createBuffer(),i=new s(t,r,a,0,n);return i.update(e),i}},{ndarray:448,\"ndarray-ops\":443,\"typedarray-pool\":547}],254:[function(t,e,r){\"use strict\";var n=t(\"gl-vec3\");e.exports=function(t,e){var r=t.positions,a=t.vectors,i={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]),i;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,g=[],m=1/0,v=!1,y=0;yo&&(o=n.length(b)),y){var _=2*n.distance(p,x)/(n.length(d)+n.length(b));_?(m=Math.min(m,_),v=!1):v=!0}v||(p=x,d=b),g.push(b)}var w=[s,c,h],T=[l,u,f];e&&(e[0]=w,e[1]=T),0===o&&(o=1);var k=1/o;isFinite(m)||(m=1),i.vectorScale=m;var A=t.coneSize||.5;t.absoluteConeSize&&(A=t.absoluteConeSize*k),i.coneScale=A;y=0;for(var M=0;y=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 a=e[n],i=0;i<3;++i)r[4*n+i]=a[i];r[4*n+3]=255*a[3]}return c(r,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var r=t.cells,n=t.positions,a=t.vectors;if(n&&r&&a){var i=[],o=[],s=[],l=[],h=[];this.cells=r,this.positions=n,this.vectors=a;var f=t.meshColor||[1,1,1,1],p=t.vertexIntensity,d=1/0,g=-1/0;if(p)if(t.vertexIntensityBounds)d=+t.vertexIntensityBounds[0],g=+t.vertexIntensityBounds[1];else for(var m=0;m0){var g=this.triShader;g.bind(),g.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,a=t.projection||h,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:r,view:n,projection:a,clipBounds:i,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),a={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return\"cone\"===this.traceType?a.index=Math.floor(r[1]/48):\"streamtube\"===this.traceType&&(a.intensity=this.intensity[r[1]],a.velocity=this.vectors[r[1]].slice(0,3),a.divergence=this.vectors[r[1]][3],a.index=e),a},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()},e.exports=function(t,e,r){var n=r.shaders;1===arguments.length&&(t=(e=t).gl);var s=d(t,n),l=g(t,n),u=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));u.generateMipmap(),u.minFilter=t.LINEAR_MIPMAP_LINEAR,u.magFilter=t.LINEAR;var h=a(t),p=a(t),m=a(t),v=a(t),y=a(t),x=i(t,[{buffer:h,type:t.FLOAT,size:4},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:p,type:t.FLOAT,size:4}]),b=new f(t,u,s,l,h,p,y,m,v,x,r.traceType||\"cone\");return b.update(e),b}},{colormap:128,\"gl-buffer\":253,\"gl-mat4/invert\":273,\"gl-mat4/multiply\":275,\"gl-shader\":307,\"gl-texture2d\":322,\"gl-vao\":327,ndarray:448}],256:[function(t,e,r){var n=t(\"glslify\"),a=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\"]),i=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}\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec3\"}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec3\"}]}},{glslify:408}],257:[function(t,e,r){e.exports={0:\"NONE\",1:\"ONE\",2:\"LINE_LOOP\",3:\"LINE_STRIP\",4:\"TRIANGLES\",5:\"TRIANGLE_STRIP\",6:\"TRIANGLE_FAN\",256:\"DEPTH_BUFFER_BIT\",512:\"NEVER\",513:\"LESS\",514:\"EQUAL\",515:\"LEQUAL\",516:\"GREATER\",517:\"NOTEQUAL\",518:\"GEQUAL\",519:\"ALWAYS\",768:\"SRC_COLOR\",769:\"ONE_MINUS_SRC_COLOR\",770:\"SRC_ALPHA\",771:\"ONE_MINUS_SRC_ALPHA\",772:\"DST_ALPHA\",773:\"ONE_MINUS_DST_ALPHA\",774:\"DST_COLOR\",775:\"ONE_MINUS_DST_COLOR\",776:\"SRC_ALPHA_SATURATE\",1024:\"STENCIL_BUFFER_BIT\",1028:\"FRONT\",1029:\"BACK\",1032:\"FRONT_AND_BACK\",1280:\"INVALID_ENUM\",1281:\"INVALID_VALUE\",1282:\"INVALID_OPERATION\",1285:\"OUT_OF_MEMORY\",1286:\"INVALID_FRAMEBUFFER_OPERATION\",2304:\"CW\",2305:\"CCW\",2849:\"LINE_WIDTH\",2884:\"CULL_FACE\",2885:\"CULL_FACE_MODE\",2886:\"FRONT_FACE\",2928:\"DEPTH_RANGE\",2929:\"DEPTH_TEST\",2930:\"DEPTH_WRITEMASK\",2931:\"DEPTH_CLEAR_VALUE\",2932:\"DEPTH_FUNC\",2960:\"STENCIL_TEST\",2961:\"STENCIL_CLEAR_VALUE\",2962:\"STENCIL_FUNC\",2963:\"STENCIL_VALUE_MASK\",2964:\"STENCIL_FAIL\",2965:\"STENCIL_PASS_DEPTH_FAIL\",2966:\"STENCIL_PASS_DEPTH_PASS\",2967:\"STENCIL_REF\",2968:\"STENCIL_WRITEMASK\",2978:\"VIEWPORT\",3024:\"DITHER\",3042:\"BLEND\",3088:\"SCISSOR_BOX\",3089:\"SCISSOR_TEST\",3106:\"COLOR_CLEAR_VALUE\",3107:\"COLOR_WRITEMASK\",3317:\"UNPACK_ALIGNMENT\",3333:\"PACK_ALIGNMENT\",3379:\"MAX_TEXTURE_SIZE\",3386:\"MAX_VIEWPORT_DIMS\",3408:\"SUBPIXEL_BITS\",3410:\"RED_BITS\",3411:\"GREEN_BITS\",3412:\"BLUE_BITS\",3413:\"ALPHA_BITS\",3414:\"DEPTH_BITS\",3415:\"STENCIL_BITS\",3553:\"TEXTURE_2D\",4352:\"DONT_CARE\",4353:\"FASTEST\",4354:\"NICEST\",5120:\"BYTE\",5121:\"UNSIGNED_BYTE\",5122:\"SHORT\",5123:\"UNSIGNED_SHORT\",5124:\"INT\",5125:\"UNSIGNED_INT\",5126:\"FLOAT\",5386:\"INVERT\",5890:\"TEXTURE\",6401:\"STENCIL_INDEX\",6402:\"DEPTH_COMPONENT\",6406:\"ALPHA\",6407:\"RGB\",6408:\"RGBA\",6409:\"LUMINANCE\",6410:\"LUMINANCE_ALPHA\",7680:\"KEEP\",7681:\"REPLACE\",7682:\"INCR\",7683:\"DECR\",7936:\"VENDOR\",7937:\"RENDERER\",7938:\"VERSION\",9728:\"NEAREST\",9729:\"LINEAR\",9984:\"NEAREST_MIPMAP_NEAREST\",9985:\"LINEAR_MIPMAP_NEAREST\",9986:\"NEAREST_MIPMAP_LINEAR\",9987:\"LINEAR_MIPMAP_LINEAR\",10240:\"TEXTURE_MAG_FILTER\",10241:\"TEXTURE_MIN_FILTER\",10242:\"TEXTURE_WRAP_S\",10243:\"TEXTURE_WRAP_T\",10497:\"REPEAT\",10752:\"POLYGON_OFFSET_UNITS\",16384:\"COLOR_BUFFER_BIT\",32769:\"CONSTANT_COLOR\",32770:\"ONE_MINUS_CONSTANT_COLOR\",32771:\"CONSTANT_ALPHA\",32772:\"ONE_MINUS_CONSTANT_ALPHA\",32773:\"BLEND_COLOR\",32774:\"FUNC_ADD\",32777:\"BLEND_EQUATION_RGB\",32778:\"FUNC_SUBTRACT\",32779:\"FUNC_REVERSE_SUBTRACT\",32819:\"UNSIGNED_SHORT_4_4_4_4\",32820:\"UNSIGNED_SHORT_5_5_5_1\",32823:\"POLYGON_OFFSET_FILL\",32824:\"POLYGON_OFFSET_FACTOR\",32854:\"RGBA4\",32855:\"RGB5_A1\",32873:\"TEXTURE_BINDING_2D\",32926:\"SAMPLE_ALPHA_TO_COVERAGE\",32928:\"SAMPLE_COVERAGE\",32936:\"SAMPLE_BUFFERS\",32937:\"SAMPLES\",32938:\"SAMPLE_COVERAGE_VALUE\",32939:\"SAMPLE_COVERAGE_INVERT\",32968:\"BLEND_DST_RGB\",32969:\"BLEND_SRC_RGB\",32970:\"BLEND_DST_ALPHA\",32971:\"BLEND_SRC_ALPHA\",33071:\"CLAMP_TO_EDGE\",33170:\"GENERATE_MIPMAP_HINT\",33189:\"DEPTH_COMPONENT16\",33306:\"DEPTH_STENCIL_ATTACHMENT\",33635:\"UNSIGNED_SHORT_5_6_5\",33648:\"MIRRORED_REPEAT\",33901:\"ALIASED_POINT_SIZE_RANGE\",33902:\"ALIASED_LINE_WIDTH_RANGE\",33984:\"TEXTURE0\",33985:\"TEXTURE1\",33986:\"TEXTURE2\",33987:\"TEXTURE3\",33988:\"TEXTURE4\",33989:\"TEXTURE5\",33990:\"TEXTURE6\",33991:\"TEXTURE7\",33992:\"TEXTURE8\",33993:\"TEXTURE9\",33994:\"TEXTURE10\",33995:\"TEXTURE11\",33996:\"TEXTURE12\",33997:\"TEXTURE13\",33998:\"TEXTURE14\",33999:\"TEXTURE15\",34e3:\"TEXTURE16\",34001:\"TEXTURE17\",34002:\"TEXTURE18\",34003:\"TEXTURE19\",34004:\"TEXTURE20\",34005:\"TEXTURE21\",34006:\"TEXTURE22\",34007:\"TEXTURE23\",34008:\"TEXTURE24\",34009:\"TEXTURE25\",34010:\"TEXTURE26\",34011:\"TEXTURE27\",34012:\"TEXTURE28\",34013:\"TEXTURE29\",34014:\"TEXTURE30\",34015:\"TEXTURE31\",34016:\"ACTIVE_TEXTURE\",34024:\"MAX_RENDERBUFFER_SIZE\",34041:\"DEPTH_STENCIL\",34055:\"INCR_WRAP\",34056:\"DECR_WRAP\",34067:\"TEXTURE_CUBE_MAP\",34068:\"TEXTURE_BINDING_CUBE_MAP\",34069:\"TEXTURE_CUBE_MAP_POSITIVE_X\",34070:\"TEXTURE_CUBE_MAP_NEGATIVE_X\",34071:\"TEXTURE_CUBE_MAP_POSITIVE_Y\",34072:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\",34073:\"TEXTURE_CUBE_MAP_POSITIVE_Z\",34074:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\",34076:\"MAX_CUBE_MAP_TEXTURE_SIZE\",34338:\"VERTEX_ATTRIB_ARRAY_ENABLED\",34339:\"VERTEX_ATTRIB_ARRAY_SIZE\",34340:\"VERTEX_ATTRIB_ARRAY_STRIDE\",34341:\"VERTEX_ATTRIB_ARRAY_TYPE\",34342:\"CURRENT_VERTEX_ATTRIB\",34373:\"VERTEX_ATTRIB_ARRAY_POINTER\",34466:\"NUM_COMPRESSED_TEXTURE_FORMATS\",34467:\"COMPRESSED_TEXTURE_FORMATS\",34660:\"BUFFER_SIZE\",34661:\"BUFFER_USAGE\",34816:\"STENCIL_BACK_FUNC\",34817:\"STENCIL_BACK_FAIL\",34818:\"STENCIL_BACK_PASS_DEPTH_FAIL\",34819:\"STENCIL_BACK_PASS_DEPTH_PASS\",34877:\"BLEND_EQUATION_ALPHA\",34921:\"MAX_VERTEX_ATTRIBS\",34922:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\",34930:\"MAX_TEXTURE_IMAGE_UNITS\",34962:\"ARRAY_BUFFER\",34963:\"ELEMENT_ARRAY_BUFFER\",34964:\"ARRAY_BUFFER_BINDING\",34965:\"ELEMENT_ARRAY_BUFFER_BINDING\",34975:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\",35040:\"STREAM_DRAW\",35044:\"STATIC_DRAW\",35048:\"DYNAMIC_DRAW\",35632:\"FRAGMENT_SHADER\",35633:\"VERTEX_SHADER\",35660:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\",35661:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\",35663:\"SHADER_TYPE\",35664:\"FLOAT_VEC2\",35665:\"FLOAT_VEC3\",35666:\"FLOAT_VEC4\",35667:\"INT_VEC2\",35668:\"INT_VEC3\",35669:\"INT_VEC4\",35670:\"BOOL\",35671:\"BOOL_VEC2\",35672:\"BOOL_VEC3\",35673:\"BOOL_VEC4\",35674:\"FLOAT_MAT2\",35675:\"FLOAT_MAT3\",35676:\"FLOAT_MAT4\",35678:\"SAMPLER_2D\",35680:\"SAMPLER_CUBE\",35712:\"DELETE_STATUS\",35713:\"COMPILE_STATUS\",35714:\"LINK_STATUS\",35715:\"VALIDATE_STATUS\",35716:\"INFO_LOG_LENGTH\",35717:\"ATTACHED_SHADERS\",35718:\"ACTIVE_UNIFORMS\",35719:\"ACTIVE_UNIFORM_MAX_LENGTH\",35720:\"SHADER_SOURCE_LENGTH\",35721:\"ACTIVE_ATTRIBUTES\",35722:\"ACTIVE_ATTRIBUTE_MAX_LENGTH\",35724:\"SHADING_LANGUAGE_VERSION\",35725:\"CURRENT_PROGRAM\",36003:\"STENCIL_BACK_REF\",36004:\"STENCIL_BACK_VALUE_MASK\",36005:\"STENCIL_BACK_WRITEMASK\",36006:\"FRAMEBUFFER_BINDING\",36007:\"RENDERBUFFER_BINDING\",36048:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\",36049:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\",36050:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\",36051:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\",36053:\"FRAMEBUFFER_COMPLETE\",36054:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\",36055:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\",36057:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\",36061:\"FRAMEBUFFER_UNSUPPORTED\",36064:\"COLOR_ATTACHMENT0\",36096:\"DEPTH_ATTACHMENT\",36128:\"STENCIL_ATTACHMENT\",36160:\"FRAMEBUFFER\",36161:\"RENDERBUFFER\",36162:\"RENDERBUFFER_WIDTH\",36163:\"RENDERBUFFER_HEIGHT\",36164:\"RENDERBUFFER_INTERNAL_FORMAT\",36168:\"STENCIL_INDEX8\",36176:\"RENDERBUFFER_RED_SIZE\",36177:\"RENDERBUFFER_GREEN_SIZE\",36178:\"RENDERBUFFER_BLUE_SIZE\",36179:\"RENDERBUFFER_ALPHA_SIZE\",36180:\"RENDERBUFFER_DEPTH_SIZE\",36181:\"RENDERBUFFER_STENCIL_SIZE\",36194:\"RGB565\",36336:\"LOW_FLOAT\",36337:\"MEDIUM_FLOAT\",36338:\"HIGH_FLOAT\",36339:\"LOW_INT\",36340:\"MEDIUM_INT\",36341:\"HIGH_INT\",36346:\"SHADER_COMPILER\",36347:\"MAX_VERTEX_UNIFORM_VECTORS\",36348:\"MAX_VARYING_VECTORS\",36349:\"MAX_FRAGMENT_UNIFORM_VECTORS\",37440:\"UNPACK_FLIP_Y_WEBGL\",37441:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\",37442:\"CONTEXT_LOST_WEBGL\",37443:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\",37444:\"BROWSER_DEFAULT_WEBGL\"}},{}],258:[function(t,e,r){var n=t(\"./1.0/numbers\");e.exports=function(t){return n[t]}},{\"./1.0/numbers\":257}],259:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=n(e),o=a(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=i(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=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"./shaders/index\"),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,a=r.projection=t.projection||o;r.model=t.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var i=n[12],s=n[13],l=n[14],c=n[15],u=(t._ortho||!1?2:1)*this.pixelRatio*(a[3]*i+a[7]*s+a[11]*l+a[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 a=-1;a<=1;a+=2){var i=[0,0,0];i[(n+e)%3]=a,r.push(i)}t[e]=r}return t}();function h(t,e,r,n){for(var a=u[n],i=0;i0)(g=u.slice())[s]+=p[1][s],a.push(u[0],u[1],u[2],d[0],d[1],d[2],d[3],0,0,0,g[0],g[1],g[2],d[0],d[1],d[2],d[3],0,0,0),c(this.bounds,g),o+=2+h(a,g,d,s)}}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(a)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},{\"./shaders/index\":260,\"gl-buffer\":253,\"gl-vao\":327}],260:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, offset;\\nattribute vec4 color;\\nuniform mat4 model, view, projection;\\nuniform float capSize;\\nvarying vec4 fragColor;\\nvarying vec3 fragPosition;\\n\\nvoid main() {\\n vec4 worldPosition = model * vec4(position, 1.0);\\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\\n gl_Position = projection * view * worldPosition;\\n fragColor = color;\\n fragPosition = position;\\n}\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float opacity;\\nvarying vec3 fragPosition;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n if (\\n outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\\n fragColor.a * opacity == 0.\\n ) discard;\\n\\n gl_FragColor = opacity * fragColor;\\n}\"]);e.exports=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"offset\",type:\"vec3\"}])}},{\"gl-shader\":307,glslify:408}],261:[function(t,e,r){\"use strict\";var n=t(\"gl-texture2d\");e.exports=function(t,e,r,n){a||(a=t.FRAMEBUFFER_UNSUPPORTED,i=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension(\"WEBGL_draw_buffers\");!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 a=new Array(r),i=0;iu||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 g=!0;\"depth\"in n&&(g=!!n.depth);var m=!1;\"stencil\"in n&&(m=!!n.stencil);return new d(t,e,r,f,h,g,m,c)};var a,i,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 a:throw new Error(\"gl-fbo: Framebuffer unsupported\");case i: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,a,i,o){if(!a)return null;var s=n(t,e,r,i,a);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,a){var i=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,i),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,a,t.RENDERBUFFER,i),i}function d(t,e,r,n,a,i,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(a);for(var d=0;d1&&s.drawBuffersWEBGL(l[o]);var y=r.getExtension(\"WEBGL_depth_texture\");y?d?t.depth=f(r,a,i,y.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g&&(t.depth=f(r,a,i,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):g&&d?t._depth_rb=p(r,a,i,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g?t._depth_rb=p(r,a,i,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):d&&(t._depth_rb=p(r,a,i,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){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);for(v=0;va||r<0||r>a)throw new Error(\"gl-fbo: Can't resize FBO, invalid dimensions\");t._shape[0]=e,t._shape[1]=r;for(var i=c(n),o=0;o>8*p&255;this.pickOffset=r,a.bind();var d=a.uniforms;d.viewTransform=t,d.pickOffset=e,d.shape=this.shape;var g=a.attributes;return this.positionBuffer.bind(),g.position.pointer(),this.weightBuffer.bind(),g.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),g.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),h.pick=function(t,e,r){var n=this.pickOffset,a=this.shape[0]*this.shape[1];if(r=n+a)return null;var i=r-n,o=this.xData,s=this.yData;return{object:this,pointId:i,dataCoord:[o[i%this.shape[0]],s[i/this.shape[0]|0]]}},h.update=function(t){var e=(t=t||{}).shape||[0,0],r=t.x||a(e[0]),o=t.y||a(e[1]),s=t.z||new Float32Array(e[0]*e[1]);this.xData=r,this.yData=o;var l=t.colorLevels||[0],c=t.colorValues||[0,0,0,1],u=l.length,h=this.bounds,p=h[0]=r[0],d=h[1]=o[0],g=1/((h[2]=r[r.length-1])-p),m=1/((h[3]=o[o.length-1])-d),v=e[0],y=e[1];this.shape=[v,y];var x=(v-1)*(y-1)*(f.length>>>1);this.numVertices=x;for(var b=i.mallocUint8(4*x),_=i.mallocFloat32(2*x),w=i.mallocUint8(2*x),T=i.mallocUint32(x),k=0,A=0;A 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\"}];r.createShader=function(t){return a(t,i,o,null,l)},r.createPickShader=function(t){return a(t,i,s,null,l)}},{\"gl-shader\":307,glslify:408}],266:[function(t,e,r){\"use strict\";e.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=a(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=i(e,u);d.wrap=e.REPEAT;var g=new v(e,r,o,s,l,d);return g.update(t),g};var n=t(\"gl-buffer\"),a=t(\"gl-vao\"),i=t(\"gl-texture2d\"),o=new Uint8Array(4),s=new Float32Array(o.buffer);var l=t(\"binary-search-bounds\"),c=t(\"ndarray\"),u=t(\"./lib/shaders\"),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 a=t[n]-e[n];r+=a*a}return Math.sqrt(r)}function g(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 m(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function v(t,e,r,n,a,i){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=a,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=i,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=v.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(t){this.pickId=t},y.drawTransparent=y.draw=function(t){if(this.vertexCount){var e=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,clipBounds:g(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.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:g(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.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 a=[],i=[],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],g=t.lineWidth||1,m=!1;t:for(e=1;e0){for(var w=0;w<24;++w)a.push(a[a.length-12]);u+=2,m=!0}continue t}h[0][r]=Math.min(h[0][r],b[r],_[r]),h[1][r]=Math.max(h[1][r],b[r],_[r])}Array.isArray(p[0])?(v=p.length>e-1?p[e-1]:p.length>0?p[p.length-1]:[0,0,0,1],y=p.length>e?p[e]:p.length>0?p[p.length-1]:[0,0,0,1]):v=y=p,3===v.length&&(v=[v[0],v[1],v[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&v[3]<1&&(this.hasAlpha=!0),x=Array.isArray(g)?g.length>e-1?g[e-1]:g.length>0?g[g.length-1]:[0,0,0,1]:g;var T=s;if(s+=d(b,_),m){for(r=0;r<2;++r)a.push(b[0],b[1],b[2],_[0],_[1],_[2],T,x,v[0],v[1],v[2],v[3]);u+=2,m=!1}a.push(b[0],b[1],b[2],_[0],_[1],_[2],T,x,v[0],v[1],v[2],v[3],b[0],b[1],b[2],_[0],_[1],_[2],T,-x,v[0],v[1],v[2],v[3],_[0],_[1],_[2],b[0],b[1],b[2],s,-x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],s,x,y[0],y[1],y[2],y[3]),u+=4}}if(this.buffer.update(a),i.push(s),o.push(f[f.length-1].slice()),this.bounds=h,this.vertexCount=u,this.points=o,this.arcLength=i,\"dashes\"in t){var k=t.dashes.slice();for(k.unshift(0),e=1;e1.0001)return null;v+=m[h]}if(Math.abs(v-1)>.001)return null;return[f,s(t,m),m]}},{barycentric:76,\"polytope-closest-point/lib/closest_point_2d.js\":479}],286:[function(t,e,r){var n=t(\"glslify\"),a=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\"]),i=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\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.wireShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},r.pointShader={vertex:l,fragment:c,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"pointSize\",type:\"float\"}]},r.pickShader={vertex:u,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"id\",type:\"vec4\"}]},r.pointPickShader={vertex:f,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"pointSize\",type:\"float\"},{name:\"id\",type:\"vec4\"}]},r.contourShader={vertex:p,fragment:d,attributes:[{name:\"position\",type:\"vec3\"}]}},{glslify:408}],287:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"gl-texture2d\"),s=t(\"normals\"),l=t(\"gl-mat4/multiply\"),c=t(\"gl-mat4/invert\"),u=t(\"ndarray\"),h=t(\"colormap\"),f=t(\"simplicial-complex-contour\"),p=t(\"typedarray-pool\"),d=t(\"./lib/shaders\"),g=t(\"./lib/closest-point\"),m=d.meshShader,v=d.wireShader,y=d.pointShader,x=d.pickShader,b=d.pointPickShader,_=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,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,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=a,this.pickShader=i,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=m,this.edgeUVs=v,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=x,this.pointColors=_,this.pointUVs=T,this.pointSizes=k,this.pointIds=b,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,m.vertex,m.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.normal.location=4,e}function S(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}function E(t){var e=n(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function C(t){var e=n(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function L(t){var e=n(t,b.vertex,b.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function P(t){var e=n(t,_.vertex,_.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,a=e.vertexWeights,i=r.length,o=p.mallocFloat32(6*i),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,a=t.projection||w,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:r,view:n,projection:a,clipBounds:i,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,a=new Array(r.length),i=0;ia[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t],r.uniforms.angle=v[t],i.drawArrays(i.TRIANGLES,a[k],a[A]-a[k]))),y[t]&&T&&(u[1^t]-=M*p*x[t],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t],r.uniforms.angle=_[t],i.drawArrays(i.TRIANGLES,w,T)),u[1^t]=M*s[2+(1^t)]-1,d[t+2]&&(u[1^t]+=M*p*g[t+2],ka[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t+2],r.uniforms.angle=v[t+2],i.drawArrays(i.TRIANGLES,a[k],a[A]-a[k]))),y[t+2]&&T&&(u[1^t]+=M*p*x[t+2],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t+2],r.uniforms.angle=_[t+2],i.drawArrays(i.TRIANGLES,w,T))}),g.drawTitle=function(){var t=[0,0],e=[0,0];return function(){var r=this.plot,n=this.shader,a=r.gl,i=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-i[u])/(i[2+u]-i[u])-1;n.bind(),n.uniforms.dataAxis=t,n.uniforms.screenOffset=e,n.uniforms.angle=s,n.uniforms.color=l,a.drawArrays(a.TRIANGLES,this.titleOffset,this.titleCount)}}}(),g.bind=(f=[0,0],p=[0,0],d=[0,0],function(){var t=this.plot,e=this.shader,r=t._tickBounds,n=t.dataBox,a=t.screenBox,i=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=i[o],g=i[o+2]-h,m=a[o],v=a[o+2]-m;p[o]=2*l/u*g/v,f[o]=2*(s-c)/u*g/v}d[1]=2*t.pixelRatio/(a[3]-a[1]),d[0]=d[1]*(a[3]-a[1])/(a[2]-a[0]),e.uniforms.dataScale=p,e.uniforms.dataShift=f,e.uniforms.textScale=d,this.vbo.bind(),e.attributes.textCoordinate.pointer()}),g.update=function(t){var e,r,n,a,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 g=e[d]-n[d]*(e[d+2]-e[d])/(n[d+2]-n[d]);0===d?o.drawLine(g,e[1],g,e[3],p[d],f[d]):o.drawLine(e[0],g,e[2],g,p[d],f[d])}}for(d=0;d=0;--t)this.objects[t].dispose();this.objects.length=0;for(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(i,0,0,-t*r*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var o=-d.zoomSpeed*a*e/window.innerHeight*(i-c.lastT())/20;c.pan(i,0,0,h*(Math.exp(o)-1))}}}),!0)},d.enableMouseListeners(),d};var n=t(\"right-now\"),a=t(\"3d-view\"),i=t(\"mouse-change\"),o=t(\"mouse-wheel\"),s=t(\"mouse-event-offset\"),l=t(\"has-passive-events\")},{\"3d-view\":54,\"has-passive-events\":410,\"mouse-change\":436,\"mouse-event-offset\":437,\"mouse-wheel\":439,\"right-now\":494}],295:[function(t,e,r){var n=t(\"glslify\"),a=t(\"gl-shader\"),i=n([\"precision mediump float;\\n#define GLSLIFY 1\\nattribute vec2 position;\\nvarying vec2 uv;\\nvoid main() {\\n uv = position;\\n gl_Position = vec4(position, 0, 1);\\n}\"]),o=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D accumBuffer;\\nvarying vec2 uv;\\n\\nvoid main() {\\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\\n gl_FragColor = min(vec4(1,1,1,1), accum);\\n}\"]);e.exports=function(t){return a(t,i,o,null,[{name:\"position\",type:\"vec2\"}])}},{\"gl-shader\":307,glslify:408}],296:[function(t,e,r){\"use strict\";var n=t(\"./camera.js\"),a=t(\"gl-axes3d\"),i=t(\"gl-axes3d/properties\"),o=t(\"gl-spikes3d\"),s=t(\"gl-select-static\"),l=t(\"gl-fbo\"),c=t(\"a-big-triangle\"),u=t(\"mouse-change\"),h=t(\"gl-mat4/perspective\"),f=t(\"gl-mat4/ortho\"),p=t(\"./lib/shader\"),d=t(\"is-mobile\")({tablet:!0,featureDetect:!0});function g(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function m(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}if(e>0){r=Math.round(Math.pow(10,e));return Math.ceil(t/r)*r}return Math.ceil(t)}function v(t){return\"boolean\"!=typeof t||t}e.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;if(!e){if(e=document.createElement(\"canvas\"),t.container)t.container.appendChild(e);else document.body.appendChild(e)}var r=t.gl;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}));if(!r)throw new Error(\"webgl not supported\");var y=t.bounds||[[-10,-10,-10],[10,10,10]],x=new g,b=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!d}),_=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=a(r,k);A.enable=!k.disable;var M=t.spikes||{},S=o(r,M),E=[],C=[],L=[],P=[],I=!0,z=!0,O=new Array(16),D=new Array(16),R={view:null,projection:O,model:D,_ortho:!1},F=(z=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),B=t.cameraObject||n(e,T),N={gl:r,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:x,camera:B,axes:A,axesPixels:null,spikes:S,bounds:y,objects:E,shape:F,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:v(t.autoResize),autoBounds:v(t.autoBounds),autoScale:!!t.autoScale,autoCenter:v(t.autoCenter),clipToBounds:v(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:R,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)}},j=[r.drawingBufferWidth/N.pixelRatio|0,r.drawingBufferHeight/N.pixelRatio|0];function V(){if(!N._stopped&&N.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 a=0|Math.ceil(r*N.pixelRatio),i=0|Math.ceil(n*N.pixelRatio);if(a!==e.width||i!==e.height){e.width=a,e.height=i;var o=e.style;o.position=o.position||\"absolute\",o.left=\"0px\",o.top=\"0px\",o.width=r+\"px\",o.height=n+\"px\",I=!0}}}N.autoResize&&V();function U(){for(var t=E.length,e=P.length,n=0;n0&&0===L[e-1];)L.pop(),P.pop().dispose()}function q(){if(N.contextLost)return!0;r.isContextLost()&&(N.contextLost=!0,N.mouseListener.enabled=!1,N.selection.object=null,N.oncontextloss&&N.oncontextloss())}window.addEventListener(\"resize\",V),N.update=function(t){N._stopped||(t=t||{},I=!0,z=!0)},N.add=function(t){N._stopped||(t.axes=A,E.push(t),C.push(-1),I=!0,z=!0,U())},N.remove=function(t){if(!N._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),I=!0,z=!0,U())}},N.dispose=function(){if(!N._stopped&&(N._stopped=!0,window.removeEventListener(\"resize\",V),e.removeEventListener(\"webglcontextlost\",q),N.mouseListener.enabled=!1,!N.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\"]),r.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\"]),r.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\"])},{glslify:408}],298:[function(t,e,r){\"use strict\";var n=t(\"gl-shader\"),a=t(\"gl-buffer\"),i=t(\"typedarray-pool\"),o=t(\"./lib/shader\");function s(t,e,r,n,a){this.plot=t,this.offsetBuffer=e,this.pickBuffer=r,this.shader=n,this.pickShader=a,this.sizeMin=.5,this.sizeMinCap=2,this.sizeMax=20,this.areaRatio=1,this.pointCount=0,this.color=[1,0,0,1],this.borderColor=[0,0,0,1],this.blend=!1,this.pickOffset=0,this.points=null}e.exports=function(t,e){var r=t.gl,i=a(r),l=a(r),c=n(r,o.pointVertex,o.pointFragment),u=n(r,o.pickVertex,o.pickFragment),h=new s(t,i,l,c,u);return h.update(e),t.addObject(h),h};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,a=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=n,s=t.positions,l=a?s:i.mallocFloat32(s.length),c=o?t.idToIndex:i.mallocInt32(n);if(a||l.set(s),!o)for(l.set(s),e=0;e>>1;for(r=0;r=e[0]&&i<=e[2]&&o>=e[1]&&o<=e[3]&&n++}return n}(this.points,a),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/i,l[4]=2/o,l[6]=-2*a[0]/i-1,l[7]=-2*a[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,a=this.pointCount;if(r=n+a)return null;var i=r-n,o=this.points;return{object:this,pointId:i,dataCoord:[o[2*i],o[2*i+1]]}}},{\"./lib/shader\":297,\"gl-buffer\":253,\"gl-shader\":307,\"typedarray-pool\":547}],299:[function(t,e,r){e.exports=function(t,e,r,n){var a,i,o,s,l,c=e[0],u=e[1],h=e[2],f=e[3],p=r[0],d=r[1],g=r[2],m=r[3];(i=c*p+u*d+h*g+f*m)<0&&(i=-i,p=-p,d=-d,g=-g,m=-m);1-i>1e-6?(a=Math.acos(i),o=Math.sin(a),s=Math.sin((1-n)*a)/o,l=Math.sin(n*a)/o):(s=1-n,l=n);return t[0]=s*c+l*p,t[1]=s*u+l*d,t[2]=s*h+l*g,t[3]=s*f+l*m,t}},{}],300:[function(t,e,r){\"use strict\";e.exports=function(t){return t||0===t?t.toString():\"\"}},{}],301:[function(t,e,r){\"use strict\";var n=t(\"vectorize-text\");e.exports=function(t,e,r){var i=a[e];i||(i=a[e]={});if(t in i)return i[t];var o={textAlign:\"center\",textBaseline:\"middle\",lineHeight:1,font:e,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=n(t,o);o.triangles=!1;var l,c,u=n(t,o);if(r&&1!==r){for(l=0;l max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform vec4 highlightId;\\nuniform float highlightScale;\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float scale = 1.0;\\n if(distance(highlightId, id) < 0.0001) {\\n scale = highlightScale;\\n }\\n\\n vec4 worldPosition = model * vec4(position, 1);\\n vec4 viewPosition = view * worldPosition;\\n viewPosition = viewPosition / viewPosition.w;\\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\\n\\n gl_Position = clipPosition;\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = position;\\n }\\n}\"]),o=a([\"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=a([\"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=a([\"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=a([\"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:i,fragment:l,attributes:u},f={vertex:o,fragment:l,attributes:u},p={vertex:s,fragment:l,attributes:u},d={vertex:i,fragment:c,attributes:u},g={vertex:o,fragment:c,attributes:u},m={vertex:s,fragment:c,attributes:u};function v(t,e){var r=n(t,e),a=r.attributes;return a.position.location=0,a.color.location=1,a.glyph.location=2,a.id.location=3,r}r.createPerspective=function(t){return v(t,h)},r.createOrtho=function(t){return v(t,f)},r.createProject=function(t){return v(t,p)},r.createPickPerspective=function(t){return v(t,d)},r.createPickOrtho=function(t){return v(t,g)},r.createPickProject=function(t){return v(t,m)}},{\"gl-shader\":307,glslify:408}],303:[function(t,e,r){\"use strict\";var n=t(\"is-string-blank\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"typedarray-pool\"),s=t(\"gl-mat4/multiply\"),l=t(\"./lib/shaders\"),c=t(\"./lib/glyphs\"),u=t(\"./lib/get-simple-string\"),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(t,e){var r=t[0],n=t[1],a=t[2],i=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*a+e[12]*i,t[1]=e[1]*r+e[5]*n+e[9]*a+e[13]*i,t[2]=e[2]*r+e[6]*n+e[10]*a+e[14]*i,t[3]=e[3]*r+e[7]*n+e[11]*a+e[15]*i,t}function p(t,e,r,n){return f(n,n),f(n,n),f(n,n)}function d(t,e){this.index=t,this.dataCoordinate=this.position=e}function g(t){return!0===t||t>1?1:t}function m(t,e,r,n,a,i,o,s,l,c,u,h){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=r,this.projectShader=n,this.pointBuffer=a,this.colorBuffer=i,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 d(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}e.exports=function(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=a(e),f=a(e),p=a(e),d=a(e),g=i(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}]),v=new m(e,r,n,o,h,f,p,d,g,s,c,u);return v.update(t),v};var v=m.prototype;v.pickSlots=1,v.setPickBase=function(t){this.pickId=t},v.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},v.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],x=[0,0,0],b=[0,0,0],_=[0,0,0,1],w=[0,0,0,1],T=h.slice(),k=[0,0,0],A=[[0,0,0],[0,0,0]];function M(t){return t[0]=t[1]=t[2]=0,t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function E(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}function C(t,e,r,n){var a,i=e.axesProject,o=e.gl,l=t.uniforms,c=r.model||h,u=r.view||h,f=r.projection||h,d=e.axesBounds,g=function(t){for(var e=A,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);a=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=f,l.screenSize=y,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=g,l.pickGroup=e.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(i[m]){l.scale=e.projectScale[m],l.opacity=e.projectOpacity[m];for(var v=T,C=0;C<16;++C)v[C]=0;for(C=0;C<4;++C)v[5*C]=1;v[5*m]=0,a[m]<0?v[12+m]=d[0][m]:v[12+m]=d[1][m],s(v,c,v),l.model=v;var L=(m+1)%3,P=(m+2)%3,I=M(x),z=M(b);I[L]=1,z[P]=1;var O=p(0,0,0,S(_,I)),D=p(0,0,0,S(w,z));if(Math.abs(O[1])>Math.abs(D[1])){var R=O;O=D,D=R,R=I,I=z,z=R;var F=L;L=P,P=F}O[0]<0&&(I[L]=-1),D[1]>0&&(z[P]=-1);var B=0,N=0;for(C=0;C<4;++C)B+=Math.pow(c[4*L+C],2),N+=Math.pow(c[4*P+C],2);I[L]/=Math.sqrt(B),z[P]/=Math.sqrt(N),l.axes[0]=I,l.axes[1]=z,l.fragClipBounds[0]=E(k,g[0],m,-1e8),l.fragClipBounds[1]=E(k,g[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()}}var L=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function P(t,e,r,n,a,i,o){var s=r.gl;if((i===r.projectHasAlpha||o)&&C(e,r,n,a),i===r.hasAlpha||o){t.bind();var l=t.uniforms;l.model=n.model||h,l.view=n.view||h,l.projection=n.projection||h,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=r.highlightId,l.highlightScale=r.highlightScale,l.fragClipBounds=L,l.clipBounds=r.axes.bounds,l.opacity=r.opacity,l.pickGroup=r.pickId/255,l.pixelRatio=a,r.vao.bind(),r.vao.draw(s.TRIANGLES,r.vertexCount),r.lineWidth>0&&(s.lineWidth(r.lineWidth*a),r.vao.draw(s.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function I(t,e,r,a){var i;i=Array.isArray(t)?e=this.pointCount||e<0)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var a=0;a<3;++a)n.position[a]=n.dataCoordinate[a]=r[a];return n},v.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,a=e>>16&255;this.highlightId=[r/255,n/255,a/255,0]}else this.highlightId=[1,1,1,1]},v.update=function(t){if(\"perspective\"in(t=t||{})&&(this.useOrtho=!t.perspective),\"orthographic\"in t&&(this.useOrtho=!!t.orthographic),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"project\"in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if(\"projectScale\"in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,\"projectOpacity\"in t){if(Array.isArray(t.projectOpacity))this.projectOpacity=t.projectOpacity.slice();else{r=+t.projectOpacity;this.projectOpacity=[r,r,r]}for(var n=0;n<3;++n)this.projectOpacity[n]=g(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=g(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var a,i,s=t.position,l=t.font||\"normal\",c=t.alignment||[0,0];if(2===c.length)a=c[0],i=c[1];else{a=[],i=[];for(n=0;n0){var z=0,O=x,D=[0,0,0,1],R=[0,0,0,1],F=Array.isArray(p)&&Array.isArray(p[0]),B=Array.isArray(v)&&Array.isArray(v[0]);t:for(n=0;n<_;++n){y+=1;for(w=s[n],T=0;T<3;++T){if(isNaN(w[T])||!isFinite(w[T]))continue t;h[T]=Math.max(h[T],w[T]),u[T]=Math.min(u[T],w[T])}k=(N=I(f,n,l,this.pixelRatio)).mesh,A=N.lines,M=N.bounds;var N,j=N.visible;if(j)if(Array.isArray(p)){if(3===(V=F?n0?1-M[0][0]:Y<0?1+M[1][0]:1,W*=W>0?1-M[0][1]:W<0?1+M[1][1]:1],X=k.cells||[],J=k.positions||[];for(T=0;T0){var v=r*u;o.drawBox(h-v,f-v,p+v,f+v,i),o.drawBox(h-v,d-v,p+v,d+v,i),o.drawBox(h-v,f-v,h+v,d+v,i),o.drawBox(p-v,f-v,p+v,d+v,i)}}}},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)}},{\"./lib/shaders\":304,\"gl-buffer\":253,\"gl-shader\":307}],306:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=e[0],i=e[1],o=n(t,r,i,{}),s=a.mallocUint8(r*i*4);return new l(t,o,s)};var n=t(\"gl-fbo\"),a=t(\"typedarray-pool\"),i=t(\"ndarray\"),o=t(\"bit-twiddle\").nextPow2;function s(t,e,r,n,a){this.coord=[t,e],this.id=r,this.value=n,this.distance=a}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){a.free(this.buffer);for(var n=this.buffer=a.mallocUint8(o(r*e*4)),i=0;ir)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;_[y]=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);o(t,e,p[0],a,d,i,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);s(t,e,p,a,d,i,h)}}}return i};var n=t(\"./GLError\");function a(t,e,r,n,a,i){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=a,this._constFunc=i}var i=a.prototype;function o(t,e,r,n,i,o,s){for(var l=[\"gl\",\"v\"],c=[],u=0;u4)throw new a(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+r);return\"gl.uniformMatrix\"+i+\"fv(locations[\"+e+\"],false,obj\"+t+\")\"}throw new a(\"\",\"Unknown uniform data type for \"+name+\": \"+r)}if((i=r.charCodeAt(r.length-1)-48)<2||i>4)throw new a(\"\",\"Invalid data type\");switch(r.charAt(0)){case\"b\":case\"i\":return\"gl.uniform\"+i+\"iv(locations[\"+e+\"],obj\"+t+\")\";case\"v\":return\"gl.uniform\"+i+\"fv(locations[\"+e+\"],obj\"+t+\")\";default:throw new a(\"\",\"Unrecognized data type for vector \"+name+\": \"+r)}}}function c(e){for(var n=[\"return function updateProperty(obj){\"],a=function t(e,r){if(\"object\"!=typeof r)return[[e,r]];var n=[];for(var a in r){var i=r[a],o=e;parseInt(a)+\"\"===a?o+=\"[\"+a+\"]\":o+=\".\"+a,\"object\"==typeof i?n.push.apply(n,t(o,i)):n.push([o,i])}return n}(\"\",e),i=0;i4)throw new a(\"\",\"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 a(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+t);return o(r*r,0)}throw new a(\"\",\"Unknown uniform data type for \"+name+\": \"+t)}}(r[u].type);var p}function h(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r1){s[0]in i||(i[s[0]]=[]),i=i[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\"]),i=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}\"]);r.meshShader={vertex:a,fragment:i,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec4\"}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec4\"}]}},{glslify:408}],318:[function(t,e,r){\"use strict\";var n=t(\"gl-vec3\"),a=t(\"gl-vec4\"),i=[\"xyz\",\"xzy\",\"yxz\",\"yzx\",\"zxy\",\"zyx\"],o=function(t,e,r,i){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(y,v,v,v,y,y),d.push(g,m,m,m,g,g);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=y;y=v,v=S;var E=g;g=m,m=E}return{positions:c,cells:u,vectors:h,vertexIntensity:d}}(t,r,i,o)})),h=[],f=[],p=[],d=[];for(s=0;se)return r-1}return r},l=function(t,e,r){return tr?r:t},c=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;nh-1||y>f-1||x>p-1)return n.create();var b,_,w,T,k,A,M=i[0][d],S=i[0][v],E=i[1][g],C=i[1][y],L=i[2][m],P=(o-M)/(S-M),I=(c-E)/(C-E),z=(u-L)/(i[2][x]-L);switch(isFinite(P)||(P=.5),isFinite(I)||(I=.5),isFinite(z)||(z=.5),r.reversedX&&(d=h-1-d,v=h-1-v),r.reversedY&&(g=f-1-g,y=f-1-y),r.reversedZ&&(m=p-1-m,x=p-1-x),r.filled){case 5:k=m,A=x,w=g*p,T=y*p,b=d*p*f,_=v*p*f;break;case 4:k=m,A=x,b=d*p,_=v*p,w=g*p*h,T=y*p*h;break;case 3:w=g,T=y,k=m*f,A=x*f,b=d*f*p,_=v*f*p;break;case 2:w=g,T=y,b=d*f,_=v*f,k=m*f*h,A=x*f*h;break;case 1:b=d,_=v,k=m*h,A=x*h,w=g*h*p,T=y*h*p;break;default:b=d,_=v,w=g*h,T=y*h,k=m*h*f,A=x*h*f}var O=a[b+w+k],D=a[b+w+A],R=a[b+T+k],F=a[b+T+A],B=a[_+w+k],N=a[_+w+A],j=a[_+T+k],V=a[_+T+A],U=n.create(),q=n.create(),H=n.create(),G=n.create();n.lerp(U,O,B,P),n.lerp(q,D,N,P),n.lerp(H,R,j,P),n.lerp(G,F,V,P);var Y=n.create(),W=n.create();n.lerp(Y,U,H,I),n.lerp(W,q,G,I);var Z=n.create();return n.lerp(Z,Y,W,z),Z}(e,t,p)},g=t.getDivergence||function(t,e){var r=n.create(),a=1e-4;n.add(r,t,[a,0,0]);var i=d(r);n.subtract(i,i,e),n.scale(i,i,1/a),n.add(r,t,[0,a,0]);var o=d(r);n.subtract(o,o,e),n.scale(o,o,1/a),n.add(r,t,[0,0,a]);var s=d(r);return n.subtract(s,s,e),n.scale(s,s,1/a),n.add(r,i,o),n.add(r,r,s),r},m=[],v=e[0][0],y=e[0][1],x=e[0][2],b=e[1][0],_=e[1][1],w=e[1][2],T=function(t){var e=t[0],r=t[1],n=t[2];return!(eb||r_||nw)},k=10*n.distance(e[0],e[1])/a,A=k*k,M=1,S=0,E=r.length;E>1&&(M=function(t){for(var e=[],r=[],n=[],a={},i={},o={},s=t.length,l=0;lS&&(S=F),D.push(F),m.push({points:P,velocities:I,divergences:D});for(var B=0;B<100*a&&P.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){P.push(N),O=N,I.push(z);R=g(N,z),F=n.length(R);isFinite(F)&&F>S&&(S=F),D.push(F)}L=N}}var V=o(m,t.colormap,S,M);return h?V.tubeScale=h:(0===S&&(S=1),V.tubeScale=.5*u*M/S),V};var u=t(\"./lib/shaders\"),h=t(\"gl-cone3d\").createMesh;e.exports.createTubeMesh=function(t,e){return h(t,e,{shaders:u,traceType:\"streamtube\"})}},{\"./lib/shaders\":317,\"gl-cone3d\":254,\"gl-vec3\":346,\"gl-vec4\":382}],319:[function(t,e,r){var n=t(\"gl-shader\"),a=t(\"glslify\"),i=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec4 uv;\\nattribute vec3 f;\\nattribute vec3 normal;\\n\\nuniform vec3 objectOffset;\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 lightPosition, eyePosition;\\nuniform sampler2D colormap;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n vec3 localCoordinate = vec3(uv.zw, f.x);\\n worldCoordinate = objectOffset + localCoordinate;\\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\\n vec4 clipPosition = projection * view * worldPosition;\\n gl_Position = clipPosition;\\n kill = f.y;\\n value = f.z;\\n planeCoordinate = uv.xy;\\n\\n vColor = texture2D(colormap, vec2(value, value));\\n\\n //Lighting geometry parameters\\n vec4 cameraCoordinate = view * worldPosition;\\n cameraCoordinate.xyz /= cameraCoordinate.w;\\n lightDirection = lightPosition - cameraCoordinate.xyz;\\n eyeDirection = eyePosition - cameraCoordinate.xyz;\\n surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);\\n}\\n\"]),o=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n float NdotH = max(x, 0.0001);\\n float cos2Alpha = NdotH * NdotH;\\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n float roughness2 = roughness * roughness;\\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat beckmannSpecular(\\n vec3 lightDirection,\\n vec3 viewDirection,\\n vec3 surfaceNormal,\\n float roughness) {\\n return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 lowerBound, upperBound;\\nuniform float contourTint;\\nuniform vec4 contourColor;\\nuniform sampler2D colormap;\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\nuniform float vertexColor;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n if (\\n kill > 0.0 ||\\n vColor.a == 0.0 ||\\n outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\\n ) discard;\\n\\n vec3 N = normalize(surfaceNormal);\\n vec3 V = normalize(eyeDirection);\\n vec3 L = normalize(lightDirection);\\n\\n if(gl_FrontFacing) {\\n N = -N;\\n }\\n\\n float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n //decide how to interpolate color \\u2014 in vertex or in fragment\\n vec4 surfaceColor =\\n step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\\n step(.5, vertexColor) * vColor;\\n\\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\\n\\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\\n}\\n\"]),s=a([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec4 uv;\\nattribute float f;\\n\\nuniform vec3 objectOffset;\\nuniform mat3 permutation;\\nuniform mat4 model, view, projection;\\nuniform float height, zOffset;\\nuniform sampler2D colormap;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\\nvarying vec4 vColor;\\n\\nvoid main() {\\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\\n worldCoordinate = objectOffset + dataCoordinate;\\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\\n\\n vec4 clipPosition = projection * view * worldPosition;\\n clipPosition.z += zOffset;\\n\\n gl_Position = clipPosition;\\n value = f + objectOffset.z;\\n kill = -1.0;\\n planeCoordinate = uv.zw;\\n\\n vColor = texture2D(colormap, vec2(value, value));\\n\\n //Don't do lighting for contours\\n surfaceNormal = vec3(1,0,0);\\n eyeDirection = vec3(0,1,0);\\n lightDirection = vec3(0,0,1);\\n}\\n\"]),l=a([\"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\"]);r.createShader=function(t){var e=n(t,i,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},r.createPickShader=function(t){var e=n(t,i,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},r.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},r.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}},{\"gl-shader\":307,glslify:408}],320:[function(t,e,r){\"use strict\";e.exports=function(t){var e=t.gl,r=y(e),n=b(e),s=x(e),l=_(e),c=a(e),u=i(e,[{buffer:c,size:4,stride:40,offset:0},{buffer:c,size:3,stride:40,offset:16},{buffer:c,size:3,stride:40,offset:28}]),h=a(e),f=i(e,[{buffer:h,size:4,stride:20,offset:0},{buffer:h,size:1,stride:20,offset:16}]),p=a(e),d=i(e,[{buffer:p,size:2,type:e.FLOAT}]),g=o(e,1,256,e.RGBA,e.UNSIGNED_BYTE);g.minFilter=e.LINEAR,g.magFilter=e.LINEAR;var m=new M(e,[0,0],[[0,0,0],[0,0,0]],r,n,c,u,g,s,l,h,f,p,d,[0,0,0]),v={levels:[[],[],[]]};for(var w in t)v[w]=t[w];return v.colormap=v.colormap||\"jet\",m.update(v),m};var n=t(\"bit-twiddle\"),a=t(\"gl-buffer\"),i=t(\"gl-vao\"),o=t(\"gl-texture2d\"),s=t(\"typedarray-pool\"),l=t(\"colormap\"),c=t(\"ndarray-ops\"),u=t(\"ndarray-pack\"),h=t(\"ndarray\"),f=t(\"surface-nets\"),p=t(\"gl-mat4/multiply\"),d=t(\"gl-mat4/invert\"),g=t(\"binary-search-bounds\"),m=t(\"ndarray-gradient\"),v=t(\"./lib/shaders\"),y=v.createShader,x=v.createContourShader,b=v.createPickShader,_=v.createPickContourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],k=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];function A(t,e,r,n,a){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=a}!function(){for(var t=0;t<3;++t){var e=k[t],r=(t+2)%3;e[(t+1)%3+0]=1,e[r+3]=1,e[t+6]=1}}();function M(t,e,r,n,a,i,o,l,c,u,f,p,d,g,m){this.gl=t,this.shape=e,this.bounds=r,this.objectOffset=m,this.intensityBounds=[],this._shader=n,this._pickShader=a,this._coordinateBuffer=i,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 A([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=g,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[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.opacityscale=!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 S=M.prototype;S.isTransparent=function(){return this.opacity<1||this.opacityscale},S.isOpaque=function(){if(this.opacityscale)return!1;if(this.opacity<1)return!1;if(this.opacity>=1)return!0;for(var t=0;t<3;++t)if(this._contourCounts[t].length>0)return!0;return!1},S.pickSlots=1,S.setPickBase=function(t){this.pickId=t};var E=[0,0,0],C={showSurface:!1,showContour:!1,projections:[w.slice(),w.slice(),w.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function L(t,e){var r,n,a,i=e.axes&&e.axes.lastCubeProps.axis||E,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=C.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[+(i[r]>0)][r],p(l,t.model,l);var c=C.clipBounds[r];for(a=0;a<2;++a)for(n=0;n<3;++n)c[a][n]=t.clipBounds[a][n];c[0][r]=-1e8,c[1][r]=1e8}return C.showSurface=o,C.showContour=s,C}var P={model:w,view:w,projection:w,inverseModel:w.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},I=w.slice(),z=[1,0,0,0,1,0,0,0,1];function O(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=P;n.model=t.model||w,n.view=t.view||w,n.projection=t.projection||w,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 a=0;a<2;++a)for(var i=n.clipBounds[a],o=0;o<3;++o)i[o]=Math.min(Math.max(this.clipBounds[a][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=z,n.vertexColor=this.vertexColor;var s=I;for(p(s,n.view,n.model),p(s,n.projection,s),d(s,s),a=0;a<3;++a)n.eyePosition[a]=s[12+a]/s[15];var l=s[15];for(a=0;a<3;++a)l+=this.lightPosition[a]*s[4*a+3];for(a=0;a<3;++a){var c=s[12+a];for(o=0;o<3;++o)c+=s[4*o+a]*this.lightPosition[o];n.lightPosition[a]=c/l}var u=L(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),a=0;a<3;++a)this.surfaceProject[a]&&this.vertexCount&&(this._shader.uniforms.model=u.projections[a],this._shader.uniforms.clipBounds=u.clipBounds[a],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(),a=0;a<3;++a)for(h.uniforms.permutation=k[a],r.lineWidth(this.contourWidth[a]*this.pixelRatio),o=0;o>4)/16)/255,a=Math.floor(n),i=n-a,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;a+=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?i:1-i,f=0;f<2;++f)for(var p=a+u,d=s+f,m=h*(f?l:1-l),v=0;v<3;++v)c[v]+=this._field[v].get(p,d)*m;for(var y=this._pickResult.level,x=0;x<3;++x)if(y[x]=g.le(this.contourLevels[x],c[x]),y[x]<0)this.contourLevels[x].length>0&&(y[x]=0);else if(y[x]Math.abs(_-c[x])&&(y[x]+=1)}for(r.index[0]=i<.5?a:a+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1],v=0;v<3;++v)r.dataCoordinate[v]=this._field[v].get(r.index[0],r.index[1]);return r},S.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))},S.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,\"contourWidth\"in t&&(this.contourWidth=R(t.contourWidth,Number)),\"showContour\"in t&&(this.showContour=R(t.showContour,Boolean)),\"showSurface\"in t&&(this.showSurface=!!t.showSurface),\"contourTint\"in t&&(this.contourTint=R(t.contourTint,Boolean)),\"contourColor\"in t&&(this.contourColor=B(t.contourColor)),\"contourProject\"in t&&(this.contourProject=R(t.contourProject,(function(t){return R(t,Boolean)}))),\"surfaceProject\"in t&&(this.surfaceProject=t.surfaceProject),\"dynamicColor\"in t&&(this.dynamicColor=B(t.dynamicColor)),\"dynamicTint\"in t&&(this.dynamicTint=R(t.dynamicTint,Number)),\"dynamicWidth\"in t&&(this.dynamicWidth=R(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);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 a=(e.shape[0]+2)*(e.shape[1]+2);a>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(a))),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 i=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,[i[0]+2,i[1]+2]);if(t.coords){var p=t.coords;if(!Array.isArray(p)||3!==p.length)throw new Error(\"gl-surface: invalid coordinates for x/y\");for(o=0;o<2;++o){var d=p[o];for(b=0;b<2;++b)if(d.shape[b]!==i[b])throw new Error(\"gl-surface: coords have incorrect shape\");this.padField(this._field[o],d)}}else if(t.ticks){var g=t.ticks;if(!Array.isArray(g)||2!==g.length)throw new Error(\"gl-surface: invalid ticks\");for(o=0;o<2;++o){var v=g[o];if((Array.isArray(v)||v.length)&&(v=h(v)),v.shape[0]!==i[o])throw new Error(\"gl-surface: invalid tick length\");var y=h(v.data,i);y.stride[o]=v.stride[0],y.stride[1^o]=0,this.padField(this._field[o],y)}}else{for(o=0;o<2;++o){var x=[0,0];x[o]=1,this._field[o]=h(this._field[o].data,[i[0]+2,i[1]+2],x,0)}this._field[0].set(0,0,0);for(var b=0;b0){for(var wt=0;wt<5;++wt)et.pop();H-=1}continue t}et.push(ot[0],ot[1],ct[0],ct[1],ot[2]),H+=1}}it.push(H)}this._contourOffsets[rt]=at,this._contourCounts[rt]=it}var Tt=s.mallocFloat(et.length);for(o=0;ot&&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}(r/255,e):1;return[t[0],t[1],t[2],255*n]}))]);return c.divseq(r,255),r}(t.colormap,this.opacityscale))},S.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var t=0;t<3;++t)s.freeFloat(this._field[t].data)},S.highlight=function(t){var e,r;if(!t)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],void(this.highlightLevel=[-1,-1,-1]);for(e=0;e<3;++e)this.enableHighlight[e]?this.highlightLevel[e]=t.level[e]:this.highlightLevel[e]=-1;for(r=this.snapToData?t.dataCoordinate:t.position,e=0;e<3;++e)r[e]-=this.objectOffset[e];if(this.enableDynamic[0]&&r[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&r[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&r[2]!==this.dynamicLevel[2]){for(var n=0,a=this.shape,i=s.mallocFloat(12*a[0]*a[1]),o=0;o<3;++o)if(this.enableDynamic[o]){this.dynamicLevel[o]=r[o];var l=(o+1)%3,c=(o+2)%3,u=this._field[o],h=this._field[l],p=this._field[c],d=f(u,r[o]),g=d.cells,m=d.positions;for(this._dynamicOffsets[o]=n,e=0;e 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=a(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),T.normalViewport&&(this.viewport.y=this.canvas.height-this.viewport.y-this.viewport.height),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&(\"number\"==typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||t.font||(t.font=T.baseFontSize+\"px sans-serif\");var r,i=!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 t=n.parse(n.stringify(t));var a=n.stringify({size:T.baseFontSize,family:t.family,stretch:_?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),s=p(t.size),l=Math.round(s[0]*d(s[1]));if(l!==e.fontSize[r]&&(o=!0,e.fontSize[r]=l),!(e.font[r]&&a==e.font[r].baseString||(i=!0,e.font[r]=T.fonts[a],e.font[r]))){var c=t.family.join(\", \"),u=[t.style];t.style!=t.variant&&u.push(t.variant),t.variant!=t.weight&&u.push(t.weight),_&&t.weight!=t.stretch&&u.push(t.stretch),e.font[r]={baseString:a,family:c,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:v(c,{origin:\"top\",fontSize:T.baseFontSize,fontStyle:u.join(\" \")})},T.fonts[a]=e.font[r]}})),(i||o)&&this.font.forEach((function(r,a){var i=n.stringify({size:e.fontSize[a],family:r.family,stretch:_?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(e.fontAtlas[a]=e.shader.atlas[i],!e.fontAtlas[a]){var o=r.metrics;e.shader.atlas[i]=e.fontAtlas[a]={fontString:i,step:2*Math.ceil(e.fontSize[a]*o.bottom*.5),em:e.fontSize[a],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,a=0;return a+=.5*n.bottom,a+=\"number\"==typeof t?t-n.baseline:-n[t],T.normalViewport||(a*=-1),a}))),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 Y=(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 J=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(J);for(var K=0;K1?this.counts[K]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[K]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*K,4*K+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[K]:this.opacity,baseline:null!=this.baselineOffset[K]?this.baselineOffset[K]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[K]?this.alignOffset[K]:this.alignOffset[0]:0,atlas:this.fontAtlas[K]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*K,2*K+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.normalViewport=!1,T.maxAtlasSize=1024,T.atlasCanvas=document.createElement(\"canvas\"),T.atlasContext=T.atlasCanvas.getContext(\"2d\",{alpha:!1}),T.baseFontSize=64,T.fonts={},e.exports=T},{\"bit-twiddle\":95,\"color-normalize\":122,\"css-font\":141,\"detect-kerning\":167,\"es6-weak-map\":228,\"flatten-vertex-data\":239,\"font-atlas\":240,\"font-measure\":241,\"gl-util/context\":323,\"is-plain-obj\":422,\"object-assign\":452,\"parse-rect\":457,\"parse-unit\":459,\"pick-by-alias\":463,regl:492,\"to-px\":530,\"typedarray-pool\":547}],322:[function(t,e,r){\"use strict\";var n=t(\"ndarray\"),a=t(\"ndarray-ops\"),i=t(\"typedarray-pool\");e.exports=function(t){if(arguments.length<=1)throw new Error(\"gl-texture2d: Missing arguments for texture2d constructor\");o||c(t);if(\"number\"==typeof arguments[1])return v(t,arguments[1],arguments[2],arguments[3]||t.RGBA,arguments[4]||t.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return v(t,0|arguments[1][0],0|arguments[1][1],arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(\"object\"==typeof arguments[1]){var e=arguments[1],r=u(e)?e:e.raw;if(r)return y(t,r,0|e.width,0|e.height,arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(e.shape&&e.data&&e.stride)return x(t,e)}throw new Error(\"gl-texture2d: Invalid arguments for texture2d constructor\")};var o=null,s=null,l=null;function c(t){o=[t.LINEAR,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_NEAREST],s=[t.NEAREST,t.LINEAR,t.NEAREST_MIPMAP_NEAREST,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_LINEAR],l=[t.REPEAT,t.CLAMP_TO_EDGE,t.MIRRORED_REPEAT]}function u(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 h=function(t,e){a.muls(t,e,255)};function f(t,e,r){var n=t.gl,a=n.getParameter(n.MAX_TEXTURE_SIZE);if(e<0||e>a||r<0||r>a)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 p(t,e,r,n,a,i){this.gl=t,this.handle=e,this.format=a,this.type=i,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 d=p.prototype;function g(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 v(t,e,r,n,a){var i=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>i||r<0||r>i)throw new Error(\"gl-texture2d: Invalid texture shape\");if(a===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,a,null),new p(t,o,e,r,n,a)}function y(t,e,r,n,a,i){var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,a,a,i,e),new p(t,o,r,n,a,i)}function x(t,e){var r=e.dtype,o=e.shape.slice(),s=t.getParameter(t.MAX_TEXTURE_SIZE);if(o[0]<0||o[0]>s||o[1]<0||o[1]>s)throw new Error(\"gl-texture2d: Invalid texture size\");var l=g(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 u,f,d=0;if(2===o.length)d=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])d=t.ALPHA;else if(2===o[2])d=t.LUMINANCE_ALPHA;else if(3===o[2])d=t.RGB;else{if(4!==o[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");d=t.RGBA}}c!==t.FLOAT||t.getExtension(\"OES_texture_float\")||(c=t.UNSIGNED_BYTE,l=!1);var v=e.size;if(l)u=0===e.offset&&e.data.length===v?e.data:e.data.subarray(e.offset,e.offset+v);else{var y=[o[2],o[2]*o[0],1];f=i.malloc(v,r);var x=n(f,o,y,0);\"float32\"!==r&&\"float64\"!==r||c!==t.UNSIGNED_BYTE?a.assign(x,e):h(x,e),u=f.subarray(0,v)}var b=m(t);return t.texImage2D(t.TEXTURE_2D,0,d,o[0],o[1],0,d,c,u),l||i.free(f),new p(t,b,o[0],o[1],d,c)}Object.defineProperties(d,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var 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 f(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return f(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,f(this,this._shape[0],t),t}}}),d.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},d.dispose=function(){this.gl.deleteTexture(this.handle)},d.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},d.setPixels=function(t,e,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=u(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,u){var f=u.dtype,p=u.shape.slice();if(p.length<2||p.length>3)throw new Error(\"gl-texture2d: Invalid ndarray, must be 2d or 3d\");var d=0,m=0,v=g(p,u.stride.slice());\"float32\"===f?d=t.FLOAT:\"float64\"===f?(d=t.FLOAT,v=!1,f=\"float32\"):\"uint8\"===f?d=t.UNSIGNED_BYTE:(d=t.UNSIGNED_BYTE,v=!1,f=\"uint8\");if(2===p.length)m=t.LUMINANCE,p=[p[0],p[1],1],u=n(u.data,p,[u.stride[0],u.stride[1],1],u.offset);else{if(3!==p.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===p[2])m=t.ALPHA;else if(2===p[2])m=t.LUMINANCE_ALPHA;else if(3===p[2])m=t.RGB;else{if(4!==p[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");m=t.RGBA}p[2]}m!==t.LUMINANCE&&m!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(m=s);if(m!==s)throw new Error(\"gl-texture2d: Incompatible texture format for setPixels\");var y=u.size,x=c.indexOf(o)<0;x&&c.push(o);if(d===l&&v)0===u.offset&&u.data.length===y?x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data):x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data.subarray(u.offset,u.offset+y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data.subarray(u.offset,u.offset+y));else{var b;b=l===t.FLOAT?i.mallocFloat32(y):i.mallocUint8(y);var _=n(b,p,[p[2],p[2]*p[0],1]);d===t.FLOAT&&l===t.UNSIGNED_BYTE?h(_,u):a.assign(_,u),x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,b.subarray(0,y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,b.subarray(0,y)),l===t.FLOAT?i.freeFloat32(b):i.freeUint8(b)}}(s,e,r,o,this.format,this.type,this._mipLevels,t)}}},{ndarray:448,\"ndarray-ops\":443,\"typedarray-pool\":547}],323:[function(t,e,r){(function(r){\"use strict\";var n=t(\"pick-by-alias\");function a(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*r.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*r.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 i(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}e.exports=function(t){var e;if(t?\"string\"==typeof t&&(t={container:t}):t={},i(t)?t={container:t}: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),t.pixelRatio||(t.pixelRatio=r.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}i(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),a(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),a(t)}if(!t.gl)try{t.gl=t.canvas.getContext(\"webgl\",t.attrs)}catch(e){try{t.gl=t.canvas.getContext(\"experimental-webgl\",t.attrs)}catch(e){t.gl=t.canvas.getContext(\"webgl-experimental\",t.attrs)}}return t.gl}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"pick-by-alias\":463}],324:[function(t,e,r){\"use strict\";e.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 a=0;a1?0:Math.acos(s)};var n=t(\"./fromValues\"),a=t(\"./normalize\"),i=t(\"./dot\")},{\"./dot\":339,\"./fromValues\":345,\"./normalize\":356}],330:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},{}],331:[function(t,e,r){e.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},{}],332:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},{}],333:[function(t,e,r){e.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},{}],334:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*o,t}},{}],335:[function(t,e,r){e.exports=t(\"./distance\")},{\"./distance\":336}],336:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return Math.sqrt(r*r+n*n+a*a)}},{}],337:[function(t,e,r){e.exports=t(\"./divide\")},{\"./divide\":338}],338:[function(t,e,r){e.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}},{}],339:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},{}],340:[function(t,e,r){e.exports=1e-6},{}],341:[function(t,e,r){e.exports=function(t,e){var r=t[0],a=t[1],i=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(a-s)<=n*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(i-l)<=n*Math.max(1,Math.abs(i),Math.abs(l))};var n=t(\"./epsilon\")},{\"./epsilon\":340}],342:[function(t,e,r){e.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},{}],343:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},{}],344:[function(t,e,r){e.exports=function(t,e,r,a,i,o){var s,l;e||(e=3);r||(r=0);l=a?Math.min(a*e+r,t.length):t.length;for(s=r;s0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i);return t}},{}],357:[function(t,e,r){e.exports=function(t,e){e=e||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,a=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*a,t[1]=Math.sin(r)*a,t[2]=n*e,t}},{}],358:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[1],i=r[2],o=e[1]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=e[0],t[1]=a+o*c-s*l,t[2]=i+o*l+s*c,t}},{}],359:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[2],o=e[0]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+s*l+o*c,t[1]=e[1],t[2]=i+s*c-o*l,t}},{}],360:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[1],o=e[0]-a,s=e[1]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+o*c-s*l,t[1]=i+o*l+s*c,t[2]=e[2],t}},{}],361:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},{}],362:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}},{}],363:[function(t,e,r){e.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}},{}],364:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}},{}],365:[function(t,e,r){e.exports=t(\"./squaredDistance\")},{\"./squaredDistance\":367}],366:[function(t,e,r){e.exports=t(\"./squaredLength\")},{\"./squaredLength\":368}],367:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return r*r+n*n+a*a}},{}],368:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}},{}],369:[function(t,e,r){e.exports=t(\"./subtract\")},{\"./subtract\":370}],370:[function(t,e,r){e.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}},{}],371:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2];return t[0]=n*r[0]+a*r[3]+i*r[6],t[1]=n*r[1]+a*r[4]+i*r[7],t[2]=n*r[2]+a*r[5]+i*r[8],t}},{}],372:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[3]*n+r[7]*a+r[11]*i+r[15];return o=o||1,t[0]=(r[0]*n+r[4]*a+r[8]*i+r[12])/o,t[1]=(r[1]*n+r[5]*a+r[9]*i+r[13])/o,t[2]=(r[2]*n+r[6]*a+r[10]*i+r[14])/o,t}},{}],373:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;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}},{}],374:[function(t,e,r){e.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}},{}],375:[function(t,e,r){e.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}},{}],376:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},{}],377:[function(t,e,r){e.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},{}],378:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return Math.sqrt(r*r+n*n+a*a+i*i)}},{}],379:[function(t,e,r){e.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}},{}],380:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},{}],381:[function(t,e,r){e.exports=function(t,e,r,n){var a=new Float32Array(4);return a[0]=t,a[1]=e,a[2]=r,a[3]=n,a}},{}],382:[function(t,e,r){e.exports={create:t(\"./create\"),clone:t(\"./clone\"),fromValues:t(\"./fromValues\"),copy:t(\"./copy\"),set:t(\"./set\"),add:t(\"./add\"),subtract:t(\"./subtract\"),multiply:t(\"./multiply\"),divide:t(\"./divide\"),min:t(\"./min\"),max:t(\"./max\"),scale:t(\"./scale\"),scaleAndAdd:t(\"./scaleAndAdd\"),distance:t(\"./distance\"),squaredDistance:t(\"./squaredDistance\"),length:t(\"./length\"),squaredLength:t(\"./squaredLength\"),negate:t(\"./negate\"),inverse:t(\"./inverse\"),normalize:t(\"./normalize\"),dot:t(\"./dot\"),lerp:t(\"./lerp\"),random:t(\"./random\"),transformMat4:t(\"./transformMat4\"),transformQuat:t(\"./transformQuat\")}},{\"./add\":374,\"./clone\":375,\"./copy\":376,\"./create\":377,\"./distance\":378,\"./divide\":379,\"./dot\":380,\"./fromValues\":381,\"./inverse\":383,\"./length\":384,\"./lerp\":385,\"./max\":386,\"./min\":387,\"./multiply\":388,\"./negate\":389,\"./normalize\":390,\"./random\":391,\"./scale\":392,\"./scaleAndAdd\":393,\"./set\":394,\"./squaredDistance\":395,\"./squaredLength\":396,\"./subtract\":397,\"./transformMat4\":398,\"./transformQuat\":399}],383:[function(t,e,r){e.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}},{}],384:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return Math.sqrt(e*e+r*r+n*n+a*a)}},{}],385:[function(t,e,r){e.exports=function(t,e,r,n){var a=e[0],i=e[1],o=e[2],s=e[3];return t[0]=a+n*(r[0]-a),t[1]=i+n*(r[1]-i),t[2]=o+n*(r[2]-o),t[3]=s+n*(r[3]-s),t}},{}],386:[function(t,e,r){e.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}},{}],387:[function(t,e,r){e.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}},{}],388:[function(t,e,r){e.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}},{}],389:[function(t,e,r){e.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},{}],390:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=r*r+n*n+a*a+i*i;o>0&&(o=1/Math.sqrt(o),t[0]=r*o,t[1]=n*o,t[2]=a*o,t[3]=i*o);return t}},{}],391:[function(t,e,r){var n=t(\"./normalize\"),a=t(\"./scale\");e.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),a(t,t,e),t}},{\"./normalize\":390,\"./scale\":392}],392:[function(t,e,r){e.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}},{}],393:[function(t,e,r){e.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}},{}],394:[function(t,e,r){e.exports=function(t,e,r,n,a){return t[0]=e,t[1]=r,t[2]=n,t[3]=a,t}},{}],395:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return r*r+n*n+a*a+i*i}},{}],396:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return e*e+r*r+n*n+a*a}},{}],397:[function(t,e,r){e.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}},{}],398:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}},{}],399:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;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}},{}],400:[function(t,e,r){var n=t(\"glsl-tokenizer\"),a=t(\"atob-lite\");e.exports=function(t){for(var e=Array.isArray(t)?t:n(t),r=0;r0)continue;r=t.slice(0,1).join(\"\")}return A(r),v+=r.length,(p=p.slice(r.length)).length}}function I(){return/[^a-fA-F0-9]/.test(e)?(A(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function z(){return\".\"===e||/[eE]/.test(e)?(p.push(e),f=5,r=e,u+1):\"x\"===e&&1===p.length&&\"0\"===p[0]?(f=11,p.push(e),r=e,u+1):/[^\\d]/.test(e)?(A(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function O(){return\"f\"===e&&(p.push(e),r=e,u+=1),/[eE]/.test(e)?(p.push(e),r=e,u+1):(\"-\"!==e&&\"+\"!==e||!/[eE]/.test(r))&&/[^\\d]/.test(e)?(A(p.join(\"\")),f=999,u):(p.push(e),r=e,u+1)}function D(){if(/[^\\d\\w_]/.test(e)){var t=p.join(\"\");return f=k[t]?8:T[t]?7:6,A(p.join(\"\")),f=999,u}return p.push(e),r=e,u+1}};var n=t(\"./lib/literals\"),a=t(\"./lib/operators\"),i=t(\"./lib/builtins\"),o=t(\"./lib/literals-300es\"),s=t(\"./lib/builtins-300es\"),l=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"]},{\"./lib/builtins\":403,\"./lib/builtins-300es\":402,\"./lib/literals\":405,\"./lib/literals-300es\":404,\"./lib/operators\":406}],402:[function(t,e,r){var n=t(\"./builtins\");n=n.slice().filter((function(t){return!/^(gl\\_|texture)/.test(t)})),e.exports=n.concat([\"gl_VertexID\",\"gl_InstanceID\",\"gl_Position\",\"gl_PointSize\",\"gl_FragCoord\",\"gl_FrontFacing\",\"gl_FragDepth\",\"gl_PointCoord\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexUniformVectors\",\"gl_MaxVertexOutputVectors\",\"gl_MaxFragmentInputVectors\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxTextureImageUnits\",\"gl_MaxFragmentUniformVectors\",\"gl_MaxDrawBuffers\",\"gl_MinProgramTexelOffset\",\"gl_MaxProgramTexelOffset\",\"gl_DepthRangeParameters\",\"gl_DepthRange\",\"trunc\",\"round\",\"roundEven\",\"isnan\",\"isinf\",\"floatBitsToInt\",\"floatBitsToUint\",\"intBitsToFloat\",\"uintBitsToFloat\",\"packSnorm2x16\",\"unpackSnorm2x16\",\"packUnorm2x16\",\"unpackUnorm2x16\",\"packHalf2x16\",\"unpackHalf2x16\",\"outerProduct\",\"transpose\",\"determinant\",\"inverse\",\"texture\",\"textureSize\",\"textureProj\",\"textureLod\",\"textureOffset\",\"texelFetch\",\"texelFetchOffset\",\"textureProjOffset\",\"textureLodOffset\",\"textureProjLod\",\"textureProjLodOffset\",\"textureGrad\",\"textureGradOffset\",\"textureProjGrad\",\"textureProjGradOffset\"])},{\"./builtins\":403}],403:[function(t,e,r){e.exports=[\"abs\",\"acos\",\"all\",\"any\",\"asin\",\"atan\",\"ceil\",\"clamp\",\"cos\",\"cross\",\"dFdx\",\"dFdy\",\"degrees\",\"distance\",\"dot\",\"equal\",\"exp\",\"exp2\",\"faceforward\",\"floor\",\"fract\",\"gl_BackColor\",\"gl_BackLightModelProduct\",\"gl_BackLightProduct\",\"gl_BackMaterial\",\"gl_BackSecondaryColor\",\"gl_ClipPlane\",\"gl_ClipVertex\",\"gl_Color\",\"gl_DepthRange\",\"gl_DepthRangeParameters\",\"gl_EyePlaneQ\",\"gl_EyePlaneR\",\"gl_EyePlaneS\",\"gl_EyePlaneT\",\"gl_Fog\",\"gl_FogCoord\",\"gl_FogFragCoord\",\"gl_FogParameters\",\"gl_FragColor\",\"gl_FragCoord\",\"gl_FragData\",\"gl_FragDepth\",\"gl_FragDepthEXT\",\"gl_FrontColor\",\"gl_FrontFacing\",\"gl_FrontLightModelProduct\",\"gl_FrontLightProduct\",\"gl_FrontMaterial\",\"gl_FrontSecondaryColor\",\"gl_LightModel\",\"gl_LightModelParameters\",\"gl_LightModelProducts\",\"gl_LightProducts\",\"gl_LightSource\",\"gl_LightSourceParameters\",\"gl_MaterialParameters\",\"gl_MaxClipPlanes\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxDrawBuffers\",\"gl_MaxFragmentUniformComponents\",\"gl_MaxLights\",\"gl_MaxTextureCoords\",\"gl_MaxTextureImageUnits\",\"gl_MaxTextureUnits\",\"gl_MaxVaryingFloats\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxVertexUniformComponents\",\"gl_ModelViewMatrix\",\"gl_ModelViewMatrixInverse\",\"gl_ModelViewMatrixInverseTranspose\",\"gl_ModelViewMatrixTranspose\",\"gl_ModelViewProjectionMatrix\",\"gl_ModelViewProjectionMatrixInverse\",\"gl_ModelViewProjectionMatrixInverseTranspose\",\"gl_ModelViewProjectionMatrixTranspose\",\"gl_MultiTexCoord0\",\"gl_MultiTexCoord1\",\"gl_MultiTexCoord2\",\"gl_MultiTexCoord3\",\"gl_MultiTexCoord4\",\"gl_MultiTexCoord5\",\"gl_MultiTexCoord6\",\"gl_MultiTexCoord7\",\"gl_Normal\",\"gl_NormalMatrix\",\"gl_NormalScale\",\"gl_ObjectPlaneQ\",\"gl_ObjectPlaneR\",\"gl_ObjectPlaneS\",\"gl_ObjectPlaneT\",\"gl_Point\",\"gl_PointCoord\",\"gl_PointParameters\",\"gl_PointSize\",\"gl_Position\",\"gl_ProjectionMatrix\",\"gl_ProjectionMatrixInverse\",\"gl_ProjectionMatrixInverseTranspose\",\"gl_ProjectionMatrixTranspose\",\"gl_SecondaryColor\",\"gl_TexCoord\",\"gl_TextureEnvColor\",\"gl_TextureMatrix\",\"gl_TextureMatrixInverse\",\"gl_TextureMatrixInverseTranspose\",\"gl_TextureMatrixTranspose\",\"gl_Vertex\",\"greaterThan\",\"greaterThanEqual\",\"inversesqrt\",\"length\",\"lessThan\",\"lessThanEqual\",\"log\",\"log2\",\"matrixCompMult\",\"max\",\"min\",\"mix\",\"mod\",\"normalize\",\"not\",\"notEqual\",\"pow\",\"radians\",\"reflect\",\"refract\",\"sign\",\"sin\",\"smoothstep\",\"sqrt\",\"step\",\"tan\",\"texture2D\",\"texture2DLod\",\"texture2DProj\",\"texture2DProjLod\",\"textureCube\",\"textureCubeLod\",\"texture2DLodEXT\",\"texture2DProjLodEXT\",\"textureCubeLodEXT\",\"texture2DGradEXT\",\"texture2DProjGradEXT\",\"textureCubeGradEXT\"]},{}],404:[function(t,e,r){var n=t(\"./literals\");e.exports=n.slice().concat([\"layout\",\"centroid\",\"smooth\",\"case\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"uvec2\",\"uvec3\",\"uvec4\",\"samplerCubeShadow\",\"sampler2DArray\",\"sampler2DArrayShadow\",\"isampler2D\",\"isampler3D\",\"isamplerCube\",\"isampler2DArray\",\"usampler2D\",\"usampler3D\",\"usamplerCube\",\"usampler2DArray\",\"coherent\",\"restrict\",\"readonly\",\"writeonly\",\"resource\",\"atomic_uint\",\"noperspective\",\"patch\",\"sample\",\"subroutine\",\"common\",\"partition\",\"active\",\"filter\",\"image1D\",\"image2D\",\"image3D\",\"imageCube\",\"iimage1D\",\"iimage2D\",\"iimage3D\",\"iimageCube\",\"uimage1D\",\"uimage2D\",\"uimage3D\",\"uimageCube\",\"image1DArray\",\"image2DArray\",\"iimage1DArray\",\"iimage2DArray\",\"uimage1DArray\",\"uimage2DArray\",\"image1DShadow\",\"image2DShadow\",\"image1DArrayShadow\",\"image2DArrayShadow\",\"imageBuffer\",\"iimageBuffer\",\"uimageBuffer\",\"sampler1DArray\",\"sampler1DArrayShadow\",\"isampler1D\",\"isampler1DArray\",\"usampler1D\",\"usampler1DArray\",\"isampler2DRect\",\"usampler2DRect\",\"samplerBuffer\",\"isamplerBuffer\",\"usamplerBuffer\",\"sampler2DMS\",\"isampler2DMS\",\"usampler2DMS\",\"sampler2DMSArray\",\"isampler2DMSArray\",\"usampler2DMSArray\"])},{\"./literals\":405}],405:[function(t,e,r){e.exports=[\"precision\",\"highp\",\"mediump\",\"lowp\",\"attribute\",\"const\",\"uniform\",\"varying\",\"break\",\"continue\",\"do\",\"for\",\"while\",\"if\",\"else\",\"in\",\"out\",\"inout\",\"float\",\"int\",\"uint\",\"void\",\"bool\",\"true\",\"false\",\"discard\",\"return\",\"mat2\",\"mat3\",\"mat4\",\"vec2\",\"vec3\",\"vec4\",\"ivec2\",\"ivec3\",\"ivec4\",\"bvec2\",\"bvec3\",\"bvec4\",\"sampler1D\",\"sampler2D\",\"sampler3D\",\"samplerCube\",\"sampler1DShadow\",\"sampler2DShadow\",\"struct\",\"asm\",\"class\",\"union\",\"enum\",\"typedef\",\"template\",\"this\",\"packed\",\"goto\",\"switch\",\"default\",\"inline\",\"noinline\",\"volatile\",\"public\",\"static\",\"extern\",\"external\",\"interface\",\"long\",\"short\",\"double\",\"half\",\"fixed\",\"unsigned\",\"input\",\"output\",\"hvec2\",\"hvec3\",\"hvec4\",\"dvec2\",\"dvec3\",\"dvec4\",\"fvec2\",\"fvec3\",\"fvec4\",\"sampler2DRect\",\"sampler3DRect\",\"sampler2DRectShadow\",\"sizeof\",\"cast\",\"namespace\",\"using\"]},{}],406:[function(t,e,r){e.exports=[\"<<=\",\">>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"]},{}],407:[function(t,e,r){var n=t(\"./index\");e.exports=function(t,e){var r=n(e),a=[];return a=(a=a.concat(r(t))).concat(r(null))}},{\"./index\":401}],408:[function(t,e,r){e.exports=function(t){\"string\"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},r.write=function(t,e,r,n,a,i){var o,s,l,c=8*i-a-1,u=(1<>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+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,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g}},{}],412:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=t.length;if(0===r)throw new Error(\"Must have at least d+1 points\");var a=t[0].length;if(r<=a)throw new Error(\"Must input at least d+1 points\");var o=t.slice(0,a+1),s=n.apply(void 0,o);if(0===s)throw new Error(\"Input not in general position\");for(var l=new Array(a+1),u=0;u<=a;++u)l[u]=u;s<0&&(l[0]=1,l[1]=0);var h=new i(l,new Array(a+1),!1),f=h.adjacent,p=new Array(a+2);for(u=0;u<=a;++u){for(var d=l.slice(),g=0;g<=a;++g)g===u&&(d[g]=-1);var m=d[0];d[0]=d[1],d[1]=m;var v=new i(d,new Array(a+1),!0);f[u]=v,p[u]=v}p[a+1]=h;for(u=0;u<=a;++u){d=f[u].vertices;var y=f[u].adjacent;for(g=0;g<=a;++g){var x=d[g];if(x<0)y[g]=h;else for(var b=0;b<=a;++b)f[b].vertices.indexOf(x)<0&&(y[g]=f[b])}}var _=new c(a,o,p),w=!!e;for(u=a+1;u0&&e.push(\",\"),e.push(\"tuple[\",r,\"]\");e.push(\")}return orient\");var a=new Function(\"test\",e.join(\"\")),i=n[t+1];return i||(i=n),a(i)}(t)),this.orient=i}var u=c.prototype;u.handleBoundaryDegeneracy=function(t,e){var r=this.dimension,n=this.vertices.length-1,a=this.tuple,i=this.vertices,o=[t];for(t.lastVisited=-n;o.length>0;){(t=o.pop()).vertices;for(var s=t.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];a[h]=f<0?e:i[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,a=this.vertices,i=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)i[u]=a[l[u]];s.lastVisited=r;for(u=0;u<=n;++u){var h=c[u];if(!(h.lastVisited>=r)){var f=i[u];i[u]=t;var p=this.orient();if(i[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,a=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,g=p.indexOf(r);if(!(g<0))for(var m=0;m<=n;++m)if(m!==g){var v=d[m];if(v.boundary&&!(v.lastVisited>=r)){var y=v.vertices;if(v.lastVisited!==-r){for(var x=0,b=0;b<=n;++b)y[b]<0?(x=b,l[b]=t):l[b]=a[y[b]];if(this.orient()>0){y[x]=r,v.boundary=!1,c.push(v),h.push(v),v.lastVisited=r;continue}v.lastVisited=-r}var _=v.adjacent,w=p.slice(),T=d.slice(),k=new i(w,T,!0);u.push(k);var A=_.indexOf(e);if(!(A<0)){_[A]=k,T[g]=v,w[m]=-1,T[m]=e,d[m]=k,k.flip();for(b=0;b<=n;++b){var M=w[b];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===b||(S[E++]=L)}f.push(new o(S,k,b))}}}}}}f.sort(s);for(m=0;m+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}},{\"robust-orientation\":500,\"simplicial-complex\":510}],413:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\");function a(t,e,r,n,a){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=a,this.count=(e?e.count:0)+(r?r.count:0)+n.length}e.exports=function(t){if(!t||0===t.length)return new v(null);return new v(m(t))};var i=a.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=m(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 a=r(t[n]);if(a)return a}}function f(t,e){for(var r=0;r>1],i=[],o=[],s=[];for(r=0;r3*(e+1)?l(this,t):this.left.insert(t):this.left=m([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=m([t]);else{var r=n.ge(this.leftPoints,t,d),a=n.ge(this.rightPoints,t,g);this.leftPoints.splice(r,0,t),this.rightPoints.splice(a,0,t)}},i.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,a=this.left;a.right;)r=a,a=a.right;if(r===this)a.right=this.right;else{var i=this.left,s=this.right;r.count-=a.count,r.right=a.left,a.left=i,a.right=s}o(this,a),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(i=n.ge(this.leftPoints,t,d);ithis.mid){var r;if(this.right)if(r=this.right.queryPoint(t,e))return r;return h(this.rightPoints,t,e)}return f(this.leftPoints,e)},i.queryInterval=function(t,e,r){var n;if(tthis.mid&&this.right&&(n=this.right.queryInterval(t,e,r)))return n;return ethis.mid?h(this.rightPoints,t,r):f(this.leftPoints,r)};var y=v.prototype;y.insert=function(t){this.root?this.root.insert(t):this.root=new a(t[0],null,null,[t],[t])},y.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},y.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},y.queryInterval=function(t,e,r){if(t<=e&&this.root)return this.root.queryInterval(t,e,r)},Object.defineProperty(y,\"count\",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(y,\"intervals\",{get:function(){return this.root?this.root.intervals([]):[]}})},{\"binary-search-bounds\":414}],414:[function(t,e,r){arguments[4][238][0].apply(r,arguments)},{dup:238}],415:[function(t,e,r){\"use strict\";e.exports=function(t,e){e=e||new Array(t.length);for(var r=0;r\n", " * @license MIT\n", " */\n", "e.exports=function(t){return null!=t&&(n(t)||function(t){return\"function\"==typeof t.readFloatLE&&\"function\"==typeof t.slice&&n(t.slice(0,0))}(t)||!!t._isBuffer)}},{}],419:[function(t,e,r){\"use strict\";e.exports=\"undefined\"!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\\//.test(navigator.appVersion))},{}],420:[function(t,e,r){\"use strict\";e.exports=i,e.exports.isMobile=i,e.exports.default=i;var n=/(android|bb\\d+|meego).+mobile|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|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,a=/(android|bb\\d+|meego).+mobile|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|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i;function i(t){t||(t={});var e=t.ua;if(e||\"undefined\"==typeof navigator||(e=navigator.userAgent),e&&e.headers&&\"string\"==typeof e.headers[\"user-agent\"]&&(e=e.headers[\"user-agent\"]),\"string\"!=typeof e)return!1;var r=t.tablet?a.test(e):n.test(e);return!r&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==e.indexOf(\"Macintosh\")&&-1!==e.indexOf(\"Safari\")&&(r=!0),r}},{}],421:[function(t,e,r){\"use strict\";e.exports=function(t){var e=typeof t;return null!==t&&(\"object\"===e||\"function\"===e)}},{}],422:[function(t,e,r){\"use strict\";var n=Object.prototype.toString;e.exports=function(t){var e;return\"[object Object]\"===n.call(t)&&(null===(e=Object.getPrototypeOf(t))||e===Object.getPrototypeOf({}))}},{}],423:[function(t,e,r){\"use strict\";e.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}},{}],424:[function(t,e,r){\"use strict\";e.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))}},{}],425:[function(t,e,r){e.exports=function(t,e,r){return t*(1-r)+e*r}},{}],426:[function(t,e,r){!function(t,n){\"object\"==typeof r&&\"undefined\"!=typeof e?e.exports=n():(t=t||self).mapboxgl=n()}(this,(function(){\"use strict\";var t,e,r;function n(n,a){if(t)if(e){var i=\"var sharedChunk = {}; (\"+t+\")(sharedChunk); (\"+e+\")(sharedChunk);\",o={};t(o),(r=a(o)).workerUrl=window.URL.createObjectURL(new Blob([i],{type:\"text/javascript\"}))}else e=a;else t=a}return n(0,(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var r=n;function n(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=n,this.p2x=r,this.p2y=n}n.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},n.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},n.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},n.prototype.solveCurveX=function(t,e){var r,n,a,i,o;for(void 0===e&&(e=1e-6),a=t,o=0;o<8;o++){if(i=this.sampleCurveX(a)-t,Math.abs(i)(n=1))return n;for(;ri?r=a:n=a,a=.5*(n-r)+r}return a},n.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=i;function i(t,e){this.x=t,this.y=e}function o(t,e,n,a){var i=new r(t,e,n,a);return function(t){return i.solve(t)}}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]*this.y,this.y=e,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=r*this.x+e*this.y;return this.x=e*this.x-r*this.y,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),a=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=e.x+r*(this.x-e.x)-n*(this.y-e.y),this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var s=o(.25,.1,.25,1);function l(t,e,r){return Math.min(r,Math.max(e,t))}function c(t,e,r){var n=r-e,a=((t-e)%n+n)%n+e;return a===e?r:a}function u(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,a=e;n>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function d(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 g(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function m(t,e){return-1!==t.indexOf(e,t.length-e.length)}function v(t,e,r){var n={};for(var a in t)n[a]=e.call(r||this,t[a],a,t);return n}function y(t,e,r){var n={};for(var a in t)e.call(r||this,t[a],a,t)&&(n[a]=t[a]);return n}function x(t){return Array.isArray(t)?t.map(x):\"object\"==typeof t&&t?v(t,x):t}var b={};function _(t){b[t]||(\"undefined\"!=typeof console&&console.warn(t),b[t]=!0)}function w(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function T(t){for(var e=0,r=0,n=t.length,a=n-1,i=void 0,o=void 0;r@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,(function(t,r,n,a){var i=n||a;return e[r]=!i||i.toLowerCase(),\"\"})),e[\"max-age\"]){var r=parseInt(e[\"max-age\"],10);isNaN(r)?delete e[\"max-age\"]:e[\"max-age\"]=r}return e}var M=null;function S(t){if(null==M){var 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}function E(t){try{var e=self[t];return e.setItem(\"_mapbox_test_\",1),e.removeItem(\"_mapbox_test_\"),!0}catch(t){return!1}}var C,L,P,I,z=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),O=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,D=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,R={now:z,frame:function(t){var e=O(t);return{cancel:function(){return D(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var r=self.document.createElement(\"canvas\"),n=r.getContext(\"2d\");if(!n)throw new Error(\"failed to create canvas 2d context\");return r.width=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 C||(C=self.document.createElement(\"a\")),C.href=t,C.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(null==L&&(L=self.matchMedia(\"(prefers-reduced-motion: reduce)\")),L.matches)}},F={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},B={supported:!1,testSupport:function(t){!N&&I&&(j?V(t):P=t)}},N=!1,j=!1;function V(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,I),t.isContextLost())return;B.supported=!0}catch(t){}t.deleteTexture(e),N=!0}self.document&&((I=self.document.createElement(\"img\")).onload=function(){P&&V(P),P=null,j=!0},I.onerror=function(){N=!0,P=null},I.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\");var U=\"01\",q=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function H(t){return 0===t.indexOf(\"mapbox:\")}q.prototype._createSkuToken=function(){var t=function(){for(var t=\"\",e=0;e<10;e++)t+=\"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"[Math.floor(62*Math.random())];return{token:[\"1\",U,t].join(\"\"),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},q.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},q.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},q.prototype.normalizeStyleURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/styles/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeGlyphsURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/fonts/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSourceURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=\"/v4/\"+r.authority+\".json\",r.params.push(\"secure\"),this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSpriteURL=function(t,e,r,n){var a=Z(t);return H(t)?(a.path=\"/styles/v1\"+a.path+\"/sprite\"+e+r,this._makeAPIURL(a,this._customAccessToken||n)):(a.path+=\"\"+e+r,X(a))},q.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!H(t))return t;var r=Z(t);r.path=r.path.replace(/(\\.(png|jpg)\\d*)(?=$)/,(R.devicePixelRatio>=2||512===e?\"@2x\":\"\")+(B.supported?\".webp\":\"$1\")),r.path=r.path.replace(/^.+\\/v4\\//,\"/\"),r.path=\"/v4\"+r.path;var n=this._customAccessToken||function(t){for(var e=0,r=t;e=1&&self.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(t){_(\"Unable to write to LocalStorage\")}},K.prototype.processRequests=function(t){},K.prototype.postEvent=function(t,e,r,n){var a=this;if(F.EVENTS_URL){var i=Z(F.EVENTS_URL);i.params.push(\"access_token=\"+(n||F.ACCESS_TOKEN||\"\"));var o={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:\"mapbox-gl-js\",sdkVersion:\"1.10.1\",skuId:U,userId:this.anonId},s=e?u(o,e):o,l={url:X(i),headers:{\"Content-Type\":\"text/plain\"},body:JSON.stringify([s])};this.pendingRequest=xt(l,(function(t){a.pendingRequest=null,r(t),a.saveEventData(),a.processRequests(n)}))}},K.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var Q,$,tt=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)).constructor=e,e.prototype.postMapLoadEvent=function(t,e,r,n){this.skuToken=r,(F.EVENTS_URL&&n||F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(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,a=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),d(this.anonId)||(this.anonId=p()),this.postEvent(a,{skuToken:this.skuToken},(function(t){t||n&&(e.success[n]=!0)}),t))}},e}(K),et=new(function(t){function e(e){t.call(this,\"appUserTurnstile\"),this._customAccessToken=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.postTurnstileEvent=function(t,e){F.EVENTS_URL&&F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(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=J(F.ACCESS_TOKEN),n=r?r.u:F.ACCESS_TOKEN,a=n!==this.eventData.tokenU;d(this.anonId)||(this.anonId=p(),a=!0);var i=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(i),l=(i-this.eventData.lastSuccess)/864e5;a=a||l>=1||l<-1||o.getDate()!==s.getDate()}else a=!0;if(!a)return this.processRequests();this.postEvent(i,{\"enabled.telemetry\":!1},(function(t){t||(e.eventData.lastSuccess=i,e.eventData.tokenU=n)}),t)}},e}(K)),rt=et.postTurnstileEvent.bind(et),nt=new tt,at=nt.postMapLoadEvent.bind(nt),it=500,ot=50;function st(){self.caches&&!Q&&(Q=self.caches.open(\"mapbox-tiles\"))}function lt(t){var e=t.indexOf(\"?\");return e<0?t:t.slice(0,e)}var ct,ut=1/0;function ht(){return null==ct&&(ct=self.OffscreenCanvas&&new self.OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof self.createImageBitmap),ct}var ft={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};\"function\"==typeof Object.freeze&&Object.freeze(ft);var pt,dt,gt=function(t){function e(e,r,n){401===r&&Y(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)).constructor=e,e.prototype.toString=function(){return this.name+\": \"+this.message+\" (\"+this.status+\"): \"+this.url},e}(Error),mt=k()?function(){return self.worker&&self.worker.referrer}:function(){return(\"blob:\"===self.location.protocol?self.parent:self).location.href},vt=function(t,e){if(!(/^file:/.test(r=t.url)||/^file:/.test(mt())&&!/^\\w+:/.test(r))){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty(\"signal\"))return function(t,e){var r,n=new self.AbortController,a=new self.Request(t.url,{method:t.method||\"GET\",body:t.body,credentials:t.credentials,headers:t.headers,referrer:mt(),signal:n.signal}),i=!1,o=!1,s=(r=a.url).indexOf(\"sku=\")>0&&Y(r);\"json\"===t.type&&a.headers.set(\"Accept\",\"application/json\");var l=function(r,n,i){if(!o){if(r&&\"SecurityError\"!==r.message&&_(r),n&&i)return c(n);var l=Date.now();self.fetch(a).then((function(r){if(r.ok){var n=s?r.clone():null;return c(r,n,l)}return e(new gt(r.statusText,r.status,t.url))})).catch((function(t){20!==t.code&&e(new Error(t.message))}))}},c=function(r,n,s){(\"arrayBuffer\"===t.type?r.arrayBuffer():\"json\"===t.type?r.json():r.text()).then((function(t){o||(n&&s&&function(t,e,r){if(st(),Q){var n={status:e.status,statusText:e.statusText,headers:new self.Headers};e.headers.forEach((function(t,e){return n.headers.set(e,t)}));var a=A(e.headers.get(\"Cache-Control\")||\"\");a[\"no-store\"]||(a[\"max-age\"]&&n.headers.set(\"Expires\",new Date(r+1e3*a[\"max-age\"]).toUTCString()),new Date(n.headers.get(\"Expires\")).getTime()-r<42e4||function(t,e){if(void 0===$)try{new Response(new ReadableStream),$=!0}catch(t){$=!1}$?e(t.body):t.blob().then(e)}(e,(function(e){var r=new self.Response(e,n);st(),Q&&Q.then((function(e){return e.put(lt(t.url),r)})).catch((function(t){return _(t.message)}))})))}}(a,n,s),i=!0,e(null,t,r.headers.get(\"Cache-Control\"),r.headers.get(\"Expires\")))})).catch((function(t){o||e(new Error(t.message))}))};return s?function(t,e){if(st(),!Q)return e(null);var r=lt(t.url);Q.then((function(t){t.match(r).then((function(n){var a=function(t){if(!t)return!1;var e=new Date(t.headers.get(\"Expires\")||0),r=A(t.headers.get(\"Cache-Control\")||\"\");return e>Date.now()&&!r[\"no-cache\"]}(n);t.delete(r),a&&t.put(r,n.clone()),e(null,n,a)})).catch(e)})).catch(e)}(a,l):l(null,null),{cancel:function(){o=!0,i||n.abort()}}}(t,e);if(k()&&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 self.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 gt(r.statusText,r.status,t.url))},r.send(t.body),{cancel:function(){return r.abort()}}}(t,e)},yt=function(t,e){return vt(u(t,{type:\"arrayBuffer\"}),e)},xt=function(t,e){return vt(u(t,{method:\"POST\"}),e)};pt=[],dt=0;var bt=function(t,e){if(B.supported&&(t.headers||(t.headers={}),t.headers.accept=\"image/webp,*/*\"),dt>=F.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:t,callback:e,cancelled:!1,cancel:function(){this.cancelled=!0}};return pt.push(r),r}dt++;var n=!1,a=function(){if(!n)for(n=!0,dt--;pt.length&&dt0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},At.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var Mt={$version:8,$root:{version:{required:!0,type:\"enum\",values:[8]},name:{type:\"string\"},metadata:{type:\"*\"},center:{type:\"array\",value:\"number\"},zoom:{type:\"number\"},bearing:{type:\"number\",default:0,period:360,units:\"degrees\"},pitch:{type:\"number\",default:0,units:\"degrees\"},light:{type:\"light\"},sources:{required:!0,type:\"sources\"},sprite:{type:\"string\"},glyphs:{type:\"string\"},transition:{type:\"transition\"},layers:{required:!0,type:\"array\",value:\"layer\"}},sources:{\"*\":{type:\"source\"}},source:[\"source_vector\",\"source_raster\",\"source_raster_dem\",\"source_geojson\",\"source_video\",\"source_image\"],source_vector:{type:{required:!0,type:\"enum\",values:{vector:{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:\"enum\",values:{xyz:{},tms:{}},default:\"xyz\"},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},attribution:{type:\"string\"},promoteId:{type:\"promoteId\"},\"*\":{type:\"*\"}},source_raster:{type:{required:!0,type:\"enum\",values:{raster:{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},tileSize:{type:\"number\",default:512,units:\"pixels\"},scheme:{type:\"enum\",values:{xyz:{},tms:{}},default:\"xyz\"},attribution:{type:\"string\"},\"*\":{type:\"*\"}},source_raster_dem:{type:{required:!0,type:\"enum\",values:{\"raster-dem\":{}}},url:{type:\"string\"},tiles:{type:\"array\",value:\"string\"},bounds:{type:\"array\",value:\"number\",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:\"number\",default:0},maxzoom:{type:\"number\",default:22},tileSize:{type:\"number\",default:512,units:\"pixels\"},attribution:{type:\"string\"},encoding:{type:\"enum\",values:{terrarium:{},mapbox:{}},default:\"mapbox\"},\"*\":{type:\"*\"}},source_geojson:{type:{required:!0,type:\"enum\",values:{geojson:{}}},data:{type:\"*\"},maxzoom:{type:\"number\",default:18},attribution:{type:\"string\"},buffer:{type:\"number\",default:128,maximum:512,minimum:0},tolerance:{type:\"number\",default:.375},cluster:{type:\"boolean\",default:!1},clusterRadius:{type:\"number\",default:50,minimum:0},clusterMaxZoom:{type:\"number\"},clusterProperties:{type:\"*\"},lineMetrics:{type:\"boolean\",default:!1},generateId:{type:\"boolean\",default:!1},promoteId:{type:\"promoteId\"}},source_video:{type:{required:!0,type:\"enum\",values:{video:{}}},urls:{required:!0,type:\"array\",value:\"string\"},coordinates:{required:!0,type:\"array\",length:4,value:{type:\"array\",length:2,value:\"number\"}}},source_image:{type:{required:!0,type:\"enum\",values:{image:{}}},url:{required:!0,type:\"string\"},coordinates:{required:!0,type:\"array\",length:4,value:{type:\"array\",length:2,value:\"number\"}}},layer:{id:{type:\"string\",required:!0},type:{type:\"enum\",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},\"fill-extrusion\":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:\"*\"},source:{type:\"string\"},\"source-layer\":{type:\"string\"},minzoom:{type:\"number\",minimum:0,maximum:24},maxzoom:{type:\"number\",minimum:0,maximum:24},filter:{type:\"filter\"},layout:{type:\"layout\"},paint:{type:\"paint\"}},layout:[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_heatmap\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_hillshade\",\"layout_background\"],layout_background:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_fill:{\"fill-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_circle:{\"circle-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_heatmap:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},\"layout_fill-extrusion\":{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_line:{\"line-cap\":{type:\"enum\",values:{butt:{},round:{},square:{}},default:\"butt\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-join\":{type:\"enum\",values:{bevel:{},round:{},miter:{}},default:\"miter\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-miter-limit\":{type:\"number\",default:2,requires:[{\"line-join\":\"miter\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-round-limit\":{type:\"number\",default:1.05,requires:[{\"line-join\":\"round\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_symbol:{\"symbol-placement\":{type:\"enum\",values:{point:{},line:{},\"line-center\":{}},default:\"point\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-spacing\":{type:\"number\",default:250,minimum:1,units:\"pixels\",requires:[{\"symbol-placement\":\"line\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-avoid-edges\":{type:\"boolean\",default:!1,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-sort-key\":{type:\"number\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"symbol-z-order\":{type:\"enum\",values:{auto:{},\"viewport-y\":{},source:{}},default:\"auto\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-allow-overlap\":{type:\"boolean\",default:!1,requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-ignore-placement\":{type:\"boolean\",default:!1,requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-optional\":{type:\"boolean\",default:!1,requires:[\"icon-image\",\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-rotation-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-size\":{type:\"number\",default:1,minimum:0,units:\"factor of the original icon size\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-text-fit\":{type:\"enum\",values:{none:{},width:{},height:{},both:{}},default:\"none\",requires:[\"icon-image\",\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-text-fit-padding\":{type:\"array\",value:\"number\",length:4,default:[0,0,0,0],units:\"pixels\",requires:[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-image\":{type:\"resolvedImage\",tokens:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-rotate\":{type:\"number\",default:0,period:360,units:\"degrees\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-padding\":{type:\"number\",default:2,minimum:0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-keep-upright\":{type:\"boolean\",default:!1,requires:[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-offset\":{type:\"array\",value:\"number\",length:2,default:[0,0],requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-anchor\":{type:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},default:\"center\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotation-alignment\":{type:\"enum\",values:{map:{},viewport:{},auto:{}},default:\"auto\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-field\":{type:\"formatted\",default:\"\",tokens:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-font\":{type:\"array\",value:\"string\",default:[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-size\":{type:\"number\",default:16,minimum:0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-width\":{type:\"number\",default:10,minimum:0,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-line-height\":{type:\"number\",default:1.2,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-letter-spacing\":{type:\"number\",default:0,units:\"ems\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-justify\":{type:\"enum\",values:{auto:{},left:{},center:{},right:{}},default:\"center\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-radial-offset\":{type:\"number\",units:\"ems\",default:0,requires:[\"text-field\"],\"property-type\":\"data-driven\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]}},\"text-variable-anchor\":{type:\"array\",value:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},requires:[\"text-field\",{\"symbol-placement\":[\"point\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-anchor\":{type:\"enum\",values:{center:{},left:{},right:{},top:{},bottom:{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},default:\"center\",requires:[\"text-field\",{\"!\":\"text-variable-anchor\"}],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-angle\":{type:\"number\",default:45,units:\"degrees\",requires:[\"text-field\",{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-writing-mode\":{type:\"array\",value:\"enum\",values:{horizontal:{},vertical:{}},requires:[\"text-field\",{\"symbol-placement\":[\"point\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotate\":{type:\"number\",default:0,period:360,units:\"degrees\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-padding\":{type:\"number\",default:2,minimum:0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-keep-upright\":{type:\"boolean\",default:!0,requires:[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-transform\":{type:\"enum\",values:{none:{},uppercase:{},lowercase:{}},default:\"none\",requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-offset\":{type:\"array\",value:\"number\",units:\"ems\",length:2,default:[0,0],requires:[\"text-field\",{\"!\":\"text-radial-offset\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-allow-overlap\":{type:\"boolean\",default:!1,requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-ignore-placement\":{type:\"boolean\",default:!1,requires:[\"text-field\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-optional\":{type:\"boolean\",default:!1,requires:[\"text-field\",\"icon-image\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_raster:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},layout_hillshade:{visibility:{type:\"enum\",values:{visible:{},none:{}},default:\"visible\",\"property-type\":\"constant\"}},filter:{type:\"array\",value:\"*\"},filter_operator:{type:\"enum\",values:{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},in:{},\"!in\":{},all:{},any:{},none:{},has:{},\"!has\":{},within:{}}},geometry_type:{type:\"enum\",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:\"expression\"},stops:{type:\"array\",value:\"function_stop\"},base:{type:\"number\",default:1,minimum:0},property:{type:\"string\",default:\"$zoom\"},type:{type:\"enum\",values:{identity:{},exponential:{},interval:{},categorical:{}},default:\"exponential\"},colorSpace:{type:\"enum\",values:{rgb:{},lab:{},hcl:{}},default:\"rgb\"},default:{type:\"*\",required:!1}},function_stop:{type:\"array\",minimum:0,maximum:24,value:[\"number\",\"color\"],length:2},expression:{type:\"array\",value:\"*\",minimum:1},expression_name:{type:\"enum\",values:{let:{group:\"Variable binding\"},var:{group:\"Variable binding\"},literal:{group:\"Types\"},array:{group:\"Types\"},at:{group:\"Lookup\"},in:{group:\"Lookup\"},\"index-of\":{group:\"Lookup\"},slice:{group:\"Lookup\"},case:{group:\"Decision\"},match:{group:\"Decision\"},coalesce:{group:\"Decision\"},step:{group:\"Ramps, scales, curves\"},interpolate:{group:\"Ramps, scales, curves\"},\"interpolate-hcl\":{group:\"Ramps, scales, curves\"},\"interpolate-lab\":{group:\"Ramps, scales, curves\"},ln2:{group:\"Math\"},pi:{group:\"Math\"},e:{group:\"Math\"},typeof:{group:\"Types\"},string:{group:\"Types\"},number:{group:\"Types\"},boolean:{group:\"Types\"},object:{group:\"Types\"},collator:{group:\"Types\"},format:{group:\"Types\"},image:{group:\"Types\"},\"number-format\":{group:\"Types\"},\"to-string\":{group:\"Types\"},\"to-number\":{group:\"Types\"},\"to-boolean\":{group:\"Types\"},\"to-rgba\":{group:\"Color\"},\"to-color\":{group:\"Types\"},rgb:{group:\"Color\"},rgba:{group:\"Color\"},get:{group:\"Lookup\"},has:{group:\"Lookup\"},length:{group:\"Lookup\"},properties:{group:\"Feature data\"},\"feature-state\":{group:\"Feature data\"},\"geometry-type\":{group:\"Feature data\"},id:{group:\"Feature data\"},zoom:{group:\"Zoom\"},\"heatmap-density\":{group:\"Heatmap\"},\"line-progress\":{group:\"Feature data\"},accumulated:{group:\"Feature data\"},\"+\":{group:\"Math\"},\"*\":{group:\"Math\"},\"-\":{group:\"Math\"},\"/\":{group:\"Math\"},\"%\":{group:\"Math\"},\"^\":{group:\"Math\"},sqrt:{group:\"Math\"},log10:{group:\"Math\"},ln:{group:\"Math\"},log2:{group:\"Math\"},sin:{group:\"Math\"},cos:{group:\"Math\"},tan:{group:\"Math\"},asin:{group:\"Math\"},acos:{group:\"Math\"},atan:{group:\"Math\"},min:{group:\"Math\"},max:{group:\"Math\"},round:{group:\"Math\"},abs:{group:\"Math\"},ceil:{group:\"Math\"},floor:{group:\"Math\"},distance:{group:\"Math\"},\"==\":{group:\"Decision\"},\"!=\":{group:\"Decision\"},\">\":{group:\"Decision\"},\"<\":{group:\"Decision\"},\">=\":{group:\"Decision\"},\"<=\":{group:\"Decision\"},all:{group:\"Decision\"},any:{group:\"Decision\"},\"!\":{group:\"Decision\"},within:{group:\"Decision\"},\"is-supported-script\":{group:\"String\"},upcase:{group:\"String\"},downcase:{group:\"String\"},concat:{group:\"String\"},\"resolved-locale\":{group:\"String\"}}},light:{anchor:{type:\"enum\",default:\"viewport\",values:{map:{},viewport:{}},\"property-type\":\"data-constant\",transition:!1,expression:{interpolated:!1,parameters:[\"zoom\"]}},position:{type:\"array\",default:[1.15,210,30],length:3,value:\"number\",\"property-type\":\"data-constant\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]}},color:{type:\"color\",\"property-type\":\"data-constant\",default:\"#ffffff\",expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},intensity:{type:\"number\",\"property-type\":\"data-constant\",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0}},paint:[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_heatmap\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_hillshade\",\"paint_background\"],paint_fill:{\"fill-antialias\":{type:\"boolean\",default:!0,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"fill-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-outline-color\":{type:\"color\",transition:!0,requires:[{\"!\":\"fill-pattern\"},{\"fill-antialias\":!0}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"fill-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"fill-extrusion-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"fill-extrusion-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"},\"fill-extrusion-height\":{type:\"number\",default:0,minimum:0,units:\"meters\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-base\":{type:\"number\",default:0,minimum:0,units:\"meters\",transition:!0,requires:[\"fill-extrusion-height\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-vertical-gradient\":{type:\"boolean\",default:!0,transition:!1,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_line:{\"line-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"line-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"line-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-width\":{type:\"number\",default:1,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-gap-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-offset\":{type:\"number\",default:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-dasharray\":{type:\"array\",value:\"number\",minimum:0,transition:!0,units:\"line widths\",requires:[{\"!\":\"line-pattern\"}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"cross-faded\"},\"line-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"cross-faded-data-driven\"},\"line-gradient\":{type:\"color\",transition:!1,requires:[{\"!\":\"line-dasharray\"},{\"!\":\"line-pattern\"},{source:\"geojson\",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:[\"line-progress\"]},\"property-type\":\"color-ramp\"}},paint_circle:{\"circle-radius\":{type:\"number\",default:5,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-blur\":{type:\"number\",default:0,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"circle-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-scale\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-alignment\":{type:\"enum\",values:{map:{},viewport:{}},default:\"viewport\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-stroke-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"}},paint_heatmap:{\"heatmap-radius\":{type:\"number\",default:30,minimum:1,transition:!0,units:\"pixels\",expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-weight\":{type:\"number\",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-intensity\":{type:\"number\",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"heatmap-color\":{type:\"color\",default:[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,\"rgba(0, 0, 255, 0)\",.1,\"royalblue\",.3,\"cyan\",.5,\"lime\",.7,\"yellow\",1,\"red\"],transition:!1,expression:{interpolated:!0,parameters:[\"heatmap-density\"]},\"property-type\":\"color-ramp\"},\"heatmap-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_symbol:{\"icon-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-color\":{type:\"color\",default:\"rgba(0, 0, 0, 0)\",transition:!0,requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"icon-image\",\"icon-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-color\":{type:\"color\",default:\"#000000\",transition:!0,overridable:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-color\":{type:\"color\",default:\"rgba(0, 0, 0, 0)\",transition:!0,requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-width\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-blur\":{type:\"number\",default:0,minimum:0,transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-translate\":{type:\"array\",value:\"number\",length:2,default:[0,0],transition:!0,units:\"pixels\",requires:[\"text-field\"],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-translate-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"map\",requires:[\"text-field\",\"text-translate\"],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_raster:{\"raster-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-hue-rotate\":{type:\"number\",default:0,period:360,transition:!0,units:\"degrees\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-min\":{type:\"number\",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-max\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-saturation\":{type:\"number\",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-contrast\":{type:\"number\",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-resampling\":{type:\"enum\",values:{linear:{},nearest:{}},default:\"linear\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-fade-duration\":{type:\"number\",default:300,minimum:0,transition:!1,units:\"milliseconds\",expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_hillshade:{\"hillshade-illumination-direction\":{type:\"number\",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-illumination-anchor\":{type:\"enum\",values:{map:{},viewport:{}},default:\"viewport\",expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-exaggeration\":{type:\"number\",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-shadow-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-highlight-color\":{type:\"color\",default:\"#FFFFFF\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-accent-color\":{type:\"color\",default:\"#000000\",transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},paint_background:{\"background-color\":{type:\"color\",default:\"#000000\",transition:!0,requires:[{\"!\":\"background-pattern\"}],expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-pattern\":{type:\"resolvedImage\",transition:!0,expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"cross-faded\"},\"background-opacity\":{type:\"number\",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"}},transition:{duration:{type:\"number\",default:300,minimum:0,units:\"milliseconds\"},delay:{type:\"number\",default:0,minimum:0,units:\"milliseconds\"}},\"property-type\":{\"data-driven\":{type:\"property-type\"},\"cross-faded\":{type:\"property-type\"},\"cross-faded-data-driven\":{type:\"property-type\"},\"color-ramp\":{type:\"property-type\"},\"data-constant\":{type:\"property-type\"},constant:{type:\"property-type\"}},promoteId:{\"*\":{type:\"string\"}}},St=function(t,e,r,n){this.message=(t?t+\": \":\"\")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__)};function Et(t){var e=t.value;return e?[new St(t.key,e,\"constants have been deprecated as of v8\")]:[]}function Ct(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,a=e;n\":\"value\"===t.itemType.kind?\"array\":\"array<\"+e+\">\"}return t.kind}var Yt=[Ot,Dt,Rt,Ft,Bt,Ut,Nt,Ht(jt),qt];function Wt(t,e){if(\"error\"===e.kind)return null;if(\"array\"===t.kind){if(\"array\"===e.kind&&(0===e.N&&\"value\"===e.itemType.kind||!Wt(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=Yt;r255?255:t}function a(t){return n(\"%\"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function i(t){return(e=\"%\"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))<0?0:e>1?1:e;var e}function o(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,s=t.replace(/ /g,\"\").toLowerCase();if(s in r)return r[s].slice();if(\"#\"===s[0])return 4===s.length?(e=parseInt(s.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===s.length&&(e=parseInt(s.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=s.indexOf(\"(\"),c=s.indexOf(\")\");if(-1!==l&&c+1===s.length){var u=s.substr(0,l),h=s.substr(l+1,c-(l+1)).split(\",\"),f=1;switch(u){case\"rgba\":if(4!==h.length)return null;f=i(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=i(h.pop());case\"hsl\":if(3!==h.length)return null;var p=(parseFloat(h[0])%360+360)%360/360,d=i(h[1]),g=i(h[2]),m=g<=.5?g*(d+1):g+d-g*d,v=2*g-m;return[n(255*o(v,m,p+1/3)),n(255*o(v,m,p)),n(255*o(v,m,p-1/3)),f];default:return null}}return null}}catch(t){}})).parseCSSColor,Kt=function(t,e,r,n){void 0===n&&(n=1),this.r=t,this.g=e,this.b=r,this.a=n};Kt.parse=function(t){if(t){if(t instanceof Kt)return t;if(\"string\"==typeof t){var e=Jt(t);if(e)return new Kt(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},Kt.prototype.toString=function(){var t=this.toArray(),e=t[1],r=t[2],n=t[3];return\"rgba(\"+Math.round(t[0])+\",\"+Math.round(e)+\",\"+Math.round(r)+\",\"+n+\")\"},Kt.prototype.toArray=function(){var t=this.a;return 0===t?[0,0,0,0]:[255*this.r/t,255*this.g/t,255*this.b/t,t]},Kt.black=new Kt(0,0,0,1),Kt.white=new Kt(1,1,1,1),Kt.transparent=new Kt(0,0,0,0),Kt.red=new Kt(1,0,0,1);var Qt=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\"})};Qt.prototype.compare=function(t,e){return this.collator.compare(t,e)},Qt.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var $t=function(t,e,r,n,a){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=a},te=function(t){this.sections=t};te.fromString=function(t){return new te([new $t(t,null,null,null,null)])},te.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}))},te.factory=function(t){return t instanceof te?t:te.fromString(t)},te.prototype.toString=function(){return 0===this.sections.length?\"\":this.sections.map((function(t){return t.text})).join(\"\")},te.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 ne(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 Kt)return!0;if(t instanceof Qt)return!0;if(t instanceof te)return!0;if(t instanceof ee)return!0;if(Array.isArray(t)){for(var e=0,r=t;e2){var s=t[1];if(\"string\"!=typeof s||!(s in le)||\"object\"===s)return e.error('The item type argument of \"array\" must be one of string, number, boolean',1);i=le[s],n++}else i=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=Ht(i,o)}else r=le[a];for(var l=[];n1)&&e.push(n)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var ue=function(t){this.type=Ut,this.sections=t};ue.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=[],a=!1,i=1;i<=t.length-1;++i){var o=t[i];if(a&&\"object\"==typeof o&&!Array.isArray(o)){a=!1;var s=null;if(o[\"font-scale\"]&&!(s=e.parse(o[\"font-scale\"],1,Dt)))return null;var l=null;if(o[\"text-font\"]&&!(l=e.parse(o[\"text-font\"],1,Ht(Rt))))return null;var c=null;if(o[\"text-color\"]&&!(c=e.parse(o[\"text-color\"],1,Bt)))return null;var u=n[n.length-1];u.scale=s,u.font=l,u.textColor=c}else{var h=e.parse(t[i],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'.\");a=!0,n.push({content:h,scale:null,font:null,textColor:null})}}return new ue(n)},ue.prototype.evaluate=function(t){return new te(this.sections.map((function(e){var r=e.content.evaluate(t);return ae(r)===qt?new $t(\"\",r,null,null,null):new $t(ie(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(\",\"):null,e.textColor?e.textColor.evaluate(t):null)})))},ue.prototype.eachChild=function(t){for(var e=0,r=this.sections;e-1),r},he.prototype.eachChild=function(t){t(this.input)},he.prototype.outputDefined=function(){return!1},he.prototype.serialize=function(){return[\"image\",this.input.serialize()]};var fe={\"to-boolean\":Ft,\"to-color\":Bt,\"to-number\":Dt,\"to-string\":Rt},pe=function(t,e){this.type=t,this.args=e};pe.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=fe[r],a=[],i=1;i4?\"Invalid rbga value \"+JSON.stringify(e)+\": expected an array containing either three or four numeric values.\":re(e[0],e[1],e[2],e[3])))return new Kt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new se(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 be(t,e){var r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,a=Math.pow(2,e.z);return[Math.round(r*a*8192),Math.round(n*a*8192)]}function _e(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 we(t,e){for(var r,n,a,i,o,s,l,c=!1,u=0,h=e.length;u0&&s<0||o<0&&s>0}function Ae(t,e,r){for(var n=0,a=r;nr[2]){var a=.5*n,i=t[0]-r[0]>a?-n:r[0]-t[0]>a?n:0;0===i&&(i=t[0]-r[2]>a?-n:r[2]-t[0]>a?n:0),t[0]+=i}ye(e,t)}function Pe(t,e,r,n){for(var a=8192*Math.pow(2,n.z),i=[8192*n.x,8192*n.y],o=[],s=0,l=t;s=0)return!1;var r=!0;return t.eachChild((function(t){r&&!Re(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(ne(t[1])){var r=t[1];if(\"FeatureCollection\"===r.type)for(var n=0;ne))throw new se(\"Input is not a number.\");i=o-1}return 0}Be.prototype.parse=function(t,e,r,n,a){return void 0===a&&(a={}),e?this.concat(e,r,n)._parse(t,a):this._parse(t,a)},Be.prototype._parse=function(t,e){function r(t,e,r){return\"assert\"===r?new ce(e,[t]):\"coerce\"===r?new pe(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 a=this.registry[n];if(a){var i=a.parse(t,this);if(!i)return null;if(this.expectedType){var o=this.expectedType,s=i.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 i=r(i,o,e.typeAnnotation||\"coerce\");else i=r(i,o,e.typeAnnotation||\"assert\")}if(!(i instanceof oe)&&\"resolvedImage\"!==i.type.kind&&function t(e){if(e instanceof Fe)return t(e.boundExpression);if(e instanceof me&&\"error\"===e.name)return!1;if(e instanceof ve)return!1;if(e instanceof ze)return!1;var r=e instanceof pe||e instanceof ce,n=!0;return e.eachChild((function(e){n=r?n&&t(e):n&&e instanceof oe})),!!n&&Oe(e)&&Re(e,[\"zoom\",\"heatmap-density\",\"line-progress\",\"accumulated\",\"is-supported-script\"])}(i)){var l=new ge;try{i=new oe(i.type,i.evaluate(l))}catch(t){return this.error(t.message),null}}return i}return this.error('Unknown expression \"'+n+'\". If you wanted a literal array, use [\"literal\", [...]].',0)}return this.error(void 0===t?\"'undefined' value invalid. Use null instead.\":\"object\"==typeof t?'Bare objects invalid. Use [\"literal\", {...}] instead.':\"Expected an array, but found \"+typeof t+\" instead.\")},Be.prototype.concat=function(t,e,r){var n=\"number\"==typeof t?this.path.concat(t):this.path,a=r?this.scope.concat(r):this.scope;return new Be(this.registry,n,e||null,a,this.errors)},Be.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 It(n,t))},Be.prototype.checkSubtype=function(t,e){var r=Wt(t,e);return r&&this.error(r),r};var je=function(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var n=0,a=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,a);if(!u)return null;a=a||u.type,n.push([o,u])}return new je(a,r,n)},je.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 a=e.length;return n>=e[a-1]?r[a-1].evaluate(t):r[Ne(e,n)].evaluate(t)},je.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 Ue=Object.freeze({__proto__:null,number:Ve,color:function(t,e,r){return new Kt(Ve(t.r,e.r,r),Ve(t.g,e.g,r),Ve(t.b,e.b,r),Ve(t.a,e.a,r))},array:function(t,e,r){return t.map((function(t,n){return Ve(t,e[n],r)}))}}),qe=6/29*3*(6/29),He=Math.PI/180,Ge=180/Math.PI;function Ye(t){return t>.008856451679035631?Math.pow(t,1/3):t/qe+4/29}function We(t){return t>6/29?t*t*t:qe*(t-4/29)}function Ze(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Xe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Je(t){var e=Xe(t.r),r=Xe(t.g),n=Xe(t.b),a=Ye((.4124564*e+.3575761*r+.1804375*n)/.95047),i=Ye((.2126729*e+.7151522*r+.072175*n)/1);return{l:116*i-16,a:500*(a-i),b:200*(i-Ye((.0193339*e+.119192*r+.9503041*n)/1.08883)),alpha:t.a}}function Ke(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=1*We(e),r=.95047*We(r),n=1.08883*We(n),new Kt(Ze(3.2404542*r-1.5371385*e-.4985314*n),Ze(-.969266*r+1.8760108*e+.041556*n),Ze(.0556434*r-.2040259*e+1.0572252*n),t.alpha)}function Qe(t,e,r){var n=e-t;return t+r*(n>180||n<-180?n-360*Math.round(n/360):n)}var $e={forward:Je,reverse:Ke,interpolate:function(t,e,r){return{l:Ve(t.l,e.l,r),a:Ve(t.a,e.a,r),b:Ve(t.b,e.b,r),alpha:Ve(t.alpha,e.alpha,r)}}},tr={forward:function(t){var e=Je(t),r=e.l,n=e.a,a=e.b,i=Math.atan2(a,n)*Ge;return{h:i<0?i+360:i,c:Math.sqrt(n*n+a*a),l:r,alpha:t.a}},reverse:function(t){var e=t.h*He,r=t.c;return Ke({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return{h:Qe(t.h,e.h,r),c:Ve(t.c,e.c,r),l:Ve(t.l,e.l,r),alpha:Ve(t.alpha,e.alpha,r)}}},er=Object.freeze({__proto__:null,lab:$e,hcl:tr}),rr=function(t,e,r,n,a){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var i=0,o=a;i1})))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(!(a=e.parse(a,2,Dt)))return null;var l=[],c=null;\"interpolate-hcl\"===r||\"interpolate-lab\"===r?c=Bt: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 g=e.parse(f,d,c);if(!g)return null;c=c||g.type,l.push([h,g])}return\"number\"===c.kind||\"color\"===c.kind||\"array\"===c.kind&&\"number\"===c.itemType.kind&&\"number\"==typeof c.N?new rr(c,r,n,a,l):e.error(\"Type \"+Gt(c)+\" is not interpolatable.\")},rr.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 a=e.length;if(n>=e[a-1])return r[a-1].evaluate(t);var i=Ne(e,n),o=rr.interpolationFactor(this.interpolation,n,e[i],e[i+1]),s=r[i].evaluate(t),l=r[i+1].evaluate(t);return\"interpolate\"===this.operator?Ue[this.type.kind.toLowerCase()](s,l,o):\"interpolate-hcl\"===this.operator?tr.reverse(tr.interpolate(tr.forward(s),tr.forward(l),o)):$e.reverse($e.interpolate($e.forward(s),$e.forward(l),o))},rr.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e=r.length)throw new se(\"Array index out of bounds: \"+e+\" > \"+(r.length-1)+\".\");if(e!==Math.floor(e))throw new se(\"Array index must be an integer, but found \"+e+\" instead.\");return r[e]},or.prototype.eachChild=function(t){t(this.index),t(this.input)},or.prototype.outputDefined=function(){return!1},or.prototype.serialize=function(){return[\"at\",this.index.serialize(),this.input.serialize()]};var sr=function(t,e){this.type=Ft,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?Zt(r.type,[Ft,Rt,Dt,Ot,jt])?new sr(r,n):e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(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(!Xt(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new se(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(ae(e))+\" instead.\");if(!Xt(r,[\"string\",\"array\"]))throw new se(\"Expected second argument to be of type array or string, but found \"+Gt(ae(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 lr=function(t,e,r){this.type=Dt,this.needle=t,this.haystack=e,this.fromIndex=r};lr.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(!Zt(r.type,[Ft,Rt,Dt,Ot,jt]))return e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(r.type)+\" instead\");if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new lr(r,n,a):null}return new lr(r,n)},lr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!Xt(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new se(\"Expected first argument to be of type boolean, string, number or null, but found \"+Gt(ae(e))+\" instead.\");if(!Xt(r,[\"string\",\"array\"]))throw new se(\"Expected second argument to be of type array or string, but found \"+Gt(ae(r))+\" instead.\");if(this.fromIndex){var n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)},lr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},lr.prototype.outputDefined=function(){return!1},lr.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,a,i){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=a,this.otherwise=i};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 a={},i=[],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,ae(f)))return null}else r=ae(f);if(void 0!==a[String(f)])return c.error(\"Branch labels must be unique.\");a[String(f)]=i.length}var p=e.parse(l,o,n);if(!p)return null;n=n||p.type,i.push(p)}var d=e.parse(t[1],1,jt);if(!d)return null;var g=e.parse(t[t.length-1],t.length-1,n);return g?\"value\"!==d.type.kind&&e.concat(1).checkSubtype(r,d.type)?null:new cr(r,n,d,a,i,g):null},cr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(ae(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={},a=0,i=Object.keys(this.cases).sort();a=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,Dt);if(!r||!n)return null;if(!Zt(r.type,[Ht(jt),Rt,jt]))return e.error(\"Expected first argument to be of type array or string, but found \"+Gt(r.type)+\" instead\");if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new hr(r.type,r,n,a):null}return new hr(r.type,r,n)},hr.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!Xt(e,[\"string\",\"array\"]))throw new se(\"Expected first argument to be of type array or string, but found \"+Gt(ae(e))+\" instead.\");if(this.endIndex){var n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)},hr.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},hr.prototype.outputDefined=function(){return!1},hr.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 gr=dr(\"==\",(function(t,e,r){return e===r}),pr),mr=dr(\"!=\",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!pr(0,e,r,n)})),vr=dr(\"<\",(function(t,e,r){return e\",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),xr=dr(\"<=\",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),br=dr(\">=\",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0})),_r=function(t,e,r,n,a){this.type=Rt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=a};_r.parse=function(t,e){if(3!==t.length)return e.error(\"Expected two arguments.\");var r=e.parse(t[1],1,Dt);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 a=null;if(n.locale&&!(a=e.parse(n.locale,1,Rt)))return null;var i=null;if(n.currency&&!(i=e.parse(n.currency,1,Rt)))return null;var o=null;if(n[\"min-fraction-digits\"]&&!(o=e.parse(n[\"min-fraction-digits\"],1,Dt)))return null;var s=null;return n[\"max-fraction-digits\"]&&!(s=e.parse(n[\"max-fraction-digits\"],1,Dt))?null:new _r(r,a,i,o,s)},_r.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))},_r.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)},_r.prototype.outputDefined=function(){return!1},_r.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 wr=function(t){this.type=Dt,this.input=t};wr.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 \"+Gt(r.type)+\" instead.\"):new wr(r):null},wr.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 se(\"Expected value to be of type string or array, but found \"+Gt(ae(e))+\" instead.\")},wr.prototype.eachChild=function(t){t(this.input)},wr.prototype.outputDefined=function(){return!1},wr.prototype.serialize=function(){var t=[\"length\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Tr={\"==\":gr,\"!=\":mr,\">\":yr,\"<\":vr,\">=\":br,\"<=\":xr,array:ce,at:or,boolean:ce,case:ur,coalesce:ar,collator:ve,format:ue,image:he,in:sr,\"index-of\":lr,interpolate:rr,\"interpolate-hcl\":rr,\"interpolate-lab\":rr,length:wr,let:ir,literal:oe,match:cr,number:ce,\"number-format\":_r,object:ce,slice:hr,step:je,string:ce,\"to-boolean\":pe,\"to-color\":pe,\"to-number\":pe,\"to-string\":pe,var:Fe,within:ze};function kr(t,e){var r=e[0],n=e[1],a=e[2],i=e[3];r=r.evaluate(t),n=n.evaluate(t),a=a.evaluate(t);var o=i?i.evaluate(t):1,s=re(r,n,a,o);if(s)throw new se(s);return new Kt(r/255*o,n/255*o,a/255*o,o)}function Ar(t,e){return t in e}function Mr(t,e){var r=e[t];return void 0===r?null:r}function Sr(t){return{type:t}}function Er(t){return{result:\"success\",value:t}}function Cr(t){return{result:\"error\",value:t}}function Lr(t){return\"data-driven\"===t[\"property-type\"]||\"cross-faded-data-driven\"===t[\"property-type\"]}function Pr(t){return!!t.expression&&t.expression.parameters.indexOf(\"zoom\")>-1}function Ir(t){return!!t.expression&&t.expression.interpolated}function zr(t){return t instanceof Number?\"number\":t instanceof String?\"string\":t instanceof Boolean?\"boolean\":Array.isArray(t)?\"array\":null===t?\"null\":typeof t}function Or(t){return\"object\"==typeof t&&null!==t&&!Array.isArray(t)}function Dr(t){return t}function Rr(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function Fr(t,e,r,n,a){return Rr(typeof r===a?n[r]:void 0,t.default,e.default)}function Br(t,e,r){if(\"number\"!==zr(r))return Rr(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];var a=Ne(t.stops.map((function(t){return t[0]})),r);return t.stops[a][1]}function Nr(t,e,r){var n=void 0!==t.base?t.base:1;if(\"number\"!==zr(r))return Rr(t.default,e.default);var a=t.stops.length;if(1===a)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[a-1][0])return t.stops[a-1][1];var i=Ne(t.stops.map((function(t){return t[0]})),r),o=function(t,e,r,n){var a=n-r,i=t-r;return 0===a?0:1===e?i/a:(Math.pow(e,i)-1)/(Math.pow(e,a)-1)}(r,n,t.stops[i][0],t.stops[i+1][0]),s=t.stops[i][1],l=t.stops[i+1][1],c=Ue[e.type]||Dr;if(t.colorSpace&&\"rgb\"!==t.colorSpace){var u=er[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 jr(t,e,r){return\"color\"===e.type?r=Kt.parse(r):\"formatted\"===e.type?r=te.fromString(r.toString()):\"resolvedImage\"===e.type?r=ee.fromString(r.toString()):zr(r)===e.type||\"enum\"===e.type&&e.values[r]||(r=void 0),Rr(r,t.default,e.default)}me.register(Tr,{error:[{kind:\"error\"},[Rt],function(t,e){throw new se(e[0].evaluate(t))}],typeof:[Rt,[jt],function(t,e){return Gt(ae(e[0].evaluate(t)))}],\"to-rgba\":[Ht(Dt,4),[Bt],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[Bt,[Dt,Dt,Dt],kr],rgba:[Bt,[Dt,Dt,Dt,Dt],kr],has:{type:Ft,overloads:[[[Rt],function(t,e){return Ar(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Ar(e[0].evaluate(t),r.evaluate(t))}]]},get:{type:jt,overloads:[[[Rt],function(t,e){return Mr(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Mr(e[0].evaluate(t),r.evaluate(t))}]]},\"feature-state\":[jt,[Rt],function(t,e){return Mr(e[0].evaluate(t),t.featureState||{})}],properties:[Nt,[],function(t){return t.properties()}],\"geometry-type\":[Rt,[],function(t){return t.geometryType()}],id:[jt,[],function(t){return t.id()}],zoom:[Dt,[],function(t){return t.globals.zoom}],\"heatmap-density\":[Dt,[],function(t){return t.globals.heatmapDensity||0}],\"line-progress\":[Dt,[],function(t){return t.globals.lineProgress||0}],accumulated:[jt,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],\"+\":[Dt,Sr(Dt),function(t,e){for(var r=0,n=0,a=e;n\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>i}],\"filter-id->\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>a}],\"filter-<=\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a<=i}],\"filter-id-<=\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n<=a}],\"filter->=\":[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>=i}],\"filter-id->=\":[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>=a}],\"filter-has\":[Ft,[jt],function(t,e){return e[0].value in t.properties()}],\"filter-has-id\":[Ft,[],function(t){return null!==t.id()&&void 0!==t.id()}],\"filter-type-in\":[Ft,[Ht(Rt)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],\"filter-id-in\":[Ft,[Ht(jt)],function(t,e){return e[0].value.indexOf(t.id())>=0}],\"filter-in-small\":[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0];return e[1].value.indexOf(t.properties()[r.value])>=0}],\"filter-in-large\":[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0],n=e[1];return function(t,e,r,n){for(;r<=n;){var a=r+n>>1;if(e[a]===t)return!0;e[a]>t?n=a-1:r=a+1}return!1}(t.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:Ft,overloads:[[[Ft,Ft],function(t,e){var r=e[1];return e[0].evaluate(t)&&r.evaluate(t)}],[Sr(Ft),function(t,e){for(var r=0,n=e;r0&&\"string\"==typeof t[0]&&t[0]in Tr}function qr(t,e){var r=new Be(Tr,[],e?function(t){var e={color:Bt,string:Rt,number:Dt,enum:Rt,boolean:Ft,formatted:Ut,resolvedImage:qt};return\"array\"===t.type?Ht(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?Er(new Vr(n,e)):Cr(r.errors)}Vr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i,this.expression.evaluate(this._evaluator)},Vr.prototype.evaluate=function(t,e,r,n,a,i){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i||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 se(\"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 Hr=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=\"constant\"!==t&&!De(e.expression)};Hr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,a,i)},Hr.prototype.evaluate=function(t,e,r,n,a,i){return this._styleExpression.evaluate(t,e,r,n,a,i)};var Gr=function(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=\"camera\"!==t&&!De(e.expression),this.interpolationType=n};function Yr(t,e){if(\"error\"===(t=qr(t,e)).result)return t;var r=t.value.expression,n=Oe(r);if(!n&&!Lr(e))return Cr([new It(\"\",\"data expressions not supported\")]);var a=Re(r,[\"zoom\"]);if(!a&&!Pr(e))return Cr([new It(\"\",\"zoom expressions not supported\")]);var i=function t(e){var r=null;if(e instanceof ir)r=t(e.result);else if(e instanceof ar)for(var n=0,a=e.args;nn.maximum?[new St(e,r,r+\" is greater than the maximum value \"+n.maximum)]:[]}function Kr(t){var e,r,n,a=t.valueSpec,i=Lt(t.value.type),o={},s=\"categorical\"!==i&&void 0===t.value.property,l=!s,c=\"array\"===zr(t.value.stops)&&\"array\"===zr(t.value.stops[0])&&\"object\"===zr(t.value.stops[0][0]),u=Zr({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(\"identity\"===i)return[new St(t.key,t.value,'identity function may not have a \"stops\" property')];var e=[],r=t.value;return e=e.concat(Xr({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),\"array\"===zr(r)&&0===r.length&&e.push(new St(t.key,r,\"array must have at least one stop\")),e},default:function(t){return bn({key:t.key,value:t.value,valueSpec:a,style:t.style,styleSpec:t.styleSpec})}}});return\"identity\"===i&&s&&u.push(new St(t.key,t.value,'missing required property \"property\"')),\"identity\"===i||t.value.stops||u.push(new St(t.key,t.value,'missing required property \"stops\"')),\"exponential\"===i&&t.valueSpec.expression&&!Ir(t.valueSpec)&&u.push(new St(t.key,t.value,\"exponential functions not supported\")),t.styleSpec.$version>=8&&(l&&!Lr(t.valueSpec)?u.push(new St(t.key,t.value,\"property functions not supported\")):s&&!Pr(t.valueSpec)&&u.push(new St(t.key,t.value,\"zoom functions not supported\"))),\"categorical\"!==i&&!c||void 0!==t.value.property||u.push(new St(t.key,t.value,'\"property\" property is required')),u;function h(t){var e=[],i=t.value,s=t.key;if(\"array\"!==zr(i))return[new St(s,i,\"array expected, \"+zr(i)+\" found\")];if(2!==i.length)return[new St(s,i,\"array length 2 expected, length \"+i.length+\" found\")];if(c){if(\"object\"!==zr(i[0]))return[new St(s,i,\"object expected, \"+zr(i[0])+\" found\")];if(void 0===i[0].zoom)return[new St(s,i,\"object stop key must have zoom\")];if(void 0===i[0].value)return[new St(s,i,\"object stop key must have value\")];if(n&&n>Lt(i[0].zoom))return[new St(s,i[0].zoom,\"stop zoom values must appear in ascending order\")];Lt(i[0].zoom)!==n&&(n=Lt(i[0].zoom),r=void 0,o={}),e=e.concat(Zr({key:s+\"[0]\",value:i[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:Jr,value:f}}))}else e=e.concat(f({key:s+\"[0]\",value:i[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},i));return Ur(Pt(i[1]))?e.concat([new St(s+\"[1]\",i[1],\"expressions are not allowed in function stops.\")]):e.concat(bn({key:s+\"[1]\",value:i[1],valueSpec:a,style:t.style,styleSpec:t.styleSpec}))}function f(t,n){var s=zr(t.value),l=Lt(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new St(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 St(t.key,c,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==s&&\"categorical\"!==i){var u=\"number expected, \"+s+\" found\";return Lr(a)&&void 0===i&&(u+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new St(t.key,c,u)]}return\"categorical\"!==i||\"number\"!==s||isFinite(l)&&Math.floor(l)===l?\"categorical\"!==i&&\"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 an(t){if(!t)return!0;var e,r=t[0];return t.length<=1?\"any\"!==r:\"==\"===r?on(t[1],t[2],\"==\"):\"!=\"===r?cn(on(t[1],t[2],\"==\")):\"<\"===r||\">\"===r||\"<=\"===r||\">=\"===r?on(t[1],t[2],r):\"any\"===r?(e=t.slice(1),[\"any\"].concat(e.map(an))):\"all\"===r?[\"all\"].concat(t.slice(1).map(an)):\"none\"===r?[\"all\"].concat(t.slice(1).map(an).map(cn)):\"in\"===r?sn(t[1],t.slice(2)):\"!in\"===r?cn(sn(t[1],t.slice(2))):\"has\"===r?ln(t[1]):\"!has\"===r?cn(ln(t[1])):\"within\"!==r||t}function on(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 sn(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(nn)]]:[\"filter-in-small\",t,[\"literal\",e]]}}function ln(t){switch(t){case\"$type\":return!0;case\"$id\":return[\"filter-has-id\"];default:return[\"filter-has\",t]}}function cn(t){return[\"!\",t]}function un(t){return tn(Pt(t.value))?Qr(Ct({},t,{expressionContext:\"filter\",valueSpec:{value:\"boolean\"}})):function t(e){var r=e.value,n=e.key;if(\"array\"!==zr(r))return[new St(n,r,\"array expected, \"+zr(r)+\" found\")];var a,i=e.styleSpec,o=[];if(r.length<1)return[new St(n,r,\"filter array must have at least 1 element\")];switch(o=o.concat($r({key:n+\"[0]\",value:r[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),Lt(r[0])){case\"<\":case\"<=\":case\">\":case\">=\":r.length>=2&&\"$type\"===Lt(r[1])&&o.push(new St(n,r,'\"$type\" cannot be use with operator \"'+r[0]+'\"'));case\"==\":case\"!=\":3!==r.length&&o.push(new St(n,r,'filter array for operator \"'+r[0]+'\" must have 3 elements'));case\"in\":case\"!in\":r.length>=2&&\"string\"!==(a=zr(r[1]))&&o.push(new St(n+\"[1]\",r[1],\"string expected, \"+a+\" found\"));for(var s=2;s=u[p+0]&&n>=u[p+1])?(o[f]=!0,i.push(c[f])):o[f]=!1}}},Pn.prototype._forEachCell=function(t,e,r,n,a,i,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)))&&a.call(this,t,e,r,n,d,i,o,s))return}},Pn.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},Pn.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},Pn.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=3+this.cells.length+1+1,r=0,n=0;n=0)){var u=t[c];l[c]=On[s].shallow.indexOf(c)>=0?u:Nn(u,e)}t instanceof Error&&(l.message=t.message)}if(l.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return\"Object\"!==s&&(l.$name=s),l}throw new Error(\"can't serialize object of type \"+typeof t)}function jn(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||Fn(t)||Bn(t)||ArrayBuffer.isView(t)||t instanceof In)return t;if(Array.isArray(t))return t.map(jn);if(\"object\"==typeof t){var e=t.$name||\"Object\",r=On[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),a=0,i=Object.keys(t);a=0?s:jn(s)}}return n}throw new Error(\"can't deserialize object of type \"+typeof t)}var Vn=function(){this.first=!0};Vn.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 qn(t){for(var e=0,r=t;e=65097&&t<=65103)||Un[\"CJK Compatibility Ideographs\"](t)||Un[\"CJK Compatibility\"](t)||Un[\"CJK Radicals Supplement\"](t)||Un[\"CJK Strokes\"](t)||!(!Un[\"CJK Symbols and Punctuation\"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||Un[\"CJK Unified Ideographs Extension A\"](t)||Un[\"CJK Unified Ideographs\"](t)||Un[\"Enclosed CJK Letters and Months\"](t)||Un[\"Hangul Compatibility Jamo\"](t)||Un[\"Hangul Jamo Extended-A\"](t)||Un[\"Hangul Jamo Extended-B\"](t)||Un[\"Hangul Jamo\"](t)||Un[\"Hangul Syllables\"](t)||Un.Hiragana(t)||Un[\"Ideographic Description Characters\"](t)||Un.Kanbun(t)||Un[\"Kangxi Radicals\"](t)||Un[\"Katakana Phonetic Extensions\"](t)||Un.Katakana(t)&&12540!==t||!(!Un[\"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)||!(!Un[\"Small Form Variants\"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||Un[\"Unified Canadian Aboriginal Syllabics\"](t)||Un[\"Unified Canadian Aboriginal Syllabics Extended\"](t)||Un[\"Vertical Forms\"](t)||Un[\"Yijing Hexagram Symbols\"](t)||Un[\"Yi Syllables\"](t)||Un[\"Yi Radicals\"](t))))}function Gn(t){return!(Hn(t)||function(t){return!!(Un[\"Latin-1 Supplement\"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||Un[\"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)||Un[\"Letterlike Symbols\"](t)||Un[\"Number Forms\"](t)||Un[\"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)||Un[\"Control Pictures\"](t)&&9251!==t||Un[\"Optical Character Recognition\"](t)||Un[\"Enclosed Alphanumerics\"](t)||Un[\"Geometric Shapes\"](t)||Un[\"Miscellaneous Symbols\"](t)&&!(t>=9754&&t<=9759)||Un[\"Miscellaneous Symbols and Arrows\"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||Un[\"CJK Symbols and Punctuation\"](t)||Un.Katakana(t)||Un[\"Private Use Area\"](t)||Un[\"CJK Compatibility Forms\"](t)||Un[\"Small Form Variants\"](t)||Un[\"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 Yn(t){return t>=1424&&t<=2303||Un[\"Arabic Presentation Forms-A\"](t)||Un[\"Arabic Presentation Forms-B\"](t)}function Wn(t,e){return!(!e&&Yn(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||Un.Khmer(t))}function Zn(t){for(var e=0,r=t;e-1&&(Jn=\"error\"),Xn&&Xn(t)};function $n(){ta.fire(new Tt(\"pluginStateChange\",{pluginStatus:Jn,pluginURL:Kn}))}var ta=new At,ea=function(){return Jn},ra=function(){if(\"deferred\"!==Jn||!Kn)throw new Error(\"rtl-text-plugin cannot be downloaded unless a pluginURL is specified\");Jn=\"loading\",$n(),Kn&&yt({url:Kn},(function(t){t?Qn(t):(Jn=\"loaded\",$n())}))},na={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return\"loaded\"===Jn||null!=na.applyArabicShaping},isLoading:function(){return\"loading\"===Jn},setState:function(t){Jn=t.pluginStatus,Kn=t.pluginURL},isParsed:function(){return null!=na.applyArabicShaping&&null!=na.processBidirectionalText&&null!=na.processStyledBidirectionalText},getPluginURL:function(){return Kn}},aa=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 Vn,this.transition={})};aa.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 ia=function(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(Or(t))return new Wr(t,e);if(Ur(t)){var r=Yr(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=Kt.parse(t)),{kind:\"constant\",evaluate:function(){return n}}}(void 0===e?t.specification.default:e,t.specification)};ia.prototype.isDataDriven=function(){return\"source\"===this.expression.kind||\"composite\"===this.expression.kind},ia.prototype.possiblyEvaluate=function(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)};var oa=function(t){this.property=t,this.value=new ia(t,void 0)};oa.prototype.transitioned=function(t,e){return new la(this.property,this.value,e,u({},t.transition,this.transition),t.now)},oa.prototype.untransitioned=function(){return new la(this.property,this.value,null,{},0)};var sa=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};sa.prototype.getValue=function(t){return x(this._values[t].value.value)},sa.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].value=new ia(this._values[t].property,null===e?void 0:x(e))},sa.prototype.getTransition=function(t){return x(this._values[t].transition)},sa.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].transition=x(e)||void 0},sa.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);ethis.end)return this.prior=null,a;if(this.value.isDataDriven())return this.prior=null,a;if(n=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}return a};var ca=function(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)};ca.prototype.possiblyEvaluate=function(t,e,r){for(var n=new fa(this._properties),a=0,i=Object.keys(this._values);an.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},e.prototype.interpolate=function(t){return t},e}(da),ma=function(t){this.specification=t};ma.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0!==t.value){if(\"constant\"===t.expression.kind){var a=t.expression.evaluate(e,null,{},r,n);return this._calculate(a,a,a,e)}return this._calculate(t.expression.evaluate(new aa(Math.floor(e.zoom-1),e)),t.expression.evaluate(new aa(Math.floor(e.zoom),e)),t.expression.evaluate(new aa(Math.floor(e.zoom+1),e)),e)}},ma.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},ma.prototype.interpolate=function(t){return t};var va=function(t){this.specification=t};va.prototype.possiblyEvaluate=function(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)},va.prototype.interpolate=function(){return!1};var ya=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 ia(r,void 0),a=this.defaultTransitionablePropertyValues[e]=new oa(r);this.defaultTransitioningPropertyValues[e]=a.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}};Dn(\"DataDrivenProperty\",da),Dn(\"DataConstantProperty\",pa),Dn(\"CrossFadedDataDrivenProperty\",ga),Dn(\"CrossFadedProperty\",ma),Dn(\"ColorRampProperty\",va);var xa=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=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 ua(r.layout)),r.paint)){for(var n in this._transitionablePaint=new sa(r.paint),e.paint)this.setPaintProperty(n,e.paint[n],{validate:!1});for(var a in e.layout)this.setLayoutProperty(a,e.layout[a],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new fa(r.paint)}}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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){void 0===r&&(r={}),null!=e&&this._validate(En,\"layers.\"+this.id+\".layout.\"+t,t,e,r)||(\"visibility\"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e)},e.prototype.getPaintProperty=function(t){return m(t,\"-transition\")?this._transitionablePaint.getTransition(t.slice(0,-\"-transition\".length)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e&&this._validate(Sn,\"layers.\"+this.id+\".paint.\"+t,t,e,r))return!1;if(m(t,\"-transition\"))return this._transitionablePaint.setTransition(t.slice(0,-\"-transition\".length),e||void 0),!1;var n=this._transitionablePaint._values[t],a=\"cross-faded-data-driven\"===n.property.specification[\"property-type\"],i=n.value.isDataDriven(),o=n.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var s=this._transitionablePaint._values[t].value;return s.isDataDriven()||i||a||this._handleOverridablePaintPropertyUpdate(t,o,s)},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),y(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,a){return void 0===a&&(a={}),(!a||!1!==a.validate)&&Cn(this,t.call(An,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:Mt,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 ha&&Lr(e.property.specification)&&(\"source\"===e.value.kind||\"composite\"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(At),ba={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},_a=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},wa=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 a=ba[t.type].BYTES_PER_ELEMENT,i=r=ka(r,Math.max(e,a)),o=t.components||1;return n=Math.max(n,a),r+=a*o,{name:t.name,type:t.type,components:o,offset:i}})),size:ka(r,Math.max(n,e)),alignment:e}}function ka(t,e){return Math.ceil(t/e)*e}wa.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},wa.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},wa.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},wa.prototype.clear=function(){this.length=0},wa.prototype.resize=function(t){this.reserve(t),this.length=t},wa.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)}},wa.prototype._refreshViews=function(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")};var Aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(wa);Aa.prototype.bytesPerElement=4,Dn(\"StructArrayLayout2i4\",Aa);var Ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,this.int16[i+3]=a,t},e}(wa);Ma.prototype.bytesPerElement=8,Dn(\"StructArrayLayout4i8\",Ma);var Sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,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]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Sa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2i4i12\",Sa);var Ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,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]=a,this.uint8[l+6]=i,this.uint8[l+7]=o,t},e}(wa);Ea.prototype.bytesPerElement=8,Dn(\"StructArrayLayout2i4ub8\",Ea);var Ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,a,i,o,s,l,c)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u){var h=9*t,f=18*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=a,this.uint16[h+4]=i,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint8[f+16]=c,this.uint8[f+17]=u,t},e}(wa);Ca.prototype.bytesPerElement=18,Dn(\"StructArrayLayout8ui2ub18\",Ca);var La=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i,o,s,l,c,u,h){var f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,n,a,i,o,s,l,c,u,h)},e.prototype.emplace=function(t,e,r,n,a,i,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]=a,this.uint16[p+4]=i,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}(wa);La.prototype.bytesPerElement=24,Dn(\"StructArrayLayout4i4ui4i24\",La);var Pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=3*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,t},e}(wa);Pa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout3f12\",Pa);var Ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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){return this.uint32[1*t+0]=e,t},e}(wa);Ia.prototype.bytesPerElement=4,Dn(\"StructArrayLayout1ul4\",Ia);var za=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,a,i,o,s,l)},e.prototype.emplace=function(t,e,r,n,a,i,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]=a,this.int16[u+4]=i,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(wa);za.prototype.bytesPerElement=20,Dn(\"StructArrayLayout6i1ul2ui20\",za);var Oa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,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]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Oa.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2i2i2i12\",Oa);var Da=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n,a)},e.prototype.emplace=function(t,e,r,n,a,i){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]=a,this.int16[s+7]=i,t},e}(wa);Da.prototype.bytesPerElement=16,Dn(\"StructArrayLayout2f1f2i16\",Da);var Ra=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=12*t,o=3*t;return this.uint8[i+0]=e,this.uint8[i+1]=r,this.float32[o+1]=n,this.float32[o+2]=a,t},e}(wa);Ra.prototype.bytesPerElement=12,Dn(\"StructArrayLayout2ub2f12\",Ra);var Fa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=3*t;return this.uint16[a+0]=e,this.uint16[a+1]=r,this.uint16[a+2]=n,t},e}(wa);Fa.prototype.bytesPerElement=6,Dn(\"StructArrayLayout3ui6\",Fa);var Ba=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i,o,s,l,c,u,h,f,p,d,g,m){var v=this.length;return this.resize(v+1),this.emplace(v,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v){var y=24*t,x=12*t,b=48*t;return this.int16[y+0]=e,this.int16[y+1]=r,this.uint16[y+2]=n,this.uint16[y+3]=a,this.uint32[x+2]=i,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=u,this.float32[x+7]=h,this.float32[x+8]=f,this.uint8[b+36]=p,this.uint8[b+37]=d,this.uint8[b+38]=g,this.uint32[x+10]=m,this.int16[y+22]=v,t},e}(wa);Ba.prototype.bytesPerElement=48,Dn(\"StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48\",Ba);var Na=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,A,M,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T,k,A,M,S)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,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]=a,this.int16[C+4]=i,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]=g,this.uint16[C+15]=m,this.uint16[C+16]=v,this.uint16[C+17]=y,this.uint16[C+18]=x,this.uint16[C+19]=b,this.uint16[C+20]=_,this.uint16[C+21]=w,this.uint16[C+22]=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}(wa);Na.prototype.bytesPerElement=68,Dn(\"StructArrayLayout8i15ui1ul4f68\",Na);var ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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){return this.float32[1*t+0]=e,t},e}(wa);ja.prototype.bytesPerElement=4,Dn(\"StructArrayLayout1f4\",ja);var Va=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=3*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,t},e}(wa);Va.prototype.bytesPerElement=6,Dn(\"StructArrayLayout3i6\",Va);var Ua=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=4*t;return this.uint32[2*t+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t},e}(wa);Ua.prototype.bytesPerElement=8,Dn(\"StructArrayLayout1ul2ui8\",Ua);var qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(wa);qa.prototype.bytesPerElement=4,Dn(\"StructArrayLayout2ui4\",qa);var Ha=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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){return this.uint16[1*t+0]=e,t},e}(wa);Ha.prototype.bytesPerElement=2,Dn(\"StructArrayLayout1ui2\",Ha);var Ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(wa);Ga.prototype.bytesPerElement=8,Dn(\"StructArrayLayout2f8\",Ga);var Ya=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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 a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,this.float32[i+3]=a,t},e}(wa);Ya.prototype.bytesPerElement=16,Dn(\"StructArrayLayout4f16\",Ya);var Wa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(_a);Wa.prototype.size=20;var Za=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Wa(this,t)},e}(za);Dn(\"CollisionBoxArray\",Za);var Xa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(_a);Xa.prototype.size=48;var Ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Xa(this,t)},e}(Ba);Dn(\"PlacedSymbolArray\",Ja);var Ka=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(_a);Ka.prototype.size=68;var Qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Ka(this,t)},e}(Na);Dn(\"SymbolInstanceArray\",Qa);var $a=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(ja);Dn(\"GlyphOffsetArray\",$a);var ti=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(Va);Dn(\"SymbolLineVertexArray\",ti);var ei=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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}(_a);ei.prototype.size=8;var ri=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new ei(this,t)},e}(Ua);Dn(\"FeatureIndexArray\",ri);var ni=Ta([{name:\"a_pos\",components:2,type:\"Int16\"}],4).members,ai=function(t){void 0===t&&(t=[]),this.segments=t};function ii(t,e){return 256*(t=l(Math.floor(t),0,255))+l(Math.floor(e),0,255)}ai.prototype.prepareSegment=function(t,e,r,n){var a=this.segments[this.segments.length-1];return t>ai.MAX_VERTEX_ARRAY_LENGTH&&_(\"Max vertices per segment is \"+ai.MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+t),(!a||a.vertexLength+t>ai.MAX_VERTEX_ARRAY_LENGTH||a.sortKey!==n)&&(a={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(a.sortKey=n),this.segments.push(a)),a},ai.prototype.get=function(){return this.segments},ai.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|a>>>19))+((5*(a>>>16)&65535)<<16)&4294967295))+((58964+(i>>>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:a^=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 a^=t.length,a=2246822507*(65535&(a^=a>>>16))+((2246822507*(a>>>16)&65535)<<16)&4294967295,a=3266489909*(65535&(a^=a>>>13))+((3266489909*(a>>>16)&65535)<<16)&4294967295,(a^=a>>>16)>>>0}})),li=e((function(t){t.exports=function(t,e){for(var r,n=t.length,a=e^n,i=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(i)|(255&t.charCodeAt(++i))<<8|(255&t.charCodeAt(++i))<<16|(255&t.charCodeAt(++i))<<24))+((1540483477*(r>>>16)&65535)<<16),a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++i;switch(n){case 3:a^=(255&t.charCodeAt(i+2))<<16;case 2:a^=(255&t.charCodeAt(i+1))<<8;case 1:a=1540483477*(65535&(a^=255&t.charCodeAt(i)))+((1540483477*(a>>>16)&65535)<<16)}return a=1540483477*(65535&(a^=a>>>13))+((1540483477*(a>>>16)&65535)<<16),(a^=a>>>15)>>>0}})),ci=si,ui=li;ci.murmur3=si,ci.murmur2=ui;var hi=function(){this.ids=[],this.positions=[],this.indexed=!1};hi.prototype.add=function(t,e,r,n){this.ids.push(pi(t)),this.positions.push(e,r,n)},hi.prototype.getPositions=function(t){for(var e=pi(t),r=0,n=this.ids.length-1;r>1;this.ids[a]>=e?n=a:r=a+1}for(var i=[];this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i},hi.serialize=function(t,e){var r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return function t(e,r,n,a){for(;n>1],o=n-1,s=a+1;;){do{o++}while(e[o]i);if(o>=s)break;di(e,o,s),di(r,3*o,3*s),di(r,3*o+1,3*s+1),di(r,3*o+2,3*s+2)}s-nOi.max||o.yOi.max)&&(_(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\"),o.x=l(o.x,Oi.min,Oi.max),o.y=l(o.y,Oi.min,Oi.max))}return r}function Ri(t,e,r,n,a){t.emplaceBack(2*e+(n+1)/2,2*r+(a+1)/2)}var Fi=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 Aa,this.indexArray=new Fa,this.segments=new ai,this.programConfigurations=new Pi(ni,t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function Bi(t,e){for(var r=0;r1){if(Ui(t,e))return!0;for(var n=0;n1?r:r.sub(e)._mult(a)._add(e))}function Yi(t,e){for(var r,n,a,i=!1,o=0;oe.y!=(a=r[l]).y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i);return i}function Wi(t,e){for(var r=!1,n=0,a=t.length-1;ne.y!=o.y>e.y&&e.x<(o.x-i.x)*(e.y-i.y)/(o.y-i.y)+i.x&&(r=!r)}return r}function Zi(t,e,r){var n=r[0],a=r[2];if(t.xa.x&&e.x>a.x||t.ya.y&&e.y>a.y)return!1;var i=w(t,e,r[0]);return i!==w(t,e,r[1])||i!==w(t,e,r[2])||i!==w(t,e,r[3])}function Xi(t,e,r){var n=e.paint.get(t).value;return\"constant\"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function Ji(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Ki(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=8192||u<0||u>=8192)){var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),f=h.vertexLength;Ri(this.layoutVertexArray,c,u,-1,-1),Ri(this.layoutVertexArray,c,u,1,-1),Ri(this.layoutVertexArray,c,u,1,1),Ri(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)},Dn(\"CircleBucket\",Fi,{omit:[\"layers\"]});var Qi=new ya({\"circle-sort-key\":new da(Mt.layout_circle[\"circle-sort-key\"])}),$i={paint:new ya({\"circle-radius\":new da(Mt.paint_circle[\"circle-radius\"]),\"circle-color\":new da(Mt.paint_circle[\"circle-color\"]),\"circle-blur\":new da(Mt.paint_circle[\"circle-blur\"]),\"circle-opacity\":new da(Mt.paint_circle[\"circle-opacity\"]),\"circle-translate\":new pa(Mt.paint_circle[\"circle-translate\"]),\"circle-translate-anchor\":new pa(Mt.paint_circle[\"circle-translate-anchor\"]),\"circle-pitch-scale\":new pa(Mt.paint_circle[\"circle-pitch-scale\"]),\"circle-pitch-alignment\":new pa(Mt.paint_circle[\"circle-pitch-alignment\"]),\"circle-stroke-width\":new da(Mt.paint_circle[\"circle-stroke-width\"]),\"circle-stroke-color\":new da(Mt.paint_circle[\"circle-stroke-color\"]),\"circle-stroke-opacity\":new da(Mt.paint_circle[\"circle-stroke-opacity\"])}),layout:Qi},to=\"undefined\"!=typeof Float32Array?Float32Array:Array;function eo(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 ro(t,e,r){var n=e[0],a=e[1],i=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],g=e[12],m=e[13],v=e[14],y=e[15],x=r[0],b=r[1],_=r[2],w=r[3];return t[0]=x*n+b*s+_*h+w*g,t[1]=x*a+b*l+_*f+w*m,t[2]=x*i+b*c+_*p+w*v,t[3]=x*o+b*u+_*d+w*y,t[4]=(x=r[4])*n+(b=r[5])*s+(_=r[6])*h+(w=r[7])*g,t[5]=x*a+b*l+_*f+w*m,t[6]=x*i+b*c+_*p+w*v,t[7]=x*o+b*u+_*d+w*y,t[8]=(x=r[8])*n+(b=r[9])*s+(_=r[10])*h+(w=r[11])*g,t[9]=x*a+b*l+_*f+w*m,t[10]=x*i+b*c+_*p+w*v,t[11]=x*o+b*u+_*d+w*y,t[12]=(x=r[12])*n+(b=r[13])*s+(_=r[14])*h+(w=r[15])*g,t[13]=x*a+b*l+_*f+w*m,t[14]=x*i+b*c+_*p+w*v,t[15]=x*o+b*u+_*d+w*y,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 no,ao=ro;function io(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}no=new to(3),to!=Float32Array&&(no[0]=0,no[1]=0,no[2]=0),function(){var t=new to(4);to!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();var oo=(function(){var t=new to(2);to!=Float32Array&&(t[0]=0,t[1]=0)}(),function(t){function e(e){t.call(this,e,$i)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createBucket=function(t){return new Fi(t)},e.prototype.queryRadius=function(t){var e=t;return Xi(\"circle-radius\",this,e)+Xi(\"circle-stroke-width\",this,e)+Ji(this.paint.get(\"circle-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,a,i,o,s){for(var l=Ki(t,this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),i.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 so(t,e)}))}(l,s),f=u?c*o:c,p=0,d=n;pt.width||a.height>t.height||r.x>t.width-a.width||r.y>t.height-a.height)throw new RangeError(\"out of range source coordinates for image copy\");if(a.width>e.width||a.height>e.height||n.x>e.width-a.width||n.y>e.height-a.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=i=t[0],a=o=t[1];for(var d=r;di&&(i=s),l>o&&(o=l);c=0!==(c=Math.max(i-n,o-a))?1/c:0}return Mo(f,p,r,n,a,c),p}function ko(t,e,r,n,a){var i,o;if(a===Zo(t,e,r,n)>0)for(i=e;i=e;i-=n)o=Go(i,t[i],t[i+1],o);return o&&No(o,o.next)&&(Yo(o),o=o.next),o}function Ao(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!No(n,n.next)&&0!==Bo(n.prev,n,n.next))n=n.next;else{if(Yo(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function Mo(t,e,r,n,a,i,o){if(t){!o&&i&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=Oo(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=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)?(a=r,r=r.nextZ,s--):(a=n,n=n.nextZ,l--),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c*=2}while(o>1)}(a)}(t,n,a,i);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,i?Eo(t,n,a,i):So(t))e.push(s.i/r),e.push(t.i/r),e.push(l.i/r),Yo(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?Mo(t=Co(Ao(t),e,r),e,r,n,a,i,2):2===o&&Lo(t,e,r,n,a,i):Mo(Ao(t),e,r,n,a,i,1);break}}}function So(t){var e=t.prev,r=t,n=t.next;if(Bo(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(Ro(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&Bo(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function Eo(t,e,r,n){var a=t.prev,i=t,o=t.next;if(Bo(a,i,o)>=0)return!1;for(var s=a.x>i.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,l=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,c=Oo(a.x=c&&f&&f.z<=u;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(;h&&h.z>=c;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;f&&f.z<=u;){if(f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}return!0}function Co(t,e,r){var n=t;do{var a=n.prev,i=n.next.next;!No(a,i)&&jo(a,n,n.next,i)&&qo(a,i)&&qo(i,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(i.i/r),Yo(n),Yo(n.next),n=t=i),n=n.next}while(n!==t);return Ao(n)}function Lo(t,e,r,n,a,i){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Fo(o,s)){var l=Ho(o,s);return o=Ao(o,o.next),l=Ao(l,l.next),Mo(o,e,r,n,a,i),void Mo(l,e,r,n,a,i)}s=s.next}o=o.next}while(o!==t)}function Po(t,e){return t.x-e.x}function Io(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-1/0;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x=n.x&&n.x>=u&&a!==n.x&&Ro(ir.x||n.x===r.x&&zo(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=Ho(e,t);Ao(e,e.next),Ao(r,r.next)}}function zo(t,e){return Bo(t.prev,t,e.prev)<0&&Bo(e.next,t,t.next)<0}function Oo(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function Do(t){var e=t,r=t;do{(e.x=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(i-s)-(a-o)*(n-s)>=0}function Fo(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&&jo(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(qo(t,e)&&qo(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)*(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(Bo(t.prev,t,e.prev)||Bo(t,e.prev,e))||No(t,e)&&Bo(t.prev,t,t.next)>0&&Bo(e.prev,e,e.next)>0)}function Bo(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function No(t,e){return t.x===e.x&&t.y===e.y}function jo(t,e,r,n){var a=Uo(Bo(t,e,r)),i=Uo(Bo(t,e,n)),o=Uo(Bo(r,n,t)),s=Uo(Bo(r,n,e));return a!==i&&o!==s||!(0!==a||!Vo(t,r,e))||!(0!==i||!Vo(t,n,e))||!(0!==o||!Vo(r,t,n))||!(0!==s||!Vo(r,e,n))}function Vo(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 Uo(t){return t>0?1:t<0?-1:0}function qo(t,e){return Bo(t.prev,t,t.next)<0?Bo(t,e,t.next)>=0&&Bo(t,t.prev,e)>=0:Bo(t,e,t.prev)<0||Bo(t,t.next,e)<0}function Ho(t,e){var r=new Wo(t.i,t.x,t.y),n=new Wo(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function Go(t,e,r,n){var a=new Wo(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function Yo(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 Wo(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 Zo(t,e,r,n){for(var a=0,i=e,o=r-n;in;){if(a-n>600){var o=a-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);t(e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(a,Math.floor(r+(o-s)*c/o+u)),i)}var h=e[r],f=n,p=a;for(Jo(e,n,r),i(e[a],h)>0&&Jo(e,n,a);f0;)p--}0===i(e[n],h)?Jo(e,n,p):Jo(e,++p,a),p<=r&&(n=p+1),r<=p&&(a=p-1)}}(t,e,r||0,n||t.length-1,a||Ko)}function Jo(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function Ko(t,e){return te?1:0}function Qo(t,e){var r=t.length;if(r<=1)return[t];for(var n,a,i=[],o=0;o1)for(var l=0;l0&&r.holes.push(n+=t[a-1].length)}return r},_o.default=wo;var rs=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 Aa,this.indexArray=new Fa,this.indexArray2=new qa,this.programConfigurations=new Pi(bo,t.layers,t.zoom),this.segments=new ai,this.segments2=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};rs.prototype.populate=function(t,e,r){this.hasPattern=ts(\"fill\",this.layers,e);for(var n=this.layers[0].layout.get(\"fill-sort-key\"),a=[],i=0,o=t;i>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},ls.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,a=0,i=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(n--,1===r||2===r)(a+=t.readSVarint())s&&(s=a),(i+=t.readSVarint())c&&(c=i);else if(7!==r)throw new Error(\"unknown command \"+r)}return[o,l,s,c]},ls.prototype.toGeoJSON=function(t,e,r){var n,a,i=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=ls.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 ds(t,e,r){if(3===t){var n=new hs(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}fs.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 ss(this._pbf,e,this.extent,this._keys,this._values)};var gs={VectorTile:function(t,e){this.layers=t.readFields(ds,{},e)},VectorTileFeature:ss,VectorTileLayer:hs},ms=gs.VectorTileFeature.types,vs=Math.pow(2,13);function ys(t,e,r,n,a,i,o,s){t.emplaceBack(e,r,2*Math.floor(n*vs)+o,a*vs*2,i*vs*2,Math.round(s))}var xs=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 Sa,this.indexArray=new Fa,this.programConfigurations=new Pi(os,t.layers,t.zoom),this.segments=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function bs(t,e){return t.x===e.x&&(t.x<0||t.x>8192)||t.y===e.y&&(t.y<0||t.y>8192)}xs.prototype.populate=function(t,e,r){this.features=[],this.hasPattern=ts(\"fill-extrusion\",this.layers,e);for(var n=0,a=t;n8192}))||I.every((function(t){return t.y<0}))||I.every((function(t){return t.y>8192}))))for(var g=0,m=0;m=1){var y=d[m-1];if(!bs(v,y)){h.vertexLength+4>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=v.sub(y)._perp()._unit(),b=y.dist(v);g+b>32768&&(g=0),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,0,g),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,1,g),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,g+=b),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,g);var _=h.vertexLength;this.indexArray.emplaceBack(_,_+2,_+1),this.indexArray.emplaceBack(_+1,_+2,_+3),h.vertexLength+=4,h.primitiveLength+=2}}}}if(h.vertexLength+l>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),\"Polygon\"===ms[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&&v>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,g,0,0,f),p=M}}var S=p&&d,E=S?r:s?\"butt\":n;if(S&&\"round\"===E&&(_a&&(E=\"bevel\"),\"bevel\"===E&&(_>2&&(E=\"flipbevel\"),_100)y=m.mult(-1);else{var C=_*g.add(m).mag()/g.sub(m).mag();y._perp()._mult(C*(k?-1:1))}this.addCurrentVertex(u,y,0,0,f),this.addCurrentVertex(u,y.mult(-1),0,0,f)}else if(\"bevel\"===E||\"fakeround\"===E){var L=-Math.sqrt(_*_-1),P=k?L:0,I=k?0:L;if(p&&this.addCurrentVertex(u,g,P,I,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,m,0,0,f),u=j}}}}},Cs.prototype.addCurrentVertex=function(t,e,r,n,a,i){void 0===i&&(i=!1);var o=e.y*n-e.x,s=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,i,!1,r,a),this.addHalfVertex(t,o,s,i,!0,-n,a),this.distance>Es/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,r,n,a,i))},Cs.prototype.addHalfVertex=function(t,e,r,n,a,i,o){var s=.5*this.scaledDistance;this.layoutVertexArray.emplaceBack((t.x<<1)+(n?1:0),(t.y<<1)+(a?1:0),Math.round(63*e)+128,Math.round(63*r)+128,1+(0===i?0:i<0?-1:1)|(63&s)<<2,s>>6);var l=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),o.primitiveLength++),a?this.e2=l:this.e1=l},Cs.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(Es-1):this.distance},Cs.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},Dn(\"LineBucket\",Cs,{omit:[\"layers\",\"patternFeatures\"]});var Ls=new ya({\"line-cap\":new pa(Mt.layout_line[\"line-cap\"]),\"line-join\":new da(Mt.layout_line[\"line-join\"]),\"line-miter-limit\":new pa(Mt.layout_line[\"line-miter-limit\"]),\"line-round-limit\":new pa(Mt.layout_line[\"line-round-limit\"]),\"line-sort-key\":new da(Mt.layout_line[\"line-sort-key\"])}),Ps={paint:new ya({\"line-opacity\":new da(Mt.paint_line[\"line-opacity\"]),\"line-color\":new da(Mt.paint_line[\"line-color\"]),\"line-translate\":new pa(Mt.paint_line[\"line-translate\"]),\"line-translate-anchor\":new pa(Mt.paint_line[\"line-translate-anchor\"]),\"line-width\":new da(Mt.paint_line[\"line-width\"]),\"line-gap-width\":new da(Mt.paint_line[\"line-gap-width\"]),\"line-offset\":new da(Mt.paint_line[\"line-offset\"]),\"line-blur\":new da(Mt.paint_line[\"line-blur\"]),\"line-dasharray\":new ma(Mt.paint_line[\"line-dasharray\"]),\"line-pattern\":new ga(Mt.paint_line[\"line-pattern\"]),\"line-gradient\":new va(Mt.paint_line[\"line-gradient\"])}),layout:Ls},Is=new(function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.possiblyEvaluate=function(e,r){return r=new aa(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,a){return r=u({},r,{zoom:Math.floor(r.zoom)}),t.prototype.evaluate.call(this,e,r,n,a)},e}(da))(Ps.paint.properties[\"line-width\"].specification);Is.useIntegerZoom=!0;var zs=function(t){function e(e){t.call(this,e,Ps)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){\"line-gradient\"===t&&this._updateGradient()},e.prototype._updateGradient=function(){this.gradient=mo(this._transitionablePaint._values[\"line-gradient\"].value.expression,\"lineProgress\"),this.gradientTexture=null},e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r),this.paint._values[\"line-floorwidth\"]=Is.possiblyEvaluate(this._transitioningPaint._values[\"line-width\"].value,e)},e.prototype.createBucket=function(t){return new Cs(t)},e.prototype.queryRadius=function(t){var e=t,r=Os(Xi(\"line-width\",this,e),Xi(\"line-gap-width\",this,e)),n=Xi(\"line-offset\",this,e);return r/2+Math.abs(n)+Ji(this.paint.get(\"line-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s){var l=Ki(t,this.paint.get(\"line-translate\"),this.paint.get(\"line-translate-anchor\"),o.angle,s),c=s/2*Os(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 i=0;i0?e+2*t:t}var Ds=Ta([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),Rs=Ta([{name:\"a_projected_pos\",components:3,type:\"Float32\"}],4),Fs=(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\"}])),Bs=(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)),Ns=Ta([{name:\"a_pos\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);function js(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()),na.applyArabicShaping&&(t=na.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 Vs={\"!\":\"\\ufe15\",\"#\":\"\\uff03\",$:\"\\uff04\",\"%\":\"\\uff05\",\"&\":\"\\uff06\",\"(\":\"\\ufe35\",\")\":\"\\ufe36\",\"*\":\"\\uff0a\",\"+\":\"\\uff0b\",\",\":\"\\ufe10\",\"-\":\"\\ufe32\",\".\":\"\\u30fb\",\"/\":\"\\uff0f\",\":\":\"\\ufe13\",\";\":\"\\ufe14\",\"<\":\"\\ufe3f\",\"=\":\"\\uff1d\",\">\":\"\\ufe40\",\"?\":\"\\ufe16\",\"@\":\"\\uff20\",\"[\":\"\\ufe47\",\"\\\\\":\"\\uff3c\",\"]\":\"\\ufe48\",\"^\":\"\\uff3e\",_:\"\\ufe33\",\"`\":\"\\uff40\",\"{\":\"\\ufe37\",\"|\":\"\\u2015\",\"}\":\"\\ufe38\",\"~\":\"\\uff5e\",\"\\xa2\":\"\\uffe0\",\"\\xa3\":\"\\uffe1\",\"\\xa5\":\"\\uffe5\",\"\\xa6\":\"\\uffe4\",\"\\xac\":\"\\uffe2\",\"\\xaf\":\"\\uffe3\",\"\\u2013\":\"\\ufe32\",\"\\u2014\":\"\\ufe31\",\"\\u2018\":\"\\ufe43\",\"\\u2019\":\"\\ufe44\",\"\\u201c\":\"\\ufe41\",\"\\u201d\":\"\\ufe42\",\"\\u2026\":\"\\ufe19\",\"\\u2027\":\"\\u30fb\",\"\\u20a9\":\"\\uffe6\",\"\\u3001\":\"\\ufe11\",\"\\u3002\":\"\\ufe12\",\"\\u3008\":\"\\ufe3f\",\"\\u3009\":\"\\ufe40\",\"\\u300a\":\"\\ufe3d\",\"\\u300b\":\"\\ufe3e\",\"\\u300c\":\"\\ufe41\",\"\\u300d\":\"\\ufe42\",\"\\u300e\":\"\\ufe43\",\"\\u300f\":\"\\ufe44\",\"\\u3010\":\"\\ufe3b\",\"\\u3011\":\"\\ufe3c\",\"\\u3014\":\"\\ufe39\",\"\\u3015\":\"\\ufe3a\",\"\\u3016\":\"\\ufe17\",\"\\u3017\":\"\\ufe18\",\"\\uff01\":\"\\ufe15\",\"\\uff08\":\"\\ufe35\",\"\\uff09\":\"\\ufe36\",\"\\uff0c\":\"\\ufe10\",\"\\uff0d\":\"\\ufe32\",\"\\uff0e\":\"\\u30fb\",\"\\uff1a\":\"\\ufe13\",\"\\uff1b\":\"\\ufe14\",\"\\uff1c\":\"\\ufe3f\",\"\\uff1e\":\"\\ufe40\",\"\\uff1f\":\"\\ufe16\",\"\\uff3b\":\"\\ufe47\",\"\\uff3d\":\"\\ufe48\",\"\\uff3f\":\"\\ufe33\",\"\\uff5b\":\"\\ufe37\",\"\\uff5c\":\"\\u2015\",\"\\uff5d\":\"\\ufe38\",\"\\uff5f\":\"\\ufe35\",\"\\uff60\":\"\\ufe36\",\"\\uff61\":\"\\ufe12\",\"\\uff62\":\"\\ufe41\",\"\\uff63\":\"\\ufe42\"},Us=function(t,e,r,n,a){var i,o,s=8*a-n-1,l=(1<>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},qs=function(t,e,r,n,a,i){var o,s,l,c=8*i-a-1,u=(1<>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+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,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g},Hs=Gs;function Gs(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}Gs.Varint=0,Gs.Fixed64=1,Gs.Bytes=2,Gs.Fixed32=5;var Ys=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf8\");function Ws(t){return t.type===Gs.Bytes?t.readVarint()+t.pos:t.pos+1}function Zs(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function Xs(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 a=r.pos-1;a>=t;a--)r.buf[a+n]=r.buf[a]}function Js(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function sl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function ll(t,e,r){1===t&&r.readMessage(cl,e)}function cl(t,e,r){if(3===t){var n=r.readMessage(ul,{}),a=n.width,i=n.height,o=n.left,s=n.top,l=n.advance;e.push({id:n.id,bitmap:new fo({width:a+6,height:i+6},n.bitmap),metrics:{width:a,height:i,left:o,top:s,advance:l}})}}function ul(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())}function hl(t){for(var e=0,r=0,n=0,a=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();f>3,i=this.pos;this.type=7&n,t(a,e,this),this.pos===i&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=il(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=sl(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=il(this.buf,this.pos)+4294967296*il(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=il(this.buf,this.pos)+4294967296*sl(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=Us(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Us(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,a,i=r.buf;if(n=(112&(a=i[r.pos++]))>>4,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<3,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<10,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<17,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<24,a<128)return Zs(t,n,e);if(n|=(1&(a=i[r.pos++]))<<31,a<128)return Zs(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&&Ys?function(t,e,r){return Ys.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n=\"\",a=e;a239?4:l>223?3:l>191?2:1;if(a+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(i=t[a+1]))&&(c=(31&l)<<6|63&i)<=127&&(c=null):3===u?(o=t[a+2],128==(192&(i=t[a+1]))&&128==(192&o)&&((c=(15&l)<<12|(63&i)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(o=t[a+2],s=t[a+3],128==(192&(i=t[a+1]))&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&i)<<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),a+=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!==Gs.Bytes)return t.push(this.readVarint(e));var r=Ws(this);for(t=t||[];this.pos127;);else if(e===Gs.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Gs.Fixed32)this.pos+=4;else{if(e!==Gs.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,r.buf[r.pos]=127&(t>>>=7)}(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,a,i=0;i55295&&n<57344){if(!a){n>56319||i+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):a=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,a=n;continue}n=a-55296<<10|n-56320|65536,a=null}else a&&(t[r++]=239,t[r++]=191,t[r++]=189,a=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&&Xs(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),qs(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),qs(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&&Xs(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,Gs.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Js,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Ks,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,tl,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Qs,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,$s,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,el,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,rl,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,nl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,al,e)},writeBytesField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var fl=function(t,e){var r=e.pixelRatio,n=e.version,a=e.stretchX,i=e.stretchY,o=e.content;this.paddedRect=t,this.pixelRatio=r,this.stretchX=a,this.stretchY=i,this.content=o,this.version=n},pl={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};pl.tl.get=function(){return[this.paddedRect.x+1,this.paddedRect.y+1]},pl.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]},pl.tlbr.get=function(){return this.tl.concat(this.br)},pl.displaySize.get=function(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]},Object.defineProperties(fl.prototype,pl);var dl=function(t,e){var r={},n={};this.haveRenderCallbacks=[];var a=[];this.addImages(t,r,a),this.addImages(e,n,a);var i=hl(a),o=new po({width:i.w||1,height:i.h||1});for(var s in t){var l=t[s],c=r[s].paddedRect;po.copy(l.data,o,{x:0,y:0},{x:c.x+1,y:c.y+1},l.data)}for(var u in e){var h=e[u],f=n[u].paddedRect,p=f.x+1,d=f.y+1,g=h.data.width,m=h.data.height;po.copy(h.data,o,{x:0,y:0},{x:p,y:d},h.data),po.copy(h.data,o,{x:0,y:m-1},{x:p,y:d-1},{width:g,height:1}),po.copy(h.data,o,{x:0,y:0},{x:p,y:d+m},{width:g,height:1}),po.copy(h.data,o,{x:g-1,y:0},{x:p-1,y:d},{width:1,height:m}),po.copy(h.data,o,{x:0,y:0},{x:p+g,y:d},{width:1,height:m})}this.image=o,this.iconPositions=r,this.patternPositions=n};dl.prototype.addImages=function(t,e,r){for(var n in t){var a=t[n],i={x:0,y:0,w:a.data.width+2,h:a.data.height+2};r.push(i),e[n]=new fl(i,a),a.hasRenderCallback&&this.haveRenderCallbacks.push(n)}},dl.prototype.patchUpdatedImages=function(t,e){for(var r in t.dispatchRenderCallbacks(this.haveRenderCallbacks),t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)},dl.prototype.patchUpdatedImage=function(t,e,r){if(t&&e&&t.version!==e.version){t.version=e.version;var n=t.tl;r.update(e.data,void 0,{x:n[0],y:n[1]})}},Dn(\"ImagePosition\",fl),Dn(\"ImageAtlas\",dl);var gl={horizontal:1,vertical:2,horizontalOnly:3},ml=function(){this.scale=1,this.fontStack=\"\",this.imageName=null};ml.forText=function(t,e){var r=new ml;return r.scale=t||1,r.fontStack=e,r},ml.forImage=function(t){var e=new ml;return e.imageName=t,e};var vl=function(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function yl(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=vl.fromFeature(t,a);h===gl.vertical&&v.verticalizePunctuation();var y=na.processBidirectionalText,x=na.processStyledBidirectionalText;if(y&&1===v.sections.length){m=[];for(var b=0,_=y(v.toString(),Al(v,c,i,e,n,p,d));b<_.length;b+=1){var w=_[b],T=new vl;T.text=w,T.sections=v.sections;for(var k=0;k0&&B>A&&(A=B)}else{var N=r[S.fontStack],j=N&&N[C];if(j&&j.rect)I=j.rect,P=j.metrics;else{var V=e[S.fontStack],U=V&&V[C];if(!U)continue;P=U.metrics}L=24*(_-S.scale)}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:P,rect:I}),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:P,rect:I}),f+=P.advance*S.scale+c)}0!==k.length&&(d=Math.max(f-c,d),Sl(k,0,k.length-1,m,A)),f=0;var q=i*_+A;T.lineOffset=Math.max(A,w),p+=q,g=Math.max(q,g),++v}else p+=i,++v}var H,G=p- -17,Y=Ml(o),W=Y.horizontalAlign,Z=Y.verticalAlign;(function(t,e,r,n,a,i,o,s,l){var c,u=(e-r)*a;c=i!==o?-s*n- -17:(-n*l+.5)*o;for(var h=0,f=t;h=0&&n>=t&&xl[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(t,r),this.sectionIndex=this.sectionIndex.slice(t,r)},vl.prototype.substring=function(t,e){var r=new vl;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r},vl.prototype.toString=function(){return this.text},vl.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,r){return Math.max(e,t.sections[r].scale)}),0)},vl.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(ml.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 xl={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},bl={};function _l(t,e,r,n,a,i){if(e.imageName){var o=n[e.imageName];return o?o.displaySize[0]*e.scale*24/i+a:0}var s=r[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+a:0}function wl(t,e,r,n){var a=Math.pow(t-e,2);return n?t=0,h=0,f=0;f-r/2;){if(--o<0)return!1;s-=t[o].dist(i),i=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;sn;)c-=l.shift().angleDelta;if(c>a)return!1;o++,s+=u.dist(h)}return!0}function Dl(t){for(var e=0,r=0;rc){var d=(c-l)/p,g=Ve(h.x,f.x,d),m=Ve(h.y,f.y,d),v=new Cl(g,m,f.angleTo(h),u);return v._round(),!o||Ol(t,v,s,o,e)?v:void 0}l+=p}}function Nl(t,e,r,n,a,i,o,s,l){var c=Rl(n,i,o),u=Fl(n,a),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&&w=0&&p+u<=h){var T=new Cl(_,w,x,g);T._round(),a&&!Ol(e,T,o,a,i)||d.push(T)}}f+=y}return l||d.length||s||(d=t(e,f/2,n,a,i,o,s,!0,c)),d}(t,f?e/2*s%e:(u/2+2*i)*o*s%e,e,c,r,h,f,!1,l)}function jl(t,e,r,n,i){for(var o=[],s=0;s=n&&f.x>=n||(h.x>=n?h=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round():f.x>=n&&(f=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round()),h.y>=i&&f.y>=i||(h.y>=i?h=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round():f.y>=i&&(f=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round()),c&&h.equals(c[c.length-1])||o.push(c=[h]),c.push(f)))))}return o}function Vl(t,e,r,n){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2,c=o.paddedRect.h-2,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]},g=f.reduce(d,0),m=p.reduce(d,0),v=l-g,y=c-m,x=0,b=g,_=0,w=m,T=0,k=v,A=0,M=y;if(o.content&&n){var S=o.content;x=Ul(f,0,S[0]),_=Ul(p,0,S[1]),b=Ul(f,S[0],S[2]),w=Ul(p,S[1],S[3]),T=S[0]-x,A=S[1]-_,k=S[2]-S[0]-b,M=S[3]-S[1]-w}var E=function(n,i,l,c){var f=Hl(n.stretch-x,b,u,t.left),p=Gl(n.fixed-T,k,n.stretch,g),d=Hl(i.stretch-_,w,h,t.top),v=Gl(i.fixed-A,M,i.stretch,m),y=Hl(l.stretch-x,b,u,t.left),S=Gl(l.fixed-T,k,l.stretch,g),E=Hl(c.stretch-_,w,h,t.top),C=Gl(c.fixed-A,M,c.stretch,m),L=new a(f,d),P=new a(y,d),I=new a(y,E),z=new a(f,E),O=new a(p/s,v/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),P._matMult(N),z._matMult(N),I._matMult(N)}var j=n.stretch+n.fixed,V=i.stretch+i.fixed;return{tl:L,tr:P,bl:z,br:I,tex:{x:o.paddedRect.x+1+j,y:o.paddedRect.y+1+V,w:l.stretch+l.fixed-j,h:c.stretch+c.fixed-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=ql(f,v,g),L=ql(p,y,m),P=0;P0&&(d=Math.max(10,d),this.circleDiameter=d)}else{var g=o.top*s-l,m=o.bottom*s+l,v=o.left*s-l,y=o.right*s+l,x=o.collisionPadding;if(x&&(v-=x[0]*s,g-=x[1]*s,y+=x[2]*s,m+=x[3]*s),u){var b=new a(v,g),_=new a(y,g),w=new a(v,m),T=new a(y,m),k=u*Math.PI/180;b._rotate(k),_._rotate(k),w._rotate(k),T._rotate(k),v=Math.min(b.x,_.x,w.x,T.x),y=Math.max(b.x,_.x,w.x,T.x),g=Math.min(b.y,_.y,w.y,T.y),m=Math.max(b.y,_.y,w.y,T.y)}t.emplaceBack(e.x,e.y,v,g,y,m,r,n,i)}this.boxEndIndex=t.length},Wl=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Zl),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 Zl(t,e){return te?1:0}function Xl(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=Math.min(o-n,s-i),f=h/2,p=new Wl([],Jl);if(0===h)return new a(n,i);for(var d=n;dm.d||!m.d)&&(m=y,r&&console.log(\"found best %d after %d probes\",Math.round(1e4*y.d)/1e4,v)),y.max-m.d<=e||(p.push(new Kl(y.p.x-(f=y.h/2),y.p.y-f,f,t)),p.push(new Kl(y.p.x+f,y.p.y-f,f,t)),p.push(new Kl(y.p.x-f,y.p.y+f,f,t)),p.push(new Kl(y.p.x+f,y.p.y+f,f,t)),v+=4)}return r&&(console.log(\"num probes: \"+v),console.log(\"best distance: \"+m.d)),m.p}function Jl(t,e){return e.max-t.max}function Kl(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,a=0;at.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,Gi(t,c,u))}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}Wl.prototype.push=function(t){this.data.push(t),this.length++,this._up(this.length-1)},Wl.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}},Wl.prototype.peek=function(){return this.data[0]},Wl.prototype._up=function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var a=t-1>>1,i=e[a];if(r(n,i)>=0)break;e[t]=i,t=a}e[t]=n},Wl.prototype._down=function(t){for(var e=this.data,r=this.compare,n=this.length>>1,a=e[t];t=0)break;e[t]=o,t=i}e[t]=a};var Ql=Number.POSITIVE_INFINITY;function $l(t,e){return e[1]!==Ql?function(t,e,r){var n=0,a=0;switch(e=Math.abs(e),r=Math.abs(r),t){case\"top-right\":case\"top-left\":case\"top\":a=r-7;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":a=7-r}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,a]}(t,e[0],e[1]):function(t,e){var r=0,n=0;e<0&&(e=0);var a=e/Math.sqrt(2);switch(t){case\"top-right\":case\"top-left\":n=a-7;break;case\"bottom-right\":case\"bottom-left\":n=7-a;break;case\"bottom\":n=7-e;break;case\"top\":n=e-7}switch(t){case\"top-right\":case\"bottom-right\":r=-a;break;case\"top-left\":case\"bottom-left\":r=a;break;case\"left\":r=e;break;case\"right\":r=-e}return[r,n]}(t,e[0])}function tc(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 ec(t,e,r,n,i,o,s,l,c,u,h,f,p,d,g){var m=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;h32640&&_(t.layerIds[0]+': Value for \"text-size\" is >= 255. Reduce your \"text-size\".'):\"composite\"===v.kind&&((y=[128*d.compositeTextSizes[0].evaluate(s,{},g),128*d.compositeTextSizes[1].evaluate(s,{},g)])[0]>32640||y[1]>32640)&&_(t.layerIds[0]+': Value for \"text-size\" is >= 255. Reduce your \"text-size\".'),t.addSymbols(t.text,m,y,l,o,s,u,e,c.lineStartIndex,c.lineLength,p,g);for(var x=0,b=h;x=0;o--)if(n.dist(i[o])0)&&(\"constant\"!==i.value.kind||i.value.value.length>0),c=\"constant\"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=a.get(\"symbol-sort-key\");if(this.features=[],l||c){for(var h=e.iconDependencies,f=e.glyphDependencies,p=e.availableImages,d=new aa(this.zoom),g=0,m=t;g=0;for(var z=0,O=k.sections;z=0;s--)i[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:a},s>0&&(a+=e[s-1].dist(e[s]));for(var l=0;l0},hc.prototype.hasIconData=function(){return this.icon.segments.get().length>0},hc.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},hc.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},hc.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},hc.prototype.addIndicesForPlacedSymbol=function(t,e){for(var r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs,a=r.vertexStartIndex;a1||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)}},Dn(\"SymbolBucket\",hc,{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),hc.MAX_GLYPHS=65535,hc.addDynamicAttributes=sc;var fc=new ya({\"symbol-placement\":new pa(Mt.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new pa(Mt.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new pa(Mt.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new da(Mt.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new pa(Mt.layout_symbol[\"symbol-z-order\"]),\"icon-allow-overlap\":new pa(Mt.layout_symbol[\"icon-allow-overlap\"]),\"icon-ignore-placement\":new pa(Mt.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new pa(Mt.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new pa(Mt.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new da(Mt.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new pa(Mt.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new pa(Mt.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new da(Mt.layout_symbol[\"icon-image\"]),\"icon-rotate\":new da(Mt.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new pa(Mt.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new pa(Mt.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new da(Mt.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new da(Mt.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new pa(Mt.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new pa(Mt.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new pa(Mt.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new da(Mt.layout_symbol[\"text-field\"]),\"text-font\":new da(Mt.layout_symbol[\"text-font\"]),\"text-size\":new da(Mt.layout_symbol[\"text-size\"]),\"text-max-width\":new da(Mt.layout_symbol[\"text-max-width\"]),\"text-line-height\":new pa(Mt.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new da(Mt.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new da(Mt.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new da(Mt.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new pa(Mt.layout_symbol[\"text-variable-anchor\"]),\"text-anchor\":new da(Mt.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new pa(Mt.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new pa(Mt.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new da(Mt.layout_symbol[\"text-rotate\"]),\"text-padding\":new pa(Mt.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new pa(Mt.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new da(Mt.layout_symbol[\"text-transform\"]),\"text-offset\":new da(Mt.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new pa(Mt.layout_symbol[\"text-allow-overlap\"]),\"text-ignore-placement\":new pa(Mt.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new pa(Mt.layout_symbol[\"text-optional\"])}),pc={paint:new ya({\"icon-opacity\":new da(Mt.paint_symbol[\"icon-opacity\"]),\"icon-color\":new da(Mt.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new da(Mt.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new da(Mt.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new da(Mt.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new pa(Mt.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new pa(Mt.paint_symbol[\"icon-translate-anchor\"]),\"text-opacity\":new da(Mt.paint_symbol[\"text-opacity\"]),\"text-color\":new da(Mt.paint_symbol[\"text-color\"],{runtimeType:Bt,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),\"text-halo-color\":new da(Mt.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new da(Mt.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new da(Mt.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new pa(Mt.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new pa(Mt.paint_symbol[\"text-translate-anchor\"])}),layout:fc},dc=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:Ot,this.defaultValue=t};dc.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},dc.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},dc.prototype.outputDefined=function(){return!1},dc.prototype.serialize=function(){return null},Dn(\"FormatSectionOverride\",dc,{omit:[\"defaultValue\"]});var gc=function(t){function e(e){t.call(this,e,pc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.recalculate=function(e,r){if(t.prototype.recalculate.call(this,e,r),\"auto\"===this.layout.get(\"icon-rotation-alignment\")&&(this.layout._values[\"icon-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-rotation-alignment\")&&(this.layout._values[\"text-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"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 a=[],i=0,o=n;i\",targetMapId:n,sourceMapId:i.mapId})}}},Cc.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 k()||e.mustQueue?(this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,e)},Cc.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)}},Cc.prototype.processTask=function(t,e){var r=this;if(\"\"===e.type){var n=this.callbacks[t];delete this.callbacks[t],n&&(e.error?n(jn(e.error)):n(null,jn(e.data)))}else{var a=!1,i=S(this.globalScope)?void 0:[],o=e.hasCallback?function(e,n){a=!0,delete r.cancelCallbacks[t],r.target.postMessage({id:t,type:\"\",sourceMapId:r.mapId,error:e?Nn(e):null,data:Nn(n,i)},i)}:function(t){a=!0},s=null,l=jn(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));!a&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},Cc.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener(\"message\",this.receive,!1)};var Pc=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]))};Pc.prototype.setNorthEast=function(t){return this._ne=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.setSouthWest=function(t){return this._sw=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.extend=function(t){var e,r,n=this._sw,a=this._ne;if(t instanceof Ic)e=t,r=t;else{if(!(t instanceof Pc))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(Pc.convert(t)):this.extend(Ic.convert(t)):this;if(r=t._ne,!(e=t._sw)||!r)return this}return n||a?(n.lng=Math.min(e.lng,n.lng),n.lat=Math.min(e.lat,n.lat),a.lng=Math.max(r.lng,a.lng),a.lat=Math.max(r.lat,a.lat)):(this._sw=new Ic(e.lng,e.lat),this._ne=new Ic(r.lng,r.lat)),this},Pc.prototype.getCenter=function(){return new Ic((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Pc.prototype.getSouthWest=function(){return this._sw},Pc.prototype.getNorthEast=function(){return this._ne},Pc.prototype.getNorthWest=function(){return new Ic(this.getWest(),this.getNorth())},Pc.prototype.getSouthEast=function(){return new Ic(this.getEast(),this.getSouth())},Pc.prototype.getWest=function(){return this._sw.lng},Pc.prototype.getSouth=function(){return this._sw.lat},Pc.prototype.getEast=function(){return this._ne.lng},Pc.prototype.getNorth=function(){return this._ne.lat},Pc.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Pc.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},Pc.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Pc.prototype.contains=function(t){var e=Ic.convert(t),r=e.lng,n=e.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),this._sw.lat<=n&&n<=this._ne.lat&&a},Pc.convert=function(t){return!t||t instanceof Pc?t:new Pc(t)};var Ic=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\")};Ic.prototype.wrap=function(){return new Ic(c(this.lng,-180,180),this.lat)},Ic.prototype.toArray=function(){return[this.lng,this.lat]},Ic.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},Ic.prototype.distanceTo=function(t){var e=Math.PI/180,r=this.lat*e,n=t.lat*e,a=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return 6371008.8*Math.acos(Math.min(a,1))},Ic.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 Pc(new Ic(this.lng-r,this.lat-e),new Ic(this.lng+r,this.lat+e))},Ic.convert=function(t){if(t instanceof Ic)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Ic(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new Ic(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 zc=2*Math.PI*6371008.8;function Oc(t){return zc*Math.cos(t*Math.PI/180)}function Dc(t){return(180+t)/360}function Rc(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Fc(t,e){return t/Oc(e)}function Bc(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}var Nc=function(t,e,r){void 0===r&&(r=0),this.x=+t,this.y=+e,this.z=+r};Nc.fromLngLat=function(t,e){void 0===e&&(e=0);var r=Ic.convert(t);return new Nc(Dc(r.lng),Rc(r.lat),Fc(e,r.lat))},Nc.prototype.toLngLat=function(){return new Ic(360*this.x-180,Bc(this.y))},Nc.prototype.toAltitude=function(){return this.z*Oc(Bc(this.y))},Nc.prototype.meterInMercatorCoordinateUnits=function(){return 1/zc*(t=Bc(this.y),1/Math.cos(t*Math.PI/180));var t};var jc=function(t,e,r){this.z=t,this.x=e,this.y=r,this.key=qc(0,t,t,e,r)};jc.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},jc.prototype.url=function(t,e){var r,n,a,i,o,s=(n=this.y,a=this.z,i=Lc(256*(r=this.x),256*(n=Math.pow(2,a)-n-1),a),o=Lc(256*(r+1),256*(n+1),a),i[0]+\",\"+i[1]+\",\"+o[0]+\",\"+o[1]),l=function(t,e,r){for(var n,a=\"\",i=t;i>0;i--)a+=(e&(n=1<this.canonical.z?new Uc(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Uc(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},Uc.prototype.calculateScaledKey=function(t,e){var r=this.canonical.z-t;return t>this.canonical.z?qc(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):qc(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)},Uc.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},Uc.prototype.children=function(t){if(this.overscaledZ>=t)return[new Uc(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 Uc(e,this.wrap,e,r,n),new Uc(e,this.wrap,e,r+1,n),new Uc(e,this.wrap,e,r,n+1),new Uc(e,this.wrap,e,r+1,n+1)]},Uc.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)},Hc.prototype._unpackMapbox=function(t,e,r){return(256*t*256+256*e+r)/10-1e4},Hc.prototype._unpackTerrarium=function(t,e,r){return 256*t+e+r/256-32768},Hc.prototype.getPixels=function(){return new po({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Hc.prototype.backfillBorder=function(t,e,r){if(this.dim!==t.dim)throw new Error(\"dem dimension mismatch\");var n=e*this.dim,a=e*this.dim+this.dim,i=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=a-1;break;case 1:a=n+1}switch(r){case-1:i=o-1;break;case 1:o=i+1}for(var s=-e*this.dim,l=-r*this.dim,c=i;c=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Xc.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new gs.VectorTile(new Hs(this.rawTileData)).layers,this.sourceLayerCoder=new Gc(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"])),this.vtLayers},Xc.prototype.query=function(t,e,r,n){var i=this;this.loadVTLayers();for(var o=t.params||{},s=8192/t.tileSize/t.scale,l=rn(o.filter),c=t.queryGeometry,u=t.queryPadding*s,h=Kc(c),f=this.grid.query(h.minX-u,h.minY-u,h.maxX+u,h.maxY+u),p=Kc(t.cameraQueryGeometry),d=0,g=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}(i,h)){var f=this.sourceLayerCoder.decode(r),p=this.vtLayers[f].feature(n);if(a.filter(new aa(this.tileID.overscaledZ),p))for(var d=this.getId(p,f),g=0;gn)a=!1;else if(e)if(this.expirationTimeot&&(t.getActor().send(\"enforceCacheSizeLimit\",it),ut=0)},t.clamp=l,t.clearTileCache=function(t){var e=self.caches.delete(\"mapbox-tiles\");t&&e.catch(t).then((function(){return t()}))},t.clipLine=jl,t.clone=function(t){var e=new to(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=x,t.clone$2=function(t){var e=new to(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=Ns,t.config=F,t.create=function(){var t=new to(16);return to!=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 to(9);return to!=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 to(4);return to!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},t.createCommonjsModule=e,t.createExpression=qr,t.createLayout=Ta,t.createStyleLayer=function(t){return\"custom\"===t.type?new bc(t):new _c[t.type](t)},t.cross=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*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&&(i=1/Math.sqrt(i)),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t},t.number=Ve,t.offscreenCanvasSupported=ht,t.ortho=function(t,e,r,n,a,i,o){var s=1/(e-r),l=1/(n-a),c=1/(i-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]=(a+n)*l,t[14]=(o+i)*c,t[15]=1,t},t.parseGlyphPBF=function(t){return new Hs(t).readFields(ll,[])},t.pbf=Hs,t.performSymbolLayout=function(t,e,r,n,a,i,o){t.createArrays(),t.tilePixelRatio=8192/(512*t.overscaling),t.compareText={},t.iconsNeedLinear=!1;var s=t.layers[0].layout,l=t.layers[0]._unevaluatedLayout._values,c={};if(\"composite\"===t.textSizeData.kind){var u=t.textSizeData,h=u.maxZoom;c.compositeTextSizes=[l[\"text-size\"].possiblyEvaluate(new aa(u.minZoom),o),l[\"text-size\"].possiblyEvaluate(new aa(h),o)]}if(\"composite\"===t.iconSizeData.kind){var f=t.iconSizeData,p=f.maxZoom;c.compositeIconSizes=[l[\"icon-size\"].possiblyEvaluate(new aa(f.minZoom),o),l[\"icon-size\"].possiblyEvaluate(new aa(p),o)]}c.layoutTextSize=l[\"text-size\"].possiblyEvaluate(new aa(t.zoom+1),o),c.layoutIconSize=l[\"icon-size\"].possiblyEvaluate(new aa(t.zoom+1),o),c.textMaxSize=l[\"text-size\"].possiblyEvaluate(new aa(18));for(var d=24*s.get(\"text-line-height\"),g=\"map\"===s.get(\"text-rotation-alignment\")&&\"point\"!==s.get(\"symbol-placement\"),m=s.get(\"text-keep-upright\"),v=s.get(\"text-size\"),y=function(){var i=b[x],l=s.get(\"text-font\").evaluate(i,{},o).join(\",\"),u=v.evaluate(i,{},o),h=c.layoutTextSize.evaluate(i,{},o),f=c.layoutIconSize.evaluate(i,{},o),p={horizontal:{},vertical:void 0},y=i.text,w=[0,0];if(y){var T=y.toString(),k=24*s.get(\"text-letter-spacing\").evaluate(i,{},o),A=function(t){for(var e=0,r=t;e=8192||h.y<0||h.y>=8192||function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,w,T,k,A){var M,S,E,C,L,P=t.addToLineVertexArray(e,r),I=0,z=0,O=0,D=0,R=-1,F=-1,B={},N=ci(\"\"),j=0,V=0;if(void 0===s._unevaluatedLayout.getValue(\"text-radial-offset\")?(j=(M=s.layout.get(\"text-offset\").evaluate(b,{},k).map((function(t){return 24*t})))[0],V=M[1]):(j=24*s.layout.get(\"text-radial-offset\").evaluate(b,{},k),V=Ql),t.allowVerticalPlacement&&n.vertical){var U=s.layout.get(\"text-rotate\").evaluate(b,{},k)+90;C=new Yl(l,e,c,u,h,n.vertical,f,p,d,U),o&&(L=new Yl(l,e,c,u,h,o,m,v,d,U))}if(a){var q=s.layout.get(\"icon-rotate\").evaluate(b,{}),H=\"none\"!==s.layout.get(\"icon-text-fit\"),G=Vl(a,q,T,H),Y=o?Vl(o,q,T,H):void 0;E=new Yl(l,e,c,u,h,a,m,v,!1,q),I=4*G.length;var W=t.iconSizeData,Z=null;\"source\"===W.kind?(Z=[128*s.layout.get(\"icon-size\").evaluate(b,{})])[0]>32640&&_(t.layerIds[0]+': Value for \"icon-size\" is >= 255. Reduce your \"icon-size\".'):\"composite\"===W.kind&&((Z=[128*w.compositeIconSizes[0].evaluate(b,{},k),128*w.compositeIconSizes[1].evaluate(b,{},k)])[0]>32640||Z[1]>32640)&&_(t.layerIds[0]+': Value for \"icon-size\" is >= 255. Reduce your \"icon-size\".'),t.addSymbols(t.icon,G,Z,x,y,b,!1,e,P.lineStartIndex,P.lineLength,-1,k),R=t.icon.placedSymbolArray.length-1,Y&&(z=4*Y.length,t.addSymbols(t.icon,Y,Z,x,y,b,gl.vertical,e,P.lineStartIndex,P.lineLength,-1,k),F=t.icon.placedSymbolArray.length-1)}for(var X in n.horizontal){var J=n.horizontal[X];if(!S){N=ci(J.text);var K=s.layout.get(\"text-rotate\").evaluate(b,{},k);S=new Yl(l,e,c,u,h,J,f,p,d,K)}var Q=1===J.positionedLines.length;if(O+=ec(t,e,J,i,s,d,b,g,P,n.vertical?gl.horizontal:gl.horizontalOnly,Q?Object.keys(n.horizontal):[X],B,R,w,k),Q)break}n.vertical&&(D+=ec(t,e,n.vertical,i,s,d,b,g,P,gl.vertical,[\"vertical\"],B,F,w,k));var $=S?S.boxStartIndex:t.collisionBoxArray.length,tt=S?S.boxEndIndex:t.collisionBoxArray.length,et=C?C.boxStartIndex:t.collisionBoxArray.length,rt=C?C.boxEndIndex:t.collisionBoxArray.length,nt=E?E.boxStartIndex:t.collisionBoxArray.length,at=E?E.boxEndIndex:t.collisionBoxArray.length,it=L?L.boxStartIndex:t.collisionBoxArray.length,ot=L?L.boxEndIndex:t.collisionBoxArray.length,st=-1,lt=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};st=lt(S,st),st=lt(C,st),st=lt(E,st);var ct=(st=lt(L,st))>-1?1:0;ct&&(st*=A/24),t.glyphOffsetArray.length>=hc.MAX_GLYPHS&&_(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),void 0!==b.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,b.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,at,it,ot,c,O,D,I,z,ct,0,f,j,V,st)}(t,h,s,r,n,a,f,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,v,w,A,l,x,T,M,d,e,i,c,u,o)};if(\"line\"===S)for(var P=0,I=jl(e.geometry,0,0,8192,8192);P1){var j=Bl(N,k,r.vertical||g,n,24,y);j&&L(N,j)}}else if(\"Polygon\"===e.type)for(var V=0,U=Qo(e.geometry,0);V=E.maxzoom||\"none\"!==E.visibility&&(o(S,this.zoom,n),(g[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source})).populate(_,m,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(m.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?i.send(\"getGlyphs\",{uid:this.uid,stacks:C},(function(t,e){h||(h=t,f=e,I.call(l))})):f={};var L=Object.keys(m.iconDependencies);L.length?i.send(\"getImages\",{icons:L,source:this.source,tileID:this.tileID,type:\"icons\"},(function(t,e){h||(h=t,p=e,I.call(l))})):p={};var P=Object.keys(m.patternDependencies);function I(){if(h)return s(h);if(f&&p&&d){var e=new a(f),r=new t.ImageAtlas(p,d);for(var i in g){var l=g[i];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(m,this.tileID.canonical,r.patternPositions))}this.status=\"done\",s(null,{buckets:t.values(g).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})}}P.length?i.send(\"getImages\",{icons:P,source:this.source,tileID:this.tileID,type:\"patterns\"},(function(t,e){h||(h=t,d=e,I.call(l))})):d={},I.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,a=e.uid;this.loading||(this.loading={});var o=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),s=this.loading[a]=new i(e);s.abort=this.loadVectorData(e,(function(e,i){if(delete n.loading[a],e||!i)return s.status=\"done\",n.loaded[a]=s,r(e);var l=i.rawData,c={};i.expires&&(c.expires=i.expires),i.cacheControl&&(c.cacheControl=i.cacheControl);var u={};if(o){var h=o.finish();h&&(u.resourceTiming=JSON.parse(JSON.stringify(h)))}s.vectorTile=i.vectorTile,s.parse(i.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[a]=s}))},l.prototype.reloadTile=function(t,e){var r=this,n=this.loaded,a=t.uid,i=this;if(n&&n[a]){var o=n[a];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,n){var a=o.reloadCallback;a&&(delete o.reloadCallback,o.parse(o.vectorTile,i.layerIndex,r.availableImages,i.actor,a)),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={}};function h(t,e){if(0!==t.length){f(t[0],e);for(var r=1;r=0!=!!e&&t.reverse()}u.prototype.loadTile=function(e,r){var n=e.uid,a=e.encoding,i=e.rawImageData,o=c&&i instanceof c?this.getImageData(i):i,s=new t.DEMData(n,o,a);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 p=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,d=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))};d.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],r=0,n=this._feature.geometry;r>31}function E(t,e){for(var r=t.loadGeometry(),n=t.type,a=0,i=0,o=r.length,s=0;s>1;!function t(e,r,n,a,i,o){for(;i>a;){if(i-a>600){var s=i-a+1,l=n-a+1,c=Math.log(s),u=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*u*(s-u)/s)*(l-s/2<0?-1:1);t(e,r,n,Math.max(a,Math.floor(n-l*u/s+h)),Math.min(i,Math.floor(n+(s-l)*u/s+h)),o)}var f=r[2*n+o],p=a,d=i;for(L(e,r,a,n),r[2*i+o]>f&&L(e,r,a,i);pf;)d--}r[2*a+o]===f?L(e,r,a,d):L(e,r,++d,i),d<=n&&(a=d+1),n<=d&&(i=d-1)}}(e,r,s,a,i,o%2),t(e,r,n,a,s-1,o+1),t(e,r,n,s+1,i,o+1)}}(o,s,n,0,o.length-1,0)};D.prototype.range=function(t,e,r,n){return function(t,e,r,n,a,i,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var h=c.pop(),f=c.pop(),p=c.pop();if(f-p<=o)for(var d=p;d<=f;d++)l=e[2*d+1],(s=e[2*d])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[d]);else{var g=Math.floor((p+f)/2);l=e[2*g+1],(s=e[2*g])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[g]);var m=(h+1)%2;(0===h?r<=s:n<=l)&&(c.push(p),c.push(g-1),c.push(m)),(0===h?a>=s:i>=l)&&(c.push(g+1),c.push(f),c.push(m))}}return u}(this.ids,this.coords,t,e,r,n,this.nodeSize)},D.prototype.within=function(t,e,r){return function(t,e,r,n,a,i){for(var o=[0,t.length-1,0],s=[],l=a*a;o.length;){var c=o.pop(),u=o.pop(),h=o.pop();if(u-h<=i)for(var f=h;f<=u;f++)I(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],g=e[2*p+1];I(d,g,r,n)<=l&&s.push(t[p]);var m=(c+1)%2;(0===c?r-a<=d:n-a<=g)&&(o.push(h),o.push(p-1),o.push(m)),(0===c?r+a>=d:n+a>=g)&&(o.push(p+1),o.push(u),o.push(m))}}return s}(this.ids,this.coords,t,e,r,this.nodeSize)};var R={minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},F=function(t){this.options=H(Object.create(R),t),this.trees=new Array(this.options.maxZoom+1)};function B(t,e,r,n,a){return{x:t,y:e,zoom:1/0,id:r,parentId:-1,numPoints:n,properties:a}}function N(t,e){var r=t.geometry.coordinates,n=r[1];return{x:U(r[0]),y:q(n),zoom:1/0,index:e,parentId:-1}}function j(t){return{type:\"Feature\",id:t.id,properties:V(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 V(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return H(H({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function U(t){return t/360+.5}function q(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 H(t,e){for(var r in e)t[r]=e[r];return t}function G(t){return t.x}function Y(t){return t.y}function W(t,e,r,n,a,i){var o=a-r,s=i-n;if(0!==o||0!==s){var l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=a,n=i):l>0&&(r+=o*l,n+=s*l)}return(o=t-r)*o+(s=e-n)*s}function Z(t,e,r,n){var a={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)X(t,e);else if(\"Polygon\"===r||\"MultiLineString\"===r)for(var n=0;n0&&(o+=n?(a*c-l*i)/2:Math.sqrt(Math.pow(l-a,2)+Math.pow(c-i,2))),a=l,i=c}var u=e.length-3;e[2]=1,function t(e,r,n,a){for(var i,o=a,s=n-r>>1,l=n-r,c=e[r],u=e[r+1],h=e[n],f=e[n+1],p=r+3;po)i=p,o=d;else if(d===o){var g=Math.abs(p-s);ga&&(i-r>3&&t(e,r,i,a),e[i+2]=o,n-i>3&&t(e,i,n,a))}(e,0,u,r),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function $(t,e,r,n){for(var a=0;a1?1:r}function rt(t,e,r,n,a,i,o,s){if(n/=e,i>=(r/=e)&&o=n)return null;for(var l=[],c=0;c=r&&d=n)){var g=[];if(\"Point\"===f||\"MultiPoint\"===f)nt(h,g,r,n,a);else if(\"LineString\"===f)at(h,g,r,n,a,!1,s.lineMetrics);else if(\"MultiLineString\"===f)ot(h,g,r,n,a,!1);else if(\"Polygon\"===f)ot(h,g,r,n,a,!0);else if(\"MultiPolygon\"===f)for(var m=0;m=r&&o<=n&&(e.push(t[i]),e.push(t[i+1]),e.push(t[i+2]))}}function at(t,e,r,n,a,i,o){for(var s,l,c=it(t),u=0===a?lt:ct,h=t.start,f=0;fr&&(l=u(c,p,d,m,v,r),o&&(c.start=h+s*l)):y>n?x=r&&(l=u(c,p,d,m,v,r),b=!0),x>n&&y<=n&&(l=u(c,p,d,m,v,n),b=!0),!i&&b&&(o&&(c.end=h+s*l),e.push(c),c=it(t)),o&&(h+=s)}var _=t.length-3;p=t[_],d=t[_+1],g=t[_+2],(y=0===a?p:d)>=r&&y<=n&&st(c,p,d,g),_=c.length-3,i&&_>=3&&(c[_]!==c[0]||c[_+1]!==c[1])&&st(c,c[0],c[1],c[2]),c.length&&e.push(c)}function it(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function ot(t,e,r,n,a,i){for(var o=0;oo.maxX&&(o.maxX=u),h>o.maxY&&(o.maxY=h)}return o}function gt(t,e,r,n){var a=e.geometry,i=e.type,o=[];if(\"Point\"===i||\"MultiPoint\"===i)for(var s=0;s0&&e.size<(a?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++;a&&function(t,e){for(var r=0,n=0,a=t.length,i=a-2;n0===e)for(n=0,a=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 D(s,G,Y,i,Float32Array),r&&console.log(\"z%d: %d clusters in %dms\",c,s.length,+Date.now()-u)}return r&&console.timeEnd(\"total time\"),this},F.prototype.getClusters=function(t,e){var r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),a=180===t[2]?180:((t[2]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,a=180;else if(r>a){var o=this.getClusters([r,n,180,i],e),s=this.getClusters([-180,n,a,i],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,h=l.range(U(r),q(i),U(a),q(n));u1?this._map(s,!0):null,d=(o<<5)+(e+1)+this.points.length,g=0,m=c;g>5},F.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},F.prototype._map=function(t,e){if(t.numPoints)return e?H({},t.properties):t.properties;var r=this.points[t.index].properties,n=this.options.map(r);return e&&n===r?H({},n):n},vt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},vt.prototype.splitTile=function(t,e,r,n,a,i,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]=dt(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,a){if(e===l.maxZoom||e===a)continue;var d=1<1&&console.time(\"clipping\");var g,m,v,y,x,b,_=.5*l.buffer/l.extent,w=.5-_,T=.5+_,k=1+_;g=m=v=y=null,x=rt(t,u,r-_,r+T,0,f.minX,f.maxX,l),b=rt(t,u,r+w,r+k,0,f.minX,f.maxX,l),t=null,x&&(g=rt(x,u,n-_,n+T,1,f.minY,f.maxY,l),m=rt(x,u,n+w,n+k,1,f.minY,f.maxY,l),x=null),b&&(v=rt(b,u,n-_,n+T,1,f.minY,f.maxY,l),y=rt(b,u,n+w,n+k,1,f.minY,f.maxY,l),b=null),c>1&&console.timeEnd(\"clipping\"),s.push(g||[],e+1,2*r,2*n),s.push(m||[],e+1,2*r,2*n+1),s.push(v||[],e+1,2*r+1,2*n),s.push(y||[],e+1,2*r+1,2*n+1)}}},vt.prototype.getTile=function(t,e,r){var n=this.options,a=n.extent,i=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[yt(c,u,h)];return l&&l.source?(i>1&&console.log(\"found parent tile z%d-%d-%d\",c,u,h),i>1&&console.time(\"drilling down\"),this.splitTile(l.source,c,u,h,t,e,r),i>1&&console.timeEnd(\"drilling down\"),this.tiles[s]?ft(this.tiles[s],a):null):null};var bt=function(e){function r(t,r,n,a){e.call(this,t,r,n,xt),a&&(this.loadGeoJSON=a)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.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 a=!!(n&&n.request&&n.request.collectResourceTiming)&&new t.RequestPerformance(n.request);this.loadGeoJSON(n,(function(i,o){if(i||!o)return r(i);if(\"object\"!=typeof o)return r(new Error(\"Input data given to '\"+n.source+\"' is not a valid GeoJSON object.\"));!function t(e,r){var n,a=e&&e.type;if(\"FeatureCollection\"===a)for(n=0;n=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)).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 v(t,e,r,n,a,i,o){for(var s=0;s65535)e(new Error(\"glyphs > 65535 not supported\"));else if(i.ranges[s])e(null,{stack:r,id:a,glyph:o});else{var l=i.requests[s];l||(l=i.requests[s]=[],x.loadGlyphRange(r,s,n.url,n.requestManager,(function(t,e){if(e){for(var r in e)n._doesCharSupportLocalGlyph(+r)||(i.glyphs[+r]=e[+r]);i.ranges[s]=!0}for(var a=0,o=l;a1&&(s=t[++o]);var c=Math.abs(l-s.left),u=Math.abs(l-s.right),h=Math.min(c,u),f=void 0,p=a/r*(n+1);if(s.isDash){var d=n-Math.abs(p);f=Math.sqrt(h*h+d*d)}else f=n-Math.sqrt(h*h+p*p);this.data[i+l]=Math.max(0,Math.min(255,f+128))}},T.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 a=t[0],i=t[t.length-1];a.isDash===i.isDash&&(a.left=i.left-this.width,i.right=a.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);this.data[o+c]=Math.max(0,Math.min(255,(l.isDash?f:-f)+128))}},T.prototype.addDash=function(e,r){var n=r?7:0,a=2*n+1;if(this.nextRow+a>this.height)return t.warnOnce(\"LineAtlas out of space\"),null;for(var i=0,o=0;o=n&&e.x=a&&e.y0&&(l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,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),a=this._data;\"string\"==typeof a?(n.request=this.map._requestManager.transformRequest(t.browser.resolveURL(a),t.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(a),this.actor.send(this.type+\".loadData\",n,(function(t,a){r._removed||a&&a.abandoned||(r._loaded=!0,a&&a.resourceTiming&&a.resourceTiming[r.id]&&(r._resourceTiming=a.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,a=e.actor?\"reloadTile\":\"loadTile\";e.actor=this.actor,e.request=this.actor.send(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},(function(t,i){return delete e.request,e.unloadVectorData(),e.aborted?r(null):t?r(t):(e.loadVectorData(i,n.map.painter,\"reloadTile\"===a),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}]),I=function(e){function r(t,r,n,a){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(a),this.options=r}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.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(a,i){n._loaded=!0,a?n.fire(new t.ErrorEvent(a)):i&&(n.image=i,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,a=-1/0,i=-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 a=this.tiles[n];\"loaded\"!==a.state&&(a.state=\"loaded\",a.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}(I),O=function(e){function r(r,n,a,i){e.call(this,r,n,a,i),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)).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 a 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 i=this.tiles[a];\"loaded\"!==i.state&&(i.state=\"loaded\",i.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},N.prototype.has=function(t){return t.wrapped().key in this.data},N.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},N.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},N.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},N.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},N.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),a=this.data[r][n];return this.data[r].splice(n,1),a.timeout&&clearTimeout(a.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(a.value),this.order.splice(this.order.indexOf(r),1),this},N.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},N.prototype.filter=function(t){var e=[];for(var r in this.data)for(var n=0,a=this.data[r];n1||(Math.abs(r)>1&&(1===Math.abs(r+a)?r+=a:1===Math.abs(r-a)&&(r-=a)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[i]&&(t.neighboringTiles[i].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 a in this._tiles){var i=this._tiles[a];if(!(n[a]||!i.hasData()||i.tileID.overscaledZ<=e||i.tileID.overscaledZ>r)){for(var o=i.tileID;i&&i.tileID.overscaledZ>e+1;){var s=i.tileID.scaledTo(i.tileID.overscaledZ-1);(i=this._tiles[s.key])&&i.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 a=t.scaledTo(n),i=this._getLoadedTile(a);if(i)return i}},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,r=Math.ceil(t.height/this._source.tileSize)+1,n=Math.floor(e*r*5),a=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(a)},r.prototype.handleWrapJump=function(t){var e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){var r={};for(var n in this._tiles){var a=this._tiles[n];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+e),r[a.tileID.key]=a}for(var i in this._tiles=r,this._timers)clearTimeout(this._timers[i]),delete this._timers[i];for(var o in this._tiles)this._setTileReloadTimer(o,this._tiles[o])}},r.prototype.update=function(e){var n=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var a;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?a=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)})):(a=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&&(a=a.filter((function(t){return n._source.hasTile(t)})))):a=[];var i=e.coveringZoomLevel(this._source),o=Math.max(i-r.maxOverzooming,this._source.minzoom),s=Math.max(i+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(a,i);if(It(this._source.type)){for(var c={},u={},h=0,f=Object.keys(l);hthis._source.maxzoom){var m=d.children(this._source.maxzoom)[0],v=this.getTile(m);if(v&&v.hasData()){n[m.key]=m;continue}}else{var y=d.children(this._source.maxzoom);if(n[y[0].key]&&n[y[1].key]&&n[y[2].key]&&n[y[3].key])continue}for(var x=g.wasRequested(),b=d.overscaledZ-1;b>=i;--b){var _=d.scaledTo(b);if(a[_.key])break;if(a[_.key]=!0,!(g=this.getTile(_))&&x&&(g=this._addTile(_)),g&&(n[_.key]=_,x=g.wasRequested(),g.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 a=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(a))break;n=a}for(var i=0,o=e;i0||(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 a=this,i=[],o=this.transform;if(!o)return i;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,g=0,m=c;g=0&&v[1].y+m>=0){var y=l.map((function(t){return s.getTilePoint(t)})),x=c.map((function(t){return s.getTilePoint(t)}));i.push({tile:n,tileID:s,queryGeometry:y,cameraQueryGeometry:x,scale:g})}}},x=0;x=t.browser.now())return!0}return!1},r.prototype.setFeatureState=function(t,e,r){this._state.updateState(t=t||\"_geojsonTileLayer\",e,r)},r.prototype.removeFeatureState=function(t,e,r){this._state.removeFeatureState(t=t||\"_geojsonTileLayer\",e,r)},r.prototype.getFeatureState=function(t,e){return this._state.getState(t=t||\"_geojsonTileLayer\",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 Pt(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 It(t){return\"raster\"===t||\"image\"===t||\"video\"===t}function zt(){return new t.window.Worker(Ya.workerUrl)}Lt.maxOverzooming=10,Lt.maxUnderzooming=3;var Ot=\"mapboxgl_preloaded_worker_pool\",Dt=function(){this.active={}};Dt.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length0?(a-o)/s:0;return this.points[i].mult(1-l).add(this.points[r].mult(l))};var Jt=function(t,e,r){var n=this.boxCells=[],a=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(var i=0;i=-e[0]&&r<=e[0]&&n>=-e[1]&&n<=e[1]}function re(e,r,n,a,i,o,s,l){var c=a?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,n.transform.zoom),h=[256/n.width*2+1,256/n.height*2+1],f=a?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;f.clear();for(var p=e.lineVertexArray,d=a?e.text.placedSymbolArray:e.icon.placedSymbolArray,g=n.transform.width/n.transform.height,m=!1,v=0;vMath.abs(n.x-r.x)*a?{useVertical:!0}:(e===t.WritingMode.vertical?r.yn.x)?{needsFlipping:!0}:null}function ie(e,r,n,a,i,o,s,l,c,u,h,f,p,d){var g,m=r/24,v=e.lineOffsetX*m,y=e.lineOffsetY*m;if(e.numGlyphs>1){var x=e.glyphStartIndex+e.numGlyphs,b=e.lineStartIndex,_=e.lineStartIndex+e.lineLength,w=ne(m,l,v,y,n,h,f,e,c,o,p);if(!w)return{notEnoughRoom:!0};var T=$t(w.first.point,s).point,k=$t(w.last.point,s).point;if(a&&!n){var A=ae(e.writingMode,T,k,d);if(A)return A}g=[w.first];for(var M=e.glyphStartIndex+1;M0?L.point:oe(f,C,S,1,i),I=ae(e.writingMode,S,P,d);if(I)return I}var z=se(m*l.getoffsetX(e.glyphStartIndex),v,y,n,h,f,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,p);if(!z)return{notEnoughRoom:!0};g=[z]}for(var O=0,D=g;O0?1:-1,g=0;a&&(d*=-1,g=Math.PI),d<0&&(g+=Math.PI);for(var m=d>0?l+s:l+s+1,v=i,y=i,x=0,b=0,_=Math.abs(p),w=[];x+b<=_;){if((m+=d)=c)return null;if(y=v,w.push(v),void 0===(v=f[m])){var T=new t.Point(u.getx(m),u.gety(m)),k=$t(T,h);if(k.signedDistanceFromCamera>0)v=f[m]=k.point;else{var A=m-d;v=oe(0===x?o:new t.Point(u.getx(A),u.gety(A)),T,y,_-x+1,h)}}x+=b,b=y.dist(v)}var M=(_-x)/b,S=v.sub(y),E=S.mult(M)._add(y);E._add(S._unit()._perp()._mult(n*d));var C=g+Math.atan2(v.y-y.y,v.x-y.x);return w.push(E),{point:E,angle:C,path:w}}Jt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Jt.prototype.insert=function(t,e,r,n,a){this._forEachCell(e,r,n,a,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(a)},Jt.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)},Jt.prototype._insertBoxCell=function(t,e,r,n,a,i){this.boxCells[a].push(i)},Jt.prototype._insertCircleCell=function(t,e,r,n,a,i){this.circleCells[a].push(i)},Jt.prototype._query=function(t,e,r,n,a,i){if(r<0||t>this.width||n<0||e>this.height)return!a&&[];var o=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(a)return!0;for(var s=0;s0:o},Jt.prototype._queryCircle=function(t,e,r,n,a){var i=t-r,o=t+r,s=e-r,l=e+r;if(o<0||i>this.width||l<0||s>this.height)return!n&&[];var c=[];return this._forEachCell(i,s,o,l,this._queryCellCircle,c,{hitTest:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}},a),n?c.length>0:c},Jt.prototype.query=function(t,e,r,n,a){return this._query(t,e,r,n,!1,a)},Jt.prototype.hitTest=function(t,e,r,n,a){return this._query(t,e,r,n,!0,a)},Jt.prototype.hitTestCircle=function(t,e,r,n){return this._queryCircle(t,e,r,!0,n)},Jt.prototype._queryCell=function(t,e,r,n,a,i,o,s){var l=o.seenUids,c=this.boxCells[a];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 i.push(!0),!0;i.push({key:this.boxKeys[p],x1:u[d],y1:u[d+1],x2:u[d+2],y2:u[d+3]})}}}var g=this.circleCells[a];if(null!==g)for(var m=this.circles,v=0,y=g;vo*o+s*s},Jt.prototype._circleAndRectCollide=function(t,e,r,n,a,i,o){var s=(i-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;var c=(o-a)/2,u=Math.abs(e-(a+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 le=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ce(t,e){for(var r=0;r=1;P--)L.push(E.path[P]);for(var I=1;I0){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||n<100||e>this.screenBottomBoundary},he.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&&(g=this.prevPlacement.variableOffsets[h.crossTileID].anchor),this.variableOffsets[h.crossTileID]={textOffset:m,width:r,height:n,anchor:t,textBoxScale:a,prevAnchor:g},this.markUsedJustification(f,t,h,p),f.allowVerticalPlacement&&(this.markUsedOrientation(f,p,h),this.placedOrientations[h.crossTileID]=p),{shift:v,placedGlyphBoxes:y}):void 0},_e.prototype.placeLayerBucketPart=function(e,r,n){var a=this,i=e.parameters,o=i.bucket,s=i.layout,l=i.posMatrix,c=i.textLabelPlaneMatrix,u=i.labelToScreenMatrix,h=i.textPixelRatio,f=i.holdingForFade,p=i.collisionBoxArray,d=i.partiallyEvaluatedTextSize,g=i.collisionGroup,m=s.get(\"text-optional\"),v=s.get(\"icon-optional\"),y=s.get(\"text-allow-overlap\"),x=s.get(\"icon-allow-overlap\"),b=\"map\"===s.get(\"text-rotation-alignment\"),_=\"map\"===s.get(\"text-pitch-alignment\"),w=\"none\"!==s.get(\"icon-text-fit\"),T=\"viewport-y\"===s.get(\"symbol-z-order\"),k=y&&(x||!o.hasIconData()||v),A=x&&(y||!o.hasTextData()||m);!o.collisionArrays&&p&&o.deserializeCollisionBoxes(p);var M=function(e,i){if(!r[e.crossTileID])if(f)a.placements[e.crossTileID]=new ge(!1,!1,!1);else{var p,T=!1,M=!1,S=!0,E=null,C={box:null,offscreen:null},L={box:null,offscreen:null},P=null,I=null,z=0,O=0,D=0;i.textFeatureIndex?z=i.textFeatureIndex:e.useRuntimeCollisionCircles&&(z=e.featureIndex),i.verticalTextFeatureIndex&&(O=i.verticalTextFeatureIndex);var R=i.textBox;if(R){var F=function(r){var n=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&a.prevPlacement){var i=a.prevPlacement.placedOrientations[e.crossTileID];i&&(a.placedOrientations[e.crossTileID]=i,a.markUsedOrientation(o,n=i,e))}return n},B=function(r,n){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&i.verticalTextBox)for(var a=0,s=o.writingModes;a0&&(N=N.filter((function(t){return t!==j.anchor}))).unshift(j.anchor)}var V=function(t,r,n){for(var i=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=w&&!x?r:null,f={box:[],offscreen:!1},p=y?2*N.length:N.length,d=0;d=N.length,e,o,n,u);if(m&&(f=m.placedGlyphBoxes)&&f.box&&f.box.length){T=!0,E=m.shift;break}}return f};B((function(){return V(R,i.iconBox,t.WritingMode.horizontal)}),(function(){var r=i.verticalTextBox;return o.allowVerticalPlacement&&!(C&&C.box&&C.box.length)&&e.numVerticalGlyphVertices>0&&r?V(r,i.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(T=C.box,S=C.offscreen);var U=F(C&&C.box);if(!T&&a.prevPlacement){var q=a.prevPlacement.variableOffsets[e.crossTileID];q&&(a.variableOffsets[e.crossTileID]=q,a.markUsedJustification(o,q.anchor,e,U))}}else{var H=function(t,r){var n=a.collisionIndex.placeCollisionBox(t,y,h,l,g.predicate);return n&&n.box&&n.box.length&&(a.markUsedOrientation(o,r,e),a.placedOrientations[e.crossTileID]=r),n};B((function(){return H(R,t.WritingMode.horizontal)}),(function(){var r=i.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),Y=t.evaluateSizeForFeature(o.textSizeData,d,G),W=s.get(\"text-padding\");P=a.collisionIndex.placeCollisionCircles(y,G,o.lineVertexArray,o.glyphOffsetArray,Y,l,c,u,n,_,g.predicate,e.collisionCircleDiameter,W),T=y||P.circles.length>0&&!P.collisionDetected,S=S&&P.offscreen}if(i.iconFeatureIndex&&(D=i.iconFeatureIndex),i.iconBox){var Z=function(t){var e=w&&E?be(t,E.x,E.y,b,_,a.transform.angle):t;return a.collisionIndex.placeCollisionBox(e,x,h,l,g.predicate)};M=L&&L.box&&L.box.length&&i.verticalIconBox?(I=Z(i.verticalIconBox)).box.length>0:(I=Z(i.iconBox)).box.length>0,S=S&&I.offscreen}var X=m||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,J=v||0===e.numIconVertices;if(X||J?J?X||(M=M&&T):T=M&&T:M=T=M&&T,T&&p&&p.box&&a.collisionIndex.insertCollisionBox(p.box,s.get(\"text-ignore-placement\"),o.bucketInstanceId,L&&L.box&&O?O:z,g.ID),M&&I&&a.collisionIndex.insertCollisionBox(I.box,s.get(\"icon-ignore-placement\"),o.bucketInstanceId,D,g.ID),P&&(T&&a.collisionIndex.insertCollisionCircles(P.circles,s.get(\"text-ignore-placement\"),o.bucketInstanceId,z,g.ID),n)){var K=o.bucketInstanceId,Q=a.collisionCircleArrays[K];void 0===Q&&(Q=a.collisionCircleArrays[K]=new me);for(var $=0;$=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(l).crossTileID=i>=0&&l!==i?0:n.crossTileID)}},_e.prototype.markUsedOrientation=function(e,r,n){for(var a=r===t.WritingMode.horizontal||r===t.WritingMode.horizontalOnly?r:0,i=r===t.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o0,y=a.placedOrientations[i.crossTileID],x=y===t.WritingMode.vertical,b=y===t.WritingMode.horizontal||y===t.WritingMode.horizontalOnly;if(s>0||l>0){var _=Le(m.text);d(e.text,s,x?Pe:_),d(e.text,l,b?Pe:_);var w=m.text.isHidden();[i.rightJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=w||x?1:0)})),i.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).hidden=w||b?1:0);var T=a.variableOffsets[i.crossTileID];T&&a.markUsedJustification(e,T.anchor,i,y);var k=a.placedOrientations[i.crossTileID];k&&(a.markUsedJustification(e,\"left\",i,k),a.markUsedOrientation(e,k,i))}if(v){var A=Le(m.icon),M=!(f&&i.verticalPlacedIconSymbolIndex&&x);i.placedIconSymbolIndex>=0&&(d(e.icon,i.numIconVertices,M?A:Pe),e.icon.placedSymbolArray.get(i.placedIconSymbolIndex).hidden=m.icon.isHidden()),i.verticalPlacedIconSymbolIndex>=0&&(d(e.icon,i.numVerticalIconVertices,M?Pe:A),e.icon.placedSymbolArray.get(i.verticalPlacedIconSymbolIndex).hidden=m.icon.isHidden())}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var S=e.collisionArrays[n];if(S){var E=new t.Point(0,0);if(S.textBox||S.verticalTextBox){var C=!0;if(c){var L=a.variableOffsets[g];L?(E=xe(L.anchor,L.width,L.height,L.textOffset,L.textBoxScale),u&&E._rotate(h?a.transform.angle:-a.transform.angle)):C=!1}S.textBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||x,E.x,E.y),S.verticalTextBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||b,E.x,E.y)}var P=Boolean(!b&&S.verticalIconBox);S.iconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,P,f?E.x:0,f?E.y:0),S.verticalIconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,!P,f?E.x:0,f?E.y:0)}}},m=0;mt},_e.prototype.setStale=function(){this.stale=!0};var Te=Math.pow(2,25),ke=Math.pow(2,24),Ae=Math.pow(2,17),Me=Math.pow(2,16),Se=Math.pow(2,9),Ee=Math.pow(2,8),Ce=Math.pow(2,1);function Le(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*Te+e*ke+r*Ae+e*Me+r*Se+e*Ee+r*Ce+e}var Pe=0,Ie=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=[]};Ie.prototype.continuePlacement=function(t,e,r,n,a){for(var i=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 Ie(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},ze.prototype.commit=function(t){return this.placement.commit(t),this.placement};var Oe=512/t.EXTENT/2,De=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,a)}else{var c=o[t.scaledTo(Number(i)).key];c&&c.findMatches(e.symbolInstances,t,a)}}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,a=e,u())})),c=t.getImage(r.transformRequest(r.normalizeSpriteURL(e,s,\".png\"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,i=e,u())}));function u(){if(o)n(o);else if(a&&i){var e=t.browser.getImageData(i),r={};for(var s in a){var l=a[s],c=l.width,u=l.height,h=l.x,f=l.y,p=l.sdf,d=l.pixelRatio,g=l.stretchX,m=l.stretchY,v=l.content,y=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,y,{x:h,y:f},{x:0,y:0},{width:c,height:u}),r[s]={data:y,pixelRatio:d,sdf:p,stretchX:g,stretchY:m,content:v}}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 a in n)r.imageManager.addImage(a,n[a]);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 a=r.getSource();(\"geojson\"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(n))&&this.fire(new t.ErrorEvent(new Error('Source layer \"'+n+'\" does not exist on source \"'+a.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: \"+a.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._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event(\"data\",{dataType:\"style\"}))},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._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,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 a=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 the 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 i=this.sourceCaches[e]=new Lt(e,r,this.dispatcher);i.style=this,i.setEventedParent(this,(function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}})),i.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 a=e.id;if(this.getLayer(a))this.fire(new t.ErrorEvent(new Error('Layer with id \"'+a+'\" already exists on this map')));else{var i;if(\"custom\"===e.type){if(Ne(this,t.validateCustomStyleLayer(e)))return;i=t.createStyleLayer(e)}else{if(\"object\"==typeof e.source&&(this.addSource(a,e.source),e=t.clone$1(e),e=t.extend(e,{source:a})),this._validate(t.validateStyle.layer,\"layers.\"+a,e,{arrayIndex:-1},n))return;i=t.createStyleLayer(e),this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}}),this._serializedLayers[i.id]=i.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,a),this._layerOrderChanged=!0,this._layers[a]=i,this._removedLayers[a]&&i.source&&\"custom\"!==i.type){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]=\"clear\":(this._updatedSources[i.source]=\"reload\",this.sourceCaches[i.source].pause())}this._updateLayer(i),i.onAdd&&i.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 a=r?this._order.indexOf(r):this._order.length;r&&-1===a?this.fire(new t.ErrorEvent(new Error('Layer with id \"'+r+'\" does not exist on this map.'))):(this._order.splice(a,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 a=this.getLayer(e);a?a.minzoom===r&&a.maxzoom===n||(null!=r&&(a.minzoom=r),null!=n&&(a.maxzoom=n),this._updateLayer(a)):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 a=this.getLayer(e);if(a){if(!t.deepEqual(a.filter,r))return null==r?(a.filter=void 0,void this._updateLayer(a)):void(this._validate(t.validateStyle.filter,\"layers.\"+a.id+\".filter\",r,null,n)||(a.filter=t.clone$1(r),this._updateLayer(a)))}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,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getLayoutProperty(r),n)||(i.setLayoutProperty(r,n,a),this._updateLayer(i)):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,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getPaintProperty(r),n)||(i.setPaintProperty(r,n,a)&&this._updateLayer(i),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,a=e.sourceLayer,i=this.sourceCaches[n];if(void 0!==i){var o=i.getSource().type;\"geojson\"===o&&a?this.fire(new t.ErrorEvent(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\"))):\"vector\"!==o||a?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),i.setFeatureState(a,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,a=this.sourceCaches[n];if(void 0!==a){var i=a.getSource().type,o=\"vector\"===i?e.sourceLayer:void 0;\"vector\"!==i||o?r&&\"string\"!=typeof e.id&&\"number\"!=typeof e.id?this.fire(new t.ErrorEvent(new Error(\"A feature id is requred to remove its specific state property.\"))):a.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,a=this.sourceCaches[r];if(void 0!==a){if(\"vector\"!==a.getSource().type||n)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),a.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={},a=[],i=this._order.length-1;i>=0;i--){var o=this._order[i];if(r(o)){n[o]=i;for(var s=0,l=t;s=0;p--){var d=this._order[p];if(r(d))for(var g=a.length-1;g>=0;g--){var m=a[g].feature;if(n[m.layer.id] 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}\",\"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;}\"),$e=vr(\"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);}\"),tr=vr(\"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);}\"),er=vr(\"#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);}\"),rr=vr(\"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;}\"),nr=vr(\"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;}\"),ar=vr(\"uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern_from\\n#pragma mapbox: define lowp vec4 pattern_to\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern_from\\n#pragma mapbox: initialize mediump vec4 pattern_to\\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"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);}\"),ir=vr(\"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;}\"),or=vr(\"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;}\"),sr=vr(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform float u_maxzoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggeration=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/ pow(2.0,(u_zoom-u_maxzoom)*exaggeration+19.2562-u_zoom);gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"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;}\"),lr=vr(\"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;}\"),cr=vr(\"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);}\"),ur=vr(\"uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp float v_lineprogress;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,vec2(v_lineprogress,0.5));gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define MAX_LINE_DISTANCE 32767.0\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_lineprogress;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_lineprogress=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0/MAX_LINE_DISTANCE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}\"),hr=vr(\"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;}\"),fr=vr(\"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);}\"),pr=vr(\"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;}\"),dr=vr(\"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));}\"),gr=vr(\"#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);}\"),mr=vr(\"#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 vr(t,e){var r=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,n={};return{fragmentSource:t=t.replace(r,(function(t,e,r,a,i){return n[i]=!0,\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+r+\" \"+a+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})),vertexSource:e=e.replace(r,(function(t,e,r,a,i){var o=\"float\"===a?\"vec2\":\"vec4\",s=i.match(/color/)?\"color\":o;return n[i]?\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+o+\" a_\"+i+\";\\nvarying \"+r+\" \"+a+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===s?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = a_\"+i+\";\\n#else\\n \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+s+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+o+\" a_\"+i+\";\\n#else\\nuniform \"+r+\" \"+a+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===s?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+a+\" \"+i+\" = a_\"+i+\";\\n#else\\n \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+a+\" \"+i+\" = unpack_mix_\"+s+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n \"+r+\" \"+a+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"}))}}var yr=Object.freeze({__proto__:null,prelude:Ge,background:Ye,backgroundPattern:We,circle:Ze,clippingMask:Xe,heatmap:Je,heatmapTexture:Ke,collisionBox:Qe,collisionCircle:$e,debug:tr,fill:er,fillOutline:rr,fillOutlinePattern:nr,fillPattern:ar,fillExtrusion:ir,fillExtrusionPattern:or,hillshadePrepare:sr,hillshade:lr,line:cr,lineGradient:ur,linePattern:hr,lineSDF:fr,raster:pr,symbolIcon:dr,symbolSDF:gr,symbolTextAndIcon:mr}),xr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};xr.prototype.bind=function(t,e,r,n,a,i,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==n.length,c=0;!l&&c>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}br.prototype.draw=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=t.gl;if(!this.failedToCreate){for(var y in t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(a),t.setCullFace(i),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);p&&p.setUniforms(t,this.binderUniforms,h,{zoom:f});for(var x=(m={},m[v.LINES]=2,m[v.TRIANGLES]=3,m[v.LINE_STRIP]=1,m)[e],b=0,_=u.get();b<_.length;b+=1){var w=_[b],T=w.vaos||(w.vaos={});(T[s]||(T[s]=new xr)).bind(t,this,l,p?p.getPaintVertexBuffers():[],c,w.vertexOffset,d,g),v.drawElements(e,w.primitiveLength*x,v.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var wr=function(e,r,n,a){var i=r.style.light,o=i.properties.get(\"position\"),s=[o.x,o.y,o.z],l=t.create$1();\"viewport\"===i.properties.get(\"anchor\")&&t.fromRotation(l,-r.transform.angle),t.transformMat3(s,s,l);var c=i.properties.get(\"color\");return{u_matrix:e,u_lightpos:s,u_lightintensity:i.properties.get(\"intensity\"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+n,u_opacity:a}},Tr=function(e,r,n,a,i,o,s){return t.extend(wr(e,r,n,a),_r(o,r,s),{u_height_factor:-Math.pow(2,i.overscaledZ)/s.tileSize/8})},kr=function(t){return{u_matrix:t}},Ar=function(e,r,n,a){return t.extend(kr(e),_r(n,r,a))},Mr=function(t,e){return{u_matrix:t,u_world:e}},Sr=function(e,r,n,a,i){return t.extend(Ar(e,r,n,a),{u_world:i})},Er=function(e,r,n,a){var i,o,s=e.transform;if(\"map\"===a.paint.get(\"circle-pitch-alignment\")){var l=fe(n,1,s.zoom);i=!0,o=[l,l]}else i=!1,o=s.pixelsToGLUnits;return{u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+(\"map\"===a.paint.get(\"circle-pitch-scale\")),u_matrix:e.translatePosMatrix(r.posMatrix,n,a.paint.get(\"circle-translate\"),a.paint.get(\"circle-translate-anchor\")),u_pitch_with_map:+i,u_device_pixel_ratio:t.browser.devicePixelRatio,u_extrude_scale:o}},Cr=function(t,e,r){var n=fe(r,1,e.zoom),a=Math.pow(2,e.zoom-r.tileID.overscaledZ),i=r.tileID.overscaleFactor();return{u_matrix:t,u_camera_to_center_distance:e.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[e.pixelsToGLUnits[0]/(n*a),e.pixelsToGLUnits[1]/(n*a)],u_overscale_factor:i}},Lr=function(t,e,r){return{u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},Pr=function(t,e,r){return void 0===r&&(r=1),{u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}},Ir=function(t){return{u_matrix:t}},zr=function(t,e,r,n){return{u_matrix:t,u_extrude_scale:fe(e,1,r),u_intensity:n}},Or=function(e,r,n){var a=e.transform;return{u_matrix:Nr(e,r,n),u_ratio:1/fe(r,1,a.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Dr=function(e,r,n){return t.extend(Or(e,r,n),{u_image:0})},Rr=function(e,r,n,a){var i=e.transform,o=Br(r,i);return{u_matrix:Nr(e,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/fe(r,1,i.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_image:0,u_scale:[o,a.fromScale,a.toScale],u_fade:a.t,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},Fr=function(e,r,n,a,i){var o=e.lineAtlas,s=Br(r,e.transform),l=\"round\"===n.layout.get(\"line-cap\"),c=o.getDash(a.from,l),u=o.getDash(a.to,l),h=c.width*i.fromScale,f=u.width*i.toScale;return t.extend(Or(e,r,n),{u_patternscale_a:[s/h,-c.height/2],u_patternscale_b:[s/f,-u.height/2],u_sdfgamma:o.width/(256*Math.min(h,f)*t.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:u.y,u_mix:i.t})};function Br(t,e){return 1/fe(t,1,e.tileZoom)}function Nr(t,e,r){return t.translatePosMatrix(e.tileID.posMatrix,e,r.paint.get(\"line-translate\"),r.paint.get(\"line-translate-anchor\"))}var jr=function(t,e,r,n,a){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*a.paint.get(\"raster-opacity\"),u_image0:0,u_image1:1,u_brightness_low:a.paint.get(\"raster-brightness-min\"),u_brightness_high:a.paint.get(\"raster-brightness-max\"),u_saturation_factor:(o=a.paint.get(\"raster-saturation\"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(i=a.paint.get(\"raster-contrast\"),i>0?1/(1-i):1+i),u_spin_weights:Vr(a.paint.get(\"raster-hue-rotate\"))};var i,o};function Vr(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 Ur,qr=function(t,e,r,n,a,i,o,s,l,c){var u=a.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:a.options.fadeDuration?a.symbolFadeChange:1,u_matrix:i,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+n,u_texsize:c,u_texture:0}},Hr=function(e,r,n,a,i,o,s,l,c,u,h){var f=i.transform;return t.extend(qr(e,r,n,a,i,o,s,l,c,u),{u_gamma_scale:a?Math.cos(f._pitch)*f.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+h})},Gr=function(e,r,n,a,i,o,s,l,c,u){return t.extend(Hr(e,r,n,a,i,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},Yr=function(t,e,r){return{u_matrix:t,u_opacity:e,u_color:r}},Wr=function(e,r,n,a,i,o){return t.extend(function(t,e,r,n){var a=r.imageManager.getPattern(t.from.toString()),i=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:a.tl,u_pattern_br_a:a.br,u_pattern_tl_b:i.tl,u_pattern_br_b:i.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:a.displaySize,u_pattern_size_b:i.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/fe(n,1,r.transform.tileZoom),u_pixel_coord_upper:[h>>16,f>>16],u_pixel_coord_lower:[65535&h,65535&f]}}(a,o,n,i),{u_matrix:e,u_opacity:r})},Zr={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_maxzoom:new t.Uniform1f(e,r.u_maxzoom),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)}},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 Xr(e,r,n,a,i,o,s){for(var l=e.context,c=l.gl,u=e.useProgram(\"collisionBox\"),h=[],f=0,p=0,d=0;d0){var _=t.create(),w=y;t.mul(_,v.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(_,_,v.placementViewportMatrix),h.push({circleArray:b,circleOffset:p,transform:w,invTransform:_}),p=f+=b.length/4}x&&u.draw(l,c.LINES,At.disabled,Mt.disabled,e.colorModeForRenderPass(),Et.disabled,Cr(y,e.transform,m),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&&(g[v.associatedIconIndex]={shiftedAnchor:k,angle:A})}else ce(v.numGlyphs,p)}if(h){d.clear();for(var S=e.icon.placedSymbolArray,E=0;E0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=r?(s-r.timeAdded)/o:-1,u=n.getSource(),h=i.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 ln=new t.Color(1,0,0,1),cn=new t.Color(0,1,0,1),un=new t.Color(0,0,1,1),hn=new t.Color(1,0,1,1),fn=new t.Color(0,1,1,1);function pn(t,e,r,n){gn(t,0,e+r/2,t.transform.width,r,n)}function dn(t,e,r,n){gn(t,e-r/2,0,r,t.transform.height,n)}function gn(e,r,n,a,i,o){var s=e.context,l=s.gl;l.enable(l.SCISSOR_TEST),l.scissor(r*t.browser.devicePixelRatio,n*t.browser.devicePixelRatio,a*t.browser.devicePixelRatio,i*t.browser.devicePixelRatio),s.clear({color:o}),l.disable(l.SCISSOR_TEST)}function mn(e,r,n){var a=e.context,i=a.gl,o=n.posMatrix,s=e.useProgram(\"debug\"),l=At.disabled,c=Mt.disabled,u=e.colorModeForRenderPass();a.activeTexture.set(i.TEXTURE0),e.emptyTexture.bind(i.LINEAR,i.CLAMP_TO_EDGE),s.draw(a,i.LINE_STRIP,l,c,u,Et.disabled,Pr(o,t.Color.red),\"$debug\",e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments);var h=r.getTileByID(n.key).latestRawTileData,f=Math.floor((h&&h.byteLength||0)/1024),p=r.getTile(n).tileSize,d=512/Math.min(p,512)*(n.overscaledZ/e.transform.zoom)*.5,g=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(g+=\" => \"+n.overscaledZ),function(t,e){t.initDebugOverlayCanvas();var r=t.debugOverlayCanvas,n=t.context.gl,a=t.debugOverlayCanvas.getContext(\"2d\");a.clearRect(0,0,r.width,r.height),a.shadowColor=\"white\",a.shadowBlur=2,a.lineWidth=1.5,a.strokeStyle=\"white\",a.textBaseline=\"top\",a.font=\"bold 36px Open Sans, sans-serif\",a.fillText(e,5,5),a.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(e,g+\" \"+f+\"kb\"),s.draw(a,i.TRIANGLES,l,c,St.alphaBlended,Et.disabled,Pr(o,t.Color.transparent,d),\"$debug\",e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}var vn={symbol:function(e,r,n,a,i){if(\"translucent\"===e.renderPass){var o=Mt.disabled,s=e.colorModeForRenderPass();n.layout.get(\"text-variable-anchor\")&&function(e,r,n,a,i,o,s){for(var l=r.transform,c=\"map\"===i,u=\"map\"===o,h=0,f=e;h256&&this.clearStencil(),r.setColorMode(St.disabled),r.setDepthMode(At.disabled);var a=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(var i=0,o=e;i256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new Mt({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new Mt({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilConfigForOverlap=function(t){var e,r=this.context.gl,n=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),a=n[n.length-1].overscaledZ,i=n[0].overscaledZ-a+1;if(i>1){this.currentStencilSource=void 0,this.nextStencilID+i>256&&this.clearStencil();for(var o={},s=0;s=0;this.currentLayer--){var b=this.style._layers[a[this.currentLayer]],_=i[b.source],w=u[b.source];this._renderTileClippingMasks(b,w),this.renderLayer(this,_,b,w)}for(this.renderPass=\"translucent\",this.currentLayer=0;this.currentLayer0?e.pop():null},yn.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},yn.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 br(this.context,yr[t],e,Zr[t],this._showOverdrawInspector)),this.cache[r]},yn.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()},yn.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)},yn.prototype.initDebugOverlayCanvas=function(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=t.window.document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))},yn.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var xn=function(t,e){this.points=t,this.planes=e};xn.fromInvProjectionMatrix=function(e,r,n){var a=Math.pow(2,n),i=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((function(r){return t.transformMat4([],r,e)})).map((function(e){return t.scale$1([],e,1/e[3]/r*a)})),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([],i[e[0]],i[e[1]]),n=t.sub([],i[e[2]],i[e[1]]),a=t.normalize([],t.cross([],r,n)),o=-t.dot(a,i[e[1]]);return a.concat(o)}));return new xn(i,o)};var bn=function(e,r){this.min=e,this.max=r,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};bn.prototype.quadrant=function(e){for(var r=[e%2==0,e<2],n=t.clone$2(this.min),a=t.clone$2(this.max),i=0;i=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 _n=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};_n.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},_n.prototype.getCenter=function(e,r){var n=t.clamp((this.left+e-this.right)/2,0,e),a=t.clamp((this.top+r-this.bottom)/2,0,r);return new t.Point(n,a)},_n.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},_n.prototype.clone=function(){return new _n(this.top,this.bottom,this.left,this.right)},_n.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wn=function(e,r,n,a,i){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===i||i,this._minZoom=e||0,this._maxZoom=r||22,this._minPitch=null==n?0:n,this._maxPitch=null==a?60:a,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 _n,this._posMatrixCache={},this._alignedPosMatrixCache={}},Tn={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}};wn.prototype.clone=function(){var t=new wn(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},Tn.minZoom.get=function(){return this._minZoom},Tn.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},Tn.maxZoom.get=function(){return this._maxZoom},Tn.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},Tn.minPitch.get=function(){return this._minPitch},Tn.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},Tn.maxPitch.get=function(){return this._maxPitch},Tn.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},Tn.renderWorldCopies.get=function(){return this._renderWorldCopies},Tn.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},Tn.worldSize.get=function(){return this.tileSize*this.scale},Tn.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Tn.size.get=function(){return new t.Point(this.width,this.height)},Tn.bearing.get=function(){return-this.angle/Math.PI*180},Tn.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))},Tn.pitch.get=function(){return this._pitch/Math.PI*180},Tn.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())},Tn.fov.get=function(){return this._fov/Math.PI*180},Tn.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())},Tn.zoom.get=function(){return this._zoom},Tn.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())},Tn.center.get=function(){return this._center},Tn.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Tn.padding.get=function(){return this._edgeInsets.toJSON()},Tn.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},Tn.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wn.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},wn.prototype.interpolatePadding=function(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()},wn.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)},wn.prototype.getVisibleUnwrappedCoordinates=function(e){var r=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new t.Point(0,0)),a=this.pointCoordinate(new t.Point(this.width,0)),i=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,a.x,i.x,o.x)),l=Math.floor(Math.max(n.x,a.x,i.x,o.x)),c=s-1;c<=l+1;c++)0!==c&&r.push(new t.UnwrappedTileID(c,e));return r},wn.prototype.coveringTiles=function(e){var r=this.coveringZoomLevel(e),n=r;if(void 0!==e.minzoom&&re.maxzoom&&(r=e.maxzoom);var a=t.MercatorCoordinate.fromLngLat(this.center),i=Math.pow(2,r),o=[i*a.x,i*a.y,0],s=xn.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 bn([t*i,0,0],[(t+1)*i,i,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 g=u.pop(),m=g.x,v=g.y,y=g.fullyVisible;if(!y){var x=g.aabb.intersects(s);if(0===x)continue;y=2===x}var b=g.aabb.distanceX(o),_=g.aabb.distanceY(o),w=Math.max(Math.abs(b),Math.abs(_));if(g.zoom===f||w>3+(1<=l)h.push({tileID:new t.OverscaledTileID(g.zoom===f?p:g.zoom,g.wrap,g.zoom,m,v),distanceSq:t.sqrLen([o[0]-.5-m,o[1]-.5-v])});else for(var T=0;T<4;T++){var k=(m<<1)+T%2,A=(v<<1)+(T>>1);u.push({aabb:g.aabb.quadrant(T),zoom:g.zoom+1,x:k,y:A,wrap:g.wrap,fullyVisible:y})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},wn.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},Tn.unmodified.get=function(){return this._unmodified},wn.prototype.zoomScale=function(t){return Math.pow(2,t)},wn.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},wn.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)},wn.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},Tn.point.get=function(){return this.project(this.center)},wn.prototype.setLocationAtPoint=function(e,r){var n=this.pointCoordinate(r),a=this.pointCoordinate(this.centerPoint),i=this.locationCoordinate(e),o=new t.MercatorCoordinate(i.x-(n.x-a.x),i.y-(n.y-a.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},wn.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},wn.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},wn.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},wn.prototype.coordinateLocation=function(t){return t.toLngLat()},wn.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 a=r[3],i=n[3],o=r[1]/a,s=n[1]/i,l=r[2]/a,c=n[2]/i,u=l===c?0:(0-l)/(c-l);return new t.MercatorCoordinate(t.number(r[0]/a,n[0]/i,u)/this.worldSize,t.number(o,s,u)/this.worldSize)},wn.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])},wn.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)))},wn.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},wn.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])},wn.prototype.calculatePosMatrix=function(e,r){void 0===r&&(r=!1);var n=e.key,a=r?this._alignedPosMatrixCache:this._posMatrixCache;if(a[n])return a[n];var i=e.canonical,o=this.worldSize/this.zoomScale(i.z),s=i.x+Math.pow(2,i.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,i.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),a[n]=new Float32Array(l),a[n]},wn.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wn.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,r,n,a,i=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var h=this.latRange;i=t.mercatorYfromLat(h[1])*this.worldSize,e=(o=t.mercatorYfromLat(h[0])*this.worldSize)-io&&(a=o-m)}if(this.lngRange){var v=p.x,y=c.x/2;v-yl&&(n=l-y)}void 0===n&&void 0===a||(this.center=this.unproject(new t.Point(void 0!==n?n:p.x,void 0!==a?a:p.y))),this._unmodified=u,this._constraining=!1}},wn.prototype._calcMatrices=function(){if(this.height){var e=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var r=Math.PI/2+this._pitch,n=this._fov*(.5+e.y/this.height),a=Math.sin(n)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-r-n,.01,Math.PI-.01)),i=this.point,o=i.x,s=i.y,l=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),c=this.height/50,u=new Float64Array(16);t.perspective(u,this._fov,this.width/this.height,c,l),u[8]=2*-e.x/this.width,u[9]=2*e.y/this.height,t.scale(u,u,[1,-1,1]),t.translate(u,u,[0,0,-this.cameraToCenterDistance]),t.rotateX(u,u,this._pitch),t.rotateZ(u,u,this.angle),t.translate(u,u,[-o,-s,0]),this.mercatorMatrix=t.scale([],u,[this.worldSize,this.worldSize,this.worldSize]),t.scale(u,u,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=u,this.invProjMatrix=t.invert([],this.projMatrix);var h=this.width%2/2,f=this.height%2/2,p=Math.cos(this.angle),d=Math.sin(this.angle),g=o-Math.round(o)+p*h+d*f,m=s-Math.round(s)+p*f+d*h,v=new Float64Array(u);if(t.translate(v,v,[g>.5?g-1:g,m>.5?m-1:m,0]),this.alignedProjMatrix=v,u=t.create(),t.scale(u,u,[this.width/2,-this.height/2,1]),t.translate(u,u,[1,-1,0]),this.labelPlaneMatrix=u,u=t.create(),t.scale(u,u,[1,-1,1]),t.translate(u,u,[-1,-1,0]),t.scale(u,u,[2/this.width,2/this.height,1]),this.glCoordMatrix=u,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(u=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=u,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wn.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},wn.prototype.getCameraPoint=function(){var e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,e))},wn.prototype.getCameraQueryGeometry=function(e){var r=this.getCameraPoint();if(1===e.length)return[e[0],r];for(var n=r.x,a=r.y,i=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},kn.prototype._updateHashUnthrottled=function(){var e=this.getHashString();try{t.window.history.replaceState(t.window.history.state,\"\",e)}catch(t){}};var An={linearity:.3,easing:t.bezier(0,0,.3,1)},Mn=t.extend({deceleration:2500,maxSpeed:1400},An),Sn=t.extend({deceleration:20,maxSpeed:1400},An),En=t.extend({deceleration:1e3,maxSpeed:360},An),Cn=t.extend({deceleration:1e3,maxSpeed:90},An),Ln=function(t){this._map=t,this.clear()};function Pn(t,e){(!t.duration||t.duration0&&r-e[0].time>160;)e.shift()},Ln.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,a=this._inertiaBuffer;n=this._clickTolerance||this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.dblclick=function(t){return this._firePreventable(new zn(t.type,this._map,t))},Rn.prototype.mouseover=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.mouseout=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.touchstart=function(t){return this._firePreventable(new On(t.type,this._map,t))},Rn.prototype.touchmove=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchend=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchcancel=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Rn.prototype.isEnabled=function(){return!0},Rn.prototype.isActive=function(){return!1},Rn.prototype.enable=function(){},Rn.prototype.disable=function(){};var Fn=function(t){this._map=t};Fn.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Fn.prototype.mousemove=function(t){this._map.fire(new zn(t.type,this._map,t))},Fn.prototype.mousedown=function(){this._delayContextMenu=!0},Fn.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new zn(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Fn.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new zn(t.type,this._map,t)),this._map.listens(\"contextmenu\")&&t.preventDefault()},Fn.prototype.isEnabled=function(){return!0},Fn.prototype.isActive=function(){return!1},Fn.prototype.enable=function(){},Fn.prototype.disable=function(){};var Bn=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Nn(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,a=e;n30)&&(this.aborted=!0)}}},jn.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 Vn=function(t){this.singleTap=new jn(t),this.numTaps=t.numTaps,this.reset()};Vn.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Vn.prototype.touchstart=function(t,e,r){this.singleTap.touchstart(t,e,r)},Vn.prototype.touchmove=function(t,e,r){this.singleTap.touchmove(t,e,r)},Vn.prototype.touchend=function(t,e,r){var n=this.singleTap.touchend(t,e,r);if(n){var a=t.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(n)<30;if(a&&i||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}};var Un=function(){this._zoomIn=new Vn({numTouches:1,numTaps:2}),this._zoomOut=new Vn({numTouches:2,numTaps:1}),this.reset()};Un.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Un.prototype.touchstart=function(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)},Un.prototype.touchmove=function(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)},Un.prototype.touchend=function(t,e,r){var n=this,a=this._zoomIn.touchend(t,e,r),i=this._zoomOut.touchend(t,e,r);return 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})}}):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})}}):void 0},Un.prototype.touchcancel=function(){this.reset()},Un.prototype.enable=function(){this._enabled=!0},Un.prototype.disable=function(){this._enabled=!1,this.reset()},Un.prototype.isEnabled=function(){return this._enabled},Un.prototype.isActive=function(){return this._active};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&&(t.preventDefault(),this._moved||!(e.dist(r)0&&(this._active=!0);var a=Nn(n,r),i=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in a){var c=a[l],u=this._touches[l];u&&(i._add(c),o._add(c.sub(u)),s++,a[l]=c)}if(this._touches=a,!(sMath.abs(t.x)}var ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.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,ta(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,r){var n=t[0].sub(this._lastPoints[0]),a=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,a,r.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+a.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,r){if(void 0!==this._valid)return this._valid;var n=t.mag()>=2,a=e.mag()>=2;if(n||a){if(!n||!a)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;var i=t.y>0==e.y>0;return ta(t)&&ta(e)&&i}},e}(Zn),ra={panStep:100,bearingStep:15,pitchStep:10},na=function(){var t=ra;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep};function aa(t){return t*(2-t)}na.prototype.reset=function(){this._active=!1},na.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var r=0,n=0,a=0,i=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(),i=-1);break;case 39:t.shiftKey?n=1:(t.preventDefault(),i=1);break;case 38:t.shiftKey?a=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?a=-1:(t.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:\"keyboardHandler\",easing:aa,zoom:r?Math.round(l)+r*(t.shiftKey?2:1):l,bearing:s.getBearing()+n*e._bearingStep,pitch:s.getPitch()+a*e._pitchStep,offset:[-i*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},na.prototype.enable=function(){this._enabled=!0},na.prototype.disable=function(){this._enabled=!1,this.reset()},na.prototype.isEnabled=function(){return this._enabled},na.prototype.isActive=function(){return this._active};var ia=function(e,r){this._map=e,this._el=e.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=1/450,t.bindAll([\"_onWheel\",\"_onTimeout\",\"_onScrollFrame\",\"_onScrollFinished\"],this)};ia.prototype.setZoomRate=function(t){this._defaultZoomRate=t},ia.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},ia.prototype.isEnabled=function(){return!!this._enabled},ia.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},ia.prototype.isZooming=function(){return!!this._zooming},ia.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},ia.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},ia.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(),a=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%4.000244140625==0?this._type=\"wheel\":0!==r&&Math.abs(r)<4?this._type=\"trackpad\":a>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(a*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()}},ia.prototype._onTimeout=function(t){this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(t)},ia.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())}},ia.prototype.renderFrame=function(){return this._onScrollFrame()},ia.prototype._onScrollFrame=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)>4.000244140625?this._wheelZoomRate:this._defaultZoomRate,a=2/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==a&&(a=1/a);var i=\"number\"==typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(i*a))),\"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}}},ia.prototype._smoothOutEasing=function(e){var r=t.ease;if(this._prevEase){var n=this._prevEase,a=(t.browser.now()-n.start)/n.duration,i=n.easing(a+.01)-n.easing(a),o=.27/Math.sqrt(i*i+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},ia.prototype.reset=function(){this._active=!1};var oa=function(t,e){this._clickZoom=t,this._tapZoom=e};oa.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},oa.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},oa.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},oa.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var sa=function(){this.reset()};sa.prototype.reset=function(){this._active=!1},sa.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})}}},sa.prototype.enable=function(){this._enabled=!0},sa.prototype.disable=function(){this._enabled=!1,this.reset()},sa.prototype.isEnabled=function(){return this._enabled},sa.prototype.isActive=function(){return this._active};var la=function(){this._tap=new Vn({numTouches:1,numTaps:1}),this.reset()};la.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},la.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))},la.prototype.touchmove=function(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=e[0],a=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:a/128}}}else this._tap.touchmove(t,e,r)},la.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)},la.prototype.touchcancel=function(){this.reset()},la.prototype.enable=function(){this._enabled=!0},la.prototype.disable=function(){this._enabled=!1,this.reset()},la.prototype.isEnabled=function(){return this._enabled},la.prototype.isActive=function(){return this._active};var ca=function(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r};ca.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"mapboxgl-touch-drag-pan\")},ca.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"mapboxgl-touch-drag-pan\")},ca.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},ca.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ua=function(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r};ua.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ua.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ua.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ua.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var ha=function(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};ha.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\")},ha.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\")},ha.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},ha.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},ha.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},ha.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var fa=function(t){return t.zoom||t.drag||t.pitch||t.rotate},pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(t.Event);function da(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var ga=function(e,n){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Ln(e),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),t.bindAll([\"handleEvent\",\"handleWindowEvent\"],this);var a=this._el;this._listeners=[[a,\"touchstart\",{passive:!1}],[a,\"touchmove\",{passive:!1}],[a,\"touchend\",void 0],[a,\"touchcancel\",void 0],[a,\"mousedown\",void 0],[a,\"mousemove\",void 0],[a,\"mouseup\",void 0],[t.window.document,\"mousemove\",{capture:!0}],[t.window.document,\"mouseup\",void 0],[a,\"mouseover\",void 0],[a,\"mouseout\",void 0],[a,\"dblclick\",void 0],[a,\"click\",void 0],[a,\"keydown\",{capture:!1}],[a,\"keyup\",void 0],[a,\"wheel\",{passive:!1}],[a,\"contextmenu\",void 0],[t.window,\"blur\",void 0]];for(var i=0,o=this._listeners;ii?Math.min(2,_):Math.max(.5,_),w=Math.pow(m,1-e),T=a.unproject(x.add(b.mult(e*w)).mult(g));a.setLocationAtPoint(a.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,a=this._rotating,i=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)),a&&this.fire(new t.Event(\"rotateend\",e)),i&&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 a=t.pick(e,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(a,r)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var i=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u=\"zoom\"in e?t.clamp(+e.zoom,i.minZoom,i.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:i.padding,d=i.zoomScale(u-o),g=t.Point.convert(e.offset),m=i.centerPoint.add(g),v=i.pointLocation(m),y=t.LngLat.convert(e.center||v);this._normalizeCenter(y);var x=i.project(v),b=i.project(y).sub(x),_=e.curve,w=Math.max(i.width,i.height),T=w/d,k=b.mag();if(\"minZoom\"in e){var A=t.clamp(Math.min(e.minZoom,o,u),i.minZoom,i.maxZoom),M=w/i.zoomScale(A-o);_=Math.sqrt(M/k*2)}var S=_*_;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 P=E(0),I=function(t){return L(P)/L(P+_*t)},z=function(t){return w*((L(P)*(C(e=P+_*t)/L(e))-C(P))/S)/k;var e},O=(E(1)-P)/_;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=!i.isPaddingEqual(p),this._prepareEase(r,!1),this._ease((function(e){var a=e*O,d=1/I(a);i.zoom=1===e?u:o+i.scaleZoom(d),n._rotating&&(i.bearing=t.number(s,h,e)),n._pitching&&(i.pitch=t.number(l,f,e)),n._padding&&(i.interpolatePadding(c,p,e),m=i.centerPoint.add(g));var v=1===e?y:i.unproject(x.add(b.mult(z(a))).mult(d));i.setLocationAtPoint(i.renderWorldCopies?v.wrap():v,m),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()}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),va=function(e){void 0===e&&(e={}),this.options=e,t.bindAll([\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this)};va.prototype.getDefaultPosition=function(){return\"bottom-right\"},va.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._innerContainer=r.create(\"div\",\"mapboxgl-ctrl-attrib-inner\",this._container),e&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===e&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container},va.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},va.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)}},va.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\")};var ya=function(){t.bindAll([\"_updateLogo\"],this),t.bindAll([\"_updateCompact\"],this)};ya.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},ya.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo),this._map.off(\"resize\",this._updateCompact)},ya.prototype.getDefaultPosition=function(){return\"bottom-left\"},ya.prototype._updateLogo=function(t){t&&\"metadata\"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},ya.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}},ya.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 xa=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};xa.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},xa.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>60)throw new Error(\"maxPitch must be less than or equal to 60\");var a=new wn(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(n.call(this,a,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 xa,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},ba,e.locale),this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),\"string\"==typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else{if(!(e.container instanceof wa))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_contextLost\",\"_contextRestored\"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error(\"Failed to initialize WebGL.\");this.on(\"move\",(function(){return 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)),this.handlers=new ga(this,e),this._hash=e.hash&&new kn(\"string\"==typeof e.hash&&e.hash||void 0).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 va({customAttribution:e.customAttribution})),this.addControl(new ya,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&&(a.__proto__=n),(a.prototype=Object.create(n&&n.prototype)).constructor=a;var i={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return a.prototype._getMapId=function(){return this._mapId},a.prototype.addControl=function(e,r){if(void 0===r&&e.getDefaultPosition&&(r=e.getDefaultPosition()),void 0===r&&(r=\"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 a=this._controlPositions[r];return-1!==r.indexOf(\"bottom\")?a.insertBefore(n,a.firstChild):a.appendChild(n),this},a.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},a.prototype.resize=function(e){var r=this._containerDimensions(),n=r[0],a=r[1];this._resizeCanvas(n,a),this.transform.resize(n,a),this.painter.resize(n,a);var i=!this._moving;return i&&(this.stop(),this.fire(new t.Event(\"movestart\",e)).fire(new t.Event(\"move\",e))),this.fire(new t.Event(\"resize\",e)),i&&this.fire(new t.Event(\"moveend\",e)),this},a.prototype.getBounds=function(){return this.transform.getBounds()},a.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},a.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},a.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\")},a.prototype.getMaxZoom=function(){return this.transform.maxZoom},a.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()60)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\")},a.prototype.getMaxPitch=function(){return this.transform.maxPitch},a.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},a.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},a.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},a.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},a.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},a.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},a.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},a.prototype._createDelegatedListener=function(t,e,r){var n,a=this;if(\"mouseenter\"===t||\"mouseover\"===t){var i=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){var o=a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[];o.length?i||(i=!0,r.call(a,new zn(t,a,n.originalEvent,{features:o}))):i=!1},mouseout:function(){i=!1}}}}if(\"mouseleave\"===t||\"mouseout\"===t){var o=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){(a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?o=!0:o&&(o=!1,r.call(a,new zn(t,a,n.originalEvent)))},mouseout:function(e){o&&(o=!1,r.call(a,new zn(t,a,e.originalEvent)))}}}}return{layer:e,listener:r,delegates:(n={},n[t]=function(t){var n=a.getLayer(e)?a.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(a,t),delete t.features)},n)}},a.prototype.on=function(t,e,r){if(void 0===r)return n.prototype.on.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(a),a.delegates)this.on(i,a.delegates[i]);return this},a.prototype.once=function(t,e,r){if(void 0===r)return n.prototype.once.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in a.delegates)this.once(i,a.delegates[i]);return this},a.prototype.off=function(t,e,r){var a=this;return void 0===r?n.prototype.off.call(this,t,e):(this._delegatedListeners&&this._delegatedListeners[t]&&function(n){for(var i=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}Ca.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),r.disableDrag()},Ca.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 a=this.mousePitch.mousemoveWindow(t,e);a&&a.pitchDelta&&r.setPitch(r.getPitch()+a.pitchDelta)}},Ca.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()},Ca.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(t.window,\"mousemove\",this.mousemove),r.removeEventListener(t.window,\"mouseup\",this.mouseup)},Ca.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)},Ca.prototype.mousemove=function(t){this.move(t,r.mousePos(this.element,t))},Ca.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Ca.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))},Ca.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))},Ca.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.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,a=this._map.getBearing(),i=t.extend({bearing:a},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),i,{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),a=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=a+\"px\",this._circleElement.style.height=a+\"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&&Fa)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 a=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.disabled=!0,this._geolocateButton.title=a,this._geolocateButton.setAttribute(\"aria-label\",a)}else{var i=this._map._getUIString(\"GeolocateControl.FindMyLocation\");this._geolocateButton.title=i,this._geolocateButton.setAttribute(\"aria-label\",i)}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 Oa(this._dotElement),this._circleElement=r.create(\"div\",\"mapboxgl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new Oa({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){e.geolocateSource||\"ACTIVE_LOCK\"!==n._watchState||e.originalEvent&&\"resize\"===e.originalEvent.type||(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\":Ra--,Fa=!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\"),++Ra>1?(e={maximumAge:6e5,timeout:0},Fa=!0):(e=this.options.positionOptions,Fa=!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),Na={maxWidth:100,unit:\"metric\"},ja=function(e){this.options=t.extend({},Na,e),t.bindAll([\"_onMove\",\"setUnit\"],this)};function Va(t,e,r){var n=r&&r.maxWidth||100,a=t._container.clientHeight/2,i=t.unproject([0,a]),o=t.unproject([n,a]),s=i.distanceTo(o);if(r&&\"imperial\"===r.unit){var l=3.2808*s;l>5280?Ua(e,n,l/5280,t._getUIString(\"ScaleControl.Miles\")):Ua(e,n,l,t._getUIString(\"ScaleControl.Feet\"))}else r&&\"nautical\"===r.unit?Ua(e,n,s/1852,t._getUIString(\"ScaleControl.NauticalMiles\")):s>=1e3?Ua(e,n,s/1e3,t._getUIString(\"ScaleControl.Kilometers\")):Ua(e,n,s,t._getUIString(\"ScaleControl.Meters\"))}function Ua(t,e,r,n){var a,i,o,s=(a=r,(i=Math.pow(10,(\"\"+Math.floor(a)).length-1))*(o=(o=a/i)>=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)));t.style.width=e*(s/r)+\"px\",t.innerHTML=s+\" \"+n}ja.prototype.getDefaultPosition=function(){return\"bottom-left\"},ja.prototype._onMove=function(){Va(this._map,this._container,this.options)},ja.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},ja.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},ja.prototype.setUnit=function(t){this.options.unit=t,Va(this._map,this._container,this.options)};var qa=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\")};qa.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},qa.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},qa.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},qa.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)},qa.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",t),this._fullscreenButton.title=t},qa.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")},qa.prototype._isFullscreen=function(){return this._fullscreen},qa.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())},qa.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 Ha={closeButton:!0,closeOnClick:!0,className:\"\",maxWidth:\"240px\"},Ga=function(e){function n(r){e.call(this),this.options=t.extend(Object.create(Ha),r),t.bindAll([\"_update\",\"_onClose\",\"remove\",\"_onMouseMove\",\"_onMouseUp\",\"_onDrag\"],this)}return e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.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._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(),a=t.window.document.createElement(\"body\");for(a.innerHTML=e;r=a.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){return this._createContent(),this._content.appendChild(t),this._update(),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.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},n.prototype._createContent=function(){this._content&&r.remove(this._content),this._content=r.create(\"div\",\"mapboxgl-popup-content\",this._container),this.options.closeButton&&(this._closeButton=r.create(\"button\",\"mapboxgl-popup-close-button\",this._content),this._closeButton.type=\"button\",this._closeButton.setAttribute(\"aria-label\",\"Close popup\"),this._closeButton.innerHTML=\"×\",this._closeButton.addEventListener(\"click\",this._onClose))},n.prototype._onMouseUp=function(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(e){var n=this;if(this._map&&(this._lngLat||this._trackPointer)&&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 n._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=La(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||e)){var a=this._pos=this._trackPointer&&e?e:this._map.project(this._lngLat),i=this.options.anchor,o=function e(r){if(r){if(\"number\"==typeof r){var n=Math.round(Math.sqrt(.5*Math.pow(r,2)));return{center:new t.Point(0,0),top:new t.Point(0,r),\"top-left\":new t.Point(n,n),\"top-right\":new t.Point(-n,n),bottom:new t.Point(0,-r),\"bottom-left\":new t.Point(n,-n),\"bottom-right\":new t.Point(-n,-n),left:new t.Point(r,0),right:new t.Point(-r,0)}}if(r instanceof t.Point||Array.isArray(r)){var a=t.Point.convert(r);return{center:a,top:a,\"top-left\":a,\"top-right\":a,bottom:a,\"bottom-left\":a,\"bottom-right\":a,left:a,right:a}}return{center:t.Point.convert(r.center||[0,0]),top:t.Point.convert(r.top||[0,0]),\"top-left\":t.Point.convert(r[\"top-left\"]||[0,0]),\"top-right\":t.Point.convert(r[\"top-right\"]||[0,0]),bottom:t.Point.convert(r.bottom||[0,0]),\"bottom-left\":t.Point.convert(r[\"bottom-left\"]||[0,0]),\"bottom-right\":t.Point.convert(r[\"bottom-right\"]||[0,0]),left:t.Point.convert(r.left||[0,0]),right:t.Point.convert(r.right||[0,0])}}return e(new t.Point(0,0))}(this.options.offset);if(!i){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=a.y+o.bottom.ythis._map.transform.height-c?[\"bottom\"]:[],a.xthis._map.transform.width-l/2&&s.push(\"right\"),i=0===s.length?\"bottom\":s.join(\"-\")}var u=a.add(o[i]).round();r.setTransform(this._container,Pa[i]+\" translate(\"+u.x+\"px,\"+u.y+\"px)\"),Ia(this._container,i,\"popup\")}},n.prototype._onClose=function(){this.remove()},n}(t.Evented),Ya={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Aa,NavigationControl:Ea,GeolocateControl:Ba,AttributionControl:va,ScaleControl:ja,FullscreenControl:qa,Popup:Ga,Marker:Oa,Style:qe,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:function(){Bt().acquire(Ot)},clearPrewarmedResources:function(){var t=Rt;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(Ot),Rt=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 Dt.workerCount},set workerCount(t){Dt.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 Ya})),r}))},{}],427:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=1<p[1][2]&&(v[0]=-v[0]),p[0][2]>p[2][0]&&(v[1]=-v[1]),p[1][0]>p[0][1]&&(v[2]=-v[2]),!0}},{\"./normalize\":429,\"gl-mat4/clone\":267,\"gl-mat4/create\":268,\"gl-mat4/determinant\":269,\"gl-mat4/invert\":273,\"gl-mat4/transpose\":284,\"gl-vec3/cross\":334,\"gl-vec3/dot\":339,\"gl-vec3/length\":349,\"gl-vec3/normalize\":356}],429:[function(t,e,r){e.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,a=0;a<16;a++)t[a]=e[a]*n;return!0}},{}],430:[function(t,e,r){var n=t(\"gl-vec3/lerp\"),a=t(\"mat4-recompose\"),i=t(\"mat4-decompose\"),o=t(\"gl-mat4/determinant\"),s=t(\"quat-slerp\"),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]}e.exports=function(t,e,r,h){if(0===o(e)||0===o(r))return!1;var f=i(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),p=i(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),a(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),!0)}},{\"gl-mat4/determinant\":269,\"gl-vec3/lerp\":350,\"mat4-decompose\":428,\"mat4-recompose\":431,\"quat-slerp\":481}],431:[function(t,e,r){var n={identity:t(\"gl-mat4/identity\"),translate:t(\"gl-mat4/translate\"),multiply:t(\"gl-mat4/multiply\"),create:t(\"gl-mat4/create\"),scale:t(\"gl-mat4/scale\"),fromRotationTranslation:t(\"gl-mat4/fromRotationTranslation\")},a=(n.create(),n.create());e.exports=function(t,e,r,i,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(a),0!==i[2]&&(a[9]=i[2],n.multiply(t,t,a)),0!==i[1]&&(a[9]=0,a[8]=i[1],n.multiply(t,t,a)),0!==i[0]&&(a[8]=0,a[4]=i[0],n.multiply(t,t,a)),n.scale(t,t,r),t}},{\"gl-mat4/create\":268,\"gl-mat4/fromRotationTranslation\":271,\"gl-mat4/identity\":272,\"gl-mat4/multiply\":275,\"gl-mat4/scale\":282,\"gl-mat4/translate\":283}],432:[function(t,e,r){\"use strict\";e.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},{}],433:[function(t,e,r){\"use strict\";var n=t(\"binary-search-bounds\"),a=t(\"mat4-interpolate\"),i=t(\"gl-mat4/invert\"),o=t(\"gl-mat4/rotateX\"),s=t(\"gl-mat4/rotateY\"),l=t(\"gl-mat4/rotateZ\"),c=t(\"gl-mat4/lookAt\"),u=t(\"gl-mat4/translate\"),h=(t(\"gl-mat4/scale\"),t(\"gl-vec3/normalize\")),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]}e.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 a(o,f,d,(t-e[r])/u)}var g=this.computedUp;g[0]=o[1],g[1]=o[5],g[2]=o[9],h(g,g);var m=this.computedInverse;i(m,o);var v=this.computedEye,y=m[15];v[0]=m[12]/y,v[1]=m[13]/y,v[2]=m[14]/y;var x=this.computedCenter,b=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)x[c]=v[c]-o[2+4*c]*b}},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=(a=0,o.length);a0;--p)r[h++]=s[p];return r};var n=t(\"robust-orientation\")[3]},{\"robust-orientation\":500}],436:[function(t,e,r){\"use strict\";e.exports=function(t,e){e||(e=t,t=window);var r=0,a=0,i=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!==a||u!==i||l(s))&&(r=0|t,a=c||0,i=u||0,e&&e(r,a,i,o))}function u(t){c(0,t)}function h(){(r||a||i||o.shift||o.alt||o.meta||o.control)&&(a=i=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,a,i,o)}function p(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function g(t){c(r&~n.buttons(t),t)}function m(){s||(s=!0,t.addEventListener(\"mousemove\",p),t.addEventListener(\"mousedown\",d),t.addEventListener(\"mouseup\",g),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)))}m();var v={element:t};return Object.defineProperties(v,{enabled:{get:function(){return s},set:function(e){e?m():function(){if(!s)return;s=!1,t.removeEventListener(\"mousemove\",p),t.removeEventListener(\"mousedown\",d),t.removeEventListener(\"mouseup\",g),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 a},enumerable:!0},y:{get:function(){return i},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),v};var n=t(\"mouse-event\")},{\"mouse-event\":438}],437:[function(t,e,r){var n={left:0,top:0};e.exports=function(t,e,r){e=e||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var a=t.clientX||0,i=t.clientY||0,o=(s=e,s===window||s===document||s===document.body?n:s.getBoundingClientRect());var s;return r[0]=a-o.left,r[1]=i-o.top,r}},{}],438:[function(t,e,r){\"use strict\";function n(t){return t.target||t.srcElement||window}r.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 w=t.getters||[],T=new Array(b),k=0;k=0?T[k]=!0:T[k]=!1;return function(t,e,r,b,_,w){var T=w.length,k=_.length;if(k<2)throw new Error(\"ndarray-extract-contour: Dimension must be at least 2\");for(var A=\"extractContour\"+_.join(\"_\"),M=[],S=[],E=[],C=0;C0&&z.push(l(C,_[L-1])+\"*\"+s(_[L-1])),S.push(d(C,_[L])+\"=(\"+z.join(\"-\")+\")|0\")}for(C=0;C=0;--C)O.push(s(_[C]));S.push(\"Q=(\"+O.join(\"*\")+\")|0\",\"P=mallocUint32(Q)\",\"V=mallocUint32(Q)\",\"X=0\"),S.push(g(0)+\"=0\");for(L=1;L<1<0;_=_-1&d)x.push(\"V[X+\"+v(_)+\"]\");x.push(y(0));for(_=0;_=0;--e)N(e,0);var r=[];for(e=0;e0){\",p(_[e]),\"=1;\"),t(e-1,r|1<<_[e]);for(var n=0;n=0?s.push(\"0\"):e.indexOf(-(l+1))>=0?s.push(\"s[\"+l+\"]-1\"):(s.push(\"-1\"),i.push(\"1\"),o.push(\"s[\"+l+\"]-2\"));var c=\".lo(\"+i.join()+\").hi(\"+o.join()+\")\";if(0===i.length&&(c=\"\"),a>0){n.push(\"if(1\");for(l=0;l=0||e.indexOf(-(l+1))>=0||n.push(\"&&s[\",l,\"]>2\");n.push(\"){grad\",a,\"(src.pick(\",s.join(),\")\",c);for(l=0;l=0||e.indexOf(-(l+1))>=0||n.push(\",dst.pick(\",s.join(),\",\",l,\")\",c);n.push(\");\")}for(l=0;l1){dst.set(\",s.join(),\",\",u,\",0.5*(src.get(\",f.join(),\")-src.get(\",p.join(),\")))}else{dst.set(\",s.join(),\",\",u,\",0)};\"):n.push(\"if(s[\",u,\"]>1){diff(\",h,\",src.pick(\",f.join(),\")\",c,\",src.pick(\",p.join(),\")\",c,\");}else{zero(\",h,\");};\");break;case\"mirror\":0===a?n.push(\"dst.set(\",s.join(),\",\",u,\",0);\"):n.push(\"zero(\",h,\");\");break;case\"wrap\":var d=s.slice(),g=s.slice();e[l]<0?(d[u]=\"s[\"+u+\"]-2\",g[u]=\"0\"):(d[u]=\"s[\"+u+\"]-1\",g[u]=\"1\"),0===a?n.push(\"if(s[\",u,\"]>2){dst.set(\",s.join(),\",\",u,\",0.5*(src.get(\",d.join(),\")-src.get(\",g.join(),\")))}else{dst.set(\",s.join(),\",\",u,\",0)};\"):n.push(\"if(s[\",u,\"]>2){diff(\",h,\",src.pick(\",d.join(),\")\",c,\",src.pick(\",g.join(),\")\",c,\");}else{zero(\",h,\");};\");break;default:throw new Error(\"ndarray-gradient: Invalid boundary condition\")}}a>0&&n.push(\"};\")}for(var s=0;s<1<>\",rrshift:\">>>\"};!function(){for(var t in s){var e=s[t];r[t]=o({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"eq\"]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a\"+e+\"=b\"},rvalue:!0,funcName:t+\"eq\"}),r[t+\"s\"]=o({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"seq\"]=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a\"+e+\"=s\"},rvalue:!0,funcName:t+\"seq\"})}}();var l={not:\"!\",bnot:\"~\",neg:\"-\",recip:\"1.0/\"};!function(){for(var t in l){var e=l[t];r[t]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=\"+e+\"b\"},funcName:t}),r[t+\"eq\"]=o({args:[\"array\"],body:{args:[\"a\"],body:\"a=\"+e+\"a\"},rvalue:!0,count:2,funcName:t+\"eq\"})}}();var c={and:\"&&\",or:\"||\",eq:\"===\",neq:\"!==\",lt:\"<\",gt:\">\",leq:\"<=\",geq:\">=\"};!function(){for(var t in c){var e=c[t];r[t]=o({args:[\"array\",\"array\",\"array\"],body:{args:[\"a\",\"b\",\"c\"],body:\"a=b\"+e+\"c\"},funcName:t}),r[t+\"s\"]=o({args:[\"array\",\"array\",\"scalar\"],body:{args:[\"a\",\"b\",\"s\"],body:\"a=b\"+e+\"s\"},funcName:t+\"s\"}),r[t+\"eq\"]=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=a\"+e+\"b\"},rvalue:!0,count:2,funcName:t+\"eq\"}),r[t+\"seq\"]=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"s\"],body:\"a=a\"+e+\"s\"},rvalue:!0,count:2,funcName:t+\"seq\"})}}();var u=[\"abs\",\"acos\",\"asin\",\"atan\",\"ceil\",\"cos\",\"exp\",\"floor\",\"log\",\"round\",\"sin\",\"sqrt\",\"tan\"];!function(){for(var t=0;tthis_s){this_s=-a}else if(a>this_s){this_s=a}\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norminf\"}),r.norm1=n({args:[\"array\"],pre:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"this_s=0\"},body:{args:[{name:\"a\",lvalue:!1,rvalue:!0,count:3}],body:\"this_s+=a<0?-a:a\",localVars:[],thisVars:[\"this_s\"]},post:{args:[],localVars:[],thisVars:[\"this_s\"],body:\"return this_s\"},funcName:\"norm1\"}),r.sup=n({args:[\"array\"],pre:{body:\"this_h=-Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_h\"],localVars:[]},post:{body:\"return this_h\",args:[],thisVars:[\"this_h\"],localVars:[]}}),r.inf=n({args:[\"array\"],pre:{body:\"this_h=Infinity\",args:[],thisVars:[\"this_h\"],localVars:[]},body:{body:\"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:2}],thisVars:[\"this_i\",\"this_v\"],localVars:[\"_inline_1_k\"]},post:{body:\"{return this_i}\",args:[],thisVars:[\"this_i\"],localVars:[]}}),r.random=o({args:[\"array\"],pre:{args:[],body:\"this_f=Math.random\",thisVars:[\"this_f\"]},body:{args:[\"a\"],body:\"a=this_f()\",thisVars:[\"this_f\"]},funcName:\"random\"}),r.assign=o({args:[\"array\",\"array\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assign\"}),r.assigns=o({args:[\"array\",\"scalar\"],body:{args:[\"a\",\"b\"],body:\"a=b\"},funcName:\"assigns\"}),r.equals=n({args:[\"array\",\"array\"],pre:a,body:{args:[{name:\"x\",lvalue:!1,rvalue:!0,count:1},{name:\"y\",lvalue:!1,rvalue:!0,count:1}],body:\"if(x!==y){return false}\",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:\"return true\"},funcName:\"equals\"})},{\"cwise-compiler\":148}],444:[function(t,e,r){\"use strict\";var n=t(\"ndarray\"),a=t(\"./doConvert.js\");e.exports=function(t,e){for(var r=[],i=t,o=1;Array.isArray(i);)r.push(i.length),o*=i.length,i=i[0];return 0===r.length?n():(e||(e=n(new Float64Array(o),r)),a(e,t),e)}},{\"./doConvert.js\":445,ndarray:448}],445:[function(t,e,r){e.exports=t(\"cwise-compiler\")({args:[\"array\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\nvar _inline_1_v=_inline_1_arg1_,_inline_1_i\\nfor(_inline_1_i=0;_inline_1_i<_inline_1_arg2_.length-1;++_inline_1_i) {\\n_inline_1_v=_inline_1_v[_inline_1_arg2_[_inline_1_i]]\\n}\\n_inline_1_arg0_=_inline_1_v[_inline_1_arg2_[_inline_1_arg2_.length-1]]\\n}\",args:[{name:\"_inline_1_arg0_\",lvalue:!0,rvalue:!1,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:[\"_inline_1_i\",\"_inline_1_v\"]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},funcName:\"convert\",blockSize:64})},{\"cwise-compiler\":148}],446:[function(t,e,r){\"use strict\";var n=t(\"typedarray-pool\"),a=32;function i(t){switch(t){case\"uint8\":return[n.mallocUint8,n.freeUint8];case\"uint16\":return[n.mallocUint16,n.freeUint16];case\"uint32\":return[n.mallocUint32,n.freeUint32];case\"int8\":return[n.mallocInt8,n.freeInt8];case\"int16\":return[n.mallocInt16,n.freeInt16];case\"int32\":return[n.mallocInt32,n.freeInt32];case\"float32\":return[n.mallocFloat,n.freeFloat];case\"float64\":return[n.mallocDouble,n.freeDouble];default:return null}}function o(t){for(var e=[],r=0;r0?s.push([\"d\",d,\"=s\",d,\"-d\",h,\"*n\",h].join(\"\")):s.push([\"d\",d,\"=s\",d].join(\"\")),h=d),0!==(p=t.length-1-l)&&(f>0?s.push([\"e\",p,\"=s\",p,\"-e\",f,\"*n\",f,\",f\",p,\"=\",c[p],\"-f\",f,\"*n\",f].join(\"\")):s.push([\"e\",p,\"=s\",p,\",f\",p,\"=\",c[p]].join(\"\")),f=p)}r.push(\"var \"+s.join(\",\"));var g=[\"0\",\"n0-1\",\"data\",\"offset\"].concat(o(t.length));r.push([\"if(n0<=\",a,\"){\",\"insertionSort(\",g.join(\",\"),\")}else{\",\"quickSort(\",g.join(\",\"),\")}\"].join(\"\")),r.push(\"}return \"+n);var m=new Function(\"insertionSort\",\"quickSort\",r.join(\"\\n\")),v=function(t,e){var r=[\"'use strict'\"],n=[\"ndarrayInsertionSort\",t.join(\"d\"),e].join(\"\"),a=[\"left\",\"right\",\"data\",\"offset\"].concat(o(t.length)),s=i(e),l=[\"i,j,cptr,ptr=left*s0+offset\"];if(t.length>1){for(var c=[],u=1;u1){r.push(\"dptr=0;sptr=ptr\");for(u=t.length-1;u>=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"b){break __l}\"].join(\"\"));for(u=t.length-1;u>=1;--u)r.push(\"sptr+=e\"+u,\"dptr+=f\"+u,\"}\");r.push(\"dptr=cptr;sptr=cptr-s0\");for(u=t.length-1;u>=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"=0;--u){0!==(p=t[u])&&r.push([\"for(i\",p,\"=0;i\",p,\"scratch)){\",f(\"cptr\",h(\"cptr-s0\")),\"cptr-=s0\",\"}\",f(\"cptr\",\"scratch\"));return r.push(\"}\"),t.length>1&&s&&r.push(\"free(scratch)\"),r.push(\"} return \"+n),s?new Function(\"malloc\",\"free\",r.join(\"\\n\"))(s[0],s[1]):new Function(r.join(\"\\n\"))()}(t,e),y=function(t,e,r){var n=[\"'use strict'\"],s=[\"ndarrayQuickSort\",t.join(\"d\"),e].join(\"\"),l=[\"left\",\"right\",\"data\",\"offset\"].concat(o(t.length)),c=i(e),u=0;n.push([\"function \",s,\"(\",l.join(\",\"),\"){\"].join(\"\"));var h=[\"sixth=((right-left+1)/6)|0\",\"index1=left+sixth\",\"index5=right-sixth\",\"index3=(left+right)>>1\",\"index2=index3-sixth\",\"index4=index3+sixth\",\"el1=index1\",\"el2=index2\",\"el3=index3\",\"el4=index4\",\"el5=index5\",\"less=left+1\",\"great=right-1\",\"pivots_are_equal=true\",\"tmp\",\"tmp0\",\"x\",\"y\",\"z\",\"k\",\"ptr0\",\"ptr1\",\"ptr2\",\"comp_pivot1=0\",\"comp_pivot2=0\",\"comp=0\"];if(t.length>1){for(var f=[],p=1;p=0;--i){0!==(o=t[i])&&n.push([\"for(i\",o,\"=0;i\",o,\"1)for(i=0;i1?n.push(\"ptr_shift+=d\"+o):n.push(\"ptr0+=d\"+o),n.push(\"}\"))}}function y(e,r,a,i){if(1===r.length)n.push(\"ptr0=\"+d(r[0]));else{for(var o=0;o1)for(o=0;o=1;--o)a&&n.push(\"pivot_ptr+=f\"+o),r.length>1?n.push(\"ptr_shift+=e\"+o):n.push(\"ptr0+=e\"+o),n.push(\"}\")}function x(){t.length>1&&c&&n.push(\"free(pivot1)\",\"free(pivot2)\")}function b(e,r){var a=\"el\"+e,i=\"el\"+r;if(t.length>1){var o=\"__l\"+ ++u;y(o,[a,i],!1,[\"comp=\",g(\"ptr0\"),\"-\",g(\"ptr1\"),\"\\n\",\"if(comp>0){tmp0=\",a,\";\",a,\"=\",i,\";\",i,\"=tmp0;break \",o,\"}\\n\",\"if(comp<0){break \",o,\"}\"].join(\"\"))}else n.push([\"if(\",g(d(a)),\">\",g(d(i)),\"){tmp0=\",a,\";\",a,\"=\",i,\";\",i,\"=tmp0}\"].join(\"\"))}function _(e,r){t.length>1?v([e,r],!1,m(\"ptr0\",g(\"ptr1\"))):n.push(m(d(e),g(d(r))))}function w(e,r,a){if(t.length>1){var i=\"__l\"+ ++u;y(i,[r],!0,[e,\"=\",g(\"ptr0\"),\"-pivot\",a,\"[pivot_ptr]\\n\",\"if(\",e,\"!==0){break \",i,\"}\"].join(\"\"))}else n.push([e,\"=\",g(d(r)),\"-pivot\",a].join(\"\"))}function T(e,r){t.length>1?v([e,r],!1,[\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",\"tmp\")].join(\"\")):n.push([\"ptr0=\",d(e),\"\\n\",\"ptr1=\",d(r),\"\\n\",\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",\"tmp\")].join(\"\"))}function k(e,r,a){t.length>1?(v([e,r,a],!1,[\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",g(\"ptr2\")),\"\\n\",m(\"ptr2\",\"tmp\")].join(\"\")),n.push(\"++\"+r,\"--\"+a)):n.push([\"ptr0=\",d(e),\"\\n\",\"ptr1=\",d(r),\"\\n\",\"ptr2=\",d(a),\"\\n\",\"++\",r,\"\\n\",\"--\",a,\"\\n\",\"tmp=\",g(\"ptr0\"),\"\\n\",m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",g(\"ptr2\")),\"\\n\",m(\"ptr2\",\"tmp\")].join(\"\"))}function A(t,e){T(t,e),n.push(\"--\"+e)}function M(e,r,a){t.length>1?v([e,r],!0,[m(\"ptr0\",g(\"ptr1\")),\"\\n\",m(\"ptr1\",[\"pivot\",a,\"[pivot_ptr]\"].join(\"\"))].join(\"\")):n.push(m(d(e),g(d(r))),m(d(r),\"pivot\"+a))}function S(e,r){n.push([\"if((\",r,\"-\",e,\")<=\",a,\"){\\n\",\"insertionSort(\",e,\",\",r,\",data,offset,\",o(t.length).join(\",\"),\")\\n\",\"}else{\\n\",s,\"(\",e,\",\",r,\",data,offset,\",o(t.length).join(\",\"),\")\\n\",\"}\"].join(\"\"))}function E(e,r,a){t.length>1?(n.push([\"__l\",++u,\":while(true){\"].join(\"\")),v([e],!0,[\"if(\",g(\"ptr0\"),\"!==pivot\",r,\"[pivot_ptr]){break __l\",u,\"}\"].join(\"\")),n.push(a,\"}\")):n.push([\"while(\",g(d(e)),\"===pivot\",r,\"){\",a,\"}\"].join(\"\"))}return n.push(\"var \"+h.join(\",\")),b(1,2),b(4,5),b(1,3),b(2,3),b(1,4),b(3,4),b(2,5),b(2,3),b(4,5),t.length>1?v([\"el1\",\"el2\",\"el3\",\"el4\",\"el5\",\"index1\",\"index3\",\"index5\"],!0,[\"pivot1[pivot_ptr]=\",g(\"ptr1\"),\"\\n\",\"pivot2[pivot_ptr]=\",g(\"ptr3\"),\"\\n\",\"pivots_are_equal=pivots_are_equal&&(pivot1[pivot_ptr]===pivot2[pivot_ptr])\\n\",\"x=\",g(\"ptr0\"),\"\\n\",\"y=\",g(\"ptr2\"),\"\\n\",\"z=\",g(\"ptr4\"),\"\\n\",m(\"ptr5\",\"x\"),\"\\n\",m(\"ptr6\",\"y\"),\"\\n\",m(\"ptr7\",\"z\")].join(\"\")):n.push([\"pivot1=\",g(d(\"el2\")),\"\\n\",\"pivot2=\",g(d(\"el4\")),\"\\n\",\"pivots_are_equal=pivot1===pivot2\\n\",\"x=\",g(d(\"el1\")),\"\\n\",\"y=\",g(d(\"el3\")),\"\\n\",\"z=\",g(d(\"el5\")),\"\\n\",m(d(\"index1\"),\"x\"),\"\\n\",m(d(\"index3\"),\"y\"),\"\\n\",m(d(\"index5\"),\"z\")].join(\"\")),_(\"index2\",\"left\"),_(\"index4\",\"right\"),n.push(\"if(pivots_are_equal){\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp\",\"k\",1),n.push(\"if(comp===0){continue}\"),n.push(\"if(comp<0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),n.push(\"while(true){\"),w(\"comp\",\"great\",1),n.push(\"if(comp>0){\"),n.push(\"great--\"),n.push(\"}else if(comp<0){\"),k(\"k\",\"less\",\"great\"),n.push(\"break\"),n.push(\"}else{\"),A(\"k\",\"great\"),n.push(\"break\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}\"),n.push(\"}else{\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp_pivot1\",\"k\",1),n.push(\"if(comp_pivot1<0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),w(\"comp_pivot2\",\"k\",2),n.push(\"if(comp_pivot2>0){\"),n.push(\"while(true){\"),w(\"comp\",\"great\",2),n.push(\"if(comp>0){\"),n.push(\"if(--greatindex5){\"),E(\"less\",1,\"++less\"),E(\"great\",2,\"--great\"),n.push(\"for(k=less;k<=great;++k){\"),w(\"comp_pivot1\",\"k\",1),n.push(\"if(comp_pivot1===0){\"),n.push(\"if(k!==less){\"),T(\"k\",\"less\"),n.push(\"}\"),n.push(\"++less\"),n.push(\"}else{\"),w(\"comp_pivot2\",\"k\",2),n.push(\"if(comp_pivot2===0){\"),n.push(\"while(true){\"),w(\"comp\",\"great\",2),n.push(\"if(comp===0){\"),n.push(\"if(--great1&&c?new Function(\"insertionSort\",\"malloc\",\"free\",n.join(\"\\n\"))(r,c[0],c[1]):new Function(\"insertionSort\",n.join(\"\\n\"))(r)}(t,e,v);return m(v,y)}},{\"typedarray-pool\":547}],447:[function(t,e,r){\"use strict\";var n=t(\"./lib/compile_sort.js\"),a={};e.exports=function(t){var e=t.order,r=t.dtype,i=[e,r].join(\":\"),o=a[i];return o||(a[i]=o=n(e,r)),o(t),t}},{\"./lib/compile_sort.js\":446}],448:[function(t,e,r){var n=t(\"iota-array\"),a=t(\"is-buffer\"),i=\"undefined\"!=typeof Float64Array;function o(t,e){return t[0]-e[0]}function s(){var t,e=this.stride,r=new Array(e.length);for(t=0;tMath.abs(this.stride[1]))?[1,0]:[0,1]}})\"):3===e&&i.push(\"var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})\")):i.push(\"ORDER})\")),i.push(\"proto.set=function \"+r+\"_set(\"+l.join(\",\")+\",v){\"),a?i.push(\"return this.data.set(\"+u+\",v)}\"):i.push(\"return this.data[\"+u+\"]=v}\"),i.push(\"proto.get=function \"+r+\"_get(\"+l.join(\",\")+\"){\"),a?i.push(\"return this.data.get(\"+u+\")}\"):i.push(\"return this.data[\"+u+\"]}\"),i.push(\"proto.index=function \"+r+\"_index(\",l.join(),\"){return \"+u+\"}\"),i.push(\"proto.hi=function \"+r+\"_hi(\"+l.join(\",\")+\"){return new \"+r+\"(this.data,\"+o.map((function(t){return[\"(typeof i\",t,\"!=='number'||i\",t,\"<0)?this.shape[\",t,\"]:i\",t,\"|0\"].join(\"\")})).join(\",\")+\",\"+o.map((function(t){return\"this.stride[\"+t+\"]\"})).join(\",\")+\",this.offset)}\");var p=o.map((function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"})),d=o.map((function(t){return\"c\"+t+\"=this.stride[\"+t+\"]\"}));i.push(\"proto.lo=function \"+r+\"_lo(\"+l.join(\",\")+\"){var b=this.offset,d=0,\"+p.join(\",\")+\",\"+d.join(\",\"));for(var g=0;g=0){d=i\"+g+\"|0;b+=c\"+g+\"*d;a\"+g+\"-=d}\");i.push(\"return new \"+r+\"(this.data,\"+o.map((function(t){return\"a\"+t})).join(\",\")+\",\"+o.map((function(t){return\"c\"+t})).join(\",\")+\",b)}\"),i.push(\"proto.step=function \"+r+\"_step(\"+l.join(\",\")+\"){var \"+o.map((function(t){return\"a\"+t+\"=this.shape[\"+t+\"]\"})).join(\",\")+\",\"+o.map((function(t){return\"b\"+t+\"=this.stride[\"+t+\"]\"})).join(\",\")+\",c=this.offset,d=0,ceil=Math.ceil\");for(g=0;g=0){c=(c+this.stride[\"+g+\"]*i\"+g+\")|0}else{a.push(this.shape[\"+g+\"]);b.push(this.stride[\"+g+\"])}\");return i.push(\"var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}\"),i.push(\"return function construct_\"+r+\"(data,shape,stride,offset){return new \"+r+\"(data,\"+o.map((function(t){return\"shape[\"+t+\"]\"})).join(\",\")+\",\"+o.map((function(t){return\"stride[\"+t+\"]\"})).join(\",\")+\",offset)}\"),new Function(\"CTOR_LIST\",\"ORDER\",i.join(\"\\n\"))(c[t],s)}var c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};e.exports=function(t,e,r,n){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===n){n=0;for(s=0;st==t>0?i===-1>>>0?(r+=1,i=0):i+=1:0===i?(i=-1>>>0,r-=1):i-=1;return n.pack(i,r)}},{\"double-bits\":168}],450:[function(t,e,r){var n=Math.PI,a=c(120);function i(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function o(t,e,r,n,a,i){return[\"C\",t/3+2/3*r,e/3+2/3*n,a/3+2/3*r,i/3+2/3*n,a,i]}function s(t,e,r,i,o,c,u,h,f,p){if(p)T=p[0],k=p[1],_=p[2],w=p[3];else{var d=l(t,e,-o);t=d.x,e=d.y;var g=(t-(h=(d=l(h,f,-o)).x))/2,m=(e-(f=d.y))/2,v=g*g/(r*r)+m*m/(i*i);v>1&&(r*=v=Math.sqrt(v),i*=v);var y=r*r,x=i*i,b=(c==u?-1:1)*Math.sqrt(Math.abs((y*x-y*m*m-x*g*g)/(y*m*m+x*g*g)));b==1/0&&(b=1);var _=b*r*m/i+(t+h)/2,w=b*-i*g/r+(e+f)/2,T=Math.asin(((e-w)/i).toFixed(9)),k=Math.asin(((f-w)/i).toFixed(9));(T=t<_?n-T:T)<0&&(T=2*n+T),(k=h<_?n-k:k)<0&&(k=2*n+k),u&&T>k&&(T-=2*n),!u&&k>T&&(k-=2*n)}if(Math.abs(k-T)>a){var A=k,M=h,S=f;k=T+a*(u&&k>T?1:-1);var E=s(h=_+r*Math.cos(k),f=w+i*Math.sin(k),r,i,o,0,u,M,S,[k,A,_,w])}var C=Math.tan((k-T)/4),L=4/3*r*C,P=4/3*i*C,I=[2*t-(t+L*Math.sin(T)),2*e-(e-P*Math.cos(T)),h+L*Math.sin(k),f-P*Math.cos(k),h,f];if(p)return I;E&&(I=I.concat(E));for(var z=0;z7&&(r.push(v.splice(0,7)),v.unshift(\"C\"));break;case\"S\":var x=p,b=d;\"C\"!=e&&\"S\"!=e||(x+=x-n,b+=b-a),v=[\"C\",x,b,v[1],v[2],v[3],v[4]];break;case\"T\":\"Q\"==e||\"T\"==e?(h=2*p-h,f=2*d-f):(h=p,f=d),v=o(p,d,h,f,v[1],v[2]);break;case\"Q\":h=v[1],f=v[2],v=o(p,d,v[1],v[2],v[3],v[4]);break;case\"L\":v=i(p,d,v[1],v[2]);break;case\"H\":v=i(p,d,v[1],d);break;case\"V\":v=i(p,d,p,v[1]);break;case\"Z\":v=i(p,d,l,u)}e=y,p=v[v.length-2],d=v[v.length-1],v.length>4?(n=v[v.length-4],a=v[v.length-3]):(n=p,a=d),r.push(v)}return r}},{}],451:[function(t,e,r){r.vertexNormals=function(t,e,r){for(var n=e.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;oi){var b=a[c],_=1/Math.sqrt(m*y);for(x=0;x<3;++x){var w=(x+1)%3,T=(x+2)%3;b[x]+=_*(v[w]*g[T]-v[T]*g[w])}}}for(o=0;oi)for(_=1/Math.sqrt(k),x=0;x<3;++x)b[x]*=_;else for(x=0;x<3;++x)b[x]=0}return a},r.faceNormals=function(t,e,r){for(var n=t.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;oi?1/Math.sqrt(p):0;for(c=0;c<3;++c)f[c]*=p;a[o]=f}return a}},{}],452:[function(t,e,r){\n", "/*\n", "object-assign\n", "(c) Sindre Sorhus\n", "@license MIT\n", "*/\n", "\"use strict\";var n=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function o(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}e.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,e){for(var r,s,l=o(t),c=1;c0){var h=Math.sqrt(u+1);t[0]=.5*(o-l)/h,t[1]=.5*(s-n)/h,t[2]=.5*(r-i)/h,t[3]=.5*h}else{var f=Math.max(e,i,c);h=Math.sqrt(2*f-u+1);e>=f?(t[0]=.5*h,t[1]=.5*(a+r)/h,t[2]=.5*(s+n)/h,t[3]=.5*(o-l)/h):i>=f?(t[0]=.5*(r+a)/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-a)/h)}return t}},{}],454:[function(t,e,r){\"use strict\";e.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 a=new h(r,e,Math.log(n));a.setDistanceLimits(t.zoomMin,t.zoomMax),(\"eye\"in t||\"up\"in t)&&a.lookAt(0,t.eye,t.center,t.up);return a};var n=t(\"filtered-vector\"),a=t(\"gl-mat4/lookAt\"),i=t(\"gl-mat4/fromQuat\"),o=t(\"gl-mat4/invert\"),s=t(\"./lib/quatFromFrame\");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],a=e[2],i=e[3],o=c(r,n,a,i);o>1e-6?(t[0]=r/o,t[1]=n/o,t[2]=a/o,t[3]=i/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;i(r,e);var n=this.computedCenter,a=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);a[0]=n[0]+s*r[2],a[1]=n[1]+s*r[6],a[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]*a[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 a=this.computedMatrix,i=a[1],o=a[5],s=a[9],c=l(i,o,s);i/=c,o/=c,s/=c;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=l(u-=i*p,h-=o*p,f-=s*p);u/=d,h/=d,f/=d;var g=a[2],m=a[6],v=a[10],y=g*i+m*o+v*s,x=g*u+m*h+v*f,b=l(g-=y*i+x*u,m-=y*o+x*h,v-=y*s+x*f);g/=b,m/=b,v/=b;var _=u*e+i*r,w=h*e+o*r,T=f*e+s*r;this.center.move(t,_,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 a=this.computedMatrix,i=a[0],o=a[4],s=a[8],u=a[1],h=a[5],f=a[9],p=a[2],d=a[6],g=a[10],m=e*i+r*u,v=e*o+r*h,y=e*s+r*f,x=-(d*y-g*v),b=-(g*m-p*y),_=-(p*v-d*m),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(b,2)-Math.pow(_,2))),T=c(x,b,_,w);T>1e-6?(x/=T,b/=T,_/=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*_-S*b,L=M*w+E*b+S*x-A*_,P=S*w+E*_+A*b-M*x,I=E*w-A*x-M*b-S*_;if(n){x=p,b=d,_=g;var z=Math.sin(n)/l(x,b,_);x*=z,b*=z,_*=z,I=I*(w=Math.cos(e))-(C=C*w+I*x+L*_-P*b)*x-(L=L*w+I*b+P*x-C*_)*b-(P=P*w+I*_+C*b-L*x)*_}var O=c(C,L,P,I);O>1e-6?(C/=O,L/=O,P/=O,I/=O):(C=L=P=0,I=1),this.rotation.set(t,C,L,P,I)},f.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var i=this.computedMatrix;a(i,e,r,n);var o=this.computedRotation;s(o,i[0],i[1],i[2],i[4],i[5],i[6],i[8],i[9],i[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 a=n[15];if(Math.abs(a)>1e-6){var i=n[12]/a,l=n[13]/a,c=n[14]/a;this.recalcMatrix(t);var h=Math.exp(this.computedRadius[0]);this.center.set(t,i-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 a=t.distance;a&&a>0&&this.radius.set(e,Math.log(a)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},{\"./lib/quatFromFrame\":453,\"filtered-vector\":237,\"gl-mat4/fromQuat\":270,\"gl-mat4/invert\":273,\"gl-mat4/lookAt\":274}],455:[function(t,e,r){\n", "/*!\n", " * pad-left \n", " *\n", " * Copyright (c) 2014-2015, Jon Schlinkert.\n", " * Licensed under the MIT license.\n", " */\n", "\"use strict\";var n=t(\"repeat-string\");e.exports=function(t,e,r){return n(r=\"undefined\"!=typeof r?r+\"\":\" \",e)+t}},{\"repeat-string\":493}],456:[function(t,e,r){\"use strict\";function n(t,e){if(\"string\"!=typeof t)return[t];var r=[t];\"string\"==typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var n=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:[\"{}\",\"[]\",\"()\"],a=e.escape||\"___\",i=!!e.flat;n.forEach((function(t){var e=new RegExp([\"\\\\\",t[0],\"[^\\\\\",t[0],\"\\\\\",t[1],\"]*\\\\\",t[1]].join(\"\")),n=[];function i(e,i,o){var s=r.push(e.slice(t[0].length,-t[1].length))-1;return n.push(s),a+s+a}r.forEach((function(t,n){for(var a,o=0;t!=a;)if(a=t,t=t.replace(e,i),o++>1e4)throw Error(\"References have circular dependency. Please, check them.\");r[n]=t})),n=n.reverse(),r=r.map((function(e){return n.forEach((function(r){e=e.replace(new RegExp(\"(\\\\\"+a+r+\"\\\\\"+a+\")\",\"g\"),t[0]+\"$1\"+t[1])})),e}))}));var o=new RegExp(\"\\\\\"+a+\"([0-9]+)\\\\\"+a);return i?r:function t(e,r,n){for(var a,i=[],s=0;a=o.exec(e);){if(s++>1e4)throw Error(\"Circular references in parenthesis\");i.push(e.slice(0,a.index)),i.push(t(r[a[1]],r)),e=e.slice(a.index+a[0].length)}return i.push(e),i}(r[0],r)}function a(t,e){if(e&&e.flat){var r,n=e&&e.escape||\"___\",a=t[0];if(!a)return\"\";for(var i=new RegExp(\"\\\\\"+n+\"([0-9]+)\\\\\"+n),o=0;a!=r;){if(o++>1e4)throw Error(\"Circular references in \"+t);r=a,a=a.replace(i,s)}return a}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 i(t,e){return Array.isArray(t)?a(t,e):n(t,e)}i.parse=n,i.stringify=a,e.exports=i},{}],457:[function(t,e,r){\"use strict\";var n=t(\"pick-by-alias\");e.exports=function(t){var e;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&&(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\"}),e={x:t.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);return e}},{\"pick-by-alias\":463}],458:[function(t,e,r){e.exports=function(t){var e=[];return t.replace(a,(function(t,r,a){var o=r.toLowerCase();for(a=function(t){var e=t.match(i);return e?e.map(Number):[]}(a),\"m\"==o&&a.length>2&&(e.push([r].concat(a.splice(0,2))),o=\"l\",r=\"m\"==r?\"l\":\"L\");;){if(a.length==n[o])return a.unshift(r),e.push(a);if(a.length0;--o)i=l[o],r=s[o],s[o]=s[i],s[i]=r,l[o]=l[r],l[r]=i,c=(c+r)*o;return n.freeUint32(l),n.freeUint32(s),c},r.unrank=function(t,e,r){switch(t){case 0:return r||[];case 1:return r?(r[0]=0,r):[0];case 2:return r?(e?(r[0]=0,r[1]=1):(r[0]=1,r[1]=0),r):e?[0,1]:[1,0]}var n,a,i,o=1;for((r=r||new Array(t))[0]=0,i=1;i0;--i)e=e-(n=e/o|0)*o|0,o=o/i|0,a=0|r[i],r[i]=0|r[n],r[n]=0|a;return r}},{\"invert-permutation\":415,\"typedarray-pool\":547}],463:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){var n,i,o={};if(\"string\"==typeof e&&(e=a(e)),Array.isArray(e)){var s={};for(i=0;i0){o=i[u][r][0],l=u;break}s=o[1^l];for(var h=0;h<2;++h)for(var f=i[h][r],p=0;p0&&(o=d,s=g,l=h)}return a||o&&c(o,l),s}function h(t,r){var a=i[r][t][0],o=[t];c(a,r);for(var s=a[1^r];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(i[0][t].length+i[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;){i[0][o].length;var g=h(o,p);f(0,g)?d.push.apply(d,g):(d.length>0&&l.push(d),d=g)}d.length>0&&l.push(d)}return l};var n=t(\"compare-angle\")},{\"compare-angle\":129}],465:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=n(t,e.length),a=new Array(e.length),i=new Array(e.length),o=[],s=0;s0;){var c=o.pop();a[c]=!1;var u=r[c];for(s=0;s0}))).length,m=new Array(g),v=new Array(g);for(p=0;p0;){var B=R.pop(),N=E[B];l(N,(function(t,e){return t-e}));var j,V=N.length,U=F[B];if(0===U){var q=d[B];j=[q]}for(p=0;p=0))if(F[H]=1^U,R.push(H),0===U)D(q=d[H])||(q.reverse(),j.push(q))}0===U&&r.push(j)}return r};var n=t(\"edges-to-adjacency-list\"),a=t(\"planar-dual\"),i=t(\"point-in-big-polygon\"),o=t(\"two-product\"),s=t(\"robust-sum\"),l=t(\"uniq\"),c=t(\"./lib/trim-leaves\");function u(t,e){for(var r=new Array(t),n=0;n>>1;e.dtype||(e.dtype=\"array\"),\"string\"==typeof e.dtype?d=new(h(e.dtype))(m):e.dtype&&(d=e.dtype,Array.isArray(d)&&(d.length=m));for(var v=0;vr||s>1073741824){for(var f=0;fe+n||w>r+n||T=A||i===o)){var s=y[a];void 0===o&&(o=s.length);for(var l=i;l=d&&u<=m&&h>=g&&h<=v&&S.push(c)}var f=x[a],p=f[4*i+0],b=f[4*i+1],M=f[4*i+2],E=f[4*i+3],P=L(f,i+1),I=.5*n,z=a+1;C(e,r,I,z,p,b||M||E||P),C(e,r+I,I,z,b,M||E||P),C(e+I,r,I,z,M,E||P),C(e+I,r+I,I,z,E,P)}}function L(t,e){for(var r=null,n=0;null===r;)if(r=t[4*e+n],++n>t.length)return null;return r}return C(0,0,1,0,0,1),S},d;function E(t,e,r,a,i){for(var o=[],s=0;s0&&e[a]===r[0]))return 1;i=t[a-1]}for(var s=1;i;){var l=i.key,c=n(r,l[0],l[1]);if(l[0][0]0))return 0;s=-1,i=i.right}else if(c>0)i=i.left;else{if(!(c<0))return 0;s=1,i=i.right}}return s}}(v.slabs,v.coordinates);return 0===i.length?y:function(t,e){return function(r){return t(r[0],r[1])?0:e(r)}}(l(i),y)};var n=t(\"robust-orientation\")[3],a=t(\"slab-decomposition\"),i=t(\"interval-tree-1d\"),o=t(\"binary-search-bounds\");function s(){return!0}function l(t){for(var e={},r=0;r=-t},pointBetween:function(e,r,n){var a=e[1]-r[1],i=n[0]-r[0],o=e[0]-r[0],s=n[1]-r[1],l=o*i+a*s;return!(l-t)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])t!=o-a>t&&(i-c)*(a-u)/(o-u)+c-n>t&&(s=!s),i=c,o=u}return s}};return e}},{}],474:[function(t,e,r){var n={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]),a=1;a0}))}function u(t,n){var a=t.seg,i=n.seg,o=a.start,s=a.end,c=i.start,u=i.end;r&&r.checkIntersection(a,i);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),g=!p&&e.pointBetween(s,c,u);if(f)return g?l(n,s):l(t,u),n;d&&(p||(g?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=[];!i.isEmpty();){var f=i.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,g=p.after?p.after.ev:null;function m(){if(d){var t=u(f,d);if(t)return t}return!!g&&u(f,g)}r&&r.tempStatus(f.seg,!!d&&d.seg,!!g&&g.seg);var v,y=m();if(y){var x;if(t)(x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below)&&(y.seg.myFill.above=!y.seg.myFill.above);else y.seg.otherFill=f.seg.myFill;r&&r.segmentUpdate(y.seg),f.other.remove(),f.remove()}if(i.getHead()!==f){r&&r.rewind(f.seg);continue}if(t)x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below,f.seg.myFill.below=g?g.seg.myFill.above:a,f.seg.myFill.above=x?!f.seg.myFill.below:f.seg.myFill.below;else if(null===f.seg.otherFill)v=g?f.primary===g.primary?g.seg.otherFill.above:g.seg.myFill.above:f.primary?o:a,f.seg.otherFill={above:v,below:v};r&&r.status(f.seg,!!d&&d.seg,!!g&&g.seg),f.other.status=p.insert(n.node({ev:f}))}else{var b=f.status;if(null===b)throw new Error(\"PolyBool: Zero-length segment detected; your epsilon is probably too small or too large\");if(s.exists(b.prev)&&s.exists(b.next)&&u(b.prev.ev,b.next.ev),r&&r.statusRemove(b.ev.seg),b.remove(),!f.primary){var _=f.seg.myFill;f.seg.myFill=f.seg.otherFill,f.seg.otherFill=_}h.push(f.seg)}i.getHead().remove()}return r&&r.done(),h}return t?{addRegion:function(t){for(var n,a,i,o=t[t.length-1],l=0;l=c?(k=1,y=c+2*f+d):y=f*(k=-f/c)+d):(k=0,p>=0?(A=0,y=d):-p>=h?(A=1,y=h+2*p+d):y=p*(A=-p/h)+d);else if(A<0)A=0,f>=0?(k=0,y=d):-f>=c?(k=1,y=c+2*f+d):y=f*(k=-f/c)+d;else{var M=1/T;y=(k*=M)*(c*k+u*(A*=M)+2*f)+A*(u*k+h*A+2*p)+d}else k<0?(b=h+p)>(x=u+f)?(_=b-x)>=(w=c-2*u+h)?(k=1,A=0,y=c+2*f+d):y=(k=_/w)*(c*k+u*(A=1-k)+2*f)+A*(u*k+h*A+2*p)+d:(k=0,b<=0?(A=1,y=h+2*p+d):p>=0?(A=0,y=d):y=p*(A=-p/h)+d):A<0?(b=c+f)>(x=u+p)?(_=b-x)>=(w=c-2*u+h)?(A=1,k=0,y=h+2*p+d):y=(k=1-(A=_/w))*(c*k+u*A+2*f)+A*(u*k+h*A+2*p)+d:(A=0,b<=0?(k=1,y=c+2*f+d):f>=0?(k=0,y=d):y=f*(k=-f/c)+d):(_=h+p-u-f)<=0?(k=0,A=1,y=h+2*p+d):_>=(w=c-2*u+h)?(k=1,A=0,y=c+2*f+d):y=(k=_/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;l1)for(var r=1;r0){var c=t[r-1];if(0===n(s,c)&&i(c)!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}},{\"cell-orientation\":114,\"compare-cell\":130,\"compare-oriented-cell\":131}],488:[function(t,e,r){\"use strict\";var n=t(\"array-bounds\"),a=t(\"color-normalize\"),i=t(\"update-diff\"),o=t(\"pick-by-alias\"),s=t(\"object-assign\"),l=t(\"flatten-vertex-data\"),c=t(\"to-float32\"),u=c.float32,h=c.fract32;e.exports=function(t,e){\"function\"==typeof t?(e||(e={}),e.regl=t):e=t;e.length&&(e.positions=e);if(!(t=e.regl).hasExtension(\"ANGLE_instanced_arrays\"))throw Error(\"regl-error2d: `ANGLE_instanced_arrays` extension should be enabled\");var r,c,p,d,g,m,v=t._gl,y={color:\"black\",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},x=[];return d=t.buffer({usage:\"dynamic\",type:\"uint8\",data:new Uint8Array(0)}),c=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),p=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),g=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),m=t.buffer({usage:\"static\",type:\"float\",data:f}),T(e),r=t({vert:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tattribute vec2 position, positionFract;\\n\\t\\tattribute vec4 error;\\n\\t\\tattribute vec4 color;\\n\\n\\t\\tattribute vec2 direction, lineOffset, capOffset;\\n\\n\\t\\tuniform vec4 viewport;\\n\\t\\tuniform float lineWidth, capSize;\\n\\t\\tuniform vec2 scale, scaleFract, translate, translateFract;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tfragColor = color / 255.;\\n\\n\\t\\t\\tvec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;\\n\\n\\t\\t\\tvec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;\\n\\n\\t\\t\\tvec2 position = position + dxy;\\n\\n\\t\\t\\tvec2 pos = (position + translate) * scale\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scale\\n\\t\\t\\t\\t+ (position + translate) * scaleFract\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scaleFract;\\n\\n\\t\\t\\tpos += pixelOffset / viewport.zw;\\n\\n\\t\\t\\tgl_Position = vec4(pos * 2. - 1., 0, 1);\\n\\t\\t}\\n\\t\\t\",frag:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tuniform float opacity;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tgl_FragColor = fragColor;\\n\\t\\t\\tgl_FragColor.a *= opacity;\\n\\t\\t}\\n\\t\\t\",uniforms:{range:t.prop(\"range\"),lineWidth:t.prop(\"lineWidth\"),capSize:t.prop(\"capSize\"),opacity:t.prop(\"opacity\"),scale:t.prop(\"scale\"),translate:t.prop(\"translate\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{color:{buffer:d,offset:function(t,e){return 4*e.offset},divisor:1},position:{buffer:c,offset:function(t,e){return 8*e.offset},divisor:1},positionFract:{buffer:p,offset:function(t,e){return 8*e.offset},divisor:1},error:{buffer:g,offset:function(t,e){return 16*e.offset},divisor:1},direction:{buffer:m,stride:24,offset:0},lineOffset:{buffer:m,stride:24,offset:8},capOffset:{buffer:m,stride:24,offset:16}},primitive:\"triangles\",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:\"add\",alpha:\"add\"},func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},depth:{enable:!1},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\"),stencil:!1,instances:t.prop(\"count\"),count:f.length}),s(b,{update:T,draw:_,destroy:k,regl:t,gl:v,canvas:v.canvas,groups:x}),b;function b(t){t?T(t):null===t&&k(),_()}function _(e){if(\"number\"==typeof e)return w(e);e&&!Array.isArray(e)&&(e=[e]),t._refresh(),x.forEach((function(t,r){t&&(e&&(e[r]?t.draw=!0:t.draw=!1),t.draw?w(r):t.draw=!0)}))}function w(t){\"number\"==typeof t&&(t=x[t]),null!=t&&t&&t.count&&t.color&&t.opacity&&t.positions&&t.positions.length>1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],r(t),t.after&&t.after(t))}function T(t){if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,r=0;if(b.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({},y,t)),i(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 i=0;i 0. && baClipping < length(normalWidth * endBotJoin)) {\\n\\t\\t//handle miter clipping\\n\\t\\tbTopCoord -= normalWidth * endTopJoin;\\n\\t\\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\\n\\t}\\n\\n\\tif (nextReverse) {\\n\\t\\t//make join rectangular\\n\\t\\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\\n\\t\\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\\n\\t\\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\\n\\t\\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\\n\\t}\\n\\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\\n\\t\\t//handle miter clipping\\n\\t\\taBotCoord -= normalWidth * startBotJoin;\\n\\t\\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\\n\\t}\\n\\n\\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\\n\\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\\n\\n\\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\\n\\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\\n\\n\\t//position is normalized 0..1 coord on the screen\\n\\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\\n\\n\\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\\n\\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\\n\\n\\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\\n\\n\\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\\n\\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\\n\\n\\t//bevel miter cutoffs\\n\\tif (miterMode == 1.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\\n\\t\\t\\tstartCutoff = vec4(aCoord, aCoord);\\n\\t\\t\\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\\n\\t\\t\\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tstartCutoff += viewport.xyxy;\\n\\t\\t\\tstartCutoff += startMiterWidth.xyxy;\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\\n\\t\\t\\tendCutoff = vec4(bCoord, bCoord);\\n\\t\\t\\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\\n\\t\\t\\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tendCutoff += viewport.xyxy;\\n\\t\\t\\tendCutoff += endMiterWidth.xyxy;\\n\\t\\t}\\n\\t}\\n\\n\\t//round miter cutoffs\\n\\telse if (miterMode == 2.) {\\n\\t\\tif (enableStartMiter == 1.) {\\n\\t\\t\\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\\n\\t\\t\\tstartCutoff = vec4(aCoord, aCoord);\\n\\t\\t\\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\\n\\t\\t\\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tstartCutoff += viewport.xyxy;\\n\\t\\t\\tstartCutoff += startMiterWidth.xyxy;\\n\\t\\t}\\n\\n\\t\\tif (enableEndMiter == 1.) {\\n\\t\\t\\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\\n\\t\\t\\tendCutoff = vec4(bCoord, bCoord);\\n\\t\\t\\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\\n\\t\\t\\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\\n\\t\\t\\tendCutoff += viewport.xyxy;\\n\\t\\t\\tendCutoff += endMiterWidth.xyxy;\\n\\t\\t}\\n\\t}\\n}\\n\"]),frag:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform sampler2D dashPattern;\\nuniform float dashSize, pixelRatio, thickness, opacity, id, miterMode;\\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) / dashSize) * .5 + .25;\\n\\tfloat dash = texture2D(dashPattern, 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=a}return{fill:t({primitive:\"triangle\",elements:function(t,e){return e.triangles},offset:0,vert:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position, positionFract;\\n\\nuniform vec4 color;\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float pixelRatio, id;\\nuniform vec4 viewport;\\nuniform float opacity;\\n\\nvarying vec4 fragColor;\\n\\nconst float MAX_LINES = 256.;\\n\\nvoid main() {\\n\\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\\n\\n\\tvec2 position = position * scale + translate\\n + positionFract * scale + translateFract\\n + position * scaleFract\\n + positionFract * scaleFract;\\n\\n\\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\\n\\n\\tfragColor = color / 255.;\\n\\tfragColor.a *= opacity;\\n}\\n\"]),frag:o([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n\\tgl_FragColor = fragColor;\\n}\\n\"]),uniforms:{scale:t.prop(\"scale\"),color:t.prop(\"fill\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),translate:t.prop(\"translate\"),opacity:t.prop(\"opacity\"),pixelRatio:t.context(\"pixelRatio\"),id:t.prop(\"id\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8},positionFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:a,miter:e}},m.defaults={dashes:null,join:\"miter\",miterLimit:1,thickness:10,cap:\"square\",color:\"black\",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},m.prototype.render=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];e.length&&(t=this).update.apply(t,e),this.draw()},m.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>m.precisionThreshold||e.scale[1]*e.viewport.height>m.precisionThreshold||\"rect\"===e.join||!e.join&&(e.thickness<=2||e.count>=m.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},m.prototype.update=function(t){var e=this;if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var r=this.regl,o=this.gl;if(t.forEach((function(t,h){var d=e.passes[h];if(void 0!==t)if(null!==t){if(\"number\"==typeof t[0]&&(t={positions:t}),t=s(t,{positions:\"positions points data coords\",thickness:\"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth\",join:\"lineJoin linejoin join type mode\",miterLimit:\"miterlimit miterLimit\",dashes:\"dash dashes dasharray dash-array dashArray\",color:\"color colour stroke colors colours stroke-color strokeColor\",fill:\"fill fill-color fillColor\",opacity:\"alpha opacity\",overlay:\"overlay crease overlap intersect\",close:\"closed close closed-path closePath\",range:\"range dataBox\",viewport:\"viewport viewBox\",hole:\"holes hole hollow\"}),d||(e.passes[h]=d={id:h,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=i({},m.defaults,t)),null!=t.thickness&&(d.thickness=parseFloat(t.thickness)),null!=t.opacity&&(d.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(d.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(d.overlay=!!t.overlay,ht.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=f([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute float x, y, xFract, yFract;\\nattribute float size, borderSize;\\nattribute vec4 colorId, borderColorId;\\nattribute float isActive;\\n\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float pixelRatio;\\nuniform sampler2D palette;\\nuniform vec2 paletteSize;\\n\\nconst float maxSize = 100.;\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragBorderRadius, fragWidth;\\n\\nbool isDirect = (paletteSize.x < 1.);\\n\\nvec4 getColor(vec4 id) {\\n return isDirect ? id / 255. : texture2D(palette,\\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) * pixelRatio;\\n\\n vec2 pos = (position + translate) * scale\\n + (positionFract + translateFract) * scale\\n + (position + translate) * scaleFract\\n + (positionFract + translateFract) * scaleFract;\\n\\n gl_Position = vec4(pos * 2. - 1., 0, 1);\\n\\n 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)}b.defaults={color:\"black\",borderColor:\"transparent\",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;nn)?e.tree=u(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)}return a({data:v.float(t),usage:\"dynamic\"}),i({data:v.fract(t),usage:\"dynamic\"}),s({data:new Uint8Array(c),type:\"uint8\",usage:\"stream\"}),t}},{marker:function(e,r,n){var a=r.activation;if(a.forEach((function(t){return t&&t.destroy&&t.destroy()})),a.length=0,e&&\"number\"!=typeof e[0]){for(var i=[],s=0,l=Math.min(e.length,r.count);s=0)return i;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===a.length?a[0]:a},b.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 a=.25*(t=t.slice()).length%e;a2?(s[0],s[2],n=s[1],a=s[3]):s.length?(n=s[0],a=s[1]):(s.x,n=s.y,s.x+s.width,a=s.y+s.height),l.length>2?(i=l[0],o=l[2],l[1],l[3]):l.length?(i=l[0],o=l[1]):(i=l.x,l.y,o=l.x+l.width,l.y+l.height),[i,n,o,a]}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]}e.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 s(){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[o(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){r[o(t.byteLength)>>2].push(t)}var r=i(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 l(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)||Z(t.data))}function c(t,e,r,n,a,i){for(var o=0;o(a=s)&&(a=n.buffer.byteLength,5123===h?a>>=1:5125===h&&(a>>=2)),n.vertCount=a,a=o,0>o&&(a=4,1===(o=n.buffer.dimension)&&(a=0),2===o&&(a=1),3===o&&(a=4)),n.primType=a}function o(t){n.elementsCount--,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},c=0,u={uint8:5121,uint16:5123};e.oes_element_index_uint&&(u.uint32=5125),a.prototype.bind=function(){this.buffer.bind()};var h=[];return{create:function(t,e){function s(t){if(t)if(\"number\"==typeof t)c(t),h.primType=4,h.vertCount=0|t,h.type=5121;else{var e=null,r=35044,n=-1,a=-1,o=0,f=0;Array.isArray(t)||Z(t)||l(t)?e=t:(\"data\"in t&&(e=t.data),\"usage\"in t&&(r=$[t.usage]),\"primitive\"in t&&(n=nt[t.primitive]),\"count\"in t&&(a=0|t.count),\"type\"in t&&(f=u[t.type]),\"length\"in t?o=0|t.length:(o=a,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),i(h,e,r,n,a,o,f)}else c(),h.primType=4,h.vertCount=0,h.type=5121;return s}var c=r.create(null,34963,!0),h=new a(c._buffer);return n.elementsCount++,s(t),s._reglType=\"elements\",s._elements=h,s.subdata=function(t,e){return c.subdata(t,e),s},s.destroy=function(){o(h)},s},createStream:function(t){var e=h.pop();return e||(e=new a(r.create(null,34963,!0,!1)._buffer)),i(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){h.push(t)},getElements:function(t){return\"function\"==typeof t&&t._elements instanceof a?t._elements:null},clear:function(){X(s).forEach(o)}}}function g(t){for(var e=Y.allocType(5123,t.length),r=0;r>>31<<15,a=(i<<1>>>24)-127,i=i>>13&1023;e[r]=-24>a?n:-14>a?n+(i+1024>>-14-a):15>=a,r.height>>=a,p(r,n[a]),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&&(i.getTotalTextureSize=function(){var t=0;return Object.keys(yt).forEach((function(e){t+=yt[e].stats.size})),t}),{create2D:function(e,r){function n(t,e){var r=a.texInfo;P.call(r);var i=C();return\"number\"==typeof t?M(i,0|t,\"number\"==typeof e?0|e:0|t):t?(I(r,t),S(i,t)):M(i,1,1),r.genMipmaps&&(i.mipmask=(i.width<<1)-1),a.mipmask=i.mipmask,c(a,i),a.internalformat=i.internalformat,n.width=i.width,n.height=i.height,D(a),E(i,3553),z(r,3553),R(),L(i),o.profile&&(a.stats.size=T(a.internalformat,a.type,i.width,i.height,r.genMipmaps,!1)),n.format=tt[a.internalformat],n.type=et[a.type],n.mag=rt[r.magFilter],n.min=nt[r.minFilter],n.wrapS=at[r.wrapS],n.wrapT=at[r.wrapT],n}var a=new O(3553);return yt[a.id]=a,i.textureCount++,n(e,r),n.subimage=function(t,e,r,i){e|=0,r|=0,i|=0;var o=v();return c(o,a),o.width=0,o.height=0,p(o,t),o.width=o.width||(a.width>>i)-e,o.height=o.height||(a.height>>i)-r,D(a),d(o,3553,e,r,i),R(),k(o),n},n.resize=function(e,r){var i=0|e,s=0|r||i;if(i===a.width&&s===a.height)return n;n.width=a.width=i,n.height=a.height=s,D(a);for(var l=0;a.mipmask>>l;++l){var c=i>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,a.format,c,u,0,a.format,a.type,null)}return R(),o.profile&&(a.stats.size=T(a.internalformat,a.type,i,s,!1,!1)),n},n._reglType=\"texture2d\",n._texture=a,o.profile&&(n.stats=a.stats),n.destroy=function(){a.decRef()},n},createCube:function(e,r,n,a,s,l){function h(t,e,r,n,a,i){var s,l=f.texInfo;for(P.call(l),s=0;6>s;++s)g[s]=C();if(\"number\"!=typeof t&&t){if(\"object\"==typeof t)if(e)S(g[0],t),S(g[1],e),S(g[2],r),S(g[3],n),S(g[4],a),S(g[5],i);else if(I(l,t),u(f,t),\"faces\"in t)for(t=t.faces,s=0;6>s;++s)c(g[s],f),S(g[s],t[s]);else for(s=0;6>s;++s)S(g[s],t)}else for(t=0|t||1,s=0;6>s;++s)M(g[s],t,t);for(c(f,g[0]),f.mipmask=l.genMipmaps?(g[0].width<<1)-1:g[0].mipmask,f.internalformat=g[0].internalformat,h.width=g[0].width,h.height=g[0].height,D(f),s=0;6>s;++s)E(g[s],34069+s);for(z(l,34067),R(),o.profile&&(f.stats.size=T(f.internalformat,f.type,h.width,h.height,l.genMipmaps,!0)),h.format=tt[f.internalformat],h.type=et[f.type],h.mag=rt[l.magFilter],h.min=nt[l.minFilter],h.wrapS=at[l.wrapS],h.wrapT=at[l.wrapT],s=0;6>s;++s)L(g[s]);return h}var f=new O(34067);yt[f.id]=f,i.cubeCount++;var g=Array(6);return h(e,r,n,a,s,l),h.subimage=function(t,e,r,n,a){r|=0,n|=0,a|=0;var i=v();return c(i,f),i.width=0,i.height=0,p(i,e),i.width=i.width||(f.width>>a)-r,i.height=i.height||(f.height>>a)-n,D(f),d(i,34069+t,r,n,a),R(),k(i),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=T(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)}))}}}function A(t,e,r,n,a,i){function o(t,e,r){this.target=t,this.texture=e,this.renderbuffer=r;var n=t=0;e?(t=e.width,n=e.height):r&&(t=r.width,n=r.height),this.width=t,this.height=n}function s(t){t&&(t.texture&&t.texture._texture.decRef(),t.renderbuffer&&t.renderbuffer._renderbuffer.decRef())}function l(t,e,r){t&&(t.texture?t.texture._texture.refCount+=1:t.renderbuffer._renderbuffer.refCount+=1)}function c(e,r){r&&(r.texture?t.framebufferTexture2D(36160,e,r.target,r.texture._texture.texture,0):t.framebufferRenderbuffer(36160,e,36161,r.renderbuffer._renderbuffer.renderbuffer))}function u(t){var e=3553,r=null,n=null,a=t;return\"object\"==typeof t&&(a=t.data,\"target\"in t&&(e=0|t.target)),\"texture2d\"===(t=a._reglType)||\"textureCube\"===t?r=a:\"renderbuffer\"===t&&(n=a,e=36161),new o(e,r,n)}function h(t,e,r,i,s){return r?((t=n.create2D({width:t,height:e,format:i,type:s}))._texture.refCount=0,new o(3553,t,null)):((t=a.create({width:t,height:e,format:i}))._renderbuffer.refCount=0,new o(36161,null,t))}function f(t){return t&&(t.texture||t.renderbuffer)}function p(t,e,r){t&&(t.texture?t.texture.resize(e,r):t.renderbuffer&&t.renderbuffer.resize(e,r),t.width=e,t.height=r)}function d(){this.id=T++,k[this.id]=this,this.framebuffer=t.createFramebuffer(),this.height=this.width=0,this.colorAttachments=[],this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function g(t){t.colorAttachments.forEach(s),s(t.depthAttachment),s(t.stencilAttachment),s(t.depthStencilAttachment)}function m(e){t.deleteFramebuffer(e.framebuffer),e.framebuffer=null,i.framebufferCount--,delete k[e.id]}function v(e){var n;t.bindFramebuffer(36160,e.framebuffer);var a=e.colorAttachments;for(n=0;na;++a){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(){X(k).forEach(m)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,X(k).forEach((function(e){e.framebuffer=t.createFramebuffer(),v(e)}))}})}function M(){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 S(t,e,r,n,a){function i(){this.id=++c,this.attributes=[];var t=e.oes_vertex_array_object;this.vao=t?t.createVertexArrayOES():null,u[this.id]=this,this.buffers=[]}var o=r.maxAttributes,s=Array(o);for(r=0;rt&&(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);X(c).forEach(e),c={},X(u).forEach(e),u={},f.forEach((function(e){t.deleteProgram(e.program)})),f.length=0,h={},r.shaderCount=0},program:function(t,e,n,a){var i=h[e];i||(i=h[e]={});var o=i[t];return o&&!a?o:(e=new s(e,t),r.shaderCount++,l(e,n,a),o||(i[t]=e),f.push(e),e)},restore:function(){c={},u={};for(var t=0;t\"+e+\"?\"+a+\".constant[\"+e+\"]:0;\"})).join(\"\"),\"}}else{\",\"if(\",s,\"(\",a,\".buffer)){\",u,\"=\",i,\".createStream(\",34962,\",\",a,\".buffer);\",\"}else{\",u,\"=\",i,\".getBuffer(\",a,\".buffer);\",\"}\",h,'=\"type\" in ',a,\"?\",o.glTypes,\"[\",a,\".type]:\",u,\".dtype;\",l.normalized,\"=!!\",a,\".normalized;\"),n(\"size\"),n(\"offset\"),n(\"stride\"),n(\"divisor\"),r(\"}}\"),r.exit(\"if(\",l.isStream,\"){\",i,\".destroyStream(\",u,\");\",\"}\"),l}))})),o}function A(t,e,n,a,o){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,g,m,s],\");\")}p?y?t():(r(\"if(\",p,\"){\"),t(),r(\"}else{\"),e(),r(\"}\")):e()}function o(){function t(){r(u+\".drawElements(\"+[d,m,v,g+\"<<((\"+v+\"-5121)>>1)\"]+\");\")}function e(){r(u+\".drawArrays(\"+[d,g,m]+\");\")}p?y?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 a=f.elements,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,\".\",\"elements\"),a&&i(\"if(\"+a+\")\"+u+\".bindBuffer(34963,\"+a+\".buffer.buffer);\"),a}(),d=a(\"primitive\"),g=a(\"offset\"),m=function(){var a=f.count,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,\".\",\"count\"),a}();if(\"number\"==typeof m){if(0===m)return}else r(\"if(\",m,\"){\"),r.exit(\"}\");K&&(s=a(\"instances\"),l=t.instancing);var v=p+\".type\",y=f.elements&&R(f.elements);K&&(\"number\"!=typeof s||0<=s)?\"string\"==typeof s?(r(\"if(\",s,\">0){\"),i(),r(\"}else if(\",s,\"<0){\"),o(),r(\"}\")):i():o()}function U(t,e,r,n,a){return a=(e=b()).proc(\"body\",a),K&&(e.instancing=a.def(e.shared.extensions,\".angle_instanced_arrays\")),t(e,a,r,n),e.compile().body}function H(t,e,r,n){L(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);\"),N(t,e,r,n.attributes,(function(){return!0}))),j(t,e,r,n.uniforms,(function(){return!0})),V(t,e,e,r)}function G(t,e,r,n){function a(){return!0}t.batchId=\"a1\",L(t,e),N(t,e,r,n.attributes,a),j(t,e,r,n.uniforms,a),V(t,e,e,r)}function Y(t,e,r,n){function a(t){return t.contextDep&&o||t.propDep}function i(t){return!a(t)}L(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&&M(t,u,r.context),r.needsFramebuffer&&S(t,u,r.framebuffer),C(t,u,r.state,a),r.profile&&a(r.profile)&&P(t,u,r,!1,!0),n?(r.useVAO?r.drawVAO?a(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);\"),N(t,c,r,n.attributes,i),N(t,u,r,n.attributes,a)),j(t,c,r,n.uniforms,i),j(t,u,r,n.uniforms,a),V(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 U(G,t,r,e,2)})),\"(\",n,\");}\",c,\".call(this,a0[\",s,\"],\",s,\");\"))}function W(t,r){function n(e){var n=r.shader[e];n&&a.set(i.shader,\".\"+e,n.append(t,a))}var a=t.proc(\"scope\",3);t.batchId=\"a2\";var i=t.shared,o=i.current;M(t,a,r.context),r.framebuffer&&r.framebuffer.append(t,a),O(Object.keys(r.state)).forEach((function(e){var n=r.state[e].append(t,a);m(n)?n.forEach((function(r,n){a.set(t.next[e],\"[\"+n+\"]\",r)})):a.set(i.next,\".\"+e,n)})),P(t,a,r,!0,!0),[\"elements\",\"offset\",\"count\",\"instances\",\"primitive\"].forEach((function(e){var n=r.draw[e];n&&a.set(i.draw,\".\"+e,\"\"+n.append(t,a))})),Object.keys(r.uniforms).forEach((function(n){a.set(i.uniforms,\"[\"+e.id(n)+\"]\",r.uniforms[n].append(t,a))})),Object.keys(r.attributes).forEach((function(e){var n=r.attributes[e].append(t,a),i=t.scopeAttrib(e);Object.keys(new X).forEach((function(t){a.set(i,\".\"+t,n[t])}))})),r.scopeVAO&&a.set(i.vao,\".targetVAO\",r.scopeVAO.append(t,a)),n(\"vert\"),n(\"frag\"),0=--this.refCount&&o(this)},a.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,i=0,u=32854;if(\"object\"==typeof e&&e?(\"shape\"in e?(n=0|(i=e.shape)[0],i=0|i[1]):(\"radius\"in e&&(n=i=0|e.radius),\"width\"in e&&(n=0|e.width),\"height\"in e&&(i=0|e.height)),\"format\"in e&&(u=s[e.format])):\"number\"==typeof e?(n=0|e,i=\"number\"==typeof r?0|r:n):e||(n=i=1),n!==c.width||i!==c.height||u!==c.format)return o.width=c.width=n,o.height=c.height=i,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,n,i),a.profile&&(c.stats.size=yt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new i(t.createRenderbuffer());return u[c.id]=c,n.renderbufferCount++,o(e,r),o.resize=function(e,r){var n=0|e,i=0|r||n;return n===c.width&&i===c.height||(o.width=c.width=n,o.height=c.height=i,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,n,i),a.profile&&(c.stats.size=yt[c.format]*c.width*c.height)),o},o._reglType=\"renderbuffer\",o._renderbuffer=c,a.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){X(u).forEach(o)},restore:function(){X(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)}}},bt=[];bt[6408]=4,bt[6407]=3;var _t=[];_t[5121]=1,_t[5126]=4,_t[36193]=2;var wt=[\"x\",\"y\",\"z\",\"w\"],Tt=\"blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset\".split(\" \"),kt={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},At={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},Mt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,\"increment wrap\":34055,\"decrement wrap\":34056,invert:5386},St={cw:2304,ccw:2305},Et=new D(!1,!1,!1,(function(){}));return function(t){function e(){if(0===J.length)w&&w.update(),tt=null;else{tt=H.next(e),h();for(var t=J.length-1;0<=t;--t){var r=J[t];r&&r(P,null,0)}m.flush(),w&&w.update()}}function r(){!tt&&0=J.length&&n()}}}}function u(){var t=Z.viewport,e=Z.scissor_box;t[0]=t[1]=e[0]=e[1]=0,P.viewportWidth=P.framebufferWidth=P.drawingBufferWidth=t[2]=e[2]=m.drawingBufferWidth,P.viewportHeight=P.framebufferHeight=P.drawingBufferHeight=t[3]=e[3]=m.drawingBufferHeight}function h(){P.tick+=1,P.time=g(),u(),Y.procs.poll()}function f(){u(),Y.procs.refresh(),w&&w.update()}function g(){return(G()-T)/1e3}if(!(t=a(t)))return null;var m=t.gl,v=m.getContextAttributes();m.isContextLost();var y=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={},a=0;ae;++e)et(V({framebuffer:t.framebuffer.faces[e]},t),l);else et(t,l);else l(0,t)},prop:q.define.bind(null,1),context:q.define.bind(null,2),this:q.define.bind(null,3),draw:s({}),buffer:function(t){return z.create(t,34962,!1,!1)},elements:function(t){return D.create(t,!1)},texture:F.create2D,cube:F.createCube,renderbuffer:B.create,framebuffer:U.create,framebufferCube:U.createCube,vao:O.createVAO,attributes:v,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=$}return r.push(e),{cancel:function(){for(var t=0;t\n", " *\n", " * Copyright (c) 2014-2015, Jon Schlinkert.\n", " * Licensed under the MIT License.\n", " */\n", "\"use strict\";var n,a=\"\";e.exports=function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"expected a string\");if(1===e)return t;if(2===e)return t+t;var r=t.length*e;if(n!==t||\"undefined\"==typeof n)n=t,a=\"\";else if(a.length>=r)return a.substr(0,r);for(;r>a.length&&e>1;)1&e&&(a+=t),e>>=1,t+=t;return a=(a+=t).substr(0,r)}},{}],494:[function(t,e,r){(function(t){e.exports=t.performance&&t.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{}],495:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.length,r=t[t.length-1],n=e,a=e-2;a>=0;--a){var i=r,o=t[a];(l=o-((r=i+o)-i))&&(t[--n]=r,r=l)}var s=0;for(a=n;a>1;return[\"sum(\",t(e.slice(0,r)),\",\",t(e.slice(r)),\")\"].join(\"\")}(e);var n}function u(t){return new Function(\"sum\",\"scale\",\"prod\",\"compress\",[\"function robustDeterminant\",t,\"(m){return compress(\",c(l(t)),\")};return robustDeterminant\",t].join(\"\"))(a,i,n,o)}var h=[function(){return[0]},function(t){return[t[0][0]]}];!function(){for(;h.length<6;)h.push(u(h.length));for(var t=[],r=[\"function robustDeterminant(m){switch(m.length){\"],n=0;n<6;++n)t.push(\"det\"+n),r.push(\"case \",n,\":return det\",n,\"(m);\");r.push(\"}var det=CACHE[m.length];if(!det)det=CACHE[m.length]=gen(m.length);return det(m);}return robustDeterminant\"),t.push(\"CACHE\",\"gen\",r.join(\"\"));var a=Function.apply(void 0,t);for(e.exports=a.apply(void 0,h.concat([h,u])),n=0;n>1;return[\"sum(\",l(t.slice(0,e)),\",\",l(t.slice(e)),\")\"].join(\"\")}function c(t,e){if(\"m\"===t.charAt(0)){if(\"w\"===e.charAt(0)){var r=t.split(\"[\");return[\"w\",e.substr(1),\"m\",r[0].substr(1)].join(\"\")}return[\"prod(\",t,\",\",e,\")\"].join(\"\")}return c(e,t)}function u(t){if(2===t.length)return[[\"diff(\",c(t[0][0],t[1][1]),\",\",c(t[1][0],t[0][1]),\")\"].join(\"\")];for(var e=[],r=0;r0&&r.push(\",\"),r.push(\"[\");for(var o=0;o0&&r.push(\",\"),o===a?r.push(\"+b[\",i,\"]\"):r.push(\"+A[\",i,\"][\",o,\"]\");r.push(\"]\")}r.push(\"]),\")}r.push(\"det(A)]}return \",e);var s=new Function(\"det\",r.join(\"\"));return s(t<6?n[t]:n)}var i=[function(){return[0]},function(t,e){return[[e[0]],[t[0][0]]]}];!function(){for(;i.length<6;)i.push(a(i.length));for(var t=[],r=[\"function dispatchLinearSolve(A,b){switch(A.length){\"],n=0;n<6;++n)t.push(\"s\"+n),r.push(\"case \",n,\":return s\",n,\"(A,b);\");r.push(\"}var s=CACHE[A.length];if(!s)s=CACHE[A.length]=g(A.length);return s(A,b)}return dispatchLinearSolve\"),t.push(\"CACHE\",\"g\",r.join(\"\"));var o=Function.apply(void 0,t);for(e.exports=o.apply(void 0,i.concat([i,a])),n=0;n<6;++n)e.exports[n]=i[n]}()},{\"robust-determinant\":496}],500:[function(t,e,r){\"use strict\";var n=t(\"two-product\"),a=t(\"robust-sum\"),i=t(\"robust-scale\"),o=t(\"robust-subtract\");function s(t,e){for(var r=new Array(t.length-1),n=1;n>1;return[\"sum(\",l(t.slice(0,e)),\",\",l(t.slice(e)),\")\"].join(\"\")}function c(t){if(2===t.length)return[[\"sum(prod(\",t[0][0],\",\",t[1][1],\"),prod(-\",t[0][1],\",\",t[1][0],\"))\"].join(\"\")];for(var e=[],r=0;r0){if(i<=0)return o;n=a+i}else{if(!(a<0))return o;if(i>=0)return o;n=-(a+i)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o:h(t,e,r)},function(t,e,r,n){var a=t[0]-n[0],i=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=i*c,g=o*l,m=o*s,v=a*c,y=a*l,x=i*s,b=u*(d-g)+h*(m-v)+p*(y-x),_=7771561172376103e-31*((Math.abs(d)+Math.abs(g))*Math.abs(u)+(Math.abs(m)+Math.abs(v))*Math.abs(h)+(Math.abs(y)+Math.abs(x))*Math.abs(p));return b>_||-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(){for(;p.length<=5;)p.push(u(p.length));for(var t=[],r=[\"slow\"],n=0;n<=5;++n)t.push(\"a\"+n),r.push(\"o\"+n);var a=[\"function getOrientation(\",t.join(),\"){switch(arguments.length){case 0:case 1:return 0;\"];for(n=2;n<=5;++n)a.push(\"case \",n,\":return o\",n,\"(\",t.slice(0,n).join(),\");\");a.push(\"}var s=new Array(arguments.length);for(var i=0;i0&&o>0||i<0&&o<0)return!1;var s=n(r,t,e),l=n(a,t,e);if(s>0&&l>0||s<0&&l<0)return!1;if(0===i&&0===o&&0===s&&0===l)return function(t,e,r,n){for(var a=0;a<2;++a){var i=t[a],o=e[a],s=Math.min(i,o),l=Math.max(i,o),c=r[a],u=n[a],h=Math.min(c,u);if(Math.max(c,u)=n?(a=h,(l+=1)=n?(a=h,(l+=1)0?1:0}},{}],507:[function(t,e,r){\"use strict\";e.exports=function(t){return a(n(t))};var n=t(\"boundary-cells\"),a=t(\"reduce-simplicial-complex\")},{\"boundary-cells\":98,\"reduce-simplicial-complex\":487}],508:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,s){r=r||0,\"undefined\"==typeof s&&(s=function(t){for(var e=t.length,r=0,n=0;n>1,v=E[2*m+1];\",\"if(v===b){return m}\",\"if(b0&&l.push(\",\"),l.push(\"[\");for(var n=0;n0&&l.push(\",\"),l.push(\"B(C,E,c[\",a[0],\"],c[\",a[1],\"])\")}l.push(\"]\")}l.push(\");\")}}for(i=t+1;i>1;--i){i>1,s=i(t[o],e);s<=0?(0===s&&(a=o),r=o+1):s>0&&(n=o-1)}return a}function u(t,e){for(var r=new Array(t.length),a=0,o=r.length;a=t.length||0!==i(t[m],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],a=(1<>>u&1&&c.push(a[u]);e.push(c)}return s(e)},r.skeleton=h,r.boundary=function(t){for(var e=[],r=0,n=t.length;r>1:(t>>1)-1}function x(t){for(var e=v(t);;){var r=e,n=2*t+1,a=2*(t+1),i=t;if(n0;){var r=y(t);if(r>=0)if(e0){var t=k[0];return m(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,b(t),_(),c[r]=e,b((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],g(e)),A[r]>=0&&w(A[r],g(r))}}var k=[],A=new Array(i);for(h=0;h>1;h>=0;--h)x(h);for(;;){var S=_();if(S<0||c[S]>r)break;T(S)}var E=[];for(h=0;h=0&&r>=0&&e!==r){var n=A[e],a=A[r];n!==a&&L.push([n,a])}})),a.unique(a.normalize(L)),{positions:E,edges:L}};var n=t(\"robust-orientation\"),a=t(\"simplicial-complex\")},{\"robust-orientation\":500,\"simplicial-complex\":512}],515:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,i,o,s;if(e[0][0]e[1][0]))return a(e,t);r=e[1],i=e[0]}if(t[0][0]t[1][0]))return-a(t,e);o=t[1],s=t[0]}var l=n(r,i,s),c=n(r,i,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,i),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 i[0]-s[0]};var n=t(\"robust-orientation\");function a(t,e){var r,a,i,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],a=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),a=-1;if(r&&(a=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,a=u.value):(a=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 a;p=h[f]}}if(p.start)if(s){var d=i(s[0],s[1],[t[0],p.y]);s[0][0]>s[1][0]&&(d=-d),d>0&&(a=p.index)}else a=p.index;else p.y!==t[1]&&(a=p.index)}}}return a}},{\"./lib/order-segments\":515,\"binary-search-bounds\":516,\"functional-red-black-tree\":242,\"robust-orientation\":500}],518:[function(t,e,r){\"use strict\";var n=t(\"robust-dot-product\"),a=t(\"robust-sum\");function i(t,e){var r=a(n(t,e),[e[e.length-1]]);return r[r.length-1]}function o(t,e,r,n){var a=-e/(n-e);a<0?a=0:a>1&&(a=1);for(var i=1-a,o=t.length,s=new Array(o),l=0;l0||a>0&&u<0){var h=o(s,u,l,a);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())),a=u}return{positive:r,negative:n}},e.exports.positive=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(a,c,s,n)),c>=0&&r.push(s.slice()),n=c}return r},e.exports.negative=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(a,c,s,n)),c<=0&&r.push(s.slice()),n=c}return r}},{\"robust-dot-product\":497,\"robust-sum\":505}],519:[function(t,e,r){!function(){\"use strict\";var t={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 e(t){return a(o(t),arguments)}function n(t,r){return e.apply(null,[t].concat(r||[]))}function a(r,n){var a,i,o,s,l,c,u,h,f,p=1,d=r.length,g=\"\";for(i=0;i=0),s.type){case\"b\":a=parseInt(a,10).toString(2);break;case\"c\":a=String.fromCharCode(parseInt(a,10));break;case\"d\":case\"i\":a=parseInt(a,10);break;case\"j\":a=JSON.stringify(a,null,s.width?parseInt(s.width):0);break;case\"e\":a=s.precision?parseFloat(a).toExponential(s.precision):parseFloat(a).toExponential();break;case\"f\":a=s.precision?parseFloat(a).toFixed(s.precision):parseFloat(a);break;case\"g\":a=s.precision?String(Number(a.toPrecision(s.precision))):parseFloat(a);break;case\"o\":a=(parseInt(a,10)>>>0).toString(8);break;case\"s\":a=String(a),a=s.precision?a.substring(0,s.precision):a;break;case\"t\":a=String(!!a),a=s.precision?a.substring(0,s.precision):a;break;case\"T\":a=Object.prototype.toString.call(a).slice(8,-1).toLowerCase(),a=s.precision?a.substring(0,s.precision):a;break;case\"u\":a=parseInt(a,10)>>>0;break;case\"v\":a=a.valueOf(),a=s.precision?a.substring(0,s.precision):a;break;case\"x\":a=(parseInt(a,10)>>>0).toString(16);break;case\"X\":a=(parseInt(a,10)>>>0).toString(16).toUpperCase()}t.json.test(s.type)?g+=a:(!t.number.test(s.type)||h&&!s.sign?f=\"\":(f=h?\"+\":\"-\",a=a.toString().replace(t.sign,\"\")),c=s.pad_char?\"0\"===s.pad_char?\"0\":s.pad_char.charAt(1):\" \",u=s.width-(f+a).length,l=s.width&&u>0?c.repeat(u):\"\",g+=s.align?f+a+l:\"0\"===c?f+l+a:l+f+a)}return g}var i=Object.create(null);function o(e){if(i[e])return i[e];for(var r,n=e,a=[],o=0;n;){if(null!==(r=t.text.exec(n)))a.push(r[0]);else if(null!==(r=t.modulo.exec(n)))a.push(\"%\");else{if(null===(r=t.placeholder.exec(n)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(r[2]){o|=1;var s=[],l=r[2],c=[];if(null===(c=t.key.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(s.push(c[1]);\"\"!==(l=l.substring(c[0].length));)if(null!==(c=t.key_access.exec(l)))s.push(c[1]);else{if(null===(c=t.index_access.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");s.push(c[1])}r[2]=s}else o|=2;if(3===o)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");a.push({placeholder:r[0],param_no:r[1],keys:r[2],sign:r[3],pad_char:r[4],align:r[5],width:r[6],precision:r[7],type:r[8]})}n=n.substring(r[0].length)}return i[e]=a}\"undefined\"!=typeof r&&(r.sprintf=e,r.vsprintf=n),\"undefined\"!=typeof window&&(window.sprintf=e,window.vsprintf=n)}()},{}],520:[function(t,e,r){\"use strict\";var n=t(\"parenthesis\");e.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=[\"[]\",\"()\",\"{}\",\"<>\",'\"\"',\"''\",\"``\",\"\\u201c\\u201d\",\"\\xab\\xbb\"]:(\"string\"==typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var a=n.parse(t,{flat:!0,brackets:r.ignore}),i=a[0].split(e);if(r.escape){for(var o=[],s=0;s0;){e=c[c.length-1];var p=t[e];if(i[e]=0&&s[e].push(o[g])}i[e]=d}else{if(n[e]===r[e]){var m=[],v=[],y=0;for(d=l.length-1;d>=0;--d){var x=l[d];if(a[x]=!1,m.push(x),v.push(s[x]),y+=s[x].length,o[x]=h.length,x===e){l.length=d;break}}h.push(m);var b=new Array(y);for(d=0;d c)|0 },\"),\"generic\"===e&&i.push(\"getters:[0],\");for(var s=[],l=[],c=0;c>>7){\");for(c=0;c<1<<(1<128&&c%128==0){h.length>0&&f.push(\"}}\");var p=\"vExtra\"+h.length;i.push(\"case \",c>>>7,\":\",p,\"(m&0x7f,\",l.join(),\");break;\"),f=[\"function \",p,\"(m,\",l.join(),\"){switch(m){\"],h.push(f)}f.push(\"case \",127&c,\":\");for(var d=new Array(r),g=new Array(r),m=new Array(r),v=new Array(r),y=0,x=0;xx)&&!(c&1<<_)!=!(c&1<0&&(A=\"+\"+m[b]+\"*c\");var M=d[b].length/y*.5,S=.5+v[b]/y*.5;k.push(\"d\"+b+\"-\"+S+\"-\"+M+\"*(\"+d[b].join(\"+\")+A+\")/(\"+g[b].join(\"+\")+\")\")}f.push(\"a.push([\",k.join(),\"]);\",\"break;\")}i.push(\"}},\"),h.length>0&&f.push(\"}}\");var E=[];for(c=0;c<1<1&&(a=1),a<-1&&(a=-1),(t*n-e*r<0?-1:1)*Math.acos(a)};r.default=function(t){var e=t.px,r=t.py,l=t.cx,c=t.cy,u=t.rx,h=t.ry,f=t.xAxisRotation,p=void 0===f?0:f,d=t.largeArcFlag,g=void 0===d?0:d,m=t.sweepFlag,v=void 0===m?0:m,y=[];if(0===u||0===h)return[];var x=Math.sin(p*a/360),b=Math.cos(p*a/360),_=b*(e-l)/2+x*(r-c)/2,w=-x*(e-l)/2+b*(r-c)/2;if(0===_&&0===w)return[];u=Math.abs(u),h=Math.abs(h);var T=Math.pow(_,2)/Math.pow(u,2)+Math.pow(w,2)/Math.pow(h,2);T>1&&(u*=Math.sqrt(T),h*=Math.sqrt(T));var k=function(t,e,r,n,i,o,l,c,u,h,f,p){var d=Math.pow(i,2),g=Math.pow(o,2),m=Math.pow(f,2),v=Math.pow(p,2),y=d*g-d*v-g*m;y<0&&(y=0),y/=d*v+g*m;var x=(y=Math.sqrt(y)*(l===c?-1:1))*i/o*p,b=y*-o/i*f,_=h*x-u*b+(t+r)/2,w=u*x+h*b+(e+n)/2,T=(f-x)/i,k=(p-b)/o,A=(-f-x)/i,M=(-p-b)/o,S=s(1,0,T,k),E=s(T,k,A,M);return 0===c&&E>0&&(E-=a),1===c&&E<0&&(E+=a),[_,w,S,E]}(e,r,l,c,u,h,g,v,x,b,_,w),A=n(k,4),M=A[0],S=A[1],E=A[2],C=A[3],L=Math.abs(C)/(a/4);Math.abs(1-L)<1e-7&&(L=1);var P=Math.max(Math.ceil(L),1);C/=P;for(var I=0;Ie[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},{\"abs-svg-path\":63,assert:71,\"is-svg-path\":424,\"normalize-svg-path\":525,\"parse-svg-path\":458}],525:[function(t,e,r){\"use strict\";e.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,g=t.length;d4?(o=m[m.length-4],s=m[m.length-3]):(o=f,s=p),r.push(m)}return r};var n=t(\"svg-arc-to-cubic-bezier\");function a(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function i(t,e,r,n,a,i){return[\"C\",t/3+2/3*r,e/3+2/3*n,a/3+2/3*r,i/3+2/3*n,a,i]}},{\"svg-arc-to-cubic-bezier\":523}],526:[function(t,e,r){\"use strict\";var n,a=t(\"svg-path-bounds\"),i=t(\"parse-svg-path\"),o=t(\"draw-svg-path\"),s=t(\"is-svg-path\"),l=t(\"bitmap-sdf\"),c=document.createElement(\"canvas\"),u=c.getContext(\"2d\");e.exports=function(t,e){if(!s(t))throw Error(\"Argument should be valid svg path string\");e||(e={});var r,h;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||a(t),g=[r/(d[2]-d[0]),h/(d[3]-d[1])],m=Math.min(g[0]||0,g[1]||0)/2;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));if(u.translate(.5*r,.5*h),u.scale(m,m),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 v=new Path2D(t);u.fill(v),p&&u.stroke(v)}else{var y=i(t);o(u,y),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})}},{\"bitmap-sdf\":96,\"draw-svg-path\":169,\"is-svg-path\":424,\"parse-svg-path\":458,\"svg-path-bounds\":524}],527:[function(t,e,r){(function(r){\"use strict\";e.exports=function t(e,r,a){a=a||{};var o=i[e];o||(o=i[e]={\" \":{data:new Float32Array(0),shape:.2}});var s=o[r];if(!s)if(r.length<=1||!/\\d/.test(r))s=o[r]=function(t){for(var e=t.cells,r=t.positions,n=new Float32Array(6*e.length),a=0,i=0,o=0;o0&&(h+=.02);var p=new Float32Array(u),d=0,g=-.5*h;for(f=0;f1&&(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=L(t,360),e=L(e,100),r=L(r,100),0===e)n=a=i=r;else{var s=r<.5?r*(1+e):r+e-r*e,l=2*r-s;n=o(l,s,t+1/3),a=o(l,s,t),i=o(l,s,t-1/3)}return{r:255*n,g:255*a,b:255*i}}(e.h,l,u),h=!0,f=\"hsl\"),e.hasOwnProperty(\"a\")&&(i=e.a));var p,d,g;return i=C(i),{ok:h,format:e.format||f,r:o(255,s(a.r,0)),g:o(255,s(a.g,0)),b:o(255,s(a.b,0)),a:i}}(e);this._originalInput=e,this._r=u.r,this._g=u.g,this._b=u.b,this._a=u.a,this._roundA=i(100*this._a)/100,this._format=l.format||u.format,this._gradientType=l.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=u.ok,this._tc_id=a++}function u(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,a,i=s(t,e,r),l=o(t,e,r),c=(i+l)/2;if(i==l)n=a=0;else{var u=i-l;switch(a=c>.5?u/(2-i-l):u/(i+l),i){case t:n=(e-r)/u+(e>1)+720)%360;--e;)n.h=(n.h+a)%360,i.push(c(n));return i}function M(t,e){e=e||6;for(var r=c(t).toHsv(),n=r.h,a=r.s,i=r.v,o=[],s=1/e;e--;)o.push(c({h:n,s:a,v:i})),i=(i+s)%1;return o}c.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 e,r,n,a=this.toRgb();return e=a.r/255,r=a.g/255,n=a.b/255,.2126*(e<=.03928?e/12.92:t.pow((e+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:t.pow((r+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:t.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=C(t),this._roundA=i(100*this._a)/100,this},toHsv:function(){var t=h(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=h(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.v);return 1==this._a?\"hsv(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsva(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHsl:function(){var t=u(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=u(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.l);return 1==this._a?\"hsl(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsla(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHex:function(t){return f(this._r,this._g,this._b,t)},toHexString:function(t){return\"#\"+this.toHex(t)},toHex8:function(t){return function(t,e,r,n,a){var o=[z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16)),z(D(n))];if(a&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1))return o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0);return o.join(\"\")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return\"#\"+this.toHex8(t)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return 1==this._a?\"rgb(\"+i(this._r)+\", \"+i(this._g)+\", \"+i(this._b)+\")\":\"rgba(\"+i(this._r)+\", \"+i(this._g)+\", \"+i(this._b)+\", \"+this._roundA+\")\"},toPercentageRgb:function(){return{r:i(100*L(this._r,255))+\"%\",g:i(100*L(this._g,255))+\"%\",b:i(100*L(this._b,255))+\"%\",a:this._a}},toPercentageRgbString:function(){return 1==this._a?\"rgb(\"+i(100*L(this._r,255))+\"%, \"+i(100*L(this._g,255))+\"%, \"+i(100*L(this._b,255))+\"%)\":\"rgba(\"+i(100*L(this._r,255))+\"%, \"+i(100*L(this._g,255))+\"%, \"+i(100*L(this._b,255))+\"%, \"+this._roundA+\")\"},toName:function(){return 0===this._a?\"transparent\":!(this._a<1)&&(E[f(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e=\"#\"+p(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?\"GradientType = 1, \":\"\";if(t){var a=c(t);r=\"#\"+p(a._r,a._g,a._b,a._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 c(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(v,arguments)},brighten:function(){return this._applyModification(y,arguments)},darken:function(){return this._applyModification(x,arguments)},desaturate:function(){return this._applyModification(d,arguments)},saturate:function(){return this._applyModification(g,arguments)},greyscale:function(){return this._applyModification(m,arguments)},spin:function(){return this._applyModification(b,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(A,arguments)},complement:function(){return this._applyCombination(_,arguments)},monochromatic:function(){return this._applyCombination(M,arguments)},splitcomplement:function(){return this._applyCombination(k,arguments)},triad:function(){return this._applyCombination(w,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},c.fromRatio=function(t,e){if(\"object\"==typeof t){var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]=\"a\"===n?t[n]:O(t[n]));t=r}return c(t,e)},c.equals=function(t,e){return!(!t||!e)&&c(t).toRgbString()==c(e).toRgbString()},c.random=function(){return c.fromRatio({r:l(),g:l(),b:l()})},c.mix=function(t,e,r){r=0===r?0:r||50;var n=c(t).toRgb(),a=c(e).toRgb(),i=r/100;return c({r:(a.r-n.r)*i+n.r,g:(a.g-n.g)*i+n.g,b:(a.b-n.b)*i+n.b,a:(a.a-n.a)*i+n.a})},c.readability=function(e,r){var n=c(e),a=c(r);return(t.max(n.getLuminance(),a.getLuminance())+.05)/(t.min(n.getLuminance(),a.getLuminance())+.05)},c.isReadable=function(t,e,r){var n,a,i=c.readability(t,e);switch(a=!1,(n=function(t){var e,r;e=((t=t||{level:\"AA\",size:\"small\"}).level||\"AA\").toUpperCase(),r=(t.size||\"small\").toLowerCase(),\"AA\"!==e&&\"AAA\"!==e&&(e=\"AA\");\"small\"!==r&&\"large\"!==r&&(r=\"small\");return{level:e,size:r}}(r)).level+n.size){case\"AAsmall\":case\"AAAlarge\":a=i>=4.5;break;case\"AAlarge\":a=i>=3;break;case\"AAAsmall\":a=i>=7}return a},c.mostReadable=function(t,e,r){var n,a,i,o,s=null,l=0;a=(r=r||{}).includeFallbackColors,i=r.level,o=r.size;for(var u=0;ul&&(l=n,s=c(e[u]));return c.isReadable(t,s,{level:i,size:o})||!a?s:(r.includeFallbackColors=!1,c.mostReadable(t,[\"#fff\",\"#000\"],r))};var S=c.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\"},E=c.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(S);function C(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function L(e,r){(function(t){return\"string\"==typeof t&&-1!=t.indexOf(\".\")&&1===parseFloat(t)})(e)&&(e=\"100%\");var n=function(t){return\"string\"==typeof t&&-1!=t.indexOf(\"%\")}(e);return e=o(r,s(0,parseFloat(e))),n&&(e=parseInt(e*r,10)/100),t.abs(e-r)<1e-6?1:e%r/parseFloat(r)}function P(t){return o(1,s(0,t))}function I(t){return parseInt(t,16)}function z(t){return 1==t.length?\"0\"+t:\"\"+t}function O(t){return t<=1&&(t=100*t+\"%\"),t}function D(e){return t.round(255*parseFloat(e)).toString(16)}function R(t){return I(t)/255}var F,B,N,j=(B=\"[\\\\s|\\\\(]+(\"+(F=\"(?:[-\\\\+]?\\\\d*\\\\.\\\\d+%?)|(?:[-\\\\+]?\\\\d+%?)\")+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")\\\\s*\\\\)?\",N=\"[\\\\s|\\\\(]+(\"+F+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")[,|\\\\s]+(\"+F+\")\\\\s*\\\\)?\",{CSS_UNIT:new RegExp(F),rgb:new RegExp(\"rgb\"+B),rgba:new RegExp(\"rgba\"+N),hsl:new RegExp(\"hsl\"+B),hsla:new RegExp(\"hsla\"+N),hsv:new RegExp(\"hsv\"+B),hsva:new RegExp(\"hsva\"+N),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function V(t){return!!j.CSS_UNIT.exec(t)}\"undefined\"!=typeof e&&e.exports?e.exports=c:window.tinycolor=c}(Math)},{}],529:[function(t,e,r){\"use strict\";e.exports=a,e.exports.float32=e.exports.float=a,e.exports.fract32=e.exports.fract=function(t){if(t.length){for(var e=a(t),r=0,n=e.length;ro&&(o=t[0]),t[1]s&&(s=t[1])}function c(t){switch(t.type){case\"GeometryCollection\":t.geometries.forEach(c);break;case\"Point\":l(t.coordinates);break;case\"MultiPoint\":t.coordinates.forEach(l)}}for(e in t.arcs.forEach((function(t){for(var e,r=-1,l=t.length;++ro&&(o=e[0]),e[1]s&&(s=e[1])})),t.objects)c(t.objects[e]);return[a,i,o,s]}function a(t,e){var r=e.id,n=e.bbox,a=null==e.properties?{}:e.properties,o=i(t,e);return null==r&&null==n?{type:\"Feature\",properties:a,geometry:o}:null==n?{type:\"Feature\",id:r,properties:a,geometry:o}:{type:\"Feature\",id:r,bbox:n,properties:a,geometry:o}}function i(t,e){var n=r(t.transform),a=t.arcs;function i(t,e){e.length&&e.pop();for(var r=a[t<0?~t:t],i=0,o=r.length;i1)n=l(t,e,r);else for(a=0,n=new Array(i=t.arcs.length);a1)for(var i,s,c=1,u=l(a[0]);cu&&(s=a[0],a[0]=a[c],a[c]=s,u=i);return a})).filter((function(t){return t.length>0}))}}function u(t,e){for(var r=0,n=t.length;r>>1;t[a]=2))throw new Error(\"n must be \\u22652\");var r,a=(l=t.bbox||n(t))[0],i=l[1],o=l[2],s=l[3];e={scale:[o-a?(o-a)/(r-1):1,s-i?(s-i)/(r-1):1],translate:[a,i]}}var l,c,u=h(e),f=t.objects,p={};function d(t){return u(t)}function g(t){var e;switch(t.type){case\"GeometryCollection\":e={type:\"GeometryCollection\",geometries:t.geometries.map(g)};break;case\"Point\":e={type:\"Point\",coordinates:d(t.coordinates)};break;case\"MultiPoint\":e={type:\"MultiPoint\",coordinates:t.coordinates.map(d)};break;default:return t}return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}for(c in f)p[c]=g(f[c]);return{type:\"Topology\",bbox:l,transform:e,objects:p,arcs:t.arcs.map((function(t){var e,r=0,n=1,a=t.length,i=new Array(a);for(i[0]=u(t[0],0);++rMath.max(r,n)?a[2]=1:r>Math.max(e,n)?a[0]=1:a[1]=1;for(var i=0,o=0,l=0;l<3;++l)i+=t[l]*t[l],o+=a[l]*t[l];for(l=0;l<3;++l)a[l]-=o/i*t[l];return s(a,a),a}function f(t,e,r,a,i,o,s,l){this.center=n(r),this.up=n(a),this.right=n(i),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,a=0,i=0;i<3;++i)a+=e[i]*r[i],n+=e[i]*e[i];var l=Math.sqrt(n),u=0;for(i=0;i<3;++i)r[i]-=e[i]*a/n,u+=r[i]*r[i],e[i]/=l;var h=Math.sqrt(u);for(i=0;i<3;++i)r[i]/=h;var f=this.computedToward;o(f,e,r),s(f,f);var p=Math.exp(this.computedRadius[0]),d=this.computedAngle[0],g=this.computedAngle[1],m=Math.cos(d),v=Math.sin(d),y=Math.cos(g),x=Math.sin(g),b=this.computedCenter,_=m*y,w=v*y,T=x,k=-m*x,A=-v*x,M=y,S=this.computedEye,E=this.computedMatrix;for(i=0;i<3;++i){var C=_*r[i]+w*f[i]+T*e[i];E[4*i+1]=k*r[i]+A*f[i]+M*e[i],E[4*i+2]=C,E[4*i+3]=0}var L=E[1],P=E[5],I=E[9],z=E[2],O=E[6],D=E[10],R=P*D-I*O,F=I*z-L*D,B=L*O-P*z,N=c(R,F,B);R/=N,F/=N,B/=N,E[0]=R,E[4]=F,E[8]=B;for(i=0;i<3;++i)S[i]=b[i]+E[2+4*i]*p;for(i=0;i<3;++i){u=0;for(var j=0;j<3;++j)u+=E[i+4*j]*S[j];E[12+i]=-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 a=this.computedMatrix;d[0]=a[2],d[1]=a[6],d[2]=a[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)a[4*c]=o[c],a[4*c+1]=s[c],a[4*c+2]=l[c];i(a,a,n,d);for(c=0;c<3;++c)o[c]=a[4*c],s[c]=a[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 a=this.computedMatrix,i=(Math.exp(this.computedRadius[0]),a[1]),o=a[5],s=a[9],l=c(i,o,s);i/=l,o/=l,s/=l;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=c(u-=i*p,h-=o*p,f-=s*p),g=(u/=d)*e+i*r,m=(h/=d)*e+o*r,v=(f/=d)*e+s*r;this.center.move(t,g,m,v);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+n),this.radius.set(t,Math.log(y))},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 i=1;\"number\"==typeof r&&(i=0|r),(i<0||i>3)&&(i=1);var o=(i+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[i],l=e[i+4],h=e[i+8];if(n){var f=Math.abs(s),p=Math.abs(l),d=Math.abs(h),g=Math.max(f,p,d);f===g?(s=s<0?-1:1,l=h=0):d===g?(h=h<0?-1:1,s=l=0):(l=l<0?-1:1,s=h=0)}else{var m=c(s,l,h);s/=m,l/=m,h/=m}var v,y,x=e[o],b=e[o+4],_=e[o+8],w=x*s+b*l+_*h,T=c(x-=s*w,b-=l*w,_-=h*w),k=l*(_/=T)-h*(b/=T),A=h*(x/=T)-s*_,M=s*b-l*x,S=c(k,A,M);if(k/=S,A/=S,M/=S,this.center.jump(t,H,G,Y),this.radius.idle(t),this.up.jump(t,s,l,h),this.right.jump(t,x,b,_),2===i){var E=e[1],C=e[5],L=e[9],P=E*x+C*b+L*_,I=E*k+C*A+L*M;v=R<0?-Math.PI/2:Math.PI/2,y=Math.atan2(I,P)}else{var z=e[2],O=e[6],D=e[10],R=z*s+O*l+D*h,F=z*x+O*b+D*_,B=z*k+O*A+D*M;v=Math.asin(u(R)),y=Math.atan2(B,F)}this.angle.jump(t,y,v),this.recalcMatrix(t);var N=e[2],j=e[6],V=e[10],U=this.computedMatrix;a(U,e);var q=U[15],H=U[12]/q,G=U[13]/q,Y=U[14]/q,W=Math.exp(this.computedRadius[0]);this.center.jump(t,H-N*W,G-j*W,Y-V*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 a=(n=n||this.computedUp)[0],i=n[1],o=n[2],s=c(a,i,o);if(!(s<1e-6)){a/=s,i/=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,g=d[0],m=d[1],v=d[2],y=a*g+i*m+o*v,x=c(g-=y*a,m-=y*i,v-=y*o);if(!(x<.01&&(x=c(g=i*f-o*h,m=o*l-a*f,v=a*h-i*l))<1e-6)){g/=x,m/=x,v/=x,this.up.set(t,a,i,o),this.right.set(t,g,m,v),this.center.set(t,r[0],r[1],r[2]),this.radius.set(t,Math.log(p));var b=i*v-o*m,_=o*g-a*v,w=a*m-i*g,T=c(b,_,w),k=a*l+i*h+o*f,A=g*l+m*h+v*f,M=(b/=T)*l+(_/=T)*h+(w/=T)*f,S=Math.asin(u(k)),E=Math.atan2(M,A),C=this.angle._state,L=C[C.length-1],P=C[C.length-2];L%=2*Math.PI;var I=Math.abs(L+2*Math.PI-E),z=Math.abs(L-E),O=Math.abs(L-2*Math.PI-E);I\":(e.length>100&&(e=e.slice(0,99)+\"\\u2026\"),e=e.replace(a,(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\")}})))}},{\"./safe-to-string\":538}],540:[function(t,e,r){\"use strict\";var n=t(\"../value/is\"),a={object:!0,function:!0,undefined:!0};e.exports=function(t){return!!n(t)&&hasOwnProperty.call(a,typeof t)}},{\"../value/is\":546}],541:[function(t,e,r){\"use strict\";var n=t(\"../lib/resolve-exception\"),a=t(\"./is\");e.exports=function(t){return a(t)?t:n(t,\"%v is not a plain function\",arguments[1])}},{\"../lib/resolve-exception\":537,\"./is\":542}],542:[function(t,e,r){\"use strict\";var n=t(\"../function/is\"),a=/^\\s*class[\\s{/}]/,i=Function.prototype.toString;e.exports=function(t){return!!n(t)&&!a.test(i.call(t))}},{\"../function/is\":536}],543:[function(t,e,r){\"use strict\";var n=t(\"../object/is\");e.exports=function(t){if(!n(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(t){return!1}}},{\"../object/is\":540}],544:[function(t,e,r){\"use strict\";var n=t(\"../value/is\"),a=t(\"../object/is\"),i=Object.prototype.toString;e.exports=function(t){if(!n(t))return null;if(a(t)){var e=t.toString;if(\"function\"!=typeof e)return null;if(e===i)return null}try{return\"\"+t}catch(t){return null}}},{\"../object/is\":540,\"../value/is\":546}],545:[function(t,e,r){\"use strict\";var n=t(\"../lib/resolve-exception\"),a=t(\"./is\");e.exports=function(t){return a(t)?t:n(t,\"Cannot use %v\",arguments[1])}},{\"../lib/resolve-exception\":537,\"./is\":546}],546:[function(t,e,r){\"use strict\";e.exports=function(t){return null!=t}},{}],547:[function(t,e,r){(function(e){\"use strict\";var n=t(\"bit-twiddle\"),a=t(\"dup\"),i=t(\"buffer\").Buffer;e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),BIGUINT64:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),BIGINT64:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var o=\"undefined\"!=typeof Uint8ClampedArray,s=\"undefined\"!=typeof BigUint64Array,l=\"undefined\"!=typeof BigInt64Array,c=e.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=a([32,0])),c.BIGUINT64||(c.BIGUINT64=a([32,0])),c.BIGINT64||(c.BIGINT64=a([32,0])),c.BUFFER||(c.BUFFER=a([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 g(t){return new Uint16Array(p(2*t),0,t)}function m(t){return new Uint32Array(p(4*t),0,t)}function v(t){return new Int8Array(p(t),0,t)}function y(t){return new Int16Array(p(2*t),0,t)}function x(t){return new Int32Array(p(4*t),0,t)}function b(t){return new Float32Array(p(4*t),0,t)}function _(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 i(t)}r.free=function(t){if(i.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)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeBigUint64=r.freeInt8=r.freeInt16=r.freeInt32=r.freeBigInt64=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=function(t){f(t.buffer)},r.freeArrayBuffer=f,r.freeBuffer=function(t){h[n.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||\"arraybuffer\"===e)return p(t);switch(e){case\"uint8\":return d(t);case\"uint16\":return g(t);case\"uint32\":return m(t);case\"int8\":return v(t);case\"int16\":return y(t);case\"int32\":return x(t);case\"float\":case\"float32\":return b(t);case\"double\":case\"float64\":return _(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},r.mallocArrayBuffer=p,r.mallocUint8=d,r.mallocUint16=g,r.mallocUint32=m,r.mallocInt8=v,r.mallocInt16=y,r.mallocInt32=x,r.mallocFloat32=r.mallocFloat=b,r.mallocFloat64=r.mallocDouble=_,r.mallocUint8Clamped=w,r.mallocBigUint64=T,r.mallocBigInt64=k,r.mallocDataView=A,r.mallocBuffer=M,r.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}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"bit-twiddle\":95,buffer:108,dup:171}],548:[function(t,e,r){\"use strict\";function n(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e0&&(i=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));return r.font=[n.fontStyle,n.fontVariant,n.fontWeight,i+\"px\",n.font].filter((function(t){return t})).join(\" \"),r.textAlign=\"start\",r.textBaseline=\"alphabetic\",r.direction=\"ltr\",f(function(t,e,r,n,i,o){r=r.replace(/\\n/g,\"\"),r=!0===o.breaklines?r.replace(/\\/g,\"\\n\"):r.replace(/\\/g,\" \");var s=\"\",l=[];for(p=0;p-1?parseInt(t[1+a]):0,l=i>-1?parseInt(r[1+i]):0;s!==l&&(n=n.replace(S(),\"?px \"),m*=Math.pow(.75,l-s),n=n.replace(\"?px \",S())),g+=.25*x*(l-s)}if(!0===o.superscripts){var c=t.indexOf(\"+\"),u=r.indexOf(\"+\"),h=c>-1?parseInt(t[1+c]):0,f=u>-1?parseInt(r[1+u]):0;h!==f&&(n=n.replace(S(),\"?px \"),m*=Math.pow(.75,f-h),n=n.replace(\"?px \",S())),g-=.25*x*(f-h)}if(!0===o.bolds){var p=t.indexOf(\"b|\")>-1,d=r.indexOf(\"b|\")>-1;!p&&d&&(n=v?n.replace(\"italic \",\"italic bold \"):\"bold \"+n),p&&!d&&(n=n.replace(\"bold \",\"\"))}if(!0===o.italics){var v=t.indexOf(\"i|\")>-1,y=r.indexOf(\"i|\")>-1;!v&&y&&(n=\"italic \"+n),v&&!y&&(n=n.replace(\"italic \",\"\"))}e.font=n}for(f=0;f\",i=\"\",o=a.length,s=i.length,l=\"+\"===e[0]||\"-\"===e[0],c=0,u=-s;c>-1&&-1!==(c=r.indexOf(a,c))&&-1!==(u=r.indexOf(i,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,d=r.substr(p,u-p).indexOf(a);c=-1!==d?d:u+s}return n}function u(t,e){var r=n(t,128);return e?i(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function h(t,e,r,n){var a=u(t,n),i=function(t,e,r){for(var n=e.textAlign||\"start\",a=e.textBaseline||\"alphabetic\",i=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l=0?e[i]:a}))},has___:{value:y((function(e){var n=v(e);return n?r in n:t.indexOf(e)>=0}))},set___:{value:y((function(n,a){var i,o=v(n);return o?o[r]=a:(i=t.indexOf(n))>=0?e[i]=a:(i=t.length,e[i]=a,t[i]=n),this}))},delete___:{value:y((function(n){var a,i,o=v(n);return o?r in o&&delete o[r]:!((a=t.indexOf(n))<0)&&(i=t.length-1,t[a]=void 0,e[a]=e[i],t[a]=t[i],t.length=i,e.length=i,!0)}))}})};d.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 d||x();var e,n=new r,a=void 0,i=!1;return e=t?function(t,e){return n.set(t,e),n.has(t)||(a||(a=new d),a.set(t,e)),this}:function(t,e){if(i)try{n.set(t,e)}catch(r){a||(a=new d),a.set___(t,e)}else n.set(t,e);return this},Object.create(d.prototype,{get___:{value:y((function(t,e){return a?n.has(t)?n.get(t):a.get___(t,e):n.get(t,e)}))},has___:{value:y((function(t){return n.has(t)||!!a&&a.has___(t)}))},set___:{value:y(e)},delete___:{value:y((function(t){var e=!!n.delete(t);return a&&a.delete___(t)||e}))},permitHostObjects___:{value:y((function(t){if(t!==g)throw new Error(\"bogus call to permitHostObjects___\");i=!0}))}})}t&&\"undefined\"!=typeof Proxy&&(Proxy=void 0),n.prototype=d.prototype,e.exports=n,Object.defineProperty(WeakMap.prototype,\"constructor\",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(\"undefined\"!=typeof Proxy&&(Proxy=void 0),e.exports=d)}function g(t){t.permitHostObjects___&&t.permitHostObjects___(g)}function m(t){return!(\"weakmap:\"==t.substr(0,\"weakmap:\".length)&&\"___\"===t.substr(t.length-3))}function v(t){if(t!==Object(t))throw new TypeError(\"Not an object: \"+t);var e=t[l];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,l,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(t){return}}}function y(t){return t.prototype=null,Object.freeze(t)}function x(){f||\"undefined\"==typeof console||(f=!0,console.warn(\"WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future.\"))}}()},{}],555:[function(t,e,r){var n=t(\"./hidden-store.js\");e.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)}}},{\"./hidden-store.js\":556}],556:[function(t,e,r){e.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}},{}],557:[function(t,e,r){var n=t(\"./create-store.js\");e.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}}}},{\"./create-store.js\":555}],558:[function(t,e,r){var n=t(\"get-canvas-context\");e.exports=function(t){return n(\"webgl\",t)}},{\"get-canvas-context\":244}],559:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(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),a=t.month(),i=\"\"+this.toChineseMonth(n,a);return e&&i.length<2&&(i=\"0\"+i),this.isIntercalaryMonth(n,a)&&(i+=\"i\"),i},monthNames:function(t){if(\"string\"==typeof t){var e=t.match(c);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),a=[\"\\u4e00\\u6708\",\"\\u4e8c\\u6708\",\"\\u4e09\\u6708\",\"\\u56db\\u6708\",\"\\u4e94\\u6708\",\"\\u516d\\u6708\",\"\\u4e03\\u6708\",\"\\u516b\\u6708\",\"\\u4e5d\\u6708\",\"\\u5341\\u6708\",\"\\u5341\\u4e00\\u6708\",\"\\u5341\\u4e8c\\u6708\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a=\"\\u95f0\"+a),a},monthNamesShort:function(t){if(\"string\"==typeof t){var e=t.match(u);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),a=[\"\\u4e00\",\"\\u4e8c\",\"\\u4e09\",\"\\u56db\",\"\\u4e94\",\"\\u516d\",\"\\u4e03\",\"\\u516b\",\"\\u4e5d\",\"\\u5341\",\"\\u5341\\u4e00\",\"\\u5341\\u4e8c\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a=\"\\u95f0\"+a),a},parseMonth:function(t,e){t=this._validateYear(t);var r,n=parseInt(e);if(isNaN(n))\"\\u95f0\"===e[0]&&(r=!0,e=e.substring(1)),\"\\u6708\"===e[e.length-1]&&(e=e.substring(0,e.length-1)),n=1+[\"\\u4e00\",\"\\u4e8c\",\"\\u4e09\",\"\\u56db\",\"\\u4e94\",\"\\u516d\",\"\\u4e03\",\"\\u516b\",\"\\u4e5d\",\"\\u5341\",\"\\u5341\\u4e00\",\"\\u5341\\u4e8c\"].indexOf(e);else{var a=e[e.length-1];r=\"i\"===a||\"I\"===a}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 a=this.intercalaryMonth(t);if(r&&e!==a||e<1||e>12)throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return a?!r&&e<=a?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 a,o=this._validateYear(t,n.local.invalidyear),s=f[o-f[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(a=i.newDate(l,c,u)).add(4-(a.dayOfWeek()||7),\"d\");var h=this.toJD(t,e,r)-a.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 a=this._validate(t,s,r,n.local.invalidDate);t=this._validateYear(a.year()),e=a.month(),r=a.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,r,n,a){var i,o,s;if(\"object\"==typeof t)o=t,i=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,i=n):(l=!!n,i=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,(g>>5&15)-1,(31&g)+s);return i.year=m.getFullYear(),i.month=1+m.getMonth(),i.day=m.getDate(),i}(t,s,r,o);return i.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=i.fromJD(t),r=function(t,e,r,n){var a,i;if(\"object\"==typeof t)a=t,i=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\");a={year:t,month:e,day:r},i=n||{}}var o=f[a.year-f[0]],s=a.year<<9|a.month<<5|a.day;i.year=s>=o?a.year:a.year-1,o=f[i.year-f[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(a.year,a.month-1,a.day);l=Math.round((u-c)/864e5);var p,d=h[i.year-h[0]];for(p=0;p<13;p++){var g=d&1<<12-p?30:29;if(l>13;!m||p=2&&n<=6},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return{century:o[Math.floor((a.year()-1)/100)+1]||\"\"}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year()+(a.year()<0?1:0),e=a.month(),(r=a.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=i},{\"../main\":573,\"object-assign\":452}],562:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.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 a=this._validate(t,e,r,n.local.invalidDate);return(t=a.year())<0&&t++,a.day()+30*(a.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,a=e-30*(n-1)+1;return this.newDate(r,n,a)}}),n.calendars.ethiopian=i},{\"../main\":573,\"object-assign\":452}],563:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Hebrew\",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{\"\":{name:\"Hebrew\",epochs:[\"BAM\",\"AM\"],monthNames:[\"Nisan\",\"Iyar\",\"Sivan\",\"Tammuz\",\"Av\",\"Elul\",\"Tishrei\",\"Cheshvan\",\"Kislev\",\"Tevet\",\"Shevat\",\"Adar\",\"Adar II\"],monthNamesShort:[\"Nis\",\"Iya\",\"Siv\",\"Tam\",\"Av\",\"Elu\",\"Tis\",\"Che\",\"Kis\",\"Tev\",\"She\",\"Ada\",\"Ad2\"],dayNames:[\"Yom Rishon\",\"Yom Sheni\",\"Yom Shlishi\",\"Yom Revi'i\",\"Yom Chamishi\",\"Yom Shishi\",\"Yom Shabbat\"],dayNamesShort:[\"Ris\",\"She\",\"Shl\",\"Rev\",\"Cha\",\"Shi\",\"Sha\"],dayNamesMin:[\"Ri\",\"She\",\"Shl\",\"Re\",\"Ch\",\"Shi\",\"Sha\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(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 a=this._validate(t,e,r,n.local.invalidDate);return{yearType:(this.leapYear(a)?\"embolismic\":\"common\")+\" \"+[\"deficient\",\"regular\",\"complete\"][this.daysInYear(a)%10-3]}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t<=0?t+1:t,o=this.jdEpoch+this._delay1(i)+this._delay2(i)+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=i},{\"../main\":573,\"object-assign\":452}],564:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Islamic\",jdEpoch:1948439.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Islamic\",epochs:[\"BH\",\"AH\"],monthNames:[\"Muharram\",\"Safar\",\"Rabi' al-awwal\",\"Rabi' al-thani\",\"Jumada al-awwal\",\"Jumada al-thani\",\"Rajab\",\"Sha'aban\",\"Ramadan\",\"Shawwal\",\"Dhu al-Qi'dah\",\"Dhu al-Hijjah\"],monthNamesShort:[\"Muh\",\"Saf\",\"Rab1\",\"Rab2\",\"Jum1\",\"Jum2\",\"Raj\",\"Sha'\",\"Ram\",\"Shaw\",\"DhuQ\",\"DhuH\"],dayNames:[\"Yawm al-ahad\",\"Yawm al-ithnayn\",\"Yawm ath-thulaathaa'\",\"Yawm al-arbi'aa'\",\"Yawm al-kham\\u012bs\",\"Yawm al-jum'a\",\"Yawm as-sabt\"],dayNamesShort:[\"Aha\",\"Ith\",\"Thu\",\"Arb\",\"Kha\",\"Jum\",\"Sab\"],dayNamesMin:[\"Ah\",\"It\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!1}},leapYear:function(t){return(11*this._validate(t,this.minMonth,this.minDay,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 a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),t=t<=0?t+1:t,(r=a.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=i},{\"../main\":573,\"object-assign\":452}],565:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.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 a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),r=a.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),a=Math.floor((e-n)/30.6001),i=a-Math.floor(a<14?1:13),o=r-Math.floor(i>2?4716:4715),s=e-n-Math.floor(30.6001*a);return o<=0&&o--,this.newDate(o,i,s)}}),n.calendars.julian=i},{\"../main\":573,\"object-assign\":452}],566:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(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}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"Mayan\",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{\"\":{name:\"Mayan\",epochs:[\"\",\"\"],monthNames:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\"],monthNamesShort:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\"],dayNames:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],dayNamesShort:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],dayNamesMin:[\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\"],digits:null,dateFormat:\"YYYY.m.d\",firstDay:0,isRTL:!1,haabMonths:[\"Pop\",\"Uo\",\"Zip\",\"Zotz\",\"Tzec\",\"Xul\",\"Yaxkin\",\"Mol\",\"Chen\",\"Yax\",\"Zac\",\"Ceh\",\"Mac\",\"Kankin\",\"Muan\",\"Pax\",\"Kayab\",\"Cumku\",\"Uayeb\"],tzolkinMonths:[\"Imix\",\"Ik\",\"Akbal\",\"Kan\",\"Chicchan\",\"Cimi\",\"Manik\",\"Lamat\",\"Muluc\",\"Oc\",\"Chuen\",\"Eb\",\"Ben\",\"Ix\",\"Men\",\"Cib\",\"Caban\",\"Etznab\",\"Cauac\",\"Ahau\"]}},leapYear:function(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 a=this._validate(t,e,r,n.local.invalidDate).toJD(),i=this._toHaab(a),o=this._toTzolkin(a);return{haabMonthName:this.local.haabMonths[i[0]-1],haabMonth:i[0],haabDay:i[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(t){var e=o((t-=this.jdEpoch)+8+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s((t-=this.jdEpoch)+20,20),s(t+4,13)]},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return a.day()+20*a.month()+360*a.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=i},{\"../main\":573,\"object-assign\":452}],567:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar;var o=n.instance(\"gregorian\");a(i.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 a=this._validate(t,e,r,n.local.invalidMonth);(t=a.year())<0&&t++;for(var i=a.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=i},{\"../main\":573,\"object-assign\":452}],568:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.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(),\"undefined\"==typeof 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),\"undefined\"==typeof 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 a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=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+=i.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],i.newDate(c,1,1).add(o,\"d\").toJD()},fromJD:function(t){var e=n.instance().fromJD(t),r=e.year(),a=e.dayOfYear(),i=r+56;this._createMissingCalendarData(i);for(var o=9,s=this.NEPALI_CALENDAR_DATA[i][0],l=this.NEPALI_CALENDAR_DATA[i][o]-s+1;a>l;)++o>12&&(o=1,i++),l+=this.NEPALI_CALENDAR_DATA[i][o];var c=this.NEPALI_CALENDAR_DATA[i][o]-(l-a);return this.newDate(i,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 a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t-(t>=0?474:473),s=474+o(i,2820);return r+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(i/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),a=2820;if(1029982!==n){var i=Math.floor(n/366),s=o(n,366);a=Math.floor((2134*i+2816*s+2815)/1028522)+i+1}var l=a+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=i,n.calendars.jalali=i},{\"../main\":573,\"object-assign\":452}],570:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(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);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.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 a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.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},{\"../main\":573,\"object-assign\":452}],571:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\"),i=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,a(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);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.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 a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.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},{\"../main\":573,\"object-assign\":452}],572:[function(t,e,r){var n=t(\"../main\"),a=t(\"object-assign\");function i(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}i.prototype=new n.baseCalendar,a(i.prototype,{name:\"UmmAlQura\",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Umm al-Qura\",epochs:[\"BH\",\"AH\"],monthNames:[\"Al-Muharram\",\"Safar\",\"Rabi' al-awwal\",\"Rabi' Al-Thani\",\"Jumada Al-Awwal\",\"Jumada Al-Thani\",\"Rajab\",\"Sha'aban\",\"Ramadan\",\"Shawwal\",\"Dhu al-Qi'dah\",\"Dhu al-Hijjah\"],monthNamesShort:[\"Muh\",\"Saf\",\"Rab1\",\"Rab2\",\"Jum1\",\"Jum2\",\"Raj\",\"Sha'\",\"Ram\",\"Shaw\",\"DhuQ\",\"DhuH\"],dayNames:[\"Yawm al-Ahad\",\"Yawm al-Ithnain\",\"Yawm al-Thal\\u0101th\\u0101\\u2019\",\"Yawm al-Arba\\u2018\\u0101\\u2019\",\"Yawm al-Kham\\u012bs\",\"Yawm al-Jum\\u2018a\",\"Yawm al-Sabt\"],dayNamesMin:[\"Ah\",\"Ith\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!0}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,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,a=0,i=0;ir)return o[a]-o[a-1];a++}return 30},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate),i=12*(a.year()-1)+a.month()-15292;return a.day()+o[i-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,r=0,n=0;ne);n++)r++;var a=r+15292,i=Math.floor((a-1)/12),s=i+1,l=a-12*i,c=e-o[r-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,r){var a=n.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(a=(t=null!=t.year?t.year:t)>=1276&&t<=1500),a},_validate:function(t,e,r,a){var i=n.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw a.replace(/\\{0\\}/,this.local.name);return i}}),n.calendars.ummalqura=i;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]},{\"../main\":573,\"object-assign\":452}],573:[function(t,e,r){var n=t(\"object-assign\");function a(){this.regionalOptions=[],this.regionalOptions[\"\"]={invalidCalendar:\"Calendar {0} not found\",invalidDate:\"Invalid {0} date\",invalidMonth:\"Invalid {0} month\",invalidYear:\"Invalid {0} year\",differentCalendars:\"Cannot mix {0} and {1} dates\"},this.local=this.regionalOptions[\"\"],this.calendars={},this._localCals={}}function i(t,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(a.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,a){return(n=(null!=t&&t.year?t.calendar():\"string\"==typeof n?this.instance(n,a):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=\"\",a=0;r>0;){var i=r%10;n=(0===i?\"\":t[i]+e[a])+n,a++,r=Math.floor(r/10)}return 0===n.indexOf(t[1]+e[1])&&(n=n.substr(1)),n||t[0]}}}),n(i.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 i(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),a=t.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var i=t.year()+(\"y\"===r?e:0),o=t.monthOfYear()+(\"m\"===r?e:0);a=t.day();\"y\"===r?(t.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):\"m\"===r&&(!function(t){for(;oe-1+t.minMonth;)i++,o-=e,e=t.monthsInYear(i)}(this),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o))));var s=[i,this.fromMonthOfYear(i,o),a];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 a={y:[1,1,\"y\"],m:[1,this.monthsInYear(-1),\"m\"],w:[this.daysInWeek(),this.daysInYear(-1),\"d\"],d:[1,this.daysInYear(-1),\"d\"]}[n],i=r<0?-1:1;e=this._add(t,r*a[0]+i*a[1],a[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(),a=\"m\"===r?e:t.month(),i=\"d\"===r?e:t.day();return\"y\"!==r&&\"m\"!==r||(i=Math.min(i,this.daysInMonth(n,a))),t.date(n,a,i)},isValid:function(t,e,r){this._validateLevel++;var n=this.hasYearZero||0!==t;if(n){var a=this.newDate(t,e,this.minDay);n=e>=this.minMonth&&e-this.minMonth=this.minDay&&r-this.minDay13.5?13:1),c=a-(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),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=e.exports=new a;c.cdate=i,c.baseCalendar=s,c.calendars.gregorian=l},{\"object-assign\":452}],574:[function(t,e,r){var n=t(\"object-assign\"),a=t(\"./main\");n(a.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\"}),a.local=a.regionalOptions[\"\"],n(a.cdate.prototype,{formatDate:function(t,e){return\"string\"!=typeof t&&(e=t,t=\"\"),this._calendar.formatDate(t||\"\",this,e)}}),n(a.baseCalendar.prototype,{UNIX_EPOCH:a.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:a.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 a.local.invalidFormat||a.regionalOptions[\"\"].invalidFormat;t=t||this.local.dateFormat;for(var n,i,o,s,l=(r=r||{}).dayNamesShort||this.local.dayNamesShort,c=r.dayNames||this.local.dayNames,u=r.monthNumbers||this.local.monthNumbers,h=r.monthNamesShort||this.local.monthNamesShort,f=r.monthNames||this.local.monthNames,p=(r.calculateWeek||this.local.calculateWeek,function(e,r){for(var n=1;w+n1}),d=function(t,e,r,n){var a=\"\"+e;if(p(t,n))for(;a.length1},x=function(t,r){var n=y(t,r),i=[2,3,n?4:2,n?4:2,10,11,20][\"oyYJ@!\".indexOf(t)+1],o=new RegExp(\"^-?\\\\d{1,\"+i+\"}\"),s=e.substring(A).match(o);if(!s)throw(a.local.missingNumberAt||a.regionalOptions[\"\"].missingNumberAt).replace(/\\{0\\}/,A);return A+=s[0].length,parseInt(s[0],10)},b=this,_=function(){if(\"function\"==typeof l){y(\"m\");var t=l.call(b,e.substring(A));return A+=t.length,t}return x(\"m\")},w=function(t,r,n,i){for(var o=y(t,i)?n:r,s=0;s-1){p=1,d=g;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,a){r&&\"object\"!=typeof r&&(a=n,n=r,r=null),\"string\"!=typeof n&&(a=n,n=\"\");var i=this;return e=e?e.newDate():null,t=null==t?e:\"string\"==typeof t?function(t){try{return i.parseDate(n,t,a)}catch(t){}for(var e=((t=t.toLowerCase()).match(/^c/)&&r?r.newDate():null)||i.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:i.today().add(t,\"d\"):i.newDate(t)}})},{\"./main\":573,\"object-assign\":452}],575:[function(t,e,r){e.exports=t(\"cwise-compiler\")({args:[\"array\",{offset:[1],array:0},\"scalar\",\"scalar\",\"index\"],pre:{body:\"{}\",args:[],thisVars:[],localVars:[]},post:{body:\"{}\",args:[],thisVars:[],localVars:[]},body:{body:\"{\\n var _inline_1_da = _inline_1_arg0_ - _inline_1_arg3_\\n var _inline_1_db = _inline_1_arg1_ - _inline_1_arg3_\\n if((_inline_1_da >= 0) !== (_inline_1_db >= 0)) {\\n _inline_1_arg2_.push(_inline_1_arg4_[0] + 0.5 + 0.5 * (_inline_1_da + _inline_1_db) / (_inline_1_da - _inline_1_db))\\n }\\n }\",args:[{name:\"_inline_1_arg0_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg1_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg2_\",lvalue:!1,rvalue:!0,count:1},{name:\"_inline_1_arg3_\",lvalue:!1,rvalue:!0,count:2},{name:\"_inline_1_arg4_\",lvalue:!1,rvalue:!0,count:1}],thisVars:[],localVars:[\"_inline_1_da\",\"_inline_1_db\"]},funcName:\"zeroCrossings\"})},{\"cwise-compiler\":148}],576:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r};var n=t(\"./lib/zc-core\")},{\"./lib/zc-core\":575}],577:[function(t,e,r){\"use strict\";e.exports=[{path:\"\",backoff:0},{path:\"M-2.4,-3V3L0.6,0Z\",backoff:.6},{path:\"M-3.7,-2.5V2.5L1.3,0Z\",backoff:1.3},{path:\"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z\",backoff:1.55},{path:\"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z\",backoff:1.6},{path:\"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z\",backoff:2},{path:\"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z\",backoff:0,noRotate:!0},{path:\"M2,2V-2H-2V2Z\",backoff:0,noRotate:!0}]},{}],578:[function(t,e,r){\"use strict\";var n=t(\"./arrow_paths\"),a=t(\"../../plots/font_attributes\"),i=t(\"../../plots/cartesian/constants\"),o=t(\"../../plot_api/plot_template\").templatedArray;e.exports=o(\"annotation\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},text:{valType:\"string\",editType:\"calc+arraydraw\"},textangle:{valType:\"angle\",dflt:0,editType:\"calc+arraydraw\"},font:a({editType:\"calc+arraydraw\",colorEditType:\"arraydraw\"}),width:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},height:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"center\",editType:\"arraydraw\"},valign:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\",editType:\"arraydraw\"},bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},bordercolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},borderpad:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},showarrow:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},arrowcolor:{valType:\"color\",editType:\"arraydraw\"},arrowhead:{valType:\"integer\",min:0,max:n.length,dflt:1,editType:\"arraydraw\"},startarrowhead:{valType:\"integer\",min:0,max:n.length,dflt:1,editType:\"arraydraw\"},arrowside:{valType:\"flaglist\",flags:[\"end\",\"start\"],extras:[\"none\"],dflt:\"end\",editType:\"arraydraw\"},arrowsize:{valType:\"number\",min:.3,dflt:1,editType:\"calc+arraydraw\"},startarrowsize:{valType:\"number\",min:.3,dflt:1,editType:\"calc+arraydraw\"},arrowwidth:{valType:\"number\",min:.1,editType:\"calc+arraydraw\"},standoff:{valType:\"number\",min:0,dflt:0,editType:\"calc+arraydraw\"},startstandoff:{valType:\"number\",min:0,dflt:0,editType:\"calc+arraydraw\"},ax:{valType:\"any\",editType:\"calc+arraydraw\"},ay:{valType:\"any\",editType:\"calc+arraydraw\"},axref:{valType:\"enumerated\",dflt:\"pixel\",values:[\"pixel\",i.idRegex.x.toString()],editType:\"calc\"},ayref:{valType:\"enumerated\",dflt:\"pixel\",values:[\"pixel\",i.idRegex.y.toString()],editType:\"calc\"},xref:{valType:\"enumerated\",values:[\"paper\",i.idRegex.x.toString()],editType:\"calc\"},x:{valType:\"any\",editType:\"calc+arraydraw\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"auto\",editType:\"calc+arraydraw\"},xshift:{valType:\"number\",dflt:0,editType:\"calc+arraydraw\"},yref:{valType:\"enumerated\",values:[\"paper\",i.idRegex.y.toString()],editType:\"calc\"},y:{valType:\"any\",editType:\"calc+arraydraw\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"auto\",editType:\"calc+arraydraw\"},yshift:{valType:\"number\",dflt:0,editType:\"calc+arraydraw\"},clicktoshow:{valType:\"enumerated\",values:[!1,\"onoff\",\"onout\"],dflt:!1,editType:\"arraydraw\"},xclick:{valType:\"any\",editType:\"arraydraw\"},yclick:{valType:\"any\",editType:\"arraydraw\"},hovertext:{valType:\"string\",editType:\"arraydraw\"},hoverlabel:{bgcolor:{valType:\"color\",editType:\"arraydraw\"},bordercolor:{valType:\"color\",editType:\"arraydraw\"},font:a({editType:\"arraydraw\"}),editType:\"arraydraw\"},captureevents:{valType:\"boolean\",editType:\"arraydraw\"},editType:\"calc\",_deprecated:{ref:{valType:\"string\",editType:\"calc\"}}})},{\"../../plot_api/plot_template\":766,\"../../plots/cartesian/constants\":782,\"../../plots/font_attributes\":804,\"./arrow_paths\":577}],579:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"./draw\").draw;function o(t){var e=t._fullLayout;n.filterVisible(e.annotations).forEach((function(e){var r=a.getFromId(t,e.xref),n=a.getFromId(t,e.yref);e._extremes={},r&&s(e,r),n&&s(e,n)}))}function s(t,e){var r,n=e._id,i=n.charAt(0),o=t[i],s=t[\"a\"+i],l=t[i+\"ref\"],c=t[\"a\"+i+\"ref\"],u=t[\"_\"+i+\"padplus\"],h=t[\"_\"+i+\"padminus\"],f={x:1,y:-1}[i]*t[i+\"shift\"],p=3*t.arrowsize*t.arrowwidth||0,d=p+f,g=p-f,m=3*t.startarrowsize*t.arrowwidth||0,v=m+f,y=m-f;if(c===l){var x=a.findExtremes(e,[e.r2c(o)],{ppadplus:d,ppadminus:g}),b=a.findExtremes(e,[e.r2c(s)],{ppadplus:Math.max(u,v),ppadminus:Math.max(h,y)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else v=s?v+s:v,y=s?y-s:y,r=a.findExtremes(e,[e.r2c(o)],{ppadplus:Math.max(u,d,v),ppadminus:Math.max(h,g,y)});t._extremes[n]=r}e.exports=function(t){var e=t._fullLayout;if(n.filterVisible(e.annotations).length&&t._fullData.length)return n.syncOrAsync([i,o],t)}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"./draw\":584}],580:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"../../plot_api/plot_template\").arrayEditor;function o(t,e){var r,n,a,i,o,l,c,u=t._fullLayout.annotations,h=[],f=[],p=[],d=(e||[]).length;for(r=0;r0||r.explicitOff.length>0},onClick:function(t,e){var r,s,l=o(t,e),c=l.on,u=l.off.concat(l.explicitOff),h={},f=t._fullLayout.annotations;if(!c.length&&!u.length)return;for(r=0;r2/3?\"right\":\"center\"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var H=!1,G=[\"x\",\"y\"],Y=0;Y1)&&(tt===$?((ct=et.r2fraction(e[\"a\"+Q]))<0||ct>1)&&(H=!0):H=!0),W=et._offset+et.r2p(e[Q]),J=.5}else\"x\"===Q?(X=e[Q],W=b.l+b.w*X):(X=1-e[Q],W=b.t+b.h*X),J=e.showarrow?.5:X;if(e.showarrow){lt.head=W;var ut=e[\"a\"+Q];K=nt*V(.5,e.xanchor)-at*V(.5,e.yanchor),tt===$?(lt.tail=et._offset+et.r2p(ut),Z=K):(lt.tail=W+ut,Z=K+ut),lt.text=lt.tail+K;var ht=x[\"x\"===Q?\"width\":\"height\"];if(\"paper\"===$&&(lt.head=o.constrain(lt.head,1,ht-1)),\"pixel\"===tt){var ft=-Math.max(lt.tail-3,lt.text),pt=Math.min(lt.tail+3,lt.text)-ht;ft>0?(lt.tail+=ft,lt.text+=ft):pt>0&&(lt.tail-=pt,lt.text-=pt)}lt.tail+=st,lt.head+=st}else Z=K=it*V(J,ot),lt.text=W+K;lt.text+=st,K+=st,Z+=st,e[\"_\"+Q+\"padplus\"]=it/2+Z,e[\"_\"+Q+\"padminus\"]=it/2-Z,e[\"_\"+Q+\"size\"]=it,e[\"_\"+Q+\"shift\"]=K}if(H)z.remove();else{var dt=0,gt=0;if(\"left\"!==e.align&&(dt=(w-v)*(\"center\"===e.align?.5:1)),\"top\"!==e.valign&&(gt=(I-y)*(\"middle\"===e.valign?.5:1)),u)n.select(\"svg\").attr({x:R+dt-1,y:R+gt}).call(c.setClipUrl,B?M:null,t);else{var mt=R+gt-d.top,vt=R+dt-d.left;U.call(h.positionText,vt,mt).call(c.setClipUrl,B?M:null,t)}N.select(\"rect\").call(c.setRect,R,R,w,I),F.call(c.setRect,O/2,O/2,D-O,j-O),z.call(c.setTranslate,Math.round(S.x.text-D/2),Math.round(S.y.text-j/2)),L.attr({transform:\"rotate(\"+E+\",\"+S.x.text+\",\"+S.y.text+\")\"});var yt,xt=function(r,n){C.selectAll(\".annotation-arrow-g\").remove();var u=S.x.head,h=S.y.head,f=S.x.tail+r,d=S.y.tail+n,v=S.x.text+r,y=S.y.text+n,x=o.rotationXYMatrix(E,v,y),w=o.apply2DTransform(x),M=o.apply2DTransform2(x),P=+F.attr(\"width\"),I=+F.attr(\"height\"),O=v-.5*P,D=O+P,R=y-.5*I,B=R+I,N=[[O,R,O,B],[O,B,D,B],[D,B,D,R],[D,R,O,R]].map(M);if(!N.reduce((function(t,e){return t^!!o.segmentsIntersect(u,h,u+1e6,h+1e6,e[0],e[1],e[2],e[3])}),!1)){N.forEach((function(t){var e=o.segmentsIntersect(f,d,u,h,t[0],t[1],t[2],t[3]);e&&(f=e.x,d=e.y)}));var j=e.arrowwidth,V=e.arrowcolor,U=e.arrowside,q=C.append(\"g\").style({opacity:l.opacity(V)}).classed(\"annotation-arrow-g\",!0),H=q.append(\"path\").attr(\"d\",\"M\"+f+\",\"+d+\"L\"+u+\",\"+h).style(\"stroke-width\",j+\"px\").call(l.stroke,l.rgb(V));if(g(H,U,e),_.annotationPosition&&H.node().parentNode&&!i){var G=u,Y=h;if(e.standoff){var W=Math.sqrt(Math.pow(u-f,2)+Math.pow(h-d,2));G+=e.standoff*(f-u)/W,Y+=e.standoff*(d-h)/W}var Z,X,J=q.append(\"path\").classed(\"annotation-arrow\",!0).classed(\"anndrag\",!0).classed(\"cursor-move\",!0).attr({d:\"M3,3H-3V-3H3ZM0,0L\"+(f-G)+\",\"+(d-Y),transform:\"translate(\"+G+\",\"+Y+\")\"}).style(\"stroke-width\",j+6+\"px\").call(l.stroke,\"rgba(0,0,0,0)\").call(l.fill,\"rgba(0,0,0,0)\");p.init({element:J.node(),gd:t,prepFn:function(){var t=c.getTranslate(z);Z=t.x,X=t.y,s&&s.autorange&&T(s._name+\".autorange\",!0),m&&m.autorange&&T(m._name+\".autorange\",!0)},moveFn:function(t,r){var n=w(Z,X),a=n[0]+t,i=n[1]+r;z.call(c.setTranslate,a,i),k(\"x\",s?s.p2r(s.r2p(e.x)+t):e.x+t/b.w),k(\"y\",m?m.p2r(m.r2p(e.y)+r):e.y-r/b.h),e.axref===e.xref&&k(\"ax\",s.p2r(s.r2p(e.ax)+t)),e.ayref===e.yref&&k(\"ay\",m.p2r(m.r2p(e.ay)+r)),q.attr(\"transform\",\"translate(\"+t+\",\"+r+\")\"),L.attr({transform:\"rotate(\"+E+\",\"+a+\",\"+i+\")\"})},doneFn:function(){a.call(\"_guiRelayout\",t,A());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}};if(e.showarrow&&xt(0,0),P)p.init({element:z.node(),gd:t,prepFn:function(){yt=L.attr(\"transform\")},moveFn:function(t,r){var n=\"pointer\";if(e.showarrow)e.axref===e.xref?k(\"ax\",s.p2r(s.r2p(e.ax)+t)):k(\"ax\",e.ax+t),e.ayref===e.yref?k(\"ay\",m.p2r(m.r2p(e.ay)+r)):k(\"ay\",e.ay+r),xt(t,r);else{if(i)return;var a,o;if(s)a=s.p2r(s.r2p(e.x)+t);else{var l=e._xsize/b.w,c=e.x+(e._xshift-e.xshift)/b.w-l/2;a=p.align(c+t/b.w,l,0,1,e.xanchor)}if(m)o=m.p2r(m.r2p(e.y)+r);else{var u=e._ysize/b.h,h=e.y-(e._yshift+e.yshift)/b.h-u/2;o=p.align(h-r/b.h,u,0,1,e.yanchor)}k(\"x\",a),k(\"y\",o),s&&m||(n=p.getCursor(s?.5:a,m?.5:o,e.xanchor,e.yanchor))}L.attr({transform:\"translate(\"+t+\",\"+r+\")\"+yt}),f(z,n)},clickFn:function(r,n){e.captureevents&&t.emit(\"plotly_clickannotation\",q(n))},doneFn:function(){f(z),a.call(\"_guiRelayout\",t,A());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}}e.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(\".annotation\").remove();for(var r=0;r=0,m=e.indexOf(\"end\")>=0,v=h.backoff*p+r.standoff,y=f.backoff*d+r.startstandoff;if(\"line\"===u.nodeName){o={x:+t.attr(\"x1\"),y:+t.attr(\"y1\")},s={x:+t.attr(\"x2\"),y:+t.attr(\"y2\")};var x=o.x-s.x,b=o.y-s.y;if(c=(l=Math.atan2(b,x))+Math.PI,v&&y&&v+y>Math.sqrt(x*x+b*b))return void P();if(v){if(v*v>x*x+b*b)return void P();var _=v*Math.cos(l),w=v*Math.sin(l);s.x+=_,s.y+=w,t.attr({x2:s.x,y2:s.y})}if(y){if(y*y>x*x+b*b)return void P();var T=y*Math.cos(l),k=y*Math.sin(l);o.x-=T,o.y-=k,t.attr({x1:o.x,y1:o.y})}}else if(\"path\"===u.nodeName){var A=u.getTotalLength(),M=\"\";if(A1){c=!0;break}}c?t.fullLayout._infolayer.select(\".annotation-\"+t.id+'[data-index=\"'+s+'\"]').remove():(l._pdata=a(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*r[0],e.yaxis.r2l(l.y)*r[1],e.zaxis.r2l(l.z)*r[2]]),n(t.graphDiv,l,s,t.id,l._xa,l._ya))}}},{\"../../plots/gl3d/project\":827,\"../annotations/draw\":584}],591:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports={moduleType:\"component\",name:\"annotations3d\",schema:{subplots:{scene:{annotations:t(\"./attributes\")}}},layoutAttributes:t(\"./attributes\"),handleDefaults:t(\"./defaults\"),includeBasePlot:function(t,e){var r=n.subplotsRegistry.gl3d;if(!r)return;for(var i=r.attrRegex,o=Object.keys(t),s=0;s=0))return t;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return t}var s=Math.round(255*n[0])+\", \"+Math.round(255*n[1])+\", \"+Math.round(255*n[2]);return i?\"rgba(\"+s+\", \"+n[3]+\")\":\"rgb(\"+s+\")\"}i.tinyRGB=function(t){var e=t.toRgb();return\"rgb(\"+Math.round(e.r)+\", \"+Math.round(e.g)+\", \"+Math.round(e.b)+\")\"},i.rgb=function(t){return i.tinyRGB(n(t))},i.opacity=function(t){return t?n(t).getAlpha():0},i.addOpacity=function(t,e){var r=n(t).toRgb();return\"rgba(\"+Math.round(r.r)+\", \"+Math.round(r.g)+\", \"+Math.round(r.b)+\", \"+e+\")\"},i.combine=function(t,e){var r=n(t).toRgb();if(1===r.a)return n(t).toRgbString();var a=n(e||l).toRgb(),i=1===a.a?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},o={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return n(o).toRgbString()},i.contrast=function(t,e,r){var a=n(t);return 1!==a.getAlpha()&&(a=n(i.combine(t,l))),(a.isDark()?e?a.lighten(e):l:r?a.darken(r):s).toString()},i.stroke=function(t,e){var r=n(e);t.style({stroke:i.tinyRGB(r),\"stroke-opacity\":r.getAlpha()})},i.fill=function(t,e){var r=n(e);t.style({fill:i.tinyRGB(r),\"fill-opacity\":r.getAlpha()})},i.clean=function(t){if(t&&\"object\"==typeof t){var e,r,n,a,o=Object.keys(t);for(e=0;e0?n>=l:n<=l));a++)n>u&&n0?n>=l:n<=l));a++)n>r[0]&&n1){var X=Math.pow(10,Math.floor(Math.log(Z)/Math.LN10));Y*=X*c.roundUp(Z/X,[2,5,10]),(Math.abs(C.start)/C.size+1e-6)%1<2e-6&&(G.tick0=0)}G.dtick=Y}G.domain=[U+N,U+R-N],G.setScale(),t.attr(\"transform\",\"translate(\"+Math.round(l.l)+\",\"+Math.round(l.t)+\")\");var J,K=t.select(\".\"+k.cbtitleunshift).attr(\"transform\",\"translate(-\"+Math.round(l.l)+\",-\"+Math.round(l.t)+\")\"),Q=t.select(\".\"+k.cbaxis),$=0;function tt(n,a){var i={propContainer:G,propName:e._propPrefix+\"title\",traceIndex:e._traceIndex,_meta:e._meta,placeholder:o._dfltTitle.colorbar,containerGroup:t.select(\".\"+k.cbtitle)},s=\"h\"===n.charAt(0)?n.substr(1):\"h\"+n;t.selectAll(\".\"+s+\",.\"+s+\"-math-group\").remove(),d.draw(r,n,u(i,a||{}))}return c.syncOrAsync([i.previousPromises,function(){if(-1!==[\"top\",\"bottom\"].indexOf(A)){var t,r=l.l+(e.x+F)*l.w,n=G.title.font.size;t=\"top\"===A?(1-(U+R-N))*l.h+l.t+3+.75*n:(1-(U+N))*l.h+l.t-3-.25*n,tt(G._id+\"title\",{attributes:{x:r,y:t,\"text-anchor\":\"start\"}})}},function(){if(-1!==[\"top\",\"bottom\"].indexOf(A)){var i=t.select(\".\"+k.cbtitle),o=i.select(\"text\"),u=[-e.outlinewidth/2,e.outlinewidth/2],h=i.select(\".h\"+G._id+\"title-math-group\").node(),p=15.6;if(o.node()&&(p=parseInt(o.node().style.fontSize,10)*_),h?($=f.bBox(h).height)>p&&(u[1]-=($-p)/2):o.node()&&!o.classed(k.jsPlaceholder)&&($=f.bBox(o.node()).height),$){if($+=5,\"top\"===A)G.domain[1]-=$/l.h,u[1]*=-1;else{G.domain[0]+=$/l.h;var d=g.lineCount(o);u[1]+=(1-d)*p}i.attr(\"transform\",\"translate(\"+u+\")\"),G.setScale()}}t.selectAll(\".\"+k.cbfills+\",.\"+k.cblines).attr(\"transform\",\"translate(0,\"+Math.round(l.h*(1-G.domain[1]))+\")\"),Q.attr(\"transform\",\"translate(0,\"+Math.round(-l.t)+\")\");var v=t.select(\".\"+k.cbfills).selectAll(\"rect.\"+k.cbfill).data(P);v.enter().append(\"rect\").classed(k.cbfill,!0).style(\"stroke\",\"none\"),v.exit().remove();var y=M.map(G.c2p).map(Math.round).sort((function(t,e){return t-e}));v.each((function(t,i){var o=[0===i?M[0]:(P[i]+P[i-1])/2,i===P.length-1?M[1]:(P[i]+P[i+1])/2].map(G.c2p).map(Math.round);o[1]=c.constrain(o[1]+(o[1]>o[0])?1:-1,y[0],y[1]);var s=n.select(this).attr({x:j,width:Math.max(z,2),y:n.min(o),height:Math.max(n.max(o)-n.min(o),2)});if(e._fillgradient)f.gradient(s,r,e._id,\"vertical\",e._fillgradient,\"fill\");else{var l=E(t).replace(\"e-\",\"\");s.attr(\"fill\",a(l).toHexString())}}));var x=t.select(\".\"+k.cblines).selectAll(\"path.\"+k.cbline).data(m.color&&m.width?I:[]);x.enter().append(\"path\").classed(k.cbline,!0),x.exit().remove(),x.each((function(t){n.select(this).attr(\"d\",\"M\"+j+\",\"+(Math.round(G.c2p(t))+m.width/2%1)+\"h\"+z).call(f.lineGroupStyle,m.width,S(t),m.dash)})),Q.selectAll(\"g.\"+G._id+\"tick,path\").remove();var b=j+z+(e.outlinewidth||0)/2-(\"outside\"===e.ticks?1:0),w=s.calcTicks(G),T=s.makeTransFn(G),C=s.getTickSigns(G)[2];return s.drawTicks(r,G,{vals:\"inside\"===G.ticks?s.clipEnds(G,w):w,layer:Q,path:s.makeTickPath(G,b,C),transFn:T}),s.drawLabels(r,G,{vals:w,layer:Q,transFn:T,labelFns:s.makeLabelFns(G,b)})},function(){if(-1===[\"top\",\"bottom\"].indexOf(A)){var t=G.title.font.size,e=G._offset+G._length/2,a=l.l+(G.position||0)*l.w+(\"right\"===G.side?10+t*(G.showticklabels?1:.5):-10-t*(G.showticklabels?.5:0));tt(\"h\"+G._id+\"title\",{avoid:{selection:n.select(r).selectAll(\"g.\"+G._id+\"tick\"),side:A,offsetLeft:l.l,offsetTop:0,maxShift:o.width},attributes:{x:a,y:e,\"text-anchor\":\"middle\"},transform:{rotate:\"-90\",offset:0}})}},i.previousPromises,function(){var n=z+e.outlinewidth/2+f.bBox(Q.node()).width;if((J=K.select(\"text\")).node()&&!J.classed(k.jsPlaceholder)){var a,o=K.select(\".h\"+G._id+\"title-math-group\").node();a=o&&-1!==[\"top\",\"bottom\"].indexOf(A)?f.bBox(o).width:f.bBox(K.node()).right-j-l.l,n=Math.max(n,a)}var s=2*e.xpad+n+e.borderwidth+e.outlinewidth/2,c=q-H;t.select(\".\"+k.cbbg).attr({x:j-e.xpad-(e.borderwidth+e.outlinewidth)/2,y:H-B,width:Math.max(s,2),height:Math.max(c+2*B,2)}).call(p.fill,e.bgcolor).call(p.stroke,e.bordercolor).style(\"stroke-width\",e.borderwidth),t.selectAll(\".\"+k.cboutline).attr({x:j,y:H+e.ypad+(\"top\"===A?$:0),width:Math.max(z,2),height:Math.max(c-2*e.ypad-$,2)}).call(p.stroke,e.outlinecolor).style({fill:\"none\",\"stroke-width\":e.outlinewidth});var u=({center:.5,right:1}[e.xanchor]||0)*s;t.attr(\"transform\",\"translate(\"+(l.l-u)+\",\"+l.t+\")\");var h={},d=w[e.yanchor],g=T[e.yanchor];\"pixels\"===e.lenmode?(h.y=e.y,h.t=c*d,h.b=c*g):(h.t=h.b=0,h.yt=e.y+e.len*d,h.yb=e.y-e.len*g);var m=w[e.xanchor],v=T[e.xanchor];if(\"pixels\"===e.thicknessmode)h.x=e.x,h.l=s*m,h.r=s*v;else{var y=s-z;h.l=y*m,h.r=y*v,h.xl=e.x-e.thickness*m,h.xr=e.x+e.thickness*v}i.autoMargin(r,e._id,h)}],r)}(r,e,t);m&&m.then&&(t._promises||[]).push(m),t._context.edits.colorbarPosition&&function(t,e,r){var n,a,i,s=r._fullLayout._size;l.init({element:t.node(),gd:r,prepFn:function(){n=t.attr(\"transform\"),h(t)},moveFn:function(r,o){t.attr(\"transform\",n+\" translate(\"+r+\",\"+o+\")\"),a=l.align(e._xLeftFrac+r/s.w,e._thickFrac,0,1,e.xanchor),i=l.align(e._yBottomFrac-o/s.h,e._lenFrac,0,1,e.yanchor);var c=l.getCursor(a,i,e.xanchor,e.yanchor);h(t,c)},doneFn:function(){if(h(t),void 0!==a&&void 0!==i){var n={};n[e._propPrefix+\"x\"]=a,n[e._propPrefix+\"y\"]=i,void 0!==e._traceIndex?o.call(\"_guiRestyle\",r,n,e._traceIndex):o.call(\"_guiRelayout\",r,n)}}})}(r,e,t)})),e.exit().each((function(e){i.autoMargin(t,e._id)})).remove(),e.order()}}},{\"../../constants/alignment\":697,\"../../lib\":728,\"../../lib/extend\":719,\"../../lib/setcursor\":748,\"../../lib/svg_text_utils\":752,\"../../plots/cartesian/axes\":776,\"../../plots/cartesian/axis_defaults\":778,\"../../plots/cartesian/layout_attributes\":790,\"../../plots/cartesian/position_defaults\":793,\"../../plots/plots\":839,\"../../registry\":859,\"../color\":595,\"../colorscale/helpers\":606,\"../dragelement\":614,\"../drawing\":617,\"../titles\":690,\"./constants\":597,d3:164,tinycolor2:528}],600:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t){return n.isPlainObject(t.colorbar)}},{\"../../lib\":728}],601:[function(t,e,r){\"use strict\";e.exports={moduleType:\"component\",name:\"colorbar\",attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),draw:t(\"./draw\").draw,hasColorbar:t(\"./has_colorbar\")}},{\"./attributes\":596,\"./defaults\":598,\"./draw\":599,\"./has_colorbar\":600}],602:[function(t,e,r){\"use strict\";var n=t(\"../colorbar/attributes\"),a=t(\"../../lib/regex\").counter,i=t(\"./scales.js\").scales;Object.keys(i);function o(t){return\"`\"+t+\"`\"}e.exports=function(t,e){t=t||\"\";var r,s=(e=e||{}).cLetter||\"c\",l=(\"onlyIfNumerical\"in e?e.onlyIfNumerical:Boolean(t),\"noScale\"in e?e.noScale:\"marker.line\"===t),c=\"showScaleDflt\"in e?e.showScaleDflt:\"z\"===s,u=\"string\"==typeof e.colorscaleDflt?i[e.colorscaleDflt]:null,h=e.editTypeOverride||\"\",f=t?t+\".\":\"\";\"colorAttr\"in e?(r=e.colorAttr,e.colorAttr):o(f+(r={z:\"z\",c:\"color\"}[s]));var p=s+\"auto\",d=s+\"min\",g=s+\"max\",m=s+\"mid\",v=(o(f+p),o(f+d),o(f+g),{});v[d]=v[g]=void 0;var y={};y[p]=!1;var x={};return\"color\"===r&&(x.color={valType:\"color\",arrayOk:!0,editType:h||\"style\"},e.anim&&(x.color.anim=!0)),x[p]={valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:v},x[d]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:y},x[g]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:y},x[m]={valType:\"number\",dflt:null,editType:\"calc\",impliedEdits:v},x.colorscale={valType:\"colorscale\",editType:\"calc\",dflt:u,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:\"boolean\",dflt:!1!==e.autoColorDflt,editType:\"calc\",impliedEdits:{colorscale:void 0}},x.reversescale={valType:\"boolean\",dflt:!1,editType:\"plot\"},l||(x.showscale={valType:\"boolean\",dflt:c,editType:\"calc\"},x.colorbar=n),e.noColorAxis||(x.coloraxis={valType:\"subplotid\",regex:a(\"coloraxis\"),dflt:null,editType:\"calc\"}),x}},{\"../../lib/regex\":744,\"../colorbar/attributes\":596,\"./scales.js\":610}],603:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"./helpers\").extractOpts;e.exports=function(t,e,r){var o,s=t._fullLayout,l=r.vals,c=r.containerStr,u=c?a.nestedProperty(e,c).get():e,h=i(u),f=!1!==h.auto,p=h.min,d=h.max,g=h.mid,m=function(){return a.aggNums(Math.min,null,l)},v=function(){return a.aggNums(Math.max,null,l)};(void 0===p?p=m():f&&(p=u._colorAx&&n(p)?Math.min(p,m()):m()),void 0===d?d=v():f&&(d=u._colorAx&&n(d)?Math.max(d,v()):v()),f&&void 0!==g&&(d-g>g-p?p=g-(d-g):d-g=0?s.colorscale.sequential:s.colorscale.sequentialminus,h._sync(\"colorscale\",o))}},{\"../../lib\":728,\"./helpers\":606,\"fast-isnumeric\":236}],604:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./helpers\").hasColorscale,i=t(\"./helpers\").extractOpts;e.exports=function(t,e){function r(t,e){var r=t[\"_\"+e];void 0!==r&&(t[e]=r)}function o(t,a){var o=a.container?n.nestedProperty(t,a.container).get():t;if(o)if(o.coloraxis)o._colorAx=e[o.coloraxis];else{var s=i(o),l=s.auto;(l||void 0===s.min)&&r(o,a.min),(l||void 0===s.max)&&r(o,a.max),s.autocolorscale&&r(o,\"colorscale\")}}for(var s=0;s=0;n--,a++){var i=t[n];r[a]=[1-i[0],i[1]]}return r}function d(t,e){e=e||{};for(var r=t.domain,o=t.range,l=o.length,c=new Array(l),u=0;u4/3-s?o:s}},{}],612:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=[[\"sw-resize\",\"s-resize\",\"se-resize\"],[\"w-resize\",\"move\",\"e-resize\"],[\"nw-resize\",\"n-resize\",\"ne-resize\"]];e.exports=function(t,e,r,i){return t=\"left\"===r?0:\"center\"===r?1:\"right\"===r?2:n.constrain(Math.floor(3*t),0,2),e=\"bottom\"===i?0:\"middle\"===i?1:\"top\"===i?2:n.constrain(Math.floor(3*e),0,2),a[e][t]}},{\"../../lib\":728}],613:[function(t,e,r){\"use strict\";r.selectMode=function(t){return\"lasso\"===t||\"select\"===t},r.drawMode=function(t){return\"drawclosedpath\"===t||\"drawopenpath\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},r.openMode=function(t){return\"drawline\"===t||\"drawopenpath\"===t},r.rectMode=function(t){return\"select\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},r.freeMode=function(t){return\"lasso\"===t||\"drawclosedpath\"===t||\"drawopenpath\"===t},r.selectingOrDrawing=function(t){return r.freeMode(t)||r.rectMode(t)}},{}],614:[function(t,e,r){\"use strict\";var n=t(\"mouse-event-offset\"),a=t(\"has-hover\"),i=t(\"has-passive-events\"),o=t(\"../../lib\").removeElement,s=t(\"../../plots/cartesian/constants\"),l=e.exports={};l.align=t(\"./align\"),l.getCursor=t(\"./cursor\");var c=t(\"./unhover\");function u(){var t=document.createElement(\"div\");t.className=\"dragcover\";var e=t.style;return e.position=\"fixed\",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background=\"none\",document.body.appendChild(t),t}function h(t){return n(t.changedTouches?t.changedTouches[0]:t,document.body)}l.unhover=c.wrapped,l.unhoverRaw=c.raw,l.init=function(t){var e,r,n,c,f,p,d,g,m=t.gd,v=1,y=m._context.doubleClickDelay,x=t.element;m._mouseDownTime||(m._mouseDownTime=0),x.style.pointerEvents=\"all\",x.onmousedown=_,i?(x._ontouchstart&&x.removeEventListener(\"touchstart\",x._ontouchstart),x._ontouchstart=_,x.addEventListener(\"touchstart\",_,{passive:!1})):x.ontouchstart=_;var b=t.clampFn||function(t,e,r){return Math.abs(t)y&&(v=Math.max(v-1,1)),m._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(v,p),!g){var r;try{r=new MouseEvent(\"click\",e)}catch(t){var n=h(e);(r=document.createEvent(\"MouseEvents\")).initMouseEvent(\"click\",e.bubbles,e.cancelable,e.view,e.detail,e.screenX,e.screenY,n[0],n[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget)}d.dispatchEvent(r)}m._dragging=!1,m._dragged=!1}else m._dragged=!1}},l.coverSlip=u},{\"../../lib\":728,\"../../plots/cartesian/constants\":782,\"./align\":611,\"./cursor\":612,\"./unhover\":615,\"has-hover\":409,\"has-passive-events\":410,\"mouse-event-offset\":437}],615:[function(t,e,r){\"use strict\";var n=t(\"../../lib/events\"),a=t(\"../../lib/throttle\"),i=t(\"../../lib/dom\").getGraphDiv,o=t(\"../fx/constants\"),s=e.exports={};s.wrapped=function(t,e,r){(t=i(t))._fullLayout&&a.clear(t._fullLayout._uid+o.HOVERID),s.raw(t,e,r)},s.raw=function(t,e){var r=t._fullLayout,a=t._hoverdata;e||(e={}),e.target&&!1===n.triggerHandler(t,\"plotly_beforehover\",e)||(r._hoverlayer.selectAll(\"g\").remove(),r._hoverlayer.selectAll(\"line\").remove(),r._hoverlayer.selectAll(\"circle\").remove(),t._hoverdata=void 0,e.target&&a&&t.emit(\"plotly_unhover\",{event:e,points:a}))}},{\"../../lib/dom\":717,\"../../lib/events\":718,\"../../lib/throttle\":753,\"../fx/constants\":629}],616:[function(t,e,r){\"use strict\";r.dash={valType:\"string\",values:[\"solid\",\"dot\",\"dash\",\"longdash\",\"dashdot\",\"longdashdot\"],dflt:\"solid\",editType:\"style\"}},{}],617:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"tinycolor2\"),o=t(\"../../registry\"),s=t(\"../color\"),l=t(\"../colorscale\"),c=t(\"../../lib\"),u=t(\"../../lib/svg_text_utils\"),h=t(\"../../constants/xmlns_namespaces\"),f=t(\"../../constants/alignment\").LINE_SPACING,p=t(\"../../constants/interactions\").DESELECTDIM,d=t(\"../../traces/scatter/subtypes\"),g=t(\"../../traces/scatter/make_bubble_size_func\"),m=t(\"../../components/fx/helpers\").appendArrayPointValue,v=e.exports={};v.font=function(t,e,r,n){c.isPlainObject(e)&&(n=e.color,r=e.size,e=e.family),e&&t.style(\"font-family\",e),r+1&&t.style(\"font-size\",r+\"px\"),n&&t.call(s.fill,n)},v.setPosition=function(t,e,r){t.attr(\"x\",e).attr(\"y\",r)},v.setSize=function(t,e,r){t.attr(\"width\",e).attr(\"height\",r)},v.setRect=function(t,e,r,n,a){t.call(v.setPosition,e,r).call(v.setSize,n,a)},v.translatePoint=function(t,e,r,n){var i=r.c2p(t.x),o=n.c2p(t.y);return!!(a(i)&&a(o)&&e.node())&&(\"text\"===e.node().nodeName?e.attr(\"x\",i).attr(\"y\",o):e.attr(\"transform\",\"translate(\"+i+\",\"+o+\")\"),!0)},v.translatePoints=function(t,e,r){t.each((function(t){var a=n.select(this);v.translatePoint(t,a,e,r)}))},v.hideOutsideRangePoint=function(t,e,r,n,a,i){e.attr(\"display\",r.isPtWithinRange(t,a)&&n.isPtWithinRange(t,i)?null:\"none\")},v.hideOutsideRangePoints=function(t,e){if(e._hasClipOnAxisFalse){var r=e.xaxis,a=e.yaxis;t.each((function(e){var i=e[0].trace,s=i.xcalendar,l=i.ycalendar,c=o.traceIs(i,\"bar-like\")?\".bartext\":\".point,.textpoint\";t.selectAll(c).each((function(t){v.hideOutsideRangePoint(t,n.select(this),r,a,s,l)}))}))}},v.crispRound=function(t,e,r){return e&&a(e)?t._context.staticPlot?e:e<1?1:Math.round(e):r||0},v.singleLineStyle=function(t,e,r,n,a){e.style(\"fill\",\"none\");var i=(((t||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||\"\";s.stroke(e,n||i.color),v.dashLine(e,l,o)},v.lineGroupStyle=function(t,e,r,a){t.style(\"fill\",\"none\").each((function(t){var i=(((t||[])[0]||{}).trace||{}).line||{},o=e||i.width||0,l=a||i.dash||\"\";n.select(this).call(s.stroke,r||i.color).call(v.dashLine,l,o)}))},v.dashLine=function(t,e,r){r=+r||0,e=v.dashStyle(e,r),t.style({\"stroke-dasharray\":e,\"stroke-width\":r+\"px\"})},v.dashStyle=function(t,e){e=+e||1;var r=Math.max(e,3);return\"solid\"===t?t=\"\":\"dot\"===t?t=r+\"px,\"+r+\"px\":\"dash\"===t?t=3*r+\"px,\"+3*r+\"px\":\"longdash\"===t?t=5*r+\"px,\"+5*r+\"px\":\"dashdot\"===t?t=3*r+\"px,\"+r+\"px,\"+r+\"px,\"+r+\"px\":\"longdashdot\"===t&&(t=5*r+\"px,\"+2*r+\"px,\"+r+\"px,\"+2*r+\"px\"),t},v.singleFillStyle=function(t){var e=(((n.select(t.node()).data()[0]||[])[0]||{}).trace||{}).fillcolor;e&&t.call(s.fill,e)},v.fillGroupStyle=function(t){t.style(\"stroke-width\",0).each((function(t){var e=n.select(this);t[0].trace&&e.call(s.fill,t[0].trace.fillcolor)}))};var y=t(\"./symbol_defs\");v.symbolNames=[],v.symbolFuncs=[],v.symbolNeedLines={},v.symbolNoDot={},v.symbolNoFill={},v.symbolList=[],Object.keys(y).forEach((function(t){var e=y[t],r=e.n;v.symbolList.push(r,t,r+100,t+\"-open\"),v.symbolNames[r]=t,v.symbolFuncs[r]=e.f,e.needLine&&(v.symbolNeedLines[r]=!0),e.noDot?v.symbolNoDot[r]=!0:v.symbolList.push(r+200,t+\"-dot\",r+300,t+\"-open-dot\"),e.noFill&&(v.symbolNoFill[r]=!0)}));var x=v.symbolNames.length;function b(t,e){var r=t%100;return v.symbolFuncs[r](e)+(t>=200?\"M0,0.5L0.5,0L0,-0.5L-0.5,0Z\":\"\")}v.symbolNumber=function(t){if(\"string\"==typeof t){var e=0;t.indexOf(\"-open\")>0&&(e=100,t=t.replace(\"-open\",\"\")),t.indexOf(\"-dot\")>0&&(e+=200,t=t.replace(\"-dot\",\"\")),(t=v.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=x||t>=400?0:Math.floor(Math.max(t,0))};var _={x1:1,x2:0,y1:0,y2:0},w={x1:0,x2:0,y1:1,y2:0},T=n.format(\"~.1f\"),k={radial:{node:\"radialGradient\"},radialreversed:{node:\"radialGradient\",reversed:!0},horizontal:{node:\"linearGradient\",attrs:_},horizontalreversed:{node:\"linearGradient\",attrs:_,reversed:!0},vertical:{node:\"linearGradient\",attrs:w},verticalreversed:{node:\"linearGradient\",attrs:w,reversed:!0}};v.gradient=function(t,e,r,a,o,l){for(var u=o.length,h=k[a],f=new Array(u),p=0;p\"+v(t);d._gradientUrlQueryParts[y]=1},v.initGradients=function(t){var e=t._fullLayout;c.ensureSingle(e._defs,\"g\",\"gradients\").selectAll(\"linearGradient,radialGradient\").remove(),e._gradientUrlQueryParts={}},v.pointStyle=function(t,e,r){if(t.size()){var a=v.makePointStyleFns(e);t.each((function(t){v.singlePointStyle(t,n.select(this),e,a,r)}))}},v.singlePointStyle=function(t,e,r,n,a){var i=r.marker,o=i.line;if(e.style(\"opacity\",n.selectedOpacityFn?n.selectedOpacityFn(t):void 0===t.mo?i.opacity:t.mo),n.ms2mrc){var l;l=\"various\"===t.ms||\"various\"===i.size?3:n.ms2mrc(t.ms),t.mrc=l,n.selectedSizeFn&&(l=t.mrc=n.selectedSizeFn(t));var u=v.symbolNumber(t.mx||i.symbol)||0;t.om=u%200>=100,e.attr(\"d\",b(u,l))}var h,f,p,d=!1;if(t.so)p=o.outlierwidth,f=o.outliercolor,h=i.outliercolor;else{var g=(o||{}).width;p=(t.mlw+1||g+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,f=\"mlc\"in t?t.mlcc=n.lineScale(t.mlc):c.isArrayOrTypedArray(o.color)?s.defaultLine:o.color,c.isArrayOrTypedArray(i.color)&&(h=s.defaultLine,d=!0),h=\"mc\"in t?t.mcc=n.markerScale(t.mc):i.color||\"rgba(0,0,0,0)\",n.selectedColorFn&&(h=n.selectedColorFn(t))}if(t.om)e.call(s.stroke,h).style({\"stroke-width\":(p||1)+\"px\",fill:\"none\"});else{e.style(\"stroke-width\",(t.isBlank?0:p)+\"px\");var m=i.gradient,y=t.mgt;if(y?d=!0:y=m&&m.type,Array.isArray(y)&&(y=y[0],k[y]||(y=0)),y&&\"none\"!==y){var x=t.mgc;x?d=!0:x=m.color;var _=r.uid;d&&(_+=\"-\"+t.i),v.gradient(e,a,_,y,[[0,x],[1,h]],\"fill\")}else s.fill(e,h);p&&s.stroke(e,f)}},v.makePointStyleFns=function(t){var e={},r=t.marker;return e.markerScale=v.tryColorscale(r,\"\"),e.lineScale=v.tryColorscale(r,\"line\"),o.traceIs(t,\"symbols\")&&(e.ms2mrc=d.isBubble(t)?g(t):function(){return(r.size||6)/2}),t.selectedpoints&&c.extendFlat(e,v.makeSelectedPointStyleFns(t)),e},v.makeSelectedPointStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.marker||{},i=r.marker||{},s=n.marker||{},l=a.opacity,u=i.opacity,h=s.opacity,f=void 0!==u,d=void 0!==h;(c.isArrayOrTypedArray(l)||f||d)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?f?u:e:d?h:p*e});var g=a.color,m=i.color,v=s.color;(m||v)&&(e.selectedColorFn=function(t){var e=t.mcc||g;return t.selected?m||e:v||e});var y=a.size,x=i.size,b=s.size,_=void 0!==x,w=void 0!==b;return o.traceIs(t,\"symbols\")&&(_||w)&&(e.selectedSizeFn=function(t){var e=t.mrc||y/2;return t.selected?_?x/2:e:w?b/2:e}),e},v.makeSelectedTextStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.textfont||{},i=r.textfont||{},o=n.textfont||{},l=a.color,c=i.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||l;return t.selected?c||e:u||(c?e:s.addOpacity(e,p))},e},v.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedPointStyleFns(e),a=e.marker||{},i=[];r.selectedOpacityFn&&i.push((function(t,e){t.style(\"opacity\",r.selectedOpacityFn(e))})),r.selectedColorFn&&i.push((function(t,e){s.fill(t,r.selectedColorFn(e))})),r.selectedSizeFn&&i.push((function(t,e){var n=e.mx||a.symbol||0,i=r.selectedSizeFn(e);t.attr(\"d\",b(v.symbolNumber(n),i)),e.mrc2=i})),i.length&&t.each((function(t){for(var e=n.select(this),r=0;r0?r:0}v.textPointStyle=function(t,e,r){if(t.size()){var a;if(e.selectedpoints){var i=v.makeSelectedTextStyleFns(e);a=i.selectedTextColorFn}var o=e.texttemplate,s=r._fullLayout;t.each((function(t){var i=n.select(this),l=o?c.extractOption(t,e,\"txt\",\"texttemplate\"):c.extractOption(t,e,\"tx\",\"text\");if(l||0===l){if(o){var h=e._module.formatLabels?e._module.formatLabels(t,e,s):{},f={};m(f,e,t.i);var p=e._meta||{};l=c.texttemplateString(l,h,s._d3locale,f,t,p)}var d=t.tp||e.textposition,g=S(t,e),y=a?a(t):t.tc||e.textfont.color;i.call(v.font,t.tf||e.textfont.family,g,y).text(l).call(u.convertToTspans,r).call(M,d,g,t.mrc)}else i.remove()}))}},v.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedTextStyleFns(e);t.each((function(t){var a=n.select(this),i=r.selectedTextColorFn(t),o=t.tp||e.textposition,l=S(t,e);s.fill(a,i),M(a,o,l,t.mrc2||t.mrc)}))}};function E(t,e,r,a){var i=t[0]-e[0],o=t[1]-e[1],s=r[0]-e[0],l=r[1]-e[1],c=Math.pow(i*i+o*o,.25),u=Math.pow(s*s+l*l,.25),h=(u*u*i-c*c*s)*a,f=(u*u*o-c*c*l)*a,p=3*u*(c+u),d=3*c*(c+u);return[[n.round(e[0]+(p&&h/p),2),n.round(e[1]+(p&&f/p),2)],[n.round(e[0]-(d&&h/d),2),n.round(e[1]-(d&&f/d),2)]]}v.smoothopen=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\");var r,n=\"M\"+t[0],a=[];for(r=1;r=1e4&&(v.savedBBoxes={},P=0),r&&(v.savedBBoxes[r]=m),P++,c.extendFlat({},m)},v.setClipUrl=function(t,e,r){t.attr(\"clip-path\",z(e,r))},v.getTranslate=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\btranslate\\((-?\\d*\\.?\\d*)[^-\\d]*(-?\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||0,y:+e[1]||0}},v.setTranslate=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",a=t.attr?\"attr\":\"setAttribute\",i=t[n](\"transform\")||\"\";return e=e||0,r=r||0,i=i.replace(/(\\btranslate\\(.*?\\);?)/,\"\").trim(),i=(i+=\" translate(\"+e+\", \"+r+\")\").trim(),t[a](\"transform\",i),i},v.getScale=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\bscale\\((\\d*\\.?\\d*)[^\\d]*(\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||1,y:+e[1]||1}},v.setScale=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",a=t.attr?\"attr\":\"setAttribute\",i=t[n](\"transform\")||\"\";return e=e||1,r=r||1,i=i.replace(/(\\bscale\\(.*?\\);?)/,\"\").trim(),i=(i+=\" scale(\"+e+\", \"+r+\")\").trim(),t[a](\"transform\",i),i};var O=/\\s*sc.*/;v.setPointGroupScale=function(t,e,r){if(e=e||1,r=r||1,t){var n=1===e&&1===r?\"\":\" scale(\"+e+\",\"+r+\")\";t.each((function(){var t=(this.getAttribute(\"transform\")||\"\").replace(O,\"\");t=(t+=n).trim(),this.setAttribute(\"transform\",t)}))}};var D=/translate\\([^)]*\\)\\s*$/;v.setTextPointsScale=function(t,e,r){t&&t.each((function(){var t,a=n.select(this),i=a.select(\"text\");if(i.node()){var o=parseFloat(i.attr(\"x\")||0),s=parseFloat(i.attr(\"y\")||0),l=(a.attr(\"transform\")||\"\").match(D);t=1===e&&1===r?[]:[\"translate(\"+o+\",\"+s+\")\",\"scale(\"+e+\",\"+r+\")\",\"translate(\"+-o+\",\"+-s+\")\"],l&&t.push(l),a.attr(\"transform\",t.join(\" \"))}}))}},{\"../../components/fx/helpers\":631,\"../../constants/alignment\":697,\"../../constants/interactions\":703,\"../../constants/xmlns_namespaces\":705,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../registry\":859,\"../../traces/scatter/make_bubble_size_func\":1151,\"../../traces/scatter/subtypes\":1158,\"../color\":595,\"../colorscale\":607,\"./symbol_defs\":618,d3:164,\"fast-isnumeric\":236,tinycolor2:528}],618:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports={circle:{n:0,f:function(t){var e=n.round(t,2);return\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"}},square:{n:1,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"}},diamond:{n:2,f:function(t){var e=n.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"Z\"}},cross:{n:3,f:function(t){var e=n.round(.4*t,2),r=n.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H\"+e+\"V\"+r+\"H-\"+e+\"V\"+e+\"H-\"+r+\"V-\"+e+\"H-\"+e+\"V-\"+r+\"H\"+e+\"V-\"+e+\"H\"+r+\"Z\"}},x:{n:4,f:function(t){var e=n.round(.8*t/Math.sqrt(2),2),r=\"l\"+e+\",\"+e,a=\"l\"+e+\",-\"+e,i=\"l-\"+e+\",-\"+e,o=\"l-\"+e+\",\"+e;return\"M0,\"+e+r+a+i+a+i+o+i+o+r+o+r+\"Z\"}},\"triangle-up\":{n:5,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+e+\",\"+n.round(t/2,2)+\"H\"+e+\"L0,-\"+n.round(t,2)+\"Z\"}},\"triangle-down\":{n:6,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+e+\",-\"+n.round(t/2,2)+\"H\"+e+\"L0,\"+n.round(t,2)+\"Z\"}},\"triangle-left\":{n:7,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M\"+n.round(t/2,2)+\",-\"+e+\"V\"+e+\"L-\"+n.round(t,2)+\",0Z\"}},\"triangle-right\":{n:8,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return\"M-\"+n.round(t/2,2)+\",-\"+e+\"V\"+e+\"L\"+n.round(t,2)+\",0Z\"}},\"triangle-ne\":{n:9,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M-\"+r+\",-\"+e+\"H\"+e+\"V\"+r+\"Z\"}},\"triangle-se\":{n:10,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M\"+e+\",-\"+r+\"V\"+e+\"H-\"+r+\"Z\"}},\"triangle-sw\":{n:11,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M\"+r+\",\"+e+\"H-\"+e+\"V-\"+r+\"Z\"}},\"triangle-nw\":{n:12,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return\"M-\"+e+\",\"+r+\"V-\"+e+\"H\"+r+\"Z\"}},pentagon:{n:13,f:function(t){var e=n.round(.951*t,2),r=n.round(.588*t,2),a=n.round(-t,2),i=n.round(-.309*t,2);return\"M\"+e+\",\"+i+\"L\"+r+\",\"+n.round(.809*t,2)+\"H-\"+r+\"L-\"+e+\",\"+i+\"L0,\"+a+\"Z\"}},hexagon:{n:14,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return\"M\"+a+\",-\"+r+\"V\"+r+\"L0,\"+e+\"L-\"+a+\",\"+r+\"V-\"+r+\"L0,-\"+e+\"Z\"}},hexagon2:{n:15,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return\"M-\"+r+\",\"+a+\"H\"+r+\"L\"+e+\",0L\"+r+\",-\"+a+\"H-\"+r+\"L-\"+e+\",0Z\"}},octagon:{n:16,f:function(t){var e=n.round(.924*t,2),r=n.round(.383*t,2);return\"M-\"+r+\",-\"+e+\"H\"+r+\"L\"+e+\",-\"+r+\"V\"+r+\"L\"+r+\",\"+e+\"H-\"+r+\"L-\"+e+\",\"+r+\"V-\"+r+\"Z\"}},star:{n:17,f:function(t){var e=1.4*t,r=n.round(.225*e,2),a=n.round(.951*e,2),i=n.round(.363*e,2),o=n.round(.588*e,2),s=n.round(-e,2),l=n.round(-.309*e,2),c=n.round(.118*e,2),u=n.round(.809*e,2);return\"M\"+r+\",\"+l+\"H\"+a+\"L\"+i+\",\"+c+\"L\"+o+\",\"+u+\"L0,\"+n.round(.382*e,2)+\"L-\"+o+\",\"+u+\"L-\"+i+\",\"+c+\"L-\"+a+\",\"+l+\"H-\"+r+\"L0,\"+s+\"Z\"}},hexagram:{n:18,f:function(t){var e=n.round(.66*t,2),r=n.round(.38*t,2),a=n.round(.76*t,2);return\"M-\"+a+\",0l-\"+r+\",-\"+e+\"h\"+a+\"l\"+r+\",-\"+e+\"l\"+r+\",\"+e+\"h\"+a+\"l-\"+r+\",\"+e+\"l\"+r+\",\"+e+\"h-\"+a+\"l-\"+r+\",\"+e+\"l-\"+r+\",-\"+e+\"h-\"+a+\"Z\"}},\"star-triangle-up\":{n:19,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M-\"+e+\",\"+r+o+e+\",\"+r+o+\"0,-\"+a+o+\"-\"+e+\",\"+r+\"Z\"}},\"star-triangle-down\":{n:20,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o=\"A \"+i+\",\"+i+\" 0 0 1 \";return\"M\"+e+\",-\"+r+o+\"-\"+e+\",-\"+r+o+\"0,\"+a+o+e+\",-\"+r+\"Z\"}},\"star-square\":{n:21,f:function(t){var e=n.round(1.1*t,2),r=n.round(2*t,2),a=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",-\"+e+a+\"-\"+e+\",\"+e+a+e+\",\"+e+a+e+\",-\"+e+a+\"-\"+e+\",-\"+e+\"Z\"}},\"star-diamond\":{n:22,f:function(t){var e=n.round(1.4*t,2),r=n.round(1.9*t,2),a=\"A \"+r+\",\"+r+\" 0 0 1 \";return\"M-\"+e+\",0\"+a+\"0,\"+e+a+e+\",0\"+a+\"0,-\"+e+a+\"-\"+e+\",0Z\"}},\"diamond-tall\":{n:23,f:function(t){var e=n.round(.7*t,2),r=n.round(1.4*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},\"diamond-wide\":{n:24,f:function(t){var e=n.round(1.4*t,2),r=n.round(.7*t,2);return\"M0,\"+r+\"L\"+e+\",0L0,-\"+r+\"L-\"+e+\",0Z\"}},hourglass:{n:25,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"H-\"+e+\"L\"+e+\",-\"+e+\"H-\"+e+\"Z\"},noDot:!0},bowtie:{n:26,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"V-\"+e+\"L-\"+e+\",\"+e+\"V-\"+e+\"Z\"},noDot:!0},\"circle-cross\":{n:27,f:function(t){var e=n.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"circle-x\":{n:28,f:function(t){var e=n.round(t,2),r=n.round(t/Math.sqrt(2),2);return\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r+\"M\"+e+\",0A\"+e+\",\"+e+\" 0 1,1 0,-\"+e+\"A\"+e+\",\"+e+\" 0 0,1 \"+e+\",0Z\"},needLine:!0,noDot:!0},\"square-cross\":{n:29,f:function(t){var e=n.round(t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"square-x\":{n:30,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e+\"M\"+e+\",\"+e+\"H-\"+e+\"V-\"+e+\"H\"+e+\"Z\"},needLine:!0,noDot:!0},\"diamond-cross\":{n:31,f:function(t){var e=n.round(1.3*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM0,-\"+e+\"V\"+e+\"M-\"+e+\",0H\"+e},needLine:!0,noDot:!0},\"diamond-x\":{n:32,f:function(t){var e=n.round(1.3*t,2),r=n.round(.65*t,2);return\"M\"+e+\",0L0,\"+e+\"L-\"+e+\",0L0,-\"+e+\"ZM-\"+r+\",-\"+r+\"L\"+r+\",\"+r+\"M-\"+r+\",\"+r+\"L\"+r+\",-\"+r},needLine:!0,noDot:!0},\"cross-thin\":{n:33,f:function(t){var e=n.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0,noFill:!0},\"x-thin\":{n:34,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e+\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(t){var e=n.round(1.2*t,2),r=n.round(.85*t,2);return\"M0,\"+e+\"V-\"+e+\"M\"+e+\",0H-\"+e+\"M\"+r+\",\"+r+\"L-\"+r+\",-\"+r+\"M\"+r+\",-\"+r+\"L-\"+r+\",\"+r},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(t){var e=n.round(t/2,2),r=n.round(t,2);return\"M\"+e+\",\"+r+\"V-\"+r+\"m-\"+r+\",0V\"+r+\"M\"+r+\",\"+e+\"H-\"+r+\"m0,-\"+r+\"H\"+r},needLine:!0,noFill:!0},\"y-up\":{n:37,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+e+\",\"+a+\"L0,0M\"+e+\",\"+a+\"L0,0M0,-\"+r+\"L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-down\":{n:38,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+e+\",-\"+a+\"L0,0M\"+e+\",-\"+a+\"L0,0M0,\"+r+\"L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-left\":{n:39,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M\"+a+\",\"+e+\"L0,0M\"+a+\",-\"+e+\"L0,0M-\"+r+\",0L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"y-right\":{n:40,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return\"M-\"+a+\",\"+e+\"L0,0M-\"+a+\",-\"+e+\"L0,0M\"+r+\",0L0,0\"},needLine:!0,noDot:!0,noFill:!0},\"line-ew\":{n:41,f:function(t){var e=n.round(1.4*t,2);return\"M\"+e+\",0H-\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-ns\":{n:42,f:function(t){var e=n.round(1.4*t,2);return\"M0,\"+e+\"V-\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-ne\":{n:43,f:function(t){var e=n.round(t,2);return\"M\"+e+\",-\"+e+\"L-\"+e+\",\"+e},needLine:!0,noDot:!0,noFill:!0},\"line-nw\":{n:44,f:function(t){var e=n.round(t,2);return\"M\"+e+\",\"+e+\"L-\"+e+\",-\"+e},needLine:!0,noDot:!0,noFill:!0}}},{d3:164}],619:[function(t,e,r){\"use strict\";e.exports={visible:{valType:\"boolean\",editType:\"calc\"},type:{valType:\"enumerated\",values:[\"percent\",\"constant\",\"sqrt\",\"data\"],editType:\"calc\"},symmetric:{valType:\"boolean\",editType:\"calc\"},array:{valType:\"data_array\",editType:\"calc\"},arrayminus:{valType:\"data_array\",editType:\"calc\"},value:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},valueminus:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},traceref:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},tracerefminus:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},copy_ystyle:{valType:\"boolean\",editType:\"plot\"},copy_zstyle:{valType:\"boolean\",editType:\"style\"},color:{valType:\"color\",editType:\"style\"},thickness:{valType:\"number\",min:0,dflt:2,editType:\"style\"},width:{valType:\"number\",min:0,editType:\"plot\"},editType:\"calc\",_deprecated:{opacity:{valType:\"number\",editType:\"style\"}}}},{}],620:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../registry\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../lib\"),s=t(\"./compute_error\");function l(t,e,r,a){var l=e[\"error_\"+a]||{},c=[];if(l.visible&&-1!==[\"linear\",\"log\"].indexOf(r.type)){for(var u=s(l),h=0;h0;e.each((function(e){var h,f=e[0].trace,p=f.error_x||{},d=f.error_y||{};f.ids&&(h=function(t){return t.id});var g=o.hasMarkers(f)&&f.marker.maxdisplayed>0;d.visible||p.visible||(e=[]);var m=n.select(this).selectAll(\"g.errorbar\").data(e,h);if(m.exit().remove(),e.length){p.visible||m.selectAll(\"path.xerror\").remove(),d.visible||m.selectAll(\"path.yerror\").remove(),m.style(\"opacity\",1);var v=m.enter().append(\"g\").classed(\"errorbar\",!0);u&&v.style(\"opacity\",0).transition().duration(s.duration).style(\"opacity\",1),i.setClipUrl(m,r.layerClipId,t),m.each((function(t){var e=n.select(this),r=function(t,e,r){var n={x:e.c2p(t.x),y:r.c2p(t.y)};void 0!==t.yh&&(n.yh=r.c2p(t.yh),n.ys=r.c2p(t.ys),a(n.ys)||(n.noYS=!0,n.ys=r.c2p(t.ys,!0)));void 0!==t.xh&&(n.xh=e.c2p(t.xh),n.xs=e.c2p(t.xs),a(n.xs)||(n.noXS=!0,n.xs=e.c2p(t.xs,!0)));return n}(t,l,c);if(!g||t.vis){var i,o=e.select(\"path.yerror\");if(d.visible&&a(r.x)&&a(r.yh)&&a(r.ys)){var h=d.width;i=\"M\"+(r.x-h)+\",\"+r.yh+\"h\"+2*h+\"m-\"+h+\",0V\"+r.ys,r.noYS||(i+=\"m-\"+h+\",0h\"+2*h),!o.size()?o=e.append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").classed(\"yerror\",!0):u&&(o=o.transition().duration(s.duration).ease(s.easing)),o.attr(\"d\",i)}else o.remove();var f=e.select(\"path.xerror\");if(p.visible&&a(r.y)&&a(r.xh)&&a(r.xs)){var m=(p.copy_ystyle?d:p).width;i=\"M\"+r.xh+\",\"+(r.y-m)+\"v\"+2*m+\"m0,-\"+m+\"H\"+r.xs,r.noXS||(i+=\"m0,-\"+m+\"v\"+2*m),!f.size()?f=e.append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").classed(\"xerror\",!0):u&&(f=f.transition().duration(s.duration).ease(s.easing)),f.attr(\"d\",i)}else f.remove()}}))}}))}},{\"../../traces/scatter/subtypes\":1158,\"../drawing\":617,d3:164,\"fast-isnumeric\":236}],625:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../color\");e.exports=function(t){t.each((function(t){var e=t[0].trace,r=e.error_y||{},i=e.error_x||{},o=n.select(this);o.selectAll(\"path.yerror\").style(\"stroke-width\",r.thickness+\"px\").call(a.stroke,r.color),i.copy_ystyle&&(i=r),o.selectAll(\"path.xerror\").style(\"stroke-width\",i.thickness+\"px\").call(a.stroke,i.color)}))}},{\"../color\":595,d3:164}],626:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"./layout_attributes\").hoverlabel,i=t(\"../../lib/extend\").extendFlat;e.exports={hoverlabel:{bgcolor:i({},a.bgcolor,{arrayOk:!0}),bordercolor:i({},a.bordercolor,{arrayOk:!0}),font:n({arrayOk:!0,editType:\"none\"}),align:i({},a.align,{arrayOk:!0}),namelength:i({},a.namelength,{arrayOk:!0}),editType:\"none\"}}},{\"../../lib/extend\":719,\"../../plots/font_attributes\":804,\"./layout_attributes\":636}],627:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\");function i(t,e,r,a){a=a||n.identity,Array.isArray(t)&&(e[0][r]=a(t))}e.exports=function(t){var e=t.calcdata,r=t._fullLayout;function o(t){return function(e){return n.coerceHoverinfo({hoverinfo:e},{_module:t._module},r)}}for(var s=0;s=0&&r.indexb[0]._length||tt<0||tt>w[0]._length)return f.unhoverRaw(t,e)}if(e.pointerX=$+b[0]._offset,e.pointerY=tt+w[0]._offset,O=\"xval\"in e?g.flat(l,e.xval):g.p2c(b,$),D=\"yval\"in e?g.flat(l,e.yval):g.p2c(w,tt),!a(O[0])||!a(D[0]))return o.warn(\"Fx.hover failed\",e,t),f.unhoverRaw(t,e)}var rt=1/0;function nt(t,r){for(F=0;FY&&(X.splice(0,Y),rt=X[0].distance),v&&0!==Z&&0===X.length){G.distance=Z,G.index=!1;var f=N._module.hoverPoints(G,q,H,\"closest\",u._hoverlayer);if(f&&(f=f.filter((function(t){return t.spikeDistance<=Z}))),f&&f.length){var p,d=f.filter((function(t){return t.xa.showspikes&&\"hovered data\"!==t.xa.spikesnap}));if(d.length){var m=d[0];a(m.x0)&&a(m.y0)&&(p=it(m),(!K.vLinePoint||K.vLinePoint.spikeDistance>p.spikeDistance)&&(K.vLinePoint=p))}var y=f.filter((function(t){return t.ya.showspikes&&\"hovered data\"!==t.ya.spikesnap}));if(y.length){var x=y[0];a(x.x0)&&a(x.y0)&&(p=it(x),(!K.hLinePoint||K.hLinePoint.spikeDistance>p.spikeDistance)&&(K.hLinePoint=p))}}}}}function at(t,e){for(var r,n=null,a=1/0,i=0;i1||X.length>1)||\"closest\"===C&&Q&&X.length>1,At=h.combine(u.plot_bgcolor||h.background,u.paper_bgcolor),Mt={hovermode:C,rotateLabels:kt,bgColor:At,container:u._hoverlayer,outerContainer:u._paperdiv,commonLabelOpts:u.hoverlabel,hoverdistance:u.hoverdistance},St=E(X,Mt,t);g.isUnifiedHover(C)||(!function(t,e,r){var n,a,i,o,s,l,c,u=0,h=1,f=t.size(),p=new Array(f),d=0;function g(t){var e=t[0],r=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,i=r.pos+r.dp+r.size-e.pmax,a>.01){for(s=t.length-1;s>=0;s--)t[s].dp+=a;n=!1}if(!(i<.01)){if(a<-.01){for(s=t.length-1;s>=0;s--)t[s].dp-=i;n=!1}if(n){var c=0;for(o=0;oe.pmax&&c++;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos>e.pmax-1&&(l.del=!0,c--);for(o=0;o=0;s--)t[s].dp-=i;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos+l.dp+l.size>e.pmax&&(l.del=!0,c--)}}}t.each((function(t){var n=t[e],a=\"x\"===n._id.charAt(0),i=n.range;0===d&&i&&i[0]>i[1]!==a&&(h=-1),p[d++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?_:1)/2,pmin:0,pmax:a?r.width:r.height}]})),p.sort((function(t,e){return t[0].posref-e[0].posref||h*(e[0].traceIndex-t[0].traceIndex)}));for(;!n&&u<=f;){for(u++,n=!0,o=0;o.01&&y.pmin===x.pmin&&y.pmax===x.pmax){for(s=v.length-1;s>=0;s--)v[s].dp+=a;for(m.push.apply(m,v),p.splice(o+1,1),c=0,s=m.length-1;s>=0;s--)c+=m[s].dp;for(i=c/m.length,s=m.length-1;s>=0;s--)m[s].dp-=i;n=!1}else o++}p.forEach(g)}for(o=p.length-1;o>=0;o--){var b=p[o];for(s=b.length-1;s>=0;s--){var w=b[s],T=w.datum;T.offset=w.dp,T.del=w.del}}}(St,kt?\"xa\":\"ya\",u),L(St,kt));if(e.target&&e.target.tagName){var Et=d.getComponentMethod(\"annotations\",\"hasClickToShow\")(t,bt);c(n.select(e.target),Et?\"pointer\":\"\")}if(!e.target||i||!function(t,e,r){if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var a=r[n],i=t._hoverdata[n];if(a.curveNumber!==i.curveNumber||String(a.pointNumber)!==String(i.pointNumber)||String(a.pointNumbers)!==String(i.pointNumbers))return!0}return!1}(t,0,xt))return;xt&&t.emit(\"plotly_unhover\",{event:e,points:xt});t.emit(\"plotly_hover\",{event:e,points:t._hoverdata,xaxes:b,yaxes:w,xvals:O,yvals:D})}(t,e,r,i)}))},r.loneHover=function(t,e){var r=!0;Array.isArray(t)||(r=!1,t=[t]);var a=t.map((function(t){return{color:t.color||h.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,borderColor:t.borderColor,fontFamily:t.fontFamily,fontSize:t.fontSize,fontColor:t.fontColor,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:\"\"},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,eventData:t.eventData||!1,hovertemplateLabels:t.hovertemplateLabels||!1}})),i=n.select(e.container),o=e.outerContainer?n.select(e.outerContainer):i,s={hovermode:\"closest\",rotateLabels:!1,bgColor:e.bgColor||h.background,container:i,outerContainer:o},l=E(a,s,e.gd),c=0,u=0;return l.sort((function(t,e){return t.y0-e.y0})).each((function(t,r){var n=t.y0-t.by/2;t.offset=n-5([\\s\\S]*)<\\/extra>/;function E(t,e,r){var a=r._fullLayout,i=e.hovermode,s=e.rotateLabels,c=e.bgColor,f=e.container,p=e.outerContainer,d=e.commonLabelOpts||{},b=e.fontFamily||m.HOVERFONT,_=e.fontSize||m.HOVERFONTSIZE,w=t[0],T=w.xa,S=w.ya,E=\"y\"===i.charAt(0)?\"yLabel\":\"xLabel\",L=w[E],P=(String(L)||\"\").split(\" \")[0],I=p.node().getBoundingClientRect(),z=I.top,O=I.width,D=I.height,R=void 0!==L&&w.distance<=e.hoverdistance&&(\"x\"===i||\"y\"===i);if(R){var F,B,N=!0;for(F=0;Fa.width-E?(v=a.width-E,s.attr(\"d\",\"M\"+(E-k)+\",0L\"+E+\",\"+M+k+\"v\"+M+(2*A+x.height)+\"H-\"+E+\"V\"+M+k+\"H\"+(E-2*k)+\"Z\")):s.attr(\"d\",\"M0,0L\"+k+\",\"+M+k+\"H\"+(A+x.width/2)+\"v\"+M+(2*A+x.height)+\"H-\"+(A+x.width/2)+\"V\"+M+k+\"H-\"+k+\"Z\")}else{var C,P,I;\"right\"===S.side?(C=\"start\",P=1,I=\"\",v=T._offset+T._length):(C=\"end\",P=-1,I=\"-\",v=T._offset),y=S._offset+(w.y0+w.y1)/2,c.attr(\"text-anchor\",C),s.attr(\"d\",\"M0,0L\"+I+k+\",\"+k+\"V\"+(A+x.height/2)+\"h\"+I+(2*A+x.width)+\"V-\"+(A+x.height/2)+\"H\"+I+k+\"V-\"+k+\"Z\");var O,D=x.height/2,R=z-x.top-D,F=\"clip\"+a._uid+\"commonlabel\"+S._id;if(v=0?$-=rt:$+=2*A;var nt=et.height+2*A,at=Q+nt>=D;return nt<=D&&(Q<=z?Q=S._offset+2*A:at&&(Q=D-nt)),tt.attr(\"transform\",\"translate(\"+$+\",\"+Q+\")\"),tt}var it=f.selectAll(\"g.hovertext\").data(t,(function(t){return M(t)}));return it.enter().append(\"g\").classed(\"hovertext\",!0).each((function(){var t=n.select(this);t.append(\"rect\").call(h.fill,h.addOpacity(c,.8)),t.append(\"text\").classed(\"name\",!0),t.append(\"path\").style(\"stroke-width\",\"1px\"),t.append(\"text\").classed(\"nums\",!0).call(u.font,b,_)})),it.exit().remove(),it.each((function(t){var e=n.select(this).attr(\"transform\",\"\"),o=t.bgcolor||t.color,f=h.combine(h.opacity(o)?o:h.defaultLine,c),p=h.combine(h.opacity(t.color)?t.color:h.defaultLine,c),d=t.borderColor||h.contrast(f),g=C(t,R,i,a,L,e),m=g[0],v=g[1],y=e.select(\"text.nums\").call(u.font,t.fontFamily||b,t.fontSize||_,t.fontColor||d).text(m).attr(\"data-notex\",1).call(l.positionText,0,0).call(l.convertToTspans,r),w=e.select(\"text.name\"),T=0,M=0;if(v&&v!==m){w.call(u.font,t.fontFamily||b,t.fontSize||_,p).text(v).attr(\"data-notex\",1).call(l.positionText,0,0).call(l.convertToTspans,r);var S=w.node().getBoundingClientRect();T=S.width+2*A,M=S.height+2*A}else w.remove(),e.select(\"rect\").remove();e.select(\"path\").style({fill:f,stroke:d});var E,P,I=y.node().getBoundingClientRect(),F=t.xa._offset+(t.x0+t.x1)/2,B=t.ya._offset+(t.y0+t.y1)/2,N=Math.abs(t.x1-t.x0),j=Math.abs(t.y1-t.y0),V=I.width+k+A+T;if(t.ty0=z-I.top,t.bx=I.width+2*A,t.by=Math.max(I.height+2*A,M),t.anchor=\"start\",t.txwidth=I.width,t.tx2width=T,t.offset=0,s)t.pos=F,E=B+j/2+V<=D,P=B-j/2-V>=0,\"top\"!==t.idealAlign&&E||!P?E?(B+=j/2,t.anchor=\"start\"):t.anchor=\"middle\":(B-=j/2,t.anchor=\"end\");else if(t.pos=B,E=F+N/2+V<=O,P=F-N/2-V>=0,\"left\"!==t.idealAlign&&E||!P)if(E)F+=N/2,t.anchor=\"start\";else{t.anchor=\"middle\";var U=V/2,q=F+U-O,H=F-U;q>0&&(F-=q),H<0&&(F+=-H)}else F-=N/2,t.anchor=\"end\";y.attr(\"text-anchor\",t.anchor),T&&w.attr(\"text-anchor\",t.anchor),e.attr(\"transform\",\"translate(\"+F+\",\"+B+\")\"+(s?\"rotate(\"+x+\")\":\"\"))})),it}function C(t,e,r,n,a,i){var s=\"\",l=\"\";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=o.templateString(t.name,t.trace._meta)),s=O(t.name,t.nameLength)),void 0!==t.zLabel?(void 0!==t.xLabel&&(l+=\"x: \"+t.xLabel+\"
\"),void 0!==t.yLabel&&(l+=\"y: \"+t.yLabel+\"
\"),\"choropleth\"!==t.trace.type&&\"choroplethmapbox\"!==t.trace.type&&(l+=(l?\"z: \":\"\")+t.zLabel)):e&&t[r.charAt(0)+\"Label\"]===a?l=t[(\"x\"===r.charAt(0)?\"y\":\"x\")+\"Label\"]||\"\":void 0===t.xLabel?void 0!==t.yLabel&&\"scattercarpet\"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:\"(\"+t.xLabel+\", \"+t.yLabel+\")\",!t.text&&0!==t.text||Array.isArray(t.text)||(l+=(l?\"
\":\"\")+t.text),void 0!==t.extraText&&(l+=(l?\"
\":\"\")+t.extraText),i&&\"\"===l&&!t.hovertemplate&&(\"\"===s&&i.remove(),l=s);var c=n._d3locale,u=t.hovertemplate||!1,h=t.hovertemplateLabels||t,f=t.eventData[0]||{};return u&&(l=(l=o.hovertemplateString(u,h,c,f,t.trace._meta)).replace(S,(function(e,r){return s=O(r,t.nameLength),\"\"}))),[l,s]}function L(t,e){t.each((function(t){var r=n.select(this);if(t.del)return r.remove();var a=r.select(\"text.nums\"),i=t.anchor,o=\"end\"===i?-1:1,s={start:1,end:-1,middle:0}[i],c=s*(k+A),h=c+s*(t.txwidth+A),f=0,p=t.offset;\"middle\"===i&&(c-=t.tx2width/2,h+=t.txwidth/2+A),e&&(p*=-T,f=t.offset*w),r.select(\"path\").attr(\"d\",\"middle\"===i?\"M-\"+(t.bx/2+t.tx2width/2)+\",\"+(p-t.by/2)+\"h\"+t.bx+\"v\"+t.by+\"h-\"+t.bx+\"Z\":\"M0,0L\"+(o*k+f)+\",\"+(k+p)+\"v\"+(t.by/2-k)+\"h\"+o*t.bx+\"v-\"+t.by+\"H\"+(o*k+f)+\"V\"+(p-k)+\"Z\");var d=c+f,g=p+t.ty0-t.by/2+A,m=t.textAlign||\"auto\";\"auto\"!==m&&(\"left\"===m&&\"start\"!==i?(a.attr(\"text-anchor\",\"start\"),d=\"middle\"===i?-t.bx/2-t.tx2width/2+A:-t.bx-A):\"right\"===m&&\"end\"!==i&&(a.attr(\"text-anchor\",\"end\"),d=\"middle\"===i?t.bx/2-t.tx2width/2-A:t.bx+A)),a.call(l.positionText,d,g),t.tx2width&&(r.select(\"text.name\").call(l.positionText,h+s*A+f,p+t.ty0-t.by/2+A),r.select(\"rect\").call(u.setRect,h+(s-1)*t.tx2width/2+f,p-t.by/2-1,t.tx2width,t.by+2))}))}function P(t,e){var r=t.index,n=t.trace||{},i=t.cd[0],s=t.cd[r]||{};function l(t){return t||a(t)&&0===t}var c=Array.isArray(r)?function(t,e){var a=o.castOption(i,r,t);return l(a)?a:o.extractOption({},n,\"\",e)}:function(t,e){return o.extractOption(s,n,t,e)};function u(e,r,n){var a=c(r,n);l(a)&&(t[e]=a)}if(u(\"hoverinfo\",\"hi\",\"hoverinfo\"),u(\"bgcolor\",\"hbg\",\"hoverlabel.bgcolor\"),u(\"borderColor\",\"hbc\",\"hoverlabel.bordercolor\"),u(\"fontFamily\",\"htf\",\"hoverlabel.font.family\"),u(\"fontSize\",\"hts\",\"hoverlabel.font.size\"),u(\"fontColor\",\"htc\",\"hoverlabel.font.color\"),u(\"nameLength\",\"hnl\",\"hoverlabel.namelength\"),u(\"textAlign\",\"hta\",\"hoverlabel.align\"),t.posref=\"y\"===e||\"closest\"===e&&\"h\"===n.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=o.constrain(t.x0,0,t.xa._length),t.x1=o.constrain(t.x1,0,t.xa._length),t.y0=o.constrain(t.y0,0,t.ya._length),t.y1=o.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel=\"xLabel\"in t?t.xLabel:p.hoverLabelText(t.xa,t.xLabelVal),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel=\"yLabel\"in t?t.yLabel:p.hoverLabelText(t.ya,t.yLabelVal),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!(isNaN(t.xerr)||\"log\"===t.xa.type&&t.xerr<=0)){var h=p.tickText(t.xa,t.xa.c2l(t.xerr),\"hover\").text;void 0!==t.xerrneg?t.xLabel+=\" +\"+h+\" / -\"+p.tickText(t.xa,t.xa.c2l(t.xerrneg),\"hover\").text:t.xLabel+=\" \\xb1 \"+h,\"x\"===e&&(t.distance+=1)}if(!(isNaN(t.yerr)||\"log\"===t.ya.type&&t.yerr<=0)){var f=p.tickText(t.ya,t.ya.c2l(t.yerr),\"hover\").text;void 0!==t.yerrneg?t.yLabel+=\" +\"+f+\" / -\"+p.tickText(t.ya,t.ya.c2l(t.yerrneg),\"hover\").text:t.yLabel+=\" \\xb1 \"+f,\"y\"===e&&(t.distance+=1)}var d=t.hoverinfo||t.trace.hoverinfo;return d&&\"all\"!==d&&(-1===(d=Array.isArray(d)?d:d.split(\"+\")).indexOf(\"x\")&&(t.xLabel=void 0),-1===d.indexOf(\"y\")&&(t.yLabel=void 0),-1===d.indexOf(\"z\")&&(t.zLabel=void 0),-1===d.indexOf(\"text\")&&(t.text=void 0),-1===d.indexOf(\"name\")&&(t.name=void 0)),t}function I(t,e,r){var n,a,o=r.container,s=r.fullLayout,l=s._size,c=r.event,f=!!e.hLinePoint,d=!!e.vLinePoint;if(o.selectAll(\".spikeline\").remove(),d||f){var g=h.combine(s.plot_bgcolor,s.paper_bgcolor);if(f){var m,v,y=e.hLinePoint;n=y&&y.xa,\"cursor\"===(a=y&&y.ya).spikesnap?(m=c.pointerX,v=c.pointerY):(m=n._offset+y.x,v=a._offset+y.y);var x,b,_=i.readability(y.color,g)<1.5?h.contrast(g):y.color,w=a.spikemode,T=a.spikethickness,k=a.spikecolor||_,A=p.getPxPosition(t,a);if(-1!==w.indexOf(\"toaxis\")||-1!==w.indexOf(\"across\")){if(-1!==w.indexOf(\"toaxis\")&&(x=A,b=m),-1!==w.indexOf(\"across\")){var M=a._counterDomainMin,S=a._counterDomainMax;\"free\"===a.anchor&&(M=Math.min(M,a.position),S=Math.max(S,a.position)),x=l.l+M*l.w,b=l.l+S*l.w}o.insert(\"line\",\":first-child\").attr({x1:x,x2:b,y1:v,y2:v,\"stroke-width\":T,stroke:k,\"stroke-dasharray\":u.dashStyle(a.spikedash,T)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:x,x2:b,y1:v,y2:v,\"stroke-width\":T+2,stroke:g}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==w.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:A+(\"right\"!==a.side?T:-T),cy:v,r:T,fill:k}).classed(\"spikeline\",!0)}if(d){var E,C,L=e.vLinePoint;n=L&&L.xa,a=L&&L.ya,\"cursor\"===n.spikesnap?(E=c.pointerX,C=c.pointerY):(E=n._offset+L.x,C=a._offset+L.y);var P,I,z=i.readability(L.color,g)<1.5?h.contrast(g):L.color,O=n.spikemode,D=n.spikethickness,R=n.spikecolor||z,F=p.getPxPosition(t,n);if(-1!==O.indexOf(\"toaxis\")||-1!==O.indexOf(\"across\")){if(-1!==O.indexOf(\"toaxis\")&&(P=F,I=C),-1!==O.indexOf(\"across\")){var B=n._counterDomainMin,N=n._counterDomainMax;\"free\"===n.anchor&&(B=Math.min(B,n.position),N=Math.max(N,n.position)),P=l.t+(1-N)*l.h,I=l.t+(1-B)*l.h}o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:P,y2:I,\"stroke-width\":D,stroke:R,\"stroke-dasharray\":u.dashStyle(n.spikedash,D)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:P,y2:I,\"stroke-width\":D+2,stroke:g}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==O.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:E,cy:F-(\"top\"!==n.side?D:-D),r:D,fill:R}).classed(\"spikeline\",!0)}}}function z(t,e){return!e||(e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint)}function O(t,e){return l.plainText(t||\"\",{len:e,allowedTags:[\"br\",\"sub\",\"sup\",\"b\",\"i\",\"em\"]})}},{\"../../lib\":728,\"../../lib/events\":718,\"../../lib/override_cursor\":739,\"../../lib/svg_text_utils\":752,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"../color\":595,\"../dragelement\":614,\"../drawing\":617,\"../legend/defaults\":647,\"../legend/draw\":648,\"./constants\":629,\"./helpers\":631,d3:164,\"fast-isnumeric\":236,tinycolor2:528}],633:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../color\"),i=t(\"./helpers\").isUnifiedHover;e.exports=function(t,e,r,o){function s(t){o.font[t]||(o.font[t]=e.legend?e.legend.font[t]:e.font[t])}o=o||{},e&&i(e.hovermode)&&(o.font||(o.font={}),s(\"size\"),s(\"family\"),s(\"color\"),e.legend?(o.bgcolor||(o.bgcolor=a.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),r(\"hoverlabel.bgcolor\",o.bgcolor),r(\"hoverlabel.bordercolor\",o.bordercolor),r(\"hoverlabel.namelength\",o.namelength),n.coerceFont(r,\"hoverlabel.font\",o.font),r(\"hoverlabel.align\",o.align)}},{\"../../lib\":728,\"../color\":595,\"./helpers\":631}],634:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){function i(r,i){return void 0!==e[r]?e[r]:n.coerce(t,e,a,r,i)}var o,s=i(\"clickmode\");return e._has(\"cartesian\")?s.indexOf(\"select\")>-1?o=\"closest\":(e._isHoriz=function(t,e){for(var r=e._scatterStackOpts||{},n=0;n1){if(!f&&!p&&!d)\"independent\"===k(\"pattern\")&&(f=!0);m._hasSubplotGrid=f;var x,b,_=\"top to bottom\"===k(\"roworder\"),w=f?.2:.1,T=f?.3:.1;g&&e._splomGridDflt&&(x=e._splomGridDflt.xside,b=e._splomGridDflt.yside),m._domains={x:u(\"x\",k,w,x,y),y:u(\"y\",k,T,b,v,_)}}else delete e.grid}function k(t,e){return n.coerce(r,m,l,t,e)}},contentDefaults:function(t,e){var r=e.grid;if(r&&r._domains){var n,a,i,o,s,l,u,f=t.grid||{},p=e._subplots,d=r._hasSubplotGrid,g=r.rows,m=r.columns,v=\"independent\"===r.pattern,y=r._axisMap={};if(d){var x=f.subplots||[];l=r.subplots=new Array(g);var b=1;for(n=0;n1);if(!1!==g||c.uirevision){var m=i.newContainer(e,\"legend\");if(_(\"uirevision\",e.uirevision),!1!==g){_(\"bgcolor\",e.paper_bgcolor),_(\"bordercolor\"),_(\"borderwidth\"),a.coerceFont(_,\"font\",e.font);var v,y,x,b=_(\"orientation\");\"h\"===b?(v=0,n.getComponentMethod(\"rangeslider\",\"isVisible\")(t.xaxis)?(y=1.1,x=\"bottom\"):(y=-.1,x=\"top\")):(v=1.02,y=1,x=\"auto\"),_(\"traceorder\",f),l.isGrouped(e.legend)&&_(\"tracegroupgap\"),_(\"itemsizing\"),_(\"itemclick\"),_(\"itemdoubleclick\"),_(\"x\",v),_(\"xanchor\"),_(\"y\",y),_(\"yanchor\",x),_(\"valign\"),a.noneOrAll(c,m,[\"x\",\"y\"]),_(\"title.text\")&&(_(\"title.side\",\"h\"===b?\"left\":\"top\"),a.coerceFont(_,\"title.font\",e.font))}}function _(t,e){return a.coerce(c,m,o,t,e)}}},{\"../../lib\":728,\"../../plot_api/plot_template\":766,\"../../plots/layout_attributes\":830,\"../../registry\":859,\"./attributes\":645,\"./helpers\":651}],648:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../lib/events\"),l=t(\"../dragelement\"),c=t(\"../drawing\"),u=t(\"../color\"),h=t(\"../../lib/svg_text_utils\"),f=t(\"./handle_click\"),p=t(\"./constants\"),d=t(\"../../constants/alignment\"),g=d.LINE_SPACING,m=d.FROM_TL,v=d.FROM_BR,y=t(\"./get_legend_data\"),x=t(\"./style\"),b=t(\"./helpers\");function _(t,e,r,n,a){var i=r.data()[0][0].trace,l={event:a,node:r.node(),curveNumber:i.index,expandedIndex:i._expandedIndex,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};if(i._group&&(l.group=i._group),o.traceIs(i,\"pie-like\")&&(l.label=r.datum()[0].label),!1!==s.triggerHandler(t,\"plotly_legendclick\",l))if(1===n)e._clickTimeout=setTimeout((function(){f(r,t,n)}),t._context.doubleClickDelay);else if(2===n){e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==s.triggerHandler(t,\"plotly_legenddoubleclick\",l)&&f(r,t,n)}}function w(t,e,r){var n,i=t.data()[0][0],s=i.trace,l=o.traceIs(s,\"pie-like\"),u=s.index,f=r._main&&e._context.edits.legendText&&!l,d=r._maxNameLength;r.entries?n=i.text:(n=l?i.label:s.name,s._meta&&(n=a.templateString(n,s._meta)));var g=a.ensureSingle(t,\"text\",\"legendtext\");g.attr(\"text-anchor\",\"start\").classed(\"user-select-none\",!0).call(c.font,r.font).text(f?T(n,d):n),h.positionText(g,p.textGap,0),f?g.call(h.makeEditable,{gd:e,text:n}).call(A,t,e,r).on(\"edit\",(function(n){this.text(T(n,d)).call(A,t,e,r);var s=i.trace._fullInput||{},l={};if(o.hasTransform(s,\"groupby\")){var c=o.getTransformIndices(s,\"groupby\"),h=c[c.length-1],f=a.keyedContainer(s,\"transforms[\"+h+\"].styles\",\"target\",\"value.name\");f.set(i.trace._group,n),l=f.constructUpdate()}else l.name=n;return o.call(\"_guiRestyle\",e,l,u)})):A(g,t,e,r)}function T(t,e){var r=Math.max(4,e);if(t&&t.trim().length>=r/2)return t;for(var n=r-(t=t||\"\").length;n>0;n--)t+=\" \";return t}function k(t,e){var r,i=e._context.doubleClickDelay,o=1,s=a.ensureSingle(t,\"rect\",\"legendtoggle\",(function(t){t.style(\"cursor\",\"pointer\").attr(\"pointer-events\",\"all\").call(u.fill,\"rgba(0,0,0,0)\")}));s.on(\"mousedown\",(function(){(r=(new Date).getTime())-e._legendMouseDownTimei&&(o=Math.max(o-1,1)),_(e,r,t,o,n.event)}}))}function A(t,e,r,n){n._main||t.attr(\"data-notex\",!0),h.convertToTspans(t,r,(function(){!function(t,e,r){var n=t.data()[0][0];if(r._main&&n&&!n.trace.showlegend)return void t.remove();var a=t.select(\"g[class*=math-group]\"),i=a.node();r||(r=e._fullLayout.legend);var o,s,l=r.borderwidth,u=(n?r:r.title).font.size*g;if(i){var f=c.bBox(i);o=f.height,s=f.width,n?c.setTranslate(a,0,.25*o):c.setTranslate(a,l,.75*o+l)}else{var d=t.select(n?\".legendtext\":\".legendtitletext\"),m=h.lineCount(d),v=d.node();o=u*m,s=v?c.bBox(v).width:0;var y=u*((m-1)/2-.3);n?h.positionText(d,p.textGap,-y):h.positionText(d,p.titlePad+l,u+l)}n?(n.lineHeight=u,n.height=Math.max(o,16)+3,n.width=s):(r._titleWidth=s,r._titleHeight=o)}(e,r,n)}))}function M(t){return a.isRightAnchor(t)?\"right\":a.isCenterAnchor(t)?\"center\":\"left\"}function S(t){return a.isBottomAnchor(t)?\"bottom\":a.isMiddleAnchor(t)?\"middle\":\"top\"}e.exports=function(t,e){var r,s=t._fullLayout,h=\"legend\"+s._uid;if(e?(r=e.layer,h+=\"-hover\"):((e=s.legend||{})._main=!0,r=s._infolayer),r){var f;if(t._legendMouseDownTime||(t._legendMouseDownTime=0),e._main){if(!t.calcdata)return;f=s.showlegend&&y(t.calcdata,e)}else{if(!e.entries)return;f=y(e.entries,e)}var d=s.hiddenlabels||[];if(e._main&&(!s.showlegend||!f.length))return r.selectAll(\".legend\").remove(),s._topdefs.select(\"#\"+h).remove(),i.autoMargin(t,\"legend\");var g=a.ensureSingle(r,\"g\",\"legend\",(function(t){e._main&&t.attr(\"pointer-events\",\"all\")})),T=a.ensureSingleById(s._topdefs,\"clipPath\",h,(function(t){t.append(\"rect\")})),E=a.ensureSingle(g,\"rect\",\"bg\",(function(t){t.attr(\"shape-rendering\",\"crispEdges\")}));E.call(u.stroke,e.bordercolor).call(u.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\");var C=a.ensureSingle(g,\"g\",\"scrollbox\"),L=e.title;if(e._titleWidth=0,e._titleHeight=0,L.text){var P=a.ensureSingle(C,\"text\",\"legendtitletext\");P.attr(\"text-anchor\",\"start\").classed(\"user-select-none\",!0).call(c.font,L.font).text(L.text),A(P,C,t,e)}else C.selectAll(\".legendtitletext\").remove();var I=a.ensureSingle(g,\"rect\",\"scrollbar\",(function(t){t.attr(p.scrollBarEnterAttrs).call(u.fill,p.scrollBarColor)})),z=C.selectAll(\"g.groups\").data(f);z.enter().append(\"g\").attr(\"class\",\"groups\"),z.exit().remove();var O=z.selectAll(\"g.traces\").data(a.identity);O.enter().append(\"g\").attr(\"class\",\"traces\"),O.exit().remove(),O.style(\"opacity\",(function(t){var e=t[0].trace;return o.traceIs(e,\"pie-like\")?-1!==d.indexOf(t[0].label)?.5:1:\"legendonly\"===e.visible?.5:1})).each((function(){n.select(this).call(w,t,e)})).call(x,t,e).each((function(){e._main&&n.select(this).call(k,t)})),a.syncOrAsync([i.previousPromises,function(){return function(t,e,r,a){var i=t._fullLayout;a||(a=i.legend);var o=i._size,s=b.isVertical(a),l=b.isGrouped(a),u=a.borderwidth,h=2*u,f=p.textGap,d=p.itemGap,g=2*(u+d),m=S(a),v=a.y<0||0===a.y&&\"top\"===m,y=a.y>1||1===a.y&&\"bottom\"===m;a._maxHeight=Math.max(v||y?i.height/2:o.h,30);var x=0;a._width=0,a._height=0;var _=function(t){var e=0,r=0,n=t.title.side;n&&(-1!==n.indexOf(\"left\")&&(e=t._titleWidth),-1!==n.indexOf(\"top\")&&(r=t._titleHeight));return[e,r]}(a);if(s)r.each((function(t){var e=t[0].height;c.setTranslate(this,u+_[0],u+_[1]+a._height+e/2+d),a._height+=e,a._width=Math.max(a._width,t[0].width)})),x=f+a._width,a._width+=d+f+h,a._height+=g,l&&(e.each((function(t,e){c.setTranslate(this,0,e*a.tracegroupgap)})),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var w=M(a),T=a.x<0||0===a.x&&\"right\"===w,k=a.x>1||1===a.x&&\"left\"===w,A=y||v,E=i.width/2;a._maxWidth=Math.max(T?A&&\"left\"===w?o.l+o.w:E:k?A&&\"right\"===w?o.r+o.w:E:o.w,2*f);var C=0,L=0;r.each((function(t){var e=t[0].width+f;C=Math.max(C,e),L+=e})),x=null;var P=0;if(l){var I=0,z=0,O=0;e.each((function(){var t=0,e=0;n.select(this).selectAll(\"g.traces\").each((function(r){var n=r[0].height;c.setTranslate(this,_[0],_[1]+u+d+n/2+e),e+=n,t=Math.max(t,f+r[0].width)})),I=Math.max(I,e);var r=t+d;r+u+z>a._maxWidth&&(P=Math.max(P,z),z=0,O+=I+a.tracegroupgap,I=e),c.setTranslate(this,z,O),z+=r})),a._width=Math.max(P,z)+u,a._height=O+I+g}else{var D=r.size(),R=L+h+(D-1)*da._maxWidth&&(P=Math.max(P,j),B=0,N+=F,a._height+=F,F=0),c.setTranslate(this,_[0]+u+B,_[1]+u+N+e/2+d),j=B+r+d,B+=n,F=Math.max(F,e)})),R?(a._width=B+h,a._height=F+g):(a._width=Math.max(P,j)+h,a._height+=F+g)}}a._width=Math.ceil(Math.max(a._width+_[0],a._titleWidth+2*(u+p.titlePad))),a._height=Math.ceil(Math.max(a._height+_[1],a._titleHeight+2*(u+p.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var V=t._context.edits,U=V.legendText||V.legendPosition;r.each((function(t){var e=n.select(this).select(\".legendtoggle\"),r=t[0].height,a=U?f:x||f+t[0].width;s||(a+=d/2),c.setRect(e,0,-r/2,a,r)}))}(t,z,O,e)},function(){if(!e._main||!function(t){var e=t._fullLayout.legend,r=M(e),n=S(e);return i.autoMargin(t,\"legend\",{x:e.x,y:e.y,l:e._width*m[r],r:e._width*v[r],b:e._effHeight*v[n],t:e._effHeight*m[n]})}(t)){var u,f,d,y,x=s._size,b=e.borderwidth,w=x.l+x.w*e.x-m[M(e)]*e._width,k=x.t+x.h*(1-e.y)-m[S(e)]*e._effHeight;if(e._main&&s.margin.autoexpand){var A=w,L=k;w=a.constrain(w,0,s.width-e._width),k=a.constrain(k,0,s.height-e._effHeight),w!==A&&a.log(\"Constrain legend.x to make legend fit inside graph\"),k!==L&&a.log(\"Constrain legend.y to make legend fit inside graph\")}if(e._main&&c.setTranslate(g,w,k),I.on(\".drag\",null),g.on(\"wheel\",null),!e._main||e._height<=e._maxHeight||t._context.staticPlot){var P=e._effHeight;e._main||(P=e._height),E.attr({width:e._width-b,height:P-b,x:b/2,y:b/2}),c.setTranslate(C,0,0),T.select(\"rect\").attr({width:e._width-2*b,height:P-2*b,x:b,y:b}),c.setClipUrl(C,h,t),c.setRect(I,0,0,0,0),delete e._scrollY}else{var z,O,D,R=Math.max(p.scrollBarMinHeight,e._effHeight*e._effHeight/e._height),F=e._effHeight-R-2*p.scrollBarMargin,B=e._height-e._effHeight,N=F/B,j=Math.min(e._scrollY||0,B);E.attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-b,x:b/2,y:b/2}),T.select(\"rect\").attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-2*b,x:b,y:b+j}),c.setClipUrl(C,h,t),q(j,R,N),g.on(\"wheel\",(function(){q(j=a.constrain(e._scrollY+n.event.deltaY/F*B,0,B),R,N),0!==j&&j!==B&&n.event.preventDefault()}));var V=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;z=\"touchstart\"===t.type?t.changedTouches[0].clientY:t.clientY,D=j})).on(\"drag\",(function(){var t=n.event.sourceEvent;2===t.buttons||t.ctrlKey||(O=\"touchmove\"===t.type?t.changedTouches[0].clientY:t.clientY,q(j=function(t,e,r){var n=(r-e)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));I.call(V);var U=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;\"touchstart\"===t.type&&(z=t.changedTouches[0].clientY,D=j)})).on(\"drag\",(function(){var t=n.event.sourceEvent;\"touchmove\"===t.type&&(O=t.changedTouches[0].clientY,q(j=function(t,e,r){var n=(e-r)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));C.call(U)}if(t._context.edits.legendPosition)g.classed(\"cursor-move\",!0),l.init({element:g.node(),gd:t,prepFn:function(){var t=c.getTranslate(g);d=t.x,y=t.y},moveFn:function(t,r){var n=d+t,a=y+r;c.setTranslate(g,n,a),u=l.align(n,0,x.l,x.l+x.w,e.xanchor),f=l.align(a,0,x.t+x.h,x.t,e.yanchor)},doneFn:function(){void 0!==u&&void 0!==f&&o.call(\"_guiRelayout\",t,{\"legend.x\":u,\"legend.y\":f})},clickFn:function(e,n){var a=r.selectAll(\"g.traces\").filter((function(){var t=this.getBoundingClientRect();return n.clientX>=t.left&&n.clientX<=t.right&&n.clientY>=t.top&&n.clientY<=t.bottom}));a.size()>0&&_(t,g,a,e,n)}})}function q(r,n,a){e._scrollY=t._fullLayout.legend._scrollY=r,c.setTranslate(C,0,-r),c.setRect(I,e._width,p.scrollBarMargin+r*a,p.scrollBarWidth,n),T.select(\"rect\").attr(\"y\",b+r)}}],t)}}},{\"../../constants/alignment\":697,\"../../lib\":728,\"../../lib/events\":718,\"../../lib/svg_text_utils\":752,\"../../plots/plots\":839,\"../../registry\":859,\"../color\":595,\"../dragelement\":614,\"../drawing\":617,\"./constants\":646,\"./get_legend_data\":649,\"./handle_click\":650,\"./helpers\":651,\"./style\":653,d3:164}],649:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"./helpers\");e.exports=function(t,e){var r,i,o={},s=[],l=!1,c={},u=0,h=0,f=e._main;function p(t,r){if(\"\"!==t&&a.isGrouped(e))-1===s.indexOf(t)?(s.push(t),l=!0,o[t]=[[r]]):o[t].push([r]);else{var n=\"~~i\"+u;s.push(n),o[n]=[[r]],u++}}for(r=0;r0))return 0;a=e.width}return d?n:Math.min(a,r)};function m(t,e,r){var i=t[0].trace,o=i.marker||{},l=o.line||{},c=r?i.visible&&i.type===r:a.traceIs(i,\"bar\"),u=n.select(e).select(\"g.legendpoints\").selectAll(\"path.legend\"+r).data(c?[t]:[]);u.enter().append(\"path\").classed(\"legend\"+r,!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),u.exit().remove(),u.each((function(t){var e=n.select(this),r=t[0],a=g(r.mlw,o.line,5,2);e.style(\"stroke-width\",a+\"px\").call(s.fill,r.mc||o.color),a&&s.stroke(e,r.mlc||l.color)}))}function v(t,e,r){var o=t[0],s=o.trace,l=r?s.visible&&s.type===r:a.traceIs(s,r),c=n.select(e).select(\"g.legendpoints\").selectAll(\"path.legend\"+r).data(l?[t]:[]);if(c.enter().append(\"path\").classed(\"legend\"+r,!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),c.exit().remove(),c.size()){var f=(s.marker||{}).line,p=g(h(f.width,o.pts),f,5,2),d=i.minExtend(s,{marker:{line:{width:p}}});d.marker.line.color=f.color;var m=i.minExtend(o,{trace:d});u(c,m,d)}}t.each((function(t){var e=n.select(this),a=i.ensureSingle(e,\"g\",\"layers\");a.style(\"opacity\",t[0].trace.opacity);var o=r.valign,s=t[0].lineHeight,l=t[0].height;if(\"middle\"!==o&&s&&l){var c={top:1,bottom:-1}[o]*(.5*(s-l+3));a.attr(\"transform\",\"translate(0,\"+c+\")\")}else a.attr(\"transform\",null);a.selectAll(\"g.legendfill\").data([t]).enter().append(\"g\").classed(\"legendfill\",!0),a.selectAll(\"g.legendlines\").data([t]).enter().append(\"g\").classed(\"legendlines\",!0);var u=a.selectAll(\"g.legendsymbols\").data([t]);u.enter().append(\"g\").classed(\"legendsymbols\",!0),u.selectAll(\"g.legendpoints\").data([t]).enter().append(\"g\").classed(\"legendpoints\",!0)})).each((function(t){var r,a=t[0].trace,c=[];if(a.visible)switch(a.type){case\"histogram2d\":case\"heatmap\":c=[[\"M-15,-2V4H15V-2Z\"]],r=!0;break;case\"choropleth\":case\"choroplethmapbox\":c=[[\"M-6,-6V6H6V-6Z\"]],r=!0;break;case\"densitymapbox\":c=[[\"M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0\"]],r=\"radial\";break;case\"cone\":c=[[\"M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z\"],[\"M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z\"],[\"M-6,-2 A2,2 0 0,0 -6,2 L6,0Z\"]],r=!1;break;case\"streamtube\":c=[[\"M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z\"],[\"M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z\"],[\"M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z\"]],r=!1;break;case\"surface\":c=[[\"M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z\"],[\"M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z\"]],r=!0;break;case\"mesh3d\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6H6L0,6Z\"]],r=!1;break;case\"volume\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6H6L0,6Z\"]],r=!0;break;case\"isosurface\":c=[[\"M-6,6H0L-6,-6Z\"],[\"M6,6H0L6,-6Z\"],[\"M-6,-6 A12,24 0 0,0 6,-6 L0,6Z\"]],r=!1}var u=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legend3dandfriends\").data(c);u.enter().append(\"path\").classed(\"legend3dandfriends\",!0).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),u.exit().remove(),u.each((function(t,c){var u,h=n.select(this),p=l(a),d=p.colorscale,g=p.reversescale;if(d){if(!r){var m=d.length;u=0===c?d[g?m-1:0][1]:1===c?d[g?0:m-1][1]:d[Math.floor((m-1)/2)][1]}}else{var v=a.vertexcolor||a.facecolor||a.color;u=i.isArrayOrTypedArray(v)?v[c]||v[0]:v}h.attr(\"d\",t[0]),u?h.call(s.fill,u):h.call((function(t){if(t.size()){var n=\"legendfill-\"+a.uid;o.gradient(t,e,n,f(g,\"radial\"===r),d,\"fill\")}}))}))})).each((function(t){var e=t[0].trace,r=\"waterfall\"===e.type;if(t[0]._distinct&&r){var a=t[0].trace[t[0].dir].marker;return t[0].mc=a.color,t[0].mlw=a.line.width,t[0].mlc=a.line.color,m(t,this,\"waterfall\")}var i=[];e.visible&&r&&(i=t[0].hasTotals?[[\"increasing\",\"M-6,-6V6H0Z\"],[\"totals\",\"M6,6H0L-6,-6H-0Z\"],[\"decreasing\",\"M6,6V-6H0Z\"]]:[[\"increasing\",\"M-6,-6V6H6Z\"],[\"decreasing\",\"M6,6V-6H-6Z\"]]);var o=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendwaterfall\").data(i);o.enter().append(\"path\").classed(\"legendwaterfall\",!0).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),o.exit().remove(),o.each((function(t){var r=n.select(this),a=e[t[0]].marker,i=g(void 0,a.line,5,2);r.attr(\"d\",t[1]).style(\"stroke-width\",i+\"px\").call(s.fill,a.color),i&&r.call(s.stroke,a.line.color)}))})).each((function(t){m(t,this,\"funnel\")})).each((function(t){m(t,this)})).each((function(t){var r=t[0].trace,l=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendbox\").data(r.visible&&a.traceIs(r,\"box-violin\")?[t]:[]);l.enter().append(\"path\").classed(\"legendbox\",!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",\"translate(20,0)\"),l.exit().remove(),l.each((function(){var t=n.select(this);if(\"all\"!==r.boxpoints&&\"all\"!==r.points||0!==s.opacity(r.fillcolor)||0!==s.opacity((r.line||{}).color)){var a=g(void 0,r.line,5,2);t.style(\"stroke-width\",a+\"px\").call(s.fill,r.fillcolor),a&&s.stroke(t,r.line.color)}else{var c=i.minExtend(r,{marker:{size:d?12:i.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:\"diameter\"}});l.call(o.pointStyle,c,e)}}))})).each((function(t){v(t,this,\"funnelarea\")})).each((function(t){v(t,this,\"pie\")})).each((function(t){var r,a,s=t[0],u=s.trace,h=u.visible&&u.fill&&\"none\"!==u.fill,p=c.hasLines(u),d=u.contours,m=!1,v=!1,y=l(u),x=y.colorscale,b=y.reversescale;if(d){var _=d.coloring;\"lines\"===_?m=!0:p=\"none\"===_||\"heatmap\"===_||d.showlines,\"constraint\"===d.type?h=\"=\"!==d._operation:\"fill\"!==_&&\"heatmap\"!==_||(v=!0)}var w=c.hasMarkers(u)||c.hasText(u),T=h||v,k=p||m,A=w||!T?\"M5,0\":k?\"M5,-2\":\"M5,-3\",M=n.select(this),S=M.select(\".legendfill\").selectAll(\"path\").data(h||v?[t]:[]);if(S.enter().append(\"path\").classed(\"js-fill\",!0),S.exit().remove(),S.attr(\"d\",A+\"h30v6h-30z\").call(h?o.fillGroupStyle:function(t){if(t.size()){var r=\"legendfill-\"+u.uid;o.gradient(t,e,r,f(b),x,\"fill\")}}),p||m){var E=g(void 0,u.line,10,5);a=i.minExtend(u,{line:{width:E}}),r=[i.minExtend(s,{trace:a})]}var C=M.select(\".legendlines\").selectAll(\"path\").data(p||m?[r]:[]);C.enter().append(\"path\").classed(\"js-line\",!0),C.exit().remove(),C.attr(\"d\",A+(m?\"l30,0.0001\":\"h30\")).call(p?o.lineGroupStyle:function(t){if(t.size()){var r=\"legendline-\"+u.uid;o.lineGroupStyle(t),o.gradient(t,e,r,f(b),x,\"stroke\")}})})).each((function(t){var r,a,s=t[0],l=s.trace,u=c.hasMarkers(l),h=c.hasText(l),f=c.hasLines(l);function p(t,e,r,n){var a=i.nestedProperty(l,t).get(),o=i.isArrayOrTypedArray(a)&&e?e(a):a;if(d&&o&&void 0!==n&&(o=n),r){if(or[1])return r[1]}return o}function g(t){return s._distinct&&s.index&&t[s.index]?t[s.index]:t[0]}if(u||h||f){var m={},v={};if(u){m.mc=p(\"marker.color\",g),m.mx=p(\"marker.symbol\",g),m.mo=p(\"marker.opacity\",i.mean,[.2,1]),m.mlc=p(\"marker.line.color\",g),m.mlw=p(\"marker.line.width\",i.mean,[0,5],2),v.marker={sizeref:1,sizemin:1,sizemode:\"diameter\"};var y=p(\"marker.size\",i.mean,[2,16],12);m.ms=y,v.marker.size=y}f&&(v.line={width:p(\"line.width\",g,[0,10],5)}),h&&(m.tx=\"Aa\",m.tp=p(\"textposition\",g),m.ts=10,m.tc=p(\"textfont.color\",g),m.tf=p(\"textfont.family\",g)),r=[i.minExtend(s,m)],(a=i.minExtend(l,v)).selectedpoints=null,a.texttemplate=null}var x=n.select(this).select(\"g.legendpoints\"),b=x.selectAll(\"path.scatterpts\").data(u?r:[]);b.enter().insert(\"path\",\":first-child\").classed(\"scatterpts\",!0).attr(\"transform\",\"translate(20,0)\"),b.exit().remove(),b.call(o.pointStyle,a,e),u&&(r[0].mrc=3);var _=x.selectAll(\"g.pointtext\").data(h?r:[]);_.enter().append(\"g\").classed(\"pointtext\",!0).append(\"text\").attr(\"transform\",\"translate(20,0)\"),_.exit().remove(),_.selectAll(\"text\").call(o.textPointStyle,a,e)})).each((function(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendcandle\").data(e.visible&&\"candlestick\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendcandle\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H-8M-8,6V-6H8Z\":\"M15,0H8M8,-6V6H-8Z\"})).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?\"increasing\":\"decreasing\"],o=g(void 0,i.line,5,2);a.style(\"stroke-width\",o+\"px\").call(s.fill,i.fillcolor),o&&s.stroke(a,i.line.color)}))})).each((function(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendohlc\").data(e.visible&&\"ohlc\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendohlc\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H0M-8,-6V0\":\"M15,0H0M8,6V0\"})).attr(\"transform\",\"translate(20,0)\").style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?\"increasing\":\"decreasing\"],l=g(void 0,i.line,5,2);a.style(\"fill\",\"none\").call(o.dashLine,i.line.dash,l),l&&s.stroke(a,i.line.color)}))}))}},{\"../../lib\":728,\"../../registry\":859,\"../../traces/pie/helpers\":1113,\"../../traces/pie/style_one\":1119,\"../../traces/scatter/subtypes\":1158,\"../color\":595,\"../colorscale/helpers\":606,\"../drawing\":617,d3:164}],654:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../plots/plots\"),i=t(\"../../plots/cartesian/axis_ids\"),o=t(\"../../fonts/ploticon\"),s=t(\"../shapes/draw\").eraseActiveShape,l=t(\"../../lib\"),c=l._,u=e.exports={};function h(t,e){var r,a,o=e.currentTarget,s=o.getAttribute(\"data-attr\"),l=o.getAttribute(\"data-val\")||!0,c=t._fullLayout,u={},h=i.list(t,null,!0),f=c._cartesianSpikesEnabled;if(\"zoom\"===s){var p,d=\"in\"===l?.5:2,g=(1+d)/2,m=(1-d)/2;for(a=0;a1?(E=[\"toggleHover\"],C=[\"resetViews\"]):d?(S=[\"zoomInGeo\",\"zoomOutGeo\"],E=[\"hoverClosestGeo\"],C=[\"resetGeo\"]):p?(E=[\"hoverClosest3d\"],C=[\"resetCameraDefault3d\",\"resetCameraLastSave3d\"]):x?(S=[\"zoomInMapbox\",\"zoomOutMapbox\"],E=[\"toggleHover\"],C=[\"resetViewMapbox\"]):v?E=[\"hoverClosestGl2d\"]:g?E=[\"hoverClosestPie\"]:_?(E=[\"hoverClosestCartesian\",\"hoverCompareCartesian\"],C=[\"resetViewSankey\"]):E=[\"toggleHover\"];f&&(E=[\"toggleSpikelines\",\"hoverClosestCartesian\",\"hoverCompareCartesian\"]);(function(t){for(var e=0;e0)){var g=function(t,e,r){for(var n=r.filter((function(r){return e[r].anchor===t._id})),a=0,i=0;i=n.max)e=R[r+1];else if(t=n.pmax)e=R[r+1];else if(t0?f+c:c;return{ppad:c,ppadplus:u?d:g,ppadminus:u?g:d}}return{ppad:c}}function u(t,e,r,n,a){var s=\"category\"===t.type||\"multicategory\"===t.type?t.r2c:t.d2c;if(void 0!==e)return[s(e),s(r)];if(n){var l,c,u,h,f=1/0,p=-1/0,d=n.match(i.segmentRE);for(\"date\"===t.type&&(s=o.decodeDate(s)),l=0;lp&&(p=h)));return p>=f?[f,p]:void 0}}e.exports=function(t){var e=t._fullLayout,r=n.filterVisible(e.shapes);if(r.length&&t._fullData.length)for(var o=0;oy?(k=h,E=\"y0\",A=y,C=\"y1\"):(k=y,E=\"y1\",A=h,C=\"y0\");W(n),J(s,r),function(t,e,r){var n=e.xref,a=e.yref,o=i.getFromId(r,n),s=i.getFromId(r,a),l=\"\";\"paper\"===n||o.autorange||(l+=n);\"paper\"===a||s.autorange||(l+=a);u.setClipUrl(t,l?\"clip\"+r._fullLayout._uid+l:null,r)}(e,r,t),Y.moveFn=\"move\"===z?Z:X,Y.altKey=n.altKey},doneFn:function(){if(v(t))return;p(e),K(s),b(e,t,r),n.call(\"_guiRelayout\",t,l.getUpdateObj())},clickFn:function(){if(v(t))return;K(s)}};function W(r){if(v(t))z=null;else if(R)z=\"path\"===r.target.tagName?\"move\":\"start-point\"===r.target.attributes[\"data-line-point\"].value?\"resize-over-start-point\":\"resize-over-end-point\";else{var n=Y.element.getBoundingClientRect(),a=n.right-n.left,i=n.bottom-n.top,o=r.clientX-n.left,s=r.clientY-n.top,l=!F&&a>10&&i>10&&!r.shiftKey?f.getCursor(o/a,1-s/i):\"move\";p(e,l),z=l.split(\"-\")[0]}}function Z(n,a){if(\"path\"===r.type){var i=function(t){return t},o=i,l=i;O?B(\"xanchor\",r.xanchor=q(x+n)):(o=function(t){return q(V(t)+n)},N&&\"date\"===N.type&&(o=g.encodeDate(o))),D?B(\"yanchor\",r.yanchor=H(T+a)):(l=function(t){return H(U(t)+a)},j&&\"date\"===j.type&&(l=g.encodeDate(l))),B(\"path\",r.path=w(I,o,l))}else O?B(\"xanchor\",r.xanchor=q(x+n)):(B(\"x0\",r.x0=q(c+n)),B(\"x1\",r.x1=q(m+n))),D?B(\"yanchor\",r.yanchor=H(T+a)):(B(\"y0\",r.y0=H(h+a)),B(\"y1\",r.y1=H(y+a)));e.attr(\"d\",_(t,r)),J(s,r)}function X(n,a){if(F){var i=function(t){return t},o=i,l=i;O?B(\"xanchor\",r.xanchor=q(x+n)):(o=function(t){return q(V(t)+n)},N&&\"date\"===N.type&&(o=g.encodeDate(o))),D?B(\"yanchor\",r.yanchor=H(T+a)):(l=function(t){return H(U(t)+a)},j&&\"date\"===j.type&&(l=g.encodeDate(l))),B(\"path\",r.path=w(I,o,l))}else if(R){if(\"resize-over-start-point\"===z){var u=c+n,f=D?h-a:h+a;B(\"x0\",r.x0=O?u:q(u)),B(\"y0\",r.y0=D?f:H(f))}else if(\"resize-over-end-point\"===z){var p=m+n,d=D?y-a:y+a;B(\"x1\",r.x1=O?p:q(p)),B(\"y1\",r.y1=D?d:H(d))}}else{var v=function(t){return-1!==z.indexOf(t)},b=v(\"n\"),G=v(\"s\"),Y=v(\"w\"),W=v(\"e\"),Z=b?k+a:k,X=G?A+a:A,K=Y?M+n:M,Q=W?S+n:S;D&&(b&&(Z=k-a),G&&(X=A-a)),(!D&&X-Z>10||D&&Z-X>10)&&(B(E,r[E]=D?Z:H(Z)),B(C,r[C]=D?X:H(X))),Q-K>10&&(B(L,r[L]=O?K:q(K)),B(P,r[P]=O?Q:q(Q)))}e.attr(\"d\",_(t,r)),J(s,r)}function J(t,e){(O||D)&&function(){var r=\"path\"!==e.type,n=t.selectAll(\".visual-cue\").data([0]);n.enter().append(\"path\").attr({fill:\"#fff\",\"fill-rule\":\"evenodd\",stroke:\"#000\",\"stroke-width\":1}).classed(\"visual-cue\",!0);var i=V(O?e.xanchor:a.midRange(r?[e.x0,e.x1]:g.extractPathCoords(e.path,d.paramIsX))),o=U(D?e.yanchor:a.midRange(r?[e.y0,e.y1]:g.extractPathCoords(e.path,d.paramIsY)));if(i=g.roundPositionForSharpStrokeRendering(i,1),o=g.roundPositionForSharpStrokeRendering(o,1),O&&D){var s=\"M\"+(i-1-1)+\",\"+(o-1-1)+\"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z\";n.attr(\"d\",s)}else if(O){var l=\"M\"+(i-1-1)+\",\"+(o-9-1)+\"v18 h2 v-18 Z\";n.attr(\"d\",l)}else{var c=\"M\"+(i-9-1)+\",\"+(o-1-1)+\"h18 v2 h-18 Z\";n.attr(\"d\",c)}}()}function K(t){t.selectAll(\".visual-cue\").remove()}f.init(Y),G.node().onmousemove=W}(t,O,l,e,r,z):!0===l.editable&&O.style(\"pointer-events\",P||c.opacity(S)*M<=.5?\"stroke\":\"all\");O.node().addEventListener(\"click\",(function(){return function(t,e){if(!y(t))return;var r=+e.node().getAttribute(\"data-index\");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void T(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=T,m(t)}}(t,O)}))}}function b(t,e,r){var n=(r.xref+r.yref).replace(/paper/g,\"\");u.setClipUrl(t,n?\"clip\"+e._fullLayout._uid+n:null,e)}function _(t,e){var r,n,o,s,l,c,u,h,f=e.type,p=i.getFromId(t,e.xref),m=i.getFromId(t,e.yref),v=t._fullLayout._size;if(p?(r=g.shapePositionToRange(p),n=function(t){return p._offset+p.r2p(r(t,!0))}):n=function(t){return v.l+v.w*t},m?(o=g.shapePositionToRange(m),s=function(t){return m._offset+m.r2p(o(t,!0))}):s=function(t){return v.t+v.h*(1-t)},\"path\"===f)return p&&\"date\"===p.type&&(n=g.decodeDate(n)),m&&\"date\"===m.type&&(s=g.decodeDate(s)),function(t,e,r){var n=t.path,i=t.xsizemode,o=t.ysizemode,s=t.xanchor,l=t.yanchor;return n.replace(d.segmentRE,(function(t){var n=0,c=t.charAt(0),u=d.paramIsX[c],h=d.paramIsY[c],f=d.numParams[c],p=t.substr(1).replace(d.paramRE,(function(t){return u[n]?t=\"pixel\"===i?e(s)+Number(t):e(t):h[n]&&(t=\"pixel\"===o?r(l)-Number(t):r(t)),++n>f&&(t=\"X\"),t}));return n>f&&(p=p.replace(/[\\s,]*X.*/,\"\"),a.log(\"Ignoring extra params in segment \"+t)),c+p}))}(e,n,s);if(\"pixel\"===e.xsizemode){var y=n(e.xanchor);l=y+e.x0,c=y+e.x1}else l=n(e.x0),c=n(e.x1);if(\"pixel\"===e.ysizemode){var x=s(e.yanchor);u=x-e.y0,h=x-e.y1}else u=s(e.y0),h=s(e.y1);if(\"line\"===f)return\"M\"+l+\",\"+u+\"L\"+c+\",\"+h;if(\"rect\"===f)return\"M\"+l+\",\"+u+\"H\"+c+\"V\"+h+\"H\"+l+\"Z\";var b=(l+c)/2,_=(u+h)/2,w=Math.abs(b-l),T=Math.abs(_-u),k=\"A\"+w+\",\"+T,A=b+w+\",\"+_;return\"M\"+A+k+\" 0 1,1 \"+(b+\",\"+(_-T))+k+\" 0 0,1 \"+A+\"Z\"}function w(t,e,r){return t.replace(d.segmentRE,(function(t){var n=0,a=t.charAt(0),i=d.paramIsX[a],o=d.paramIsY[a],s=d.numParams[a];return a+t.substr(1).replace(d.paramRE,(function(t){return n>=s||(i[n]?t=e(t):o[n]&&(t=r(t)),n++),t}))}))}function T(t){y(t)&&(t._fullLayout._activeShapeIndex>=0&&(l(t),delete t._fullLayout._activeShapeIndex,m(t)))}e.exports={draw:m,drawOne:x,eraseActiveShape:function(t){if(!y(t))return;l(t);var e=t._fullLayout._activeShapeIndex,r=(t.layout||{}).shapes||[];if(e=0&&h(v),r.attr(\"d\",g(e)),A&&!f)&&(k=function(t,e){for(var r=0;r1&&(2!==t.length||\"Z\"!==t[1][0])&&(0===T&&(t[0][0]=\"M\"),e[w]=t,y(),x())}}()}}function I(t,r){!function(t,r){if(e.length)for(var n=0;n0&&l0&&(s=s.transition().duration(e.transition.duration).ease(e.transition.easing)),s.attr(\"transform\",\"translate(\"+(o-.5*u.gripWidth)+\",\"+e._dims.currentValueTotalHeight+\")\")}}function S(t,e){var r=t._dims;return r.inputAreaStart+u.stepInset+(r.inputAreaLength-2*u.stepInset)*Math.min(1,Math.max(0,e))}function E(t,e){var r=t._dims;return Math.min(1,Math.max(0,(e-u.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*u.stepInset-2*r.inputAreaStart)))}function C(t,e,r){var n=r._dims,a=s.ensureSingle(t,\"rect\",u.railTouchRectClass,(function(n){n.call(k,e,t,r).style(\"pointer-events\",\"all\")}));a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,u.tickOffset+r.ticklen+n.labelHeight)}).call(i.fill,r.bgcolor).attr(\"opacity\",0),o.setTranslate(a,0,n.currentValueTotalHeight)}function L(t,e){var r=e._dims,n=r.inputAreaLength-2*u.railInset,a=s.ensureSingle(t,\"rect\",u.railRectClass);a.attr({width:n,height:u.railWidth,rx:u.railRadius,ry:u.railRadius,\"shape-rendering\":\"crispEdges\"}).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\"),o.setTranslate(a,u.railInset,.5*(r.inputAreaWidth-u.railWidth)+r.currentValueTotalHeight)}e.exports=function(t){var e=t._fullLayout,r=function(t,e){for(var r=t[u.name],n=[],a=0;a0?[0]:[]);function s(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),a.autoMargin(t,g(e))}if(i.enter().append(\"g\").classed(u.containerClassName,!0).style(\"cursor\",\"ew-resize\"),i.exit().each((function(){n.select(this).selectAll(\"g.\"+u.groupClassName).each(s)})).remove(),0!==r.length){var l=i.selectAll(\"g.\"+u.groupClassName).data(r,m);l.enter().append(\"g\").classed(u.groupClassName,!0),l.exit().each(s).remove();for(var c=0;c0||h<0){var m={left:[-p,0],right:[p,0],top:[0,-p],bottom:[0,p]}[x.side];e.attr(\"transform\",\"translate(\"+m+\")\")}}}return O.call(D),I&&(S?O.on(\".opacity\",null):(k=0,A=!0,O.text(v).on(\"mouseover.opacity\",(function(){n.select(this).transition().duration(h.SHOW_PLACEHOLDER).style(\"opacity\",1)})).on(\"mouseout.opacity\",(function(){n.select(this).transition().duration(h.HIDE_PLACEHOLDER).style(\"opacity\",0)}))),O.call(u.makeEditable,{gd:t}).on(\"edit\",(function(e){void 0!==y?o.call(\"_guiRestyle\",t,m,e,y):o.call(\"_guiRelayout\",t,m,e)})).on(\"cancel\",(function(){this.text(this.attr(\"data-unformatted\")).call(D)})).on(\"input\",(function(t){this.text(t||\" \").call(u.positionText,b.x,b.y)}))),O.classed(\"js-placeholder\",A),w}}},{\"../../constants/alignment\":697,\"../../constants/interactions\":703,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../plots/plots\":839,\"../../registry\":859,\"../color\":595,\"../drawing\":617,d3:164,\"fast-isnumeric\":236}],691:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../color/attributes\"),i=t(\"../../lib/extend\").extendFlat,o=t(\"../../plot_api/edit_types\").overrideAll,s=t(\"../../plots/pad_attributes\"),l=t(\"../../plot_api/plot_template\").templatedArray,c=l(\"button\",{visible:{valType:\"boolean\"},method:{valType:\"enumerated\",values:[\"restyle\",\"relayout\",\"animate\",\"update\",\"skip\"],dflt:\"restyle\"},args:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},args2:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},label:{valType:\"string\",dflt:\"\"},execute:{valType:\"boolean\",dflt:!0}});e.exports=o(l(\"updatemenu\",{_arrayAttrRegexps:[/^updatemenus\\[(0|[1-9][0-9]+)\\]\\.buttons/],visible:{valType:\"boolean\"},type:{valType:\"enumerated\",values:[\"dropdown\",\"buttons\"],dflt:\"dropdown\"},direction:{valType:\"enumerated\",values:[\"left\",\"right\",\"up\",\"down\"],dflt:\"down\"},active:{valType:\"integer\",min:-1,dflt:0},showactive:{valType:\"boolean\",dflt:!0},buttons:c,x:{valType:\"number\",min:-2,max:3,dflt:-.05},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"right\"},y:{valType:\"number\",min:-2,max:3,dflt:1},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"top\"},pad:i(s({editType:\"arraydraw\"}),{}),font:n({}),bgcolor:{valType:\"color\"},bordercolor:{valType:\"color\",dflt:a.borderLine},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"arraydraw\"}}),\"arraydraw\",\"from-root\")},{\"../../lib/extend\":719,\"../../plot_api/edit_types\":759,\"../../plot_api/plot_template\":766,\"../../plots/font_attributes\":804,\"../../plots/pad_attributes\":838,\"../color/attributes\":594}],692:[function(t,e,r){\"use strict\";e.exports={name:\"updatemenus\",containerClassName:\"updatemenu-container\",headerGroupClassName:\"updatemenu-header-group\",headerClassName:\"updatemenu-header\",headerArrowClassName:\"updatemenu-header-arrow\",dropdownButtonGroupClassName:\"updatemenu-dropdown-button-group\",dropdownButtonClassName:\"updatemenu-dropdown-button\",buttonClassName:\"updatemenu-button\",itemRectClassName:\"updatemenu-item-rect\",itemTextClassName:\"updatemenu-item-text\",menuIndexAttrName:\"updatemenu-active-index\",autoMarginIdRoot:\"updatemenu-\",blankHeaderOpts:{label:\" \"},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:\"#F4FAFF\",hoverColor:\"#F4FAFF\",arrowSymbol:{left:\"\\u25c4\",right:\"\\u25ba\",up:\"\\u25b2\",down:\"\\u25bc\"}}},{}],693:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/array_container_defaults\"),i=t(\"./attributes\"),o=t(\"./constants\").name,s=i.buttons;function l(t,e,r){function o(r,a){return n.coerce(t,e,i,r,a)}o(\"visible\",a(t,e,{name:\"buttons\",handleItemDefaults:c}).length>0)&&(o(\"active\"),o(\"direction\"),o(\"type\"),o(\"showactive\"),o(\"x\"),o(\"y\"),n.noneOrAll(t,e,[\"x\",\"y\"]),o(\"xanchor\"),o(\"yanchor\"),o(\"pad.t\"),o(\"pad.r\"),o(\"pad.b\"),o(\"pad.l\"),n.coerceFont(o,\"font\",r.font),o(\"bgcolor\",r.paper_bgcolor),o(\"bordercolor\"),o(\"borderwidth\"))}function c(t,e){function r(r,a){return n.coerce(t,e,s,r,a)}r(\"visible\",\"skip\"===t.method||Array.isArray(t.args))&&(r(\"method\"),r(\"args\"),r(\"args2\"),r(\"label\"),r(\"execute\"))}e.exports=function(t,e){a(t,e,{name:o,handleItemDefaults:l})}},{\"../../lib\":728,\"../../plots/array_container_defaults\":772,\"./attributes\":691,\"./constants\":692}],694:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/plots\"),i=t(\"../color\"),o=t(\"../drawing\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../plot_api/plot_template\").arrayEditor,u=t(\"../../constants/alignment\").LINE_SPACING,h=t(\"./constants\"),f=t(\"./scrollbox\");function p(t){return t._index}function d(t,e){return+t.attr(h.menuIndexAttrName)===e._index}function g(t,e,r,n,a,i,o,s){e.active=o,c(t.layout,h.name,e).applyUpdate(\"active\",o),\"buttons\"===e.type?v(t,n,null,null,e):\"dropdown\"===e.type&&(a.attr(h.menuIndexAttrName,\"-1\"),m(t,n,a,i,e),s||v(t,n,a,i,e))}function m(t,e,r,n,a){var i=s.ensureSingle(e,\"g\",h.headerClassName,(function(t){t.style(\"pointer-events\",\"all\")})),l=a._dims,c=a.active,u=a.buttons[c]||h.blankHeaderOpts,f={y:a.pad.t,yPad:0,x:a.pad.l,xPad:0,index:0},p={width:l.headerWidth,height:l.headerHeight};i.call(y,a,u,t).call(M,a,f,p),s.ensureSingle(e,\"text\",h.headerArrowClassName,(function(t){t.classed(\"user-select-none\",!0).attr(\"text-anchor\",\"end\").call(o.font,a.font).text(h.arrowSymbol[a.direction])})).attr({x:l.headerWidth-h.arrowOffsetX+a.pad.l,y:l.headerHeight/2+h.textOffsetY+a.pad.t}),i.on(\"click\",(function(){r.call(S,String(d(r,a)?-1:a._index)),v(t,e,r,n,a)})),i.on(\"mouseover\",(function(){i.call(w)})),i.on(\"mouseout\",(function(){i.call(T,a)})),o.setTranslate(e,l.lx,l.ly)}function v(t,e,r,i,o){r||(r=e).attr(\"pointer-events\",\"all\");var l=function(t){return-1==+t.attr(h.menuIndexAttrName)}(r)&&\"buttons\"!==o.type?[]:o.buttons,c=\"dropdown\"===o.type?h.dropdownButtonClassName:h.buttonClassName,u=r.selectAll(\"g.\"+c).data(s.filterVisible(l)),f=u.enter().append(\"g\").classed(c,!0),p=u.exit();\"dropdown\"===o.type?(f.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\"),p.transition().attr(\"opacity\",\"0\").remove()):p.remove();var d=0,m=0,v=o._dims,x=-1!==[\"up\",\"down\"].indexOf(o.direction);\"dropdown\"===o.type&&(x?m=v.headerHeight+h.gapButtonHeader:d=v.headerWidth+h.gapButtonHeader),\"dropdown\"===o.type&&\"up\"===o.direction&&(m=-h.gapButtonHeader+h.gapButton-v.openHeight),\"dropdown\"===o.type&&\"left\"===o.direction&&(d=-h.gapButtonHeader+h.gapButton-v.openWidth);var b={x:v.lx+d+o.pad.l,y:v.ly+m+o.pad.t,yPad:h.gapButton,xPad:h.gapButton,index:0},k={l:b.x+o.borderwidth,t:b.y+o.borderwidth};u.each((function(s,l){var c=n.select(this);c.call(y,o,s,t).call(M,o,b),c.on(\"click\",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(g(t,o,0,e,r,i,-1),a.executeAPICommand(t,s.method,s.args2)):(g(t,o,0,e,r,i,l),a.executeAPICommand(t,s.method,s.args))),t.emit(\"plotly_buttonclicked\",{menu:o,button:s,active:o.active}))})),c.on(\"mouseover\",(function(){c.call(w)})),c.on(\"mouseout\",(function(){c.call(T,o),u.call(_,o)}))})),u.call(_,o),x?(k.w=Math.max(v.openWidth,v.headerWidth),k.h=b.y-k.t):(k.w=b.x-k.l,k.h=Math.max(v.openHeight,v.headerHeight)),k.direction=o.direction,i&&(u.size()?function(t,e,r,n,a,i){var o,s,l,c=a.direction,u=\"up\"===c||\"down\"===c,f=a._dims,p=a.active;if(u)for(s=0,l=0;l0?[0]:[]);if(o.enter().append(\"g\").classed(h.containerClassName,!0).style(\"cursor\",\"pointer\"),o.exit().each((function(){n.select(this).selectAll(\"g.\"+h.headerGroupClassName).each(i)})).remove(),0!==r.length){var l=o.selectAll(\"g.\"+h.headerGroupClassName).data(r,p);l.enter().append(\"g\").classed(h.headerGroupClassName,!0);for(var c=s.ensureSingle(o,\"g\",h.dropdownButtonGroupClassName,(function(t){t.style(\"pointer-events\",\"all\")})),u=0;uw,A=s.barLength+2*s.barPad,M=s.barWidth+2*s.barPad,S=d,E=m+v;E+M>c&&(E=c-M);var C=this.container.selectAll(\"rect.scrollbar-horizontal\").data(k?[0]:[]);C.exit().on(\".drag\",null).remove(),C.enter().append(\"rect\").classed(\"scrollbar-horizontal\",!0).call(a.fill,s.barColor),k?(this.hbar=C.attr({rx:s.barRadius,ry:s.barRadius,x:S,y:E,width:A,height:M}),this._hbarXMin=S+A/2,this._hbarTranslateMax=w-A):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=v>T,P=s.barWidth+2*s.barPad,I=s.barLength+2*s.barPad,z=d+g,O=m;z+P>l&&(z=l-P);var D=this.container.selectAll(\"rect.scrollbar-vertical\").data(L?[0]:[]);D.exit().on(\".drag\",null).remove(),D.enter().append(\"rect\").classed(\"scrollbar-vertical\",!0).call(a.fill,s.barColor),L?(this.vbar=D.attr({rx:s.barRadius,ry:s.barRadius,x:z,y:O,width:P,height:I}),this._vbarYMin=O+I/2,this._vbarTranslateMax=T-I):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var R=this.id,F=u-.5,B=L?h+P+.5:h+.5,N=f-.5,j=k?p+M+.5:p+.5,V=o._topdefs.selectAll(\"#\"+R).data(k||L?[0]:[]);if(V.exit().remove(),V.enter().append(\"clipPath\").attr(\"id\",R).append(\"rect\"),k||L?(this._clipRect=V.select(\"rect\").attr({x:Math.floor(F),y:Math.floor(N),width:Math.ceil(B)-Math.floor(F),height:Math.ceil(j)-Math.floor(N)}),this.container.call(i.setClipUrl,R,this.gd),this.bg.attr({x:d,y:m,width:g,height:v})):(this.bg.attr({width:0,height:0}),this.container.on(\"wheel\",null).on(\".drag\",null).call(i.setClipUrl,null),delete this._clipRect),k||L){var U=n.behavior.drag().on(\"dragstart\",(function(){n.event.sourceEvent.preventDefault()})).on(\"drag\",this._onBoxDrag.bind(this));this.container.on(\"wheel\",null).on(\"wheel\",this._onBoxWheel.bind(this)).on(\".drag\",null).call(U);var q=n.behavior.drag().on(\"dragstart\",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on(\"drag\",this._onBarDrag.bind(this));k&&this.hbar.on(\".drag\",null).call(q),L&&this.vbar.on(\".drag\",null).call(q)}this.setTranslate(e,r)},s.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on(\"wheel\",null).on(\".drag\",null).call(i.setClipUrl,null),delete this._clipRect),this.hbar&&(this.hbar.on(\".drag\",null),this.hbar.remove(),delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax),this.vbar&&(this.vbar.on(\".drag\",null),this.vbar.remove(),delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax)},s.prototype._onBoxDrag=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t-=n.event.dx),this.vbar&&(e-=n.event.dy),this.setTranslate(t,e)},s.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=n.event.deltaY),this.vbar&&(e+=n.event.deltaY),this.setTranslate(t,e)},s.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var r=t+this._hbarXMin,a=r+this._hbarTranslateMax;t=(o.constrain(n.event.x,r,a)-r)/(a-r)*(this.position.w-this._box.w)}if(this.vbar){var i=e+this._vbarYMin,s=i+this._vbarTranslateMax;e=(o.constrain(n.event.y,i,s)-i)/(s-i)*(this.position.h-this._box.h)}this.setTranslate(t,e)},s.prototype.setTranslate=function(t,e){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(t=o.constrain(t||0,0,r),e=o.constrain(e||0,0,n),this.translateX=t,this.translateY=e,this.container.call(i.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var a=t/r;this.hbar.call(i.setTranslate,t+a*this._hbarTranslateMax,e)}if(this.vbar){var s=e/n;this.vbar.call(i.setTranslate,t,e+s*this._vbarTranslateMax)}}},{\"../../lib\":728,\"../color\":595,\"../drawing\":617,d3:164}],697:[function(t,e,r){\"use strict\";e.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:\"right\",right:\"left\",top:\"bottom\",bottom:\"top\"}}},{}],698:[function(t,e,r){\"use strict\";e.exports={INCREASING:{COLOR:\"#3D9970\",SYMBOL:\"\\u25b2\"},DECREASING:{COLOR:\"#FF4136\",SYMBOL:\"\\u25bc\"}}},{}],699:[function(t,e,r){\"use strict\";e.exports={FORMAT_LINK:\"https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format\",DATE_FORMAT_LINK:\"https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format\"}},{}],700:[function(t,e,r){\"use strict\";e.exports={COMPARISON_OPS:[\"=\",\"!=\",\"<\",\">=\",\">\",\"<=\"],COMPARISON_OPS2:[\"=\",\"<\",\">=\",\">\",\"<=\"],INTERVAL_OPS:[\"[]\",\"()\",\"[)\",\"(]\",\"][\",\")(\",\"](\",\")[\"],SET_OPS:[\"{}\",\"}{\"],CONSTRAINT_REDUCTION:{\"=\":\"=\",\"<\":\"<\",\"<=\":\"<\",\">\":\">\",\">=\":\">\",\"[]\":\"[]\",\"()\":\"[]\",\"[)\":\"[]\",\"(]\":\"[]\",\"][\":\"][\",\")(\":\"][\",\"](\":\"][\",\")[\":\"][\"}}},{}],701:[function(t,e,r){\"use strict\";e.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},{}],702:[function(t,e,r){\"use strict\";e.exports={circle:\"\\u25cf\",\"circle-open\":\"\\u25cb\",square:\"\\u25a0\",\"square-open\":\"\\u25a1\",diamond:\"\\u25c6\",\"diamond-open\":\"\\u25c7\",cross:\"+\",x:\"\\u274c\"}},{}],703:[function(t,e,r){\"use strict\";e.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},{}],704:[function(t,e,r){\"use strict\";e.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE/1e4,ONEAVGYEAR:315576e5,ONEAVGMONTH:26298e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,EPOCHJD:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:\"\\u2212\"}},{}],705:[function(t,e,r){\"use strict\";r.xmlns=\"http://www.w3.org/2000/xmlns/\",r.svg=\"http://www.w3.org/2000/svg\",r.xlink=\"http://www.w3.org/1999/xlink\",r.svgAttrs={xmlns:r.svg,\"xmlns:xlink\":r.xlink}},{}],706:[function(t,e,r){\"use strict\";r.version=t(\"./version\").version,t(\"es6-promise\").polyfill(),t(\"../build/plotcss\"),t(\"./fonts/mathjax_config\")();for(var n=t(\"./registry\"),a=r.register=n.register,i=t(\"./plot_api\"),o=Object.keys(i),s=0;splotly-logomark\"}}},{}],709:[function(t,e,r){\"use strict\";r.isLeftAnchor=function(t){return\"left\"===t.xanchor||\"auto\"===t.xanchor&&t.x<=1/3},r.isCenterAnchor=function(t){return\"center\"===t.xanchor||\"auto\"===t.xanchor&&t.x>1/3&&t.x<2/3},r.isRightAnchor=function(t){return\"right\"===t.xanchor||\"auto\"===t.xanchor&&t.x>=2/3},r.isTopAnchor=function(t){return\"top\"===t.yanchor||\"auto\"===t.yanchor&&t.y>=2/3},r.isMiddleAnchor=function(t){return\"middle\"===t.yanchor||\"auto\"===t.yanchor&&t.y>1/3&&t.y<2/3},r.isBottomAnchor=function(t){return\"bottom\"===t.yanchor||\"auto\"===t.yanchor&&t.y<=1/3}},{}],710:[function(t,e,r){\"use strict\";var n=t(\"./mod\"),a=n.mod,i=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 i(e-t,s)}function u(t,e){if(l(e))return!0;var r,n;e[0](n=a(n,s))&&(n+=s);var i=a(t,s),o=i+s;return i>=r&&i<=n||o>=r&&o<=n}function h(t,e,r,n,a,i,c){a=a||0,i=i||0;var u,h,f,p,d,g=l([r,n]);function m(t,e){return[t*Math.cos(e)+a,i-t*Math.sin(e)]}g?(u=0,h=o,f=s):r=a&&t<=i);var a,i},pathArc:function(t,e,r,n,a){return h(null,t,e,r,n,a,0)},pathSector:function(t,e,r,n,a){return h(null,t,e,r,n,a,1)},pathAnnulus:function(t,e,r,n,a,i){return h(t,e,r,n,a,i,1)}}},{\"./mod\":735}],711:[function(t,e,r){\"use strict\";var n=Array.isArray,a=\"undefined\"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer:{isView:function(){return!1}},i=\"undefined\"==typeof DataView?function(){}:DataView;function o(t){return a.isView(t)&&!(t instanceof i)}function s(t){return n(t)||o(t)}function l(t,e,r){if(s(t)){if(s(t[0])){for(var n=r,a=0;aa.max?e.set(r):e.set(+t)}},integer:{coerceFunction:function(t,e,r,a){t%1||!n(t)||void 0!==a.min&&ta.max?e.set(r):e.set(+t)}},string:{coerceFunction:function(t,e,r,n){if(\"string\"!=typeof t){var a=\"number\"==typeof t;!0!==n.strict&&a?e.set(String(t)):e.set(r)}else n.noBlank&&!t?e.set(r):e.set(t)}},color:{coerceFunction:function(t,e,r){a(t).isValid()?e.set(t):e.set(r)}},colorlist:{coerceFunction:function(t,e,r){Array.isArray(t)&&t.length&&t.every((function(t){return a(t).isValid()}))?e.set(t):e.set(r)}},colorscale:{coerceFunction:function(t,e,r){e.set(o.get(t,r))}},angle:{coerceFunction:function(t,e,r){\"auto\"===t?e.set(\"auto\"):n(t)?e.set(u(+t,360)):e.set(r)}},subplotid:{coerceFunction:function(t,e,r,n){var a=n.regex||c(r);\"string\"==typeof t&&a.test(t)?e.set(t):e.set(r)},validateFunction:function(t,e){var r=e.dflt;return t===r||\"string\"==typeof t&&!!c(r).test(t)}},flaglist:{coerceFunction:function(t,e,r,n){if(\"string\"==typeof t)if(-1===(n.extras||[]).indexOf(t)){for(var a=t.split(\"+\"),i=0;i=n&&t<=a?t:u}if(\"string\"!=typeof t&&\"number\"!=typeof t)return u;t=String(t);var c=_(e),v=t.charAt(0);!c||\"G\"!==v&&\"g\"!==v||(t=t.substr(1),e=\"\");var w=c&&\"chinese\"===e.substr(0,7),T=t.match(w?x:y);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 P=m.getComponentMethod(\"calendars\",\"getCal\")(e);if(w){var I=\"i\"===A.charAt(A.length-1);A=parseInt(A,10),L=P.newDate(k,P.toMonthIndex(k,A,I),M)}else L=P.newDate(k,Number(A),M)}catch(t){return u}return L?(L.toJD()-g)*h+S*f+E*p+C*d:u}k=2===k.length?(Number(k)+2e3-b)%100+b: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=r.MIN_MS=r.dateTime2ms(\"-9999\"),a=r.MAX_MS=r.dateTime2ms(\"9999-12-31 23:59:59.9999\"),r.isDateTime=function(t,e){return r.dateTime2ms(t,e)!==u};var T=90*h,k=3*f,A=5*p;function M(t,e,r,n,a){if((e||r||n||a)&&(t+=\" \"+w(e,2)+\":\"+w(r,2),(n||a)&&(t+=\":\"+w(n,2),a))){for(var i=4;a%10==0;)i-=1,a/=10;t+=\".\"+w(a,i)}return t}r.ms2DateTime=function(t,e,r){if(\"number\"!=typeof t||!(t>=n&&t<=a))return u;e||(e=0);var i,o,s,c,y,x,b=Math.floor(10*l(t+.05,1)),w=Math.round(t-b/10);if(_(r)){var S=Math.floor(w/h)+g,E=Math.floor(l(t,h));try{i=m.getComponentMethod(\"calendars\",\"getCal\")(r).fromJD(S).formatDate(\"yyyy-mm-dd\")}catch(t){i=v(\"G%Y-%m-%d\")(new Date(w))}if(\"-\"===i.charAt(0))for(;i.length<11;)i=\"-0\"+i.substr(1);else for(;i.length<10;)i=\"0\"+i;o=e=n+h&&t<=a-h))return u;var e=Math.floor(10*l(t+.05,1)),r=new Date(Math.round(t-e/10));return M(i.time.format(\"%Y-%m-%d\")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+e)},r.cleanDate=function(t,e,n){if(t===u)return e;if(r.isJSDate(t)||\"number\"==typeof t&&isFinite(t)){if(_(n))return s.error(\"JS Dates and milliseconds are incompatible with world calendars\",t),e;if(!(t=r.ms2DateTimeLocal(+t))&&void 0!==e)return e}else if(!r.isDateTime(t,n))return s.error(\"unrecognized date\",t),e;return t};var S=/%\\d?f/g;function E(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 a=new Date(Math.floor(e+.05));if(_(n))try{t=m.getComponentMethod(\"calendars\",\"worldCalFmt\")(t,e,n)}catch(t){return\"Invalid\"}return r(t)(a)}var C=[59,59.9,59.99,59.999,59.9999];r.formatDate=function(t,e,r,n,a,i){if(a=_(a)&&a,!e)if(\"y\"===r)e=i.year;else if(\"m\"===r)e=i.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 a=(100+Math.min(l(t/d,60),C[e])).toFixed(e).substr(1);e>0&&(a=a.replace(/0+$/,\"\").replace(/[\\.]$/,\"\")),n+=\":\"+a}return n}(t,r)+\"\\n\"+E(i.dayMonthYear,t,n,a);e=i.dayMonth+\"\\n\"+i.year}return E(e,t,n,a)};var L=3*h;r.incrementMonth=function(t,e,r){r=_(r)&&r;var n=l(t,h);if(t=Math.round(t-n),r)try{var a=Math.round(t/h)+g,i=m.getComponentMethod(\"calendars\",\"getCal\")(r),o=i.fromJD(a);return e%12?i.add(o,e,\"m\"):i.add(o,e/12,\"y\"),(o.toJD()-g)*h+n}catch(e){s.error(\"invalid ms \"+t+\" in calendar \"+r)}var c=new Date(t+L);return c.setUTCMonth(c.getUTCMonth()+e)+n-L},r.findExactDates=function(t,e){for(var r,n,a=0,i=0,s=0,l=0,c=_(e)&&m.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),a=0;ae?r[n++]=[t[a][0]+360,t[a][1]]:a===e?(r[n++]=t[a],r[n++]=[t[a][0],-90]):r[n++]=t[a];var i=f.tester(r);i.pts.pop(),l.push(i)}:function(t){l.push(f.tester(t))},i.type){case\"MultiPolygon\":for(r=0;ra&&(a=c,e=l)}else e=r;return o.default(e).geometry.coordinates}(u),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 a[r]}switch(r.type){case\"FeatureCollection\":var f=r.features;for(n=0;n100?(clearInterval(i),n(\"Unexpected error while fetching from \"+t)):void a++}),50)}))}for(var o=0;o0&&(r.push(a),a=[])}return a.length>0&&r.push(a),r},r.makeLine=function(t){return 1===t.length?{type:\"LineString\",coordinates:t[0]}:{type:\"MultiLineString\",coordinates:t}},r.makePolygon=function(t){if(1===t.length)return{type:\"Polygon\",coordinates:t};for(var e=new Array(t.length),r=0;r1||g<0||g>1?null:{x:t+l*g,y:e+h*g}}function l(t,e,r,n,a){var i=n*t+a*e;if(i<0)return n*n+a*a;if(i>r){var o=n-t,s=a-e;return o*o+s*s}var l=n*e-a*t;return l*l/r}r.segmentsIntersect=s,r.segmentDistance=function(t,e,r,n,a,i,o,c){if(s(t,e,r,n,a,i,o,c))return 0;var u=r-t,h=n-e,f=o-a,p=c-i,d=u*u+h*h,g=f*f+p*p,m=Math.min(l(u,h,d,a-t,i-e),l(u,h,d,o-t,c-e),l(f,p,g,t-a,e-i),l(f,p,g,r-a,n-i));return Math.sqrt(m)},r.getTextLocation=function(t,e,r,s){if(t===a&&s===i||(n={},a=t,i=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},r.clearLocationCache=function(){a=null},r.getVisibleSegment=function(t,e,r){var n,a,i=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&&(a=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-a.x)<.1&&Math.abs(n.y-a.y)<.1}},r.findPointOnPath=function(t,e,r,n){for(var a,i,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=a:f=a,h++}return i}},{\"./mod\":735}],725:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"color-normalize\"),o=t(\"../components/colorscale\"),s=t(\"../components/color/attributes\").defaultLine,l=t(\"./array\").isArrayOrTypedArray,c=i(s);function u(t,e){var r=t;return r[3]*=e,r}function h(t){if(n(t))return c;var e=i(t);return e.length?e:c}function f(t){return n(t)?t:1}e.exports={formatColor:function(t,e,r){var n,a,s,p,d,g=t.color,m=l(g),v=l(e),y=o.extractOpts(t),x=[];if(n=void 0!==y.colorscale?o.makeColorScaleFuncFromTrace(t):h,a=m?function(t,e){return void 0===t[e]?c:i(n(t[e]))}:h,s=v?function(t,e){return void 0===t[e]?1:f(t[e])}:f,m||v)for(var b=0;bo?s:a(t)?Number(t):s:s},l.isIndex=function(t,e){return!(void 0!==e&&t>=e)&&(a(t)&&t>=0&&t%1==0)},l.noop=t(\"./noop\"),l.identity=t(\"./identity\"),l.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))},l.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},l.simpleMap=function(t,e,r,n,a){for(var i=t.length,o=new Array(i),s=0;s=Math.pow(2,r)?a>10?(l.warn(\"randstr failed uniqueness\"),c):t(e,r,n,(a||0)+1):c},l.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},l.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var r,n,a,i,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(r=0;r=s&&(a-=s*Math.floor(a/s)),a<0?a=-1-a:a>=o&&(a=s-1-a),i+=t[a]*c[n];u[r]=i}return u},l.syncOrAsync=function(t,e,r){var n;function a(){return l.syncOrAsync(t,e,r)}for(;t.length;)if((n=(0,t.splice(0,1)[0])(e))&&n.then)return n.then(a).then(void 0,l.promiseError);return r&&r(e)},l.stripTrailingSlash=function(t){return\"/\"===t.substr(-1)?t.substr(0,t.length-1):t},l.noneOrAll=function(t,e,r){if(t){var n,a=!1,i=!0;for(n=0;n0?e:0}))},l.fillArray=function(t,e,r,n){if(n=n||l.identity,l.isArrayOrTypedArray(t))for(var a=0;a1?a+o[1]:\"\";if(i&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,\"$1\"+i+\"$2\");return s+l},l.TEMPLATE_STRING_REGEX=/%{([^\\s%{}:]*)([:|\\|][^}]*)?}/g;var C=/^\\w*$/;l.templateString=function(t,e){var r={};return t.replace(l.TEMPLATE_STRING_REGEX,(function(t,n){var a;return C.test(n)?a=e[n]:(r[n]=r[n]||l.nestedProperty(e,n).get,a=r[n]()),l.isValidTextValue(a)?a:\"\"}))};var L={max:10,count:0,name:\"hovertemplate\"};l.hovertemplateString=function(){return z.apply(L,arguments)};var P={max:10,count:0,name:\"texttemplate\"};l.texttemplateString=function(){return z.apply(P,arguments)};var I=/^[:|\\|]/;function z(t,e,r){var a=this,i=arguments;e||(e={});var o={};return t.replace(l.TEMPLATE_STRING_REGEX,(function(t,s,c){var u,h,f,p;for(f=3;f=48&&o<=57,c=s>=48&&s<=57;if(l&&(n=10*n+o-48),c&&(a=10*a+s-48),!l||!c){if(n!==a)return n-a;if(o!==s)return o-s}}return a-n};var O=2e9;l.seedPseudoRandom=function(){O=2e9},l.pseudoRandom=function(){var t=O;return O=(69069*O+1)%4294967296,Math.abs(O-t)<429496729?l.pseudoRandom():O/4294967296},l.fillText=function(t,e,r){var n=Array.isArray(r)?function(t){r.push(t)}:function(t){r.text=t},a=l.extractOption(t,e,\"htx\",\"hovertext\");if(l.isValidTextValue(a))return n(a);var i=l.extractOption(t,e,\"tx\",\"text\");return l.isValidTextValue(i)?n(i):void 0},l.isValidTextValue=function(t){return t||0===t},l.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,\"translate(\"+(a-c*(r+o))+\",\"+(i-c*(n+s))+\")\"+(c<1?\"scale(\"+c+\")\":\"\")+(l?\"rotate(\"+l+(e?\"\":\" \"+r+\" \"+n)+\")\":\"\")},l.ensureUniformFontSize=function(t,e){var r=l.extendFlat({},e);return r.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),r}},{\"../constants/numerical\":704,\"./anchor_utils\":709,\"./angles\":710,\"./array\":711,\"./clean_number\":712,\"./clear_responsive\":714,\"./coerce\":715,\"./dates\":716,\"./dom\":717,\"./extend\":719,\"./filter_unique\":720,\"./filter_visible\":721,\"./geometry2d\":724,\"./identity\":727,\"./is_plain_object\":729,\"./keyed_container\":730,\"./localize\":731,\"./loggers\":732,\"./make_trace_groups\":733,\"./matrix\":734,\"./mod\":735,\"./nested_property\":736,\"./noop\":737,\"./notifier\":738,\"./push_unique\":742,\"./regex\":744,\"./relative_attr\":745,\"./relink_private\":746,\"./search\":747,\"./stats\":750,\"./throttle\":753,\"./to_log_range\":754,d3:164,\"fast-isnumeric\":236}],729:[function(t,e,r){\"use strict\";e.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)===Object.prototype}},{}],730:[function(t,e,r){\"use strict\";var n=t(\"./nested_property\"),a=/^\\w*$/;e.exports=function(t,e,r,i){var o,s,l;r=r||\"name\",i=i||\"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\")}},i.warn=function(){var t;if(n.logging>0){var e=[\"WARN:\"];for(t=0;t0){var r=[];for(t=0;t\"),\"stick\")}},i.error=function(){var t;if(n.logging>0){var e=[\"ERROR:\"];for(t=0;t0){var r=[];for(t=0;t\"),\"stick\")}}},{\"../plot_api/plot_config\":764,\"./notifier\":738}],733:[function(t,e,r){\"use strict\";var n=t(\"d3\");e.exports=function(t,e,r){var a=t.selectAll(\"g.\"+r.replace(/\\s/g,\".\")).data(e,(function(t){return t[0].trace.uid}));a.exit().remove(),a.enter().append(\"g\").attr(\"class\",r),a.order();var i=t.classed(\"rangeplot\")?\"nodeRangePlot3\":\"node3\";return a.each((function(t){t[0][i]=n.select(this)})),a}},{d3:164}],734:[function(t,e,r){\"use strict\";r.init2dArray=function(t,e){for(var r=new Array(t),n=0;ne/2?t-Math.round(t/e)*e:t}}},{}],736:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./array\").isArrayOrTypedArray;function i(t,e){return function(){var r,n,o,s,l,c=t;for(s=0;s/g),l=0;li||c===a||cs)&&(!e||!l(t))}:function(t,e){var l=t[0],c=t[1];if(l===a||li||c===a||cs)return!1;var u,h,f,p,d,g=r.length,m=r[0][0],v=r[0][1],y=0;for(u=1;uMath.max(h,m)||c>Math.max(f,v)))if(cu||Math.abs(n(o,f))>a)return!0;return!1},i.filter=function(t,e){var r=[t[0]],n=0,a=0;function o(o){t.push(o);var s=r.length,l=n;r.splice(a+1);for(var c=l+1;c1&&o(t.pop());return{addPt:o,raw:t,filtered:r}}},{\"../constants/numerical\":704,\"./matrix\":734}],741:[function(t,e,r){(function(r){\"use strict\";var n=t(\"./show_no_webgl_msg\"),a=t(\"regl\");e.exports=function(t,e){var i=t._fullLayout,o=!0;return i._glcanvas.each((function(n){if(!n.regl&&(!n.pick||i._has(\"parcoords\"))){try{n.regl=a({canvas:this,attributes:{antialias:!n.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||r.devicePixelRatio,extensions:e||[]})}catch(t){o=!1}n.regl||(o=!1),o&&this.addEventListener(\"webglcontextlost\",(function(e){t&&t.emit&&t.emit(\"plotly_webglcontextlost\",{event:e,layer:n.key})}),!1)}})),o||n({container:i._glcontainer.node()}),o}}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"./show_no_webgl_msg\":749,regl:492}],742:[function(t,e,r){\"use strict\";e.exports=function(t,e){if(e instanceof RegExp){for(var r=e.toString(),n=0;na.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(t.framework&&t.framework.isPolar)t.framework.undo();else 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 u(t,e){return t>=e}r.findBin=function(t,e,r){if(n(e.start))return r?Math.ceil((t-e.start)/e.size-1e-9)-1:Math.floor((t-e.start)/e.size+1e-9);var i,o,h=0,f=e.length,p=0,d=f>1?(e[f-1]-e[0])/(f-1):1;for(o=d>=0?r?s:l:r?u:c,t+=1e-9*d*(r?-1:1)*(d>=0?1:-1);h90&&a.log(\"Long binary search...\"),h-1},r.sorterAsc=function(t,e){return t-e},r.sorterDes=function(t,e){return e-t},r.distinctVals=function(t){var e,n=t.slice();for(n.sort(r.sorterAsc),e=n.length-1;e>-1&&n[e]===o;e--);for(var a,i=n[e]-n[0]||1,s=i/(e||1)/1e4,l=[],c=0;c<=e;c++){var u=n[c],h=u-a;void 0===a?(l.push(u),a=u):h>s&&(i=Math.min(i,h),l.push(u),a=u)}return{vals:l,minDiff:i}},r.roundUp=function(t,e,r){for(var n,a=0,i=e.length-1,o=0,s=r?0:1,l=r?1:0,c=r?Math.ceil:Math.floor;a0&&(n=1),r&&n)return t.sort(e)}return n?t:t.reverse()},r.findIndexOfMin=function(t,e){e=e||i;for(var r,n=1/0,a=0;ai.length)&&(o=i.length),n(e)||(e=!1),a(i[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)]}},{\"./array\":711,\"fast-isnumeric\":236}],751:[function(t,e,r){\"use strict\";var n=t(\"color-normalize\");e.exports=function(t){return t?n(t):[0,0,0,1]}},{\"color-normalize\":122}],752:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../lib\"),i=t(\"../constants/xmlns_namespaces\"),o=t(\"../constants/alignment\").LINE_SPACING;function s(t,e){return t.node().getBoundingClientRect()[e]}var l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;r.convertToTspans=function(t,e,A){var M=t.text(),E=!t.attr(\"data-notex\")&&\"undefined\"!=typeof MathJax&&M.match(l),C=n.select(t.node().parentNode);if(!C.empty()){var L=t.attr(\"class\")?t.attr(\"class\").split(\" \")[0]:\"text\";return L+=\"-math\",C.selectAll(\"svg.\"+L).remove(),C.selectAll(\"g.\"+L+\"-group\").remove(),t.style(\"display\",null).attr({\"data-unformatted\":M,\"data-math\":\"N\"}),E?(e&&e._promises||[]).push(new Promise((function(e){t.style(\"display\",\"none\");var r=parseInt(t.node().style.fontSize,10),i={fontSize:r};!function(t,e,r){var i,o,s,l;MathJax.Hub.Queue((function(){return o=a.extendDeepAll({},MathJax.Hub.config),s=MathJax.Hub.processSectionDelay,void 0!==MathJax.Hub.processSectionDelay&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:\"none\",tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]},displayAlign:\"left\"})}),(function(){if(\"SVG\"!==(i=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer(\"SVG\")}),(function(){var r=\"math-output-\"+a.randstr({},64);return l=n.select(\"body\").append(\"div\").attr({id:r}).style({visibility:\"hidden\",position:\"absolute\"}).style({\"font-size\":e.fontSize+\"px\"}).text(t.replace(c,\"\\\\lt \").replace(u,\"\\\\gt \")),MathJax.Hub.Typeset(l.node())}),(function(){var e=n.select(\"body\").select(\"#MathJax_SVG_glyphs\");if(l.select(\".MathJax_SVG\").empty()||!l.select(\"svg\").node())a.log(\"There was an error in the tex syntax.\",t),r();else{var o=l.select(\"svg\").node().getBoundingClientRect();r(l.select(\".MathJax_SVG\"),e,o)}if(l.remove(),\"SVG\"!==i)return MathJax.Hub.setRenderer(i)}),(function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)}))}(E[2],i,(function(n,a,i){C.selectAll(\"svg.\"+L).remove(),C.selectAll(\"g.\"+L+\"-group\").remove();var o=n&&n.select(\"svg\");if(!o||!o.node())return P(),void e();var l=C.append(\"g\").classed(L+\"-group\",!0).attr({\"pointer-events\":\"none\",\"data-unformatted\":M,\"data-math\":\"Y\"});l.node().appendChild(o.node()),a&&a.node()&&o.node().insertBefore(a.node().cloneNode(!0),o.node().firstChild),o.attr({class:L,height:i.height,preserveAspectRatio:\"xMinYMin meet\"}).style({overflow:\"visible\",\"pointer-events\":\"none\"});var c=t.node().style.fill||\"black\",u=o.select(\"g\");u.attr({fill:c,stroke:c});var h=s(u,\"width\"),f=s(u,\"height\"),p=+t.attr(\"x\")-h*{start:0,middle:.5,end:1}[t.attr(\"text-anchor\")||\"start\"],d=-(r||s(t,\"height\"))/4;\"y\"===L[0]?(l.attr({transform:\"rotate(\"+[-90,+t.attr(\"x\"),+t.attr(\"y\")]+\") translate(\"+[-h/2,d-f/2]+\")\"}),o.attr({x:+t.attr(\"x\"),y:+t.attr(\"y\")})):\"l\"===L[0]?o.attr({x:t.attr(\"x\"),y:d-f/2}):\"a\"===L[0]&&0!==L.indexOf(\"atitle\")?o.attr({x:0,y:d}):o.attr({x:p,y:+t.attr(\"y\")+d-f/2}),A&&A.call(t,l),e(l)}))}))):P(),t}function P(){C.empty()||(L=t.attr(\"class\")+\"-math\",C.select(\"svg.\"+L).remove()),t.text(\"\").style(\"white-space\",\"pre\"),function(t,e){e=e.replace(g,\" \");var r,s=!1,l=[],c=-1;function u(){c++;var e=document.createElementNS(i.svg,\"tspan\");n.select(e).attr({class:\"line\",dy:c*o+\"em\"}),t.appendChild(e),r=e;var a=l;if(l=[{node:e}],a.length>1)for(var s=1;s doesnt match end tag <\"+t+\">. Pretending it did match.\",e),r=l[l.length-1].node}else a.log(\"Ignoring unexpected end tag .\",e)}y.test(e)?u():(r=t,l=[{node:t}]);for(var C=e.split(m),L=0;L|>|>)/g;var h={sup:\"font-size:70%\",sub:\"font-size:70%\",b:\"font-weight:bold\",i:\"font-style:italic\",a:\"cursor:pointer\",span:\"\",em:\"font-style:italic;font-weight:bold\"},f={sub:\"0.3em\",sup:\"-0.6em\"},p={sub:\"-0.21em\",sup:\"0.42em\"},d=[\"http:\",\"https:\",\"mailto:\",\"\",void 0,\":\"],g=r.NEWLINES=/(\\r\\n?|\\n)/g,m=/(<[^<>]*>)/,v=/<(\\/?)([^ >]*)(\\s+(.*))?>/i,y=//i;r.BR_TAG_ALL=//gi;var x=/(^|[\\s\"'])style\\s*=\\s*(\"([^\"]*);?\"|'([^']*);?')/i,b=/(^|[\\s\"'])href\\s*=\\s*(\"([^\"]*)\"|'([^']*)')/i,_=/(^|[\\s\"'])target\\s*=\\s*(\"([^\"\\s]*)\"|'([^'\\s]*)')/i,w=/(^|[\\s\"'])popup\\s*=\\s*(\"([\\w=,]*)\"|'([\\w=,]*)')/i;function T(t,e){if(!t)return null;var r=t.match(e),n=r&&(r[3]||r[4]);return n&&S(n)}var k=/(^|;)\\s*color:/;r.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\"],a=\"...\".length,i=t.split(m),o=[],s=\"\",l=0,c=0;ca?o.push(u.substr(0,d-a)+\"...\"):o.push(u.substr(0,d));break}s=\"\"}}return o.join(\"\")};var A={mu:\"\\u03bc\",amp:\"&\",lt:\"<\",gt:\">\",nbsp:\"\\xa0\",times:\"\\xd7\",plusmn:\"\\xb1\",deg:\"\\xb0\"},M=/&(#\\d+|#x[\\da-fA-F]+|[a-z]+);/g;function S(t){return t.replace(M,(function(t,e){return(\"#\"===e.charAt(0)?function(t){if(t>1114111)return;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)):A[e])||t}))}function E(t,e,r){var n,a,i,o=r.horizontalAlign,s=r.verticalAlign||\"top\",l=t.node().getBoundingClientRect(),c=e.node().getBoundingClientRect();return a=\"bottom\"===s?function(){return l.bottom-n.height}:\"middle\"===s?function(){return l.top+(l.height-n.height)/2}:function(){return l.top},i=\"right\"===o?function(){return l.right-n.width}:\"center\"===o?function(){return l.left+(l.width-n.width)/2}:function(){return l.left},function(){return n=this.node().getBoundingClientRect(),this.style({top:a()-c.top+\"px\",left:i()-c.left+\"px\",\"z-index\":1e3}),this}}r.convertEntities=S,r.sanitizeHTML=function(t){t=t.replace(g,\" \");for(var e=document.createElement(\"p\"),r=e,a=[],i=t.split(m),o=0;oi.ts+e?l():i.timer=setTimeout((function(){l(),i.timer=null}),e)},r.done=function(t){var e=n[t];return e&&e.timer?new Promise((function(t){var r=e.onDone;e.onDone=function(){r&&r(),t(),e.onDone=null}})):Promise.resolve()},r.clear=function(t){if(t)a(n[t]),delete n[t];else for(var e in n)r.clear(e)}},{}],754:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\");e.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}},{\"fast-isnumeric\":236}],755:[function(t,e,r){\"use strict\";var n=e.exports={},a=t(\"../plots/geo/constants\").locationmodeToLayer,i=t(\"topojson-client\").feature;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=a[t.locationmode],n=e.objects[r];return i(e,n).features}},{\"../plots/geo/constants\":806,\"topojson-client\":531}],756:[function(t,e,r){\"use strict\";e.exports={moduleType:\"locale\",name:\"en-US\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colorscale title\"},format:{date:\"%m/%d/%Y\"}}},{}],757:[function(t,e,r){\"use strict\";e.exports={moduleType:\"locale\",name:\"en\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colourscale title\"},format:{days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],periods:[\"AM\",\"PM\"],dateTime:\"%a %b %e %X %Y\",date:\"%d/%m/%Y\",time:\"%H:%M:%S\",decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"],year:\"%Y\",month:\"%b %Y\",dayMonth:\"%b %-d\",dayMonthYear:\"%b %-d, %Y\"}}},{}],758:[function(t,e,r){\"use strict\";var n=t(\"../registry\");e.exports=function(t){for(var e,r,a=n.layoutArrayContainers,i=n.layoutArrayRegexes,o=t.split(\"[\")[0],s=0;s0&&o.log(\"Clearing previous rejected promises from queue.\"),t._promises=[]},r.cleanLayout=function(t){var e,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 i=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,h=(s.subplotsRegistry.ternary||{}).attrRegex,f=(s.subplotsRegistry.gl3d||{}).attrRegex,g=Object.keys(t);for(e=0;e3?(P.x=1.02,P.xanchor=\"left\"):P.x<-2&&(P.x=-.02,P.xanchor=\"right\"),P.y>3?(P.y=1.02,P.yanchor=\"bottom\"):P.y<-2&&(P.y=-.02,P.yanchor=\"top\")),d(t),\"rotate\"===t.dragmode&&(t.dragmode=\"orbit\"),c.clean(t),t.template&&t.template.layout&&r.cleanLayout(t.template.layout),t},r.cleanData=function(t){for(var e=0;e0)return t.substr(0,e)}r.hasParent=function(t,e){for(var r=b(e);r;){if(r in t)return!0;r=b(r)}return!1};var _=[\"x\",\"y\",\"z\"];r.clearAxisTypes=function(t,e,r){for(var n=0;n1&&i.warn(\"Full array edits are incompatible with other edits\",h);var y=r[\"\"][\"\"];if(c(y))e.set(null);else{if(!Array.isArray(y))return i.warn(\"Unrecognized full array edit value\",h,y),!0;e.set(y)}return!g&&(f(m,v),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(v,h).get(),P=[],I=-1,z=C.length;for(x=0;xC.length-(A?0:1))i.warn(\"index out of range\",h,_);else if(void 0!==k)T.length>1&&i.warn(\"Insertion & removal are incompatible with edits to the same index.\",h,_),c(k)?P.push(_):A?(\"add\"===k&&(k={}),C.splice(_,0,k),L&&L.splice(_,0,{})):i.warn(\"Unrecognized full object edit value\",h,_,k),-1===I&&(I=_);else for(b=0;b=0;x--)C.splice(P[x],1),L&&L.splice(P[x],1);if(C.length?E||e.set(C):e.set(null),g)return!1;if(f(m,v),d!==a){var O;if(-1===I)O=S;else{for(z=Math.max(C.length,z),O=[],x=0;x=I);x++)O.push(_);for(x=I;x=t.data.length||a<-t.data.length)throw new Error(r+\" must be valid indices for gd.data.\");if(e.indexOf(a,n+1)>-1||a>=0&&e.indexOf(-t.data.length+a)>-1||a<0&&e.indexOf(t.data.length+a)>-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(\"undefined\"==typeof e)throw new Error(\"currentIndices is a required argument.\");if(Array.isArray(e)||(e=[e]),z(t,e,\"currentIndices\"),\"undefined\"==typeof r||Array.isArray(r)||(r=[r]),\"undefined\"!=typeof r&&z(t,r,\"newIndices\"),\"undefined\"!=typeof r&&e.length!==r.length)throw new Error(\"current and new indices must be of equal length.\")}function D(t,e,r,n,i){!function(t,e,r,n){var a=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(\"undefined\"==typeof r)throw new Error(\"indices must be an integer or array of integers\");for(var i in z(t,r,\"indices\"),e){if(!Array.isArray(e[i])||e[i].length!==r.length)throw new Error(\"attribute \"+i+\" must be an array of length equal to indices array length\");if(a&&(!(i in n)||!Array.isArray(n[i])||n[i].length!==e[i].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 i,l,c,u,h,f=o.isPlainObject(n),p=[];for(var d in Array.isArray(r)||(r=[r]),r=I(r,t.data.length-1),e)for(var g=0;g-1?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){if(t=o.getGraphDiv(t),T.clearPromiseQueue(t),t.framework&&t.framework.isPolar)return Promise.resolve(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 a=X(t,n),i=a.flags;i.calc&&(t.calcdata=void 0);var s=[f.previousPromises];i.layoutReplot?s.push(k.layoutReplot):Object.keys(n).length&&(H(t,i,a)||f.supplyDefaults(t),i.legend&&s.push(k.doLegend),i.layoutstyle&&s.push(k.layoutStyles),i.axrange&&G(s,a.rangesAltered),i.ticks&&s.push(k.doTicksRelayout),i.modebar&&s.push(k.doModeBar),i.camera&&s.push(k.doCamera),i.colorbars&&s.push(k.doColorBars),s.push(E)),s.push(f.rehover,f.redrag),c.add(t,q,[t,a.undoit],q,[t,a.redoit]);var l=o.syncOrAsync(s,t);return l&&l.then||(l=Promise.resolve(t)),l.then((function(){return t.emit(\"plotly_relayout\",a.eventData),t}))}function H(t,e,r){var n=t._fullLayout;if(!e.axrange)return!1;for(var a in e)if(\"axrange\"!==a&&e[a])return!1;for(var i in r.rangesAltered){var o=d.id2name(i),s=t.layout[o],l=n[o];if(l.autorange=s.autorange,l.range=s.range.slice(),l.cleanRange(),l._matchGroup)for(var c in l._matchGroup)if(c!==i){var u=n[d.id2name(c)];u.autorange=l.autorange,u.range=l.range.slice(),u._input.range=l.range.slice()}}return!0}function G(t,e){var r=e?function(t){var r=[],n=!0;for(var a in e){var i=d.getFromId(t,a);if(r.push(a),i._matchGroup)for(var o in i._matchGroup)e[o]||r.push(o);i.automargin&&(n=!1)}return d.draw(t,r,{skipTitle:n})}:function(t){return d.draw(t,\"redraw\")};t.push(b,k.doAutoRangeAndConstraints,r,k.drawData,k.finalDraw)}var Y=/^[xyz]axis[0-9]*\\.range(\\[[0|1]\\])?$/,W=/^[xyz]axis[0-9]*\\.autorange$/,Z=/^[xyz]axis[0-9]*\\.domain(\\[[0|1]\\])?$/;function X(t,e){var r,n,a,i=t.layout,l=t._fullLayout,c=l._guiEditing,f=N(l._preGUI,c),p=Object.keys(e),g=d.list(t),m=o.extendDeepAll({},e),v={};for(U(e),p=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(\".\"),V=s(t.layout,j).get(),q=s(l,j).get(),H=z.get();if(void 0!==O){k[I]=O,S[I]=\"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(I,X),G.impliedEdits[X]);if(-1!==[\"width\",\"height\"].indexOf(I))if(O){E(\"autosize\",null);var K=\"height\"===I?\"width\":\"height\";E(K,l[K])}else l[I]=t._initialAutoSize[I];else if(\"autosize\"===I)E(\"width\",O?null:l.width),E(\"height\",O?null:l.height);else if(F.match(Y))P(F),s(l,j+\"._inputRange\").set(null);else if(F.match(W)){P(F),s(l,j+\"._inputRange\").set(null);var Q=s(l,j).get();Q._inputDomain&&(Q._input.domain=Q._inputDomain.slice())}else F.match(Z)&&s(l,j+\"._inputDomain\").set(null);if(\"type\"===R){var $=V,tt=\"linear\"===q.type&&\"log\"===O,et=\"log\"===q.type&&\"linear\"===O;if(tt||et){if($&&$.range)if(q.autorange)tt&&($.range=$.range[1]>$.range[0]?[1,2]:[2,1]);else{var rt=$.range[0],nt=$.range[1];tt?(rt<=0&&nt<=0&&E(j+\".autorange\",!0),rt<=0?rt=nt/1e6:nt<=0&&(nt=rt/1e6),E(j+\".range[0]\",Math.log(rt)/Math.LN10),E(j+\".range[1]\",Math.log(nt)/Math.LN10)):(E(j+\".range[0]\",Math.pow(10,rt)),E(j+\".range[1]\",Math.pow(10,nt)))}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 at=s(l,I).get(),it=(O||{}).type;it&&\"-\"!==it||(it=\"linear\"),u.getComponentMethod(\"annotations\",\"convertCoords\")(t,at,it,E),u.getComponentMethod(\"images\",\"convertCoords\")(t,at,it,E)}var ot=w.containerArrayMatch(I);if(ot){r=ot.array,n=ot.index;var st=ot.property,lt=G||{editType:\"calc\"};\"\"!==n&&\"\"===st&&(w.isAddVal(O)?S[I]=null:w.isRemoveVal(O)?S[I]=(s(i,r).get()||[])[n]:o.warn(\"unrecognized full object value\",e)),A.update(_,lt),v[r]||(v[r]={});var ct=v[r][n];ct||(ct=v[r][n]={}),ct[st]=O,delete e[I]}else\"reverse\"===R?(V.range?V.range.reverse():(E(j+\".autorange\",!0),V.range=[1,0]),q.autorange?_.calc=!0:_.plot=!0):(l._has(\"scatter-like\")&&l._has(\"regl\")&&\"dragmode\"===I&&(\"lasso\"===O||\"select\"===O)&&\"lasso\"!==H&&\"select\"!==H||l._has(\"gl2d\")?_.plot=!0:G?A.update(_,G):_.calc=!0,z.set(O))}}for(r in v){w.applyContainerArrayChanges(t,f(i,r),v[r],_,f)||(_.plot=!0)}var ut=l._axisConstraintGroups||[];for(C in L)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=a.length?a[0]:a[t]:a}function l(t){return Array.isArray(i)?t>=i.length?i[0]:i[t]:i}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(i,u){function h(){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}function p(){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&&h()};e()}var d,g,m=0;function v(t){return Array.isArray(a)?m>=a.length?t.transitionOpts=a[m]:t.transitionOpts=a[0]:t.transitionOpts=a,m++,t}var y=[],x=null==e,b=Array.isArray(e);if(!x&&!b&&o.isPlainObject(e))y.push({type:\"object\",data:v(o.extendFlat({},e))});else if(x||-1!==[\"string\",\"number\"].indexOf(typeof e))for(d=0;d0&&kk)&&A.push(g);y=A}}y.length>0?function(e){if(0!==e.length){for(var a=0;a=0;n--)if(o.isPlainObject(e[n])){var g=e[n].name,m=(u[g]||d[g]||{}).name,v=e[n].name,y=u[m]||d[m];m&&v&&\"number\"==typeof v&&y&&S<5&&(S++,o.warn('addFrames: overwriting frame \"'+(u[m]||d[m]).name+'\" with a frame whose name of type \"number\" also equates to \"'+m+'\". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===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[g]={name:g},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(a=p[n].frame).name&&o.warn(\"Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings\"),!a.name)for(;u[a.name=\"frame \"+t._transitionData._counter++];);if(u[a.name]){for(i=0;i=0;r--)n=e[r],i.push({type:\"delete\",index:n}),s.unshift({type:\"insert\",index:n,value:a[n]});var l=f.modifyFrames,u=f.modifyFrames,h=[t,s],p=[t,i];return c&&c.add(t,l,h,u,p),f.modifyFrames(t,i)},r.addTraces=function t(e,n,a){e=o.getGraphDiv(e);var i,s,l=[],u=r.deleteTraces,h=t,f=[e,l],p=[e,n];for(function(t,e,r){var n,a;if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(\"undefined\"==typeof e)throw new Error(\"traces must be defined.\");for(Array.isArray(e)||(e=[e]),n=0;n=0&&r=0&&r=i.length)return!1;if(2===t.dimensions){if(r++,e.length===r)return t;var o=e[r];if(!_(o))return!1;t=i[a][o]}else t=i[a]}else t=i}}return t}function _(t){return t===Math.round(t)&&t>=0}function w(){var t,e,r={};for(t in d(r,o),n.subplotsRegistry){if((e=n.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(e.attr))for(var a=0;a=l.length)return!1;a=(r=(n.transformsRegistry[l[c].type]||{}).attributes)&&r[e[2]],s=3}else if(\"area\"===t.type)a=u[o];else{var h=t._module;if(h||(h=(n.modules[t.type||i.type.dflt]||{})._module),!h)return!1;if(!(a=(r=h.attributes)&&r[o])){var f=h.basePlotModule;f&&f.attributes&&(a=f.attributes[o])}a||(a=i[o])}return b(a,e,s)},r.getLayoutValObject=function(t,e){return b(function(t,e){var r,a,i,s,l=t._basePlotModules;if(l){var c;for(r=0;r=a&&(r._input||{})._templateitemname;o&&(i=a);var s,l=e+\"[\"+i+\"]\";function c(){s={},o&&(s[l]={},s[l].templateitemname=o)}function u(t,e){o?n.nestedProperty(s[l],t).set(e):s[l+\".\"+t]=e}function h(){var t=s;return c(),t}return c(),{modifyBase:function(t,e){s[t]=e},modifyItem:u,getUpdateObj:h,applyUpdate:function(e,r){e&&u(e,r);var a=h();for(var i in a)n.nestedProperty(t,i).set(a[i])}}}},{\"../lib\":728,\"../plots/attributes\":773}],767:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../registry\"),i=t(\"../plots/plots\"),o=t(\"../lib\"),s=t(\"../lib/clear_gl_canvases\"),l=t(\"../components/color\"),c=t(\"../components/drawing\"),u=t(\"../components/titles\"),h=t(\"../components/modebar\"),f=t(\"../plots/cartesian/axes\"),p=t(\"../constants/alignment\"),d=t(\"../plots/cartesian/constraints\"),g=d.enforce,m=d.clean,v=t(\"../plots/cartesian/autorange\").doAutoRange;function y(t,e,r){for(var n=0;n=t[1]||a[1]<=t[0])&&(i[0]e[0]))return!0}return!1}function x(t){var e,a,s,u,d,g,m=t._fullLayout,v=m._size,x=v.p,_=f.list(t,\"\",!0);if(m._paperdiv.style({width:t._context.responsive&&m.autosize&&!t._context._hasZeroWidth&&!t.layout.width?\"100%\":m.width+\"px\",height:t._context.responsive&&m.autosize&&!t._context._hasZeroHeight&&!t.layout.height?\"100%\":m.height+\"px\"}).selectAll(\".main-svg\").call(c.setSize,m.width,m.height),t._context.setBackground(t,m.paper_bgcolor),r.drawMainTitle(t),h.manage(t),!m._has(\"cartesian\"))return i.previousPromises(t);function T(t,e,r){var n=t._lw/2;return\"x\"===t._id.charAt(0)?e?\"top\"===r?e._offset-x-n:e._offset+e._length+x+n:v.t+v.h*(1-(t.position||0))+n%1:e?\"right\"===r?e._offset+e._length+x+n:e._offset-x-n:v.l+v.w*(t.position||0)+n%1}for(e=0;e<_.length;e++){var k=(u=_[e])._anchorAxis;u._linepositions={},u._lw=c.crispRound(t,u.linewidth,1),u._mainLinePosition=T(u,k,u.side),u._mainMirrorPosition=u.mirror&&k?T(u,k,p.OPPOSITE_SIDE[u.side]):null}var A=[],M=[],S=[],E=1===l.opacity(m.paper_bgcolor)&&1===l.opacity(m.plot_bgcolor)&&m.paper_bgcolor===m.plot_bgcolor;for(a in m._plots)if((s=m._plots[a]).mainplot)s.bg&&s.bg.remove(),s.bg=void 0;else{var C=s.xaxis.domain,L=s.yaxis.domain,P=s.plotgroup;if(y(C,L,S)){var I=P.node(),z=s.bg=o.ensureSingle(P,\"rect\",\"bg\");I.insertBefore(z.node(),I.childNodes[0]),M.push(a)}else P.select(\"rect.bg\").remove(),S.push([C,L]),E||(A.push(a),M.push(a))}var O,D,R,F,B,N,j,V,U,q,H,G,Y,W=m._bgLayer.selectAll(\".bg\").data(A);for(W.enter().append(\"rect\").classed(\"bg\",!0),W.exit().remove(),W.each((function(t){m._plots[t].bg=n.select(this)})),e=0;eT?u.push({code:\"unused\",traceType:y,templateCount:w,dataCount:T}):T>w&&u.push({code:\"reused\",traceType:y,templateCount:w,dataCount:T})}}else u.push({code:\"data\"});if(function t(e,r){for(var n in e)if(\"_\"!==n.charAt(0)){var i=e[n],o=g(e,n,r);a(i)?(Array.isArray(e)&&!1===i._template&&i.templateitemname&&u.push({code:\"missing\",path:o,templateitemname:i.templateitemname}),t(i,o)):Array.isArray(i)&&m(i)&&t(i,o)}}({data:p,layout:f},\"\"),u.length)return u.map(v)}},{\"../lib\":728,\"../plots/attributes\":773,\"../plots/plots\":839,\"./plot_config\":764,\"./plot_schema\":765,\"./plot_template\":766}],769:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./plot_api\"),i=t(\"../plots/plots\"),o=t(\"../lib\"),s=t(\"../snapshot/helpers\"),l=t(\"../snapshot/tosvg\"),c=t(\"../snapshot/svgtoimg\"),u=t(\"../version\").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}};e.exports=function(t,e){var r,f,p,d;function g(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||{}),!g(\"width\")&&null!==e.width||!g(\"height\")&&null!==e.height)throw new Error(\"Height and width should be pixel values.\");if(!g(\"format\"))throw new Error(\"Image format is not jpeg, png, svg or webp.\");var m={};function v(t,r){return o.coerce(e,m,h,t,r)}var y=v(\"format\"),x=v(\"width\"),b=v(\"height\"),_=v(\"scale\"),w=v(\"setBackground\"),T=v(\"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),b?A.height=b: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,y,_),n=k._fullLayout.width,h=k._fullLayout.height;function f(){a.purge(k),document.body.removeChild(k)}if(\"full-json\"===y){var p=i.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\"===y)return t(T?r:s.encodeSVG(r));var d=document.createElement(\"canvas\");d.id=o.randstr(),c({format:y,width:n,height:h,scale:_,canvas:d,svg:r,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){a.plot(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)}))}))}},{\"../lib\":728,\"../plots/plots\":839,\"../snapshot/helpers\":863,\"../snapshot/svgtoimg\":865,\"../snapshot/tosvg\":867,\"../version\":1316,\"./plot_api\":763,\"fast-isnumeric\":236}],770:[function(t,e,r){\"use strict\";var n=t(\"../lib\"),a=t(\"../plots/plots\"),i=t(\"./plot_schema\"),o=t(\"./plot_config\").dfltConfig,s=n.isPlainObject,l=Array.isArray,c=n.isArrayOrTypedArray;function u(t,e,r,a,i,o){o=o||[];for(var h=Object.keys(t),f=0;fx.length&&a.push(d(\"unused\",i,v.concat(x.length)));var A,M,S,E,C,L=x.length,P=Array.isArray(k);if(P&&(L=Math.min(L,k.length)),2===b.dimensions)for(M=0;Mx[M].length&&a.push(d(\"unused\",i,v.concat(M,x[M].length)));var I=x[M].length;for(A=0;A<(P?Math.min(I,k[M].length):I);A++)S=P?k[M][A]:k,E=y[M][A],C=x[M][A],n.validate(E,S)?C!==E&&C!==+E&&a.push(d(\"dynamic\",i,v.concat(M,A),E,C)):a.push(d(\"value\",i,v.concat(M,A),E))}else a.push(d(\"array\",i,v.concat(M),y[M]));else for(M=0;M1&&p.push(d(\"object\",\"layout\"))),a.supplyDefaults(g);for(var m=g._fullData,v=r.length,y=0;y0&&((b=A-o(m)-o(v))>M?_/b>E&&(y=m,x=v,E=_/b):_/A>E&&(y={val:m.val,pad:0},x={val:v.val,pad:0},E=_/A));if(f===p){var C=f-1,L=f+1;if(T)if(0===f)i=[0,1];else{var P=(f>0?h:u).reduce((function(t,e){return Math.max(t,o(e))}),0),I=f/(1-Math.min(.5,P/A));i=f>0?[0,I]:[I,0]}else i=k?[Math.max(0,C),Math.max(1,L)]:[C,L]}else T?(y.val>=0&&(y={val:0,pad:0}),x.val<=0&&(x={val:0,pad:0})):k&&(y.val-E*o(y)<0&&(y={val:0,pad:0}),x.val<=0&&(x={val:1,pad:0})),E=(x.val-y.val-S(m.val,v.val))/(A-o(y)-o(x)),i=[y.val-E*o(y),x.val+E*o(x)];return d&&i.reverse(),a.simpleMap(i,e.l2r||Number)}function l(t){var e=t._length/20;return\"domain\"===t.constrain&&t._inputDomain&&(e*=(t._inputDomain[1]-t._inputDomain[0])/(t.domain[1]-t.domain[0])),function(t){return t.pad+(t.extrapad?e:0)}}function c(t,e){var r,n,a,i=e._id,o=t._fullData,s=t._fullLayout,l=[],c=[];function f(t,e){for(r=0;r=r&&(c.extrapad||!o)){s=!1;break}a(e,c.val)&&c.pad<=r&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=i&&0===e;t.push({val:e,pad:u?0:r,extrapad:!u&&o})}}function p(t){return n(t)&&Math.abs(t)=e}e.exports={getAutoRange:s,makePadFn:l,doAutoRange:function(t,e){if(e.setScale(),e.autorange){e.range=s(t,e),e._r=e.range.slice(),e._rl=a.simpleMap(e._r,e.r2l);var r=e._input,n={};n[e._attr+\".range\"]=e.range,n[e._attr+\".autorange\"]=e.autorange,o.call(\"_storeDirectGUIEdit\",t.layout,t._fullLayout._preGUI,n),r.range=e.range.slice(),r.autorange=e.autorange}var i=e._anchorAxis;if(i&&i.rangeslider){var l=i.rangeslider[e._name];l&&\"auto\"===l.rangemode&&(l.range=s(t,e)),i._input.rangeslider[e._name]=a.extendFlat({},l)}},findExtremes:function(t,e,r){r||(r={});t._m||t.setScale();var a,o,s,l,c,f,d,g,m,v=[],y=[],x=e.length,b=r.padded||!1,_=r.tozero&&(\"linear\"===t.type||\"-\"===t.type),w=\"log\"===t.type,T=!1,k=r.vpadLinearized||!1;function A(t){if(Array.isArray(t))return T=!0,function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}var M=A((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),S=A((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=A(r.vpadplus||r.vpad),C=A(r.vpadminus||r.vpad);if(!T){if(g=1/0,m=-1/0,w)for(a=0;a0&&(g=o),o>m&&o-i&&(g=o),o>m&&o=I;a--)P(a);return{min:v,max:y,opts:r}},concatExtremes:c}},{\"../../constants/numerical\":704,\"../../lib\":728,\"../../registry\":859,\"fast-isnumeric\":236}],776:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../plots/plots\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../components/titles\"),u=t(\"../../components/color\"),h=t(\"../../components/drawing\"),f=t(\"./layout_attributes\"),p=t(\"./clean_ticks\"),d=t(\"../../constants/numerical\"),g=d.ONEAVGYEAR,m=d.ONEAVGMONTH,v=d.ONEDAY,y=d.ONEHOUR,x=d.ONEMIN,b=d.ONESEC,_=d.MINUS_SIGN,w=d.BADNUM,T=t(\"../../constants/alignment\"),k=T.MID_SHIFT,A=T.CAP_SHIFT,M=T.LINE_SPACING,S=T.OPPOSITE_SIDE,E=e.exports={};E.setConvert=t(\"./set_convert\");var C=t(\"./axis_autotype\"),L=t(\"./axis_ids\");E.id2name=L.id2name,E.name2id=L.name2id,E.cleanId=L.cleanId,E.list=L.list,E.listIds=L.listIds,E.getFromId=L.getFromId,E.getFromTrace=L.getFromTrace;var P=t(\"./autorange\");E.getAutoRange=P.getAutoRange,E.findExtremes=P.findExtremes;function I(t){var e=1e-4*(t[1]-t[0]);return[t[0]-e,t[1]+e]}E.coerceRef=function(t,e,r,n,a,i){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+\"axis\"],c=n+\"ref\",u={};return a||(a=l[0]||i),i||(i=a),u[c]={valType:\"enumerated\",values:l.concat(i?[i]:[]),dflt:a},s.coerce(t,e,u,c)},E.coercePosition=function(t,e,r,n,a,i){var o,l;if(\"paper\"===n||\"pixel\"===n)o=s.ensureNumber,l=r(a,i);else{var c=E.getFromId(e,n);l=r(a,i=c.fraction2r(i)),o=c.cleanPos}t[a]=o(l)},E.cleanPosition=function(t,e,r){return(\"paper\"===r||\"pixel\"===r?s.ensureNumber:E.getFromId(e,r).cleanPos)(t)},E.redrawComponents=function(t,e){e=e||E.listIds(t);var r=t._fullLayout;function n(n,a,i,s){for(var l=o.getComponentMethod(n,a),c={},u=0;u2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},E.saveRangeInitial=function(t,e){for(var r=E.list(t,\"\",!0),n=!1,a=0;a.3*f||u(n)||u(i))){var p=r.dtick/2;t+=t+p.8){var o=Number(r.substr(1));i.exactYears>.8&&o%12==0?t=E.tickIncrement(t,\"M6\",\"reverse\")+1.5*v:i.exactMonths>.8?t=E.tickIncrement(t,\"M1\",\"reverse\")+15.5*v:t-=v/2;var l=E.tickIncrement(t,r);if(l<=n)return l}return t}(x,t,y,c,i)),m=x,0;m<=u;)m=E.tickIncrement(m,y,!1,i);return{start:e.c2r(x,0,i),end:e.c2r(m,0,i),size:y,_dataSpan:u-c}},E.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?1.2*(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)),\"array\"===t.tickmode&&(a*=100),t._roughDTick=(Math.abs(r[1]-r[0])-(t._lBreaks||0))/a,E.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}t.tick0||(t.tick0=\"date\"===t.type?\"2000-01-01\":0),\"date\"===t.type&&t.dtick<.1&&(t.dtick=.1),H(t)},E.calcTicks=function(t,e){E.prepTicks(t,e);var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if(\"array\"===t.tickmode)return function(t){var e=t.tickvals,r=t.ticktext,n=new Array(e.length),a=I(s.simpleMap(t.range,t.r2l)),i=Math.min(a[0],a[1]),o=Math.max(a[0],a[1]),l=0;Array.isArray(r)||(r=[]);var c=\"category\"===t.type?t.d2l_noadd:t.d2l;\"log\"===t.type&&\"L\"!==String(t.dtick).charAt(0)&&(t.dtick=\"L\"+Math.pow(10,Math.floor(Math.min(t.range[0],t.range[1]))-1));for(var u=0;ui&&h=o:n<=o)&&!(c.length>r||n===e);n=E.tickIncrement(n,t.dtick,l,t.calendar)){e=n;var a=!1;u&&n!==(0|n)&&(a=!0),c.push({minor:a,value:n})}}(),t.rangebreaks){var h=c.length;if(h){var f=0;\"auto\"===t.tickmode&&(f=(\"y\"===t._id.charAt(0)?2:6)*(t.tickfont?t.tickfont.size:12));for(var p,d=[],g=l?1:-1,m=l?h-1:0,v=l?0:h-1;g*v<=g*m;v+=g){var y=c[v];if(t.maskBreaks(y.value)!==w||(y.value=lt(y.value,t),!t._rl||t._rl[0]!==y.value&&t._rl[1]!==y.value)){var x=t.c2p(y.value);x===p?d[d.length-1].valuef)&&(p=x,d.push(y))}}c=d.reverse()}}st(t)&&360===Math.abs(r[1]-r[0])&&c.pop(),t._tmax=(c[c.length-1]||{}).value,t._prevDateHead=\"\",t._inCalcTicks=!0;for(var b=new Array(c.length),_=0;_10||\"01-01\"!==n.substr(5)?t._tickround=\"d\":t._tickround=+e.substr(1)%12==0?\"y\":\"m\";else if(e>=v&&i<=10||e>=15*v)t._tickround=\"d\";else if(e>=x&&i<=16||e>=y)t._tickround=\"M\";else if(e>=b&&i<=19||e>=x)t._tickround=\"S\";else{var o=t.l2r(r+e).replace(/^-/,\"\").length;t._tickround=Math.max(i,o)-20,t._tickround<0&&(t._tickround=4)}}else if(a(e)||\"L\"===e.charAt(0)){var s=t.range.map(t.r2d||Number);a(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);Math.abs(c)>3&&(W(t.exponentformat)&&!Z(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function G(t,e,r){var n=t.tickfont||{};return{x:e,dx:0,dy:0,text:r||\"\",fontSize:n.size,font:n.family,fontColor:n.color}}E.autoTicks=function(t,e){var r;function n(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if(\"date\"===t.type){t.tick0=s.dateTick0(t.calendar);var i=2*e;i>g?(e/=g,r=n(10),t.dtick=\"M\"+12*q(e,r,R)):i>m?(e/=m,t.dtick=\"M\"+q(e,1,F)):i>v?(t.dtick=q(e,v,t._hasDayOfWeekBreaks?[1,2,7,14]:N),t.tick0=s.dateTick0(t.calendar,!0)):i>y?t.dtick=q(e,y,F):i>x?t.dtick=q(e,x,B):i>b?t.dtick=q(e,b,B):(r=n(10),t.dtick=q(e,r,R))}else if(\"log\"===t.type){t.tick0=0;var o=s.simpleMap(t.range,t.r2l);if(e>.7)t.dtick=Math.ceil(e);else if(Math.abs(o[1]-o[0])<1){var l=1.5*Math.abs((o[1]-o[0])/e);e=Math.abs(Math.pow(10,o[1])-Math.pow(10,o[0]))/l,r=n(10),t.dtick=\"L\"+q(e,r,R)}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))):st(t)?(t.tick0=0,r=1,t.dtick=q(e,r,U)):(t.tick0=0,r=n(10),t.dtick=q(e,r,R));if(0===t.dtick&&(t.dtick=1),!a(t.dtick)&&\"string\"!=typeof t.dtick){var c=t.dtick;throw t.dtick=1,\"ax.dtick error: \"+String(c)}},E.tickIncrement=function(t,e,r,i){var o=r?-1:1;if(a(e))return t+o*e;var l=e.charAt(0),c=o*Number(e.substr(1));if(\"M\"===l)return s.incrementMonth(t,c,i);if(\"L\"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if(\"D\"===l){var u=\"D2\"===e?V:j,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)},E.tickFirst=function(t,e){var r=t.r2l||Number,i=s.simpleMap(t.range,r,void 0,void 0,e),o=i[1]\"+l,t._prevDateHead=l));e.text=c}(t,o,r,c):\"log\"===u?function(t,e,r,n,i){var o=t.dtick,l=e.x,c=t.tickformat,u=\"string\"==typeof o&&o.charAt(0);\"never\"===i&&(i=\"\");n&&\"L\"!==u&&(o=\"L3\",u=\"L\");if(c||\"L\"===u)e.text=X(Math.pow(10,l),t,i,n);else if(a(o)||\"D\"===u&&s.mod(l+.01,1)<.1){var h=Math.round(l),f=Math.abs(h),p=t.exponentformat;\"power\"===p||W(p)&&Z(h)?(e.text=0===h?1:1===h?\"10\":\"10\"+(h>1?\"\":_)+f+\"\",e.fontSize*=1.25):(\"e\"===p||\"E\"===p)&&f>2?e.text=\"1\"+p+(h>0?\"+\":_)+f:(e.text=X(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),a=t._categories[n]||[],i=void 0===a[1]?\"\":String(a[1]),o=void 0===a[0]?\"\":String(a[0]);r?e.text=o+\" - \"+i:(e.text=i,e.text2=o)}(t,o,r):st(t)?function(t,e,r,n,a){if(\"radians\"!==t.thetaunit||r)e.text=X(e.x,t,a,n);else{var i=e.x/180;if(0===i)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,a=Math.abs(function t(r,n){return e(n,0)?r:t(n,r%n)}(n,r));return[Math.round(n/a),Math.round(r/a)]}(i);if(o[1]>=100)e.text=X(s.deg2rad(e.x),t,a,n);else{var l=e.x<0;1===o[1]?1===o[0]?e.text=\"\\u03c0\":e.text=o[0]+\"\\u03c0\":e.text=[\"\",o[0],\"\",\"\\u2044\",\"\",o[1],\"\",\"\\u03c0\"].join(\"\"),l&&(e.text=_+e.text)}}}}(t,o,r,c,g):function(t,e,r,n,a){\"never\"===a?a=\"\":\"all\"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(a=\"hide\");e.text=X(e.x,t,a,n)}(t,o,0,c,g),n||(t.tickprefix&&!d(t.showtickprefix)&&(o.text=t.tickprefix+o.text),t.ticksuffix&&!d(t.showticksuffix)&&(o.text+=t.ticksuffix)),\"boundaries\"===t.tickson||t.showdividers){var m=function(e){var r=t.l2p(e);return r>=0&&r<=t._length?e:null};o.xbnd=[m(o.x-.5),m(o.x+t.dtick-.5)]}return o},E.hoverLabelText=function(t,e,r){if(r!==w&&r!==e)return E.hoverLabelText(t,e)+\" - \"+E.hoverLabelText(t,r);var n=\"log\"===t.type&&e<=0,a=E.tickText(t,t.c2l(n?-e:e),\"hover\").text;return n?0===e?\"0\":_+a:a};var Y=[\"f\",\"p\",\"n\",\"\\u03bc\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\"];function W(t){return\"SI\"===t||\"B\"===t}function Z(t){return t>14||t<-15}function X(t,e,r,n){var i=t<0,o=e._tickround,l=r||e.exponentformat||\"B\",c=e._tickexponent,u=E.getTickFormat(e),h=e.separatethousands;if(n){var f={exponentformat:l,dtick:\"none\"===e.showexponent?e.dtick:a(t)&&Math.abs(t)||1,range:\"none\"===e.showexponent?e.range.map(e.r2d):[0,t||1]};H(f),o=(Number(f._tickround)||0)+4,c=f._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,_);var p,d=Math.pow(10,-o)/2;if(\"none\"===l&&(c=0),(t=Math.abs(t))\"+p+\"\":\"B\"===l&&9===c?t+=\"B\":W(l)&&(t+=Y[c/3+5]));return i?_+t:t}function J(t,e){for(var r=[],n={},a=0;a1&&r=a.min&&t=0,i=u(t,e[1])<=0;return(r||a)&&(n||i)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case\"date\":case\"linear\":for(e=0;e=o(a)))){r=n;break}break;case\"log\":for(e=0;e0?r.bottom-u:0,h)))),e.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var p=[0,1];if(\"x\"===d){if(\"b\"===l?n[l]=e._depth:(n[l]=e._depth=Math.max(r.width>0?u-r.top:0,h),p.reverse()),r.width>0){var m=r.right-(e._offset+e._length);m>0&&(n.xr=1,n.r=m);var v=e._offset-r.left;v>0&&(n.xl=0,n.l=v)}}else if(\"l\"===l?n[l]=e._depth=Math.max(r.height>0?u-r.left:0,h):(n[l]=e._depth=Math.max(r.height>0?r.right-u:0,h),p.reverse()),r.height>0){var y=r.bottom-(e._offset+e._length);y>0&&(n.yb=0,n.b=y);var x=e._offset-r.top;x>0&&(n.yt=1,n.t=x)}n[g]=\"free\"===e.anchor?e.position:e._anchorAxis.domain[p[0]],e.title.text!==f._dfltTitle[d]&&(n[l]+=Q(e)+(e.title.standoff||0)),e.mirror&&\"free\"!==e.anchor&&((a={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(a[c]+=h),!0===e.mirror||\"ticks\"===e.mirror?a[g]=e._anchorAxis.domain[p[1]]:\"all\"!==e.mirror&&\"allticks\"!==e.mirror||(a[g]=[e._counterDomainMin,e._counterDomainMax][p[1]]))}Z&&(s=o.getComponentMethod(\"rangeslider\",\"autoMarginOpts\")(t,e)),i.autoMargin(t,et(e),n),i.autoMargin(t,rt(e),a),i.autoMargin(t,nt(e),s)})),r.skipTitle||Z&&\"bottom\"===e.side||Y.push((function(){return function(t,e){var r,n=t._fullLayout,a=e._id,i=a.charAt(0),o=e.title.font.size;if(e.title.hasOwnProperty(\"standoff\"))r=e._depth+e.title.standoff+Q(e);else{if(\"multicategory\"===e.type)r=e._depth;else{r=10+1.5*o+(e.linewidth?e.linewidth-1:0)}r+=\"x\"===i?\"top\"===e.side?o*(e.showticklabels?1:0):o*(e.showticklabels?1.5:.5):\"right\"===e.side?o*(e.showticklabels?1:.5):o*(e.showticklabels?.5:0)}var s,l,u,f,p=E.getPxPosition(t,e);\"x\"===i?(l=e._offset+e._length/2,u=\"top\"===e.side?p-r:p+r):(u=e._offset+e._length/2,l=\"right\"===e.side?p+r:p-r,s={rotate:\"-90\",offset:0});if(\"multicategory\"!==e.type){var d=e._selections[e._id+\"tick\"];if(f={selection:d,side:e.side},d&&d.node()&&d.node().parentNode){var g=h.getTranslate(d.node().parentNode);f.offsetLeft=g.x,f.offsetTop=g.y}e.title.hasOwnProperty(\"standoff\")&&(f.pad=0)}return c.draw(t,a+\"title\",{propContainer:e,propName:e._name+\".title.text\",placeholder:n._dfltTitle[i],avoid:f,transform:s,attributes:{x:l,y:u,\"text-anchor\":\"middle\"}})}(t,e)})),s.syncOrAsync(Y)}}function X(t){var r=p+(t||\"tick\");return w[r]||(w[r]=function(t,e){var r,n,a,i;t._selections[e].size()?(r=1/0,n=-1/0,a=1/0,i=-1/0,t._selections[e].each((function(){var t=tt(this),e=h.bBox(t.node().parentNode);r=Math.min(r,e.top),n=Math.max(n,e.bottom),a=Math.min(a,e.left),i=Math.max(i,e.right)}))):(r=0,n=0,a=0,i=0);return{top:r,bottom:n,left:a,right:i,height:n-r,width:i-a}}(e,r)),w[r]}},E.getTickSigns=function(t){var e=t._id.charAt(0),r={x:\"top\",y:\"right\"}[e],n=t.side===r?1:-1,a=[-1,1,n,-n];return\"inside\"!==t.ticks==(\"x\"===e)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},E.makeTransFn=function(t){var e=t._id.charAt(0),r=t._offset;return\"x\"===e?function(e){return\"translate(\"+(r+t.l2p(e.x))+\",0)\"}:function(e){return\"translate(0,\"+(r+t.l2p(e.x))+\")\"}},E.makeTickPath=function(t,e,r,n){n=void 0!==n?n:t.ticklen;var a=t._id.charAt(0),i=(t.linewidth||1)/2;return\"x\"===a?\"M0,\"+(e+i*r)+\"v\"+n*r:\"M\"+(e+i*r)+\",0h\"+n*r},E.makeLabelFns=function(t,e,r){var n=t._id.charAt(0),i=\"boundaries\"!==t.tickson&&\"outside\"===t.ticks,o=0,l=0;if(i&&(o+=t.ticklen),r&&\"outside\"===t.ticks){var c=s.deg2rad(r);o=t.ticklen*Math.cos(c)+1,l=t.ticklen*Math.sin(c)}t.showticklabels&&(i||t.showline)&&(o+=.2*t.tickfont.size);var u,h,f,p,d={labelStandoff:o+=(t.linewidth||1)/2,labelShift:l};return\"x\"===n?(p=\"bottom\"===t.side?1:-1,u=l*p,h=e+o*p,f=\"bottom\"===t.side?1:-.2,d.xFn=function(t){return t.dx+u},d.yFn=function(t){return t.dy+h+t.fontSize*f},d.anchorFn=function(t,e){return a(e)&&0!==e&&180!==e?e*p<0?\"end\":\"start\":\"middle\"},d.heightFn=function(e,r,n){return r<-60||r>60?-.5*n:\"top\"===t.side?-n:0}):\"y\"===n&&(p=\"right\"===t.side?1:-1,u=o,h=-l*p,f=90===Math.abs(t.tickangle)?.5:0,d.xFn=function(t){return t.dx+e+(u+t.fontSize*f)*p},d.yFn=function(t){return t.dy+h+t.fontSize*k},d.anchorFn=function(e,r){return a(r)&&90===Math.abs(r)?\"middle\":\"right\"===t.side?\"start\":\"end\"},d.heightFn=function(e,r,n){return(r*=\"left\"===t.side?1:-1)<-30?-n:r<30?-.5*n:0}),d},E.drawTicks=function(t,e,r){r=r||{};var n=e._id+\"tick\",a=r.layer.selectAll(\"path.\"+n).data(e.ticks?r.vals:[],K);a.exit().remove(),a.enter().append(\"path\").classed(n,1).classed(\"ticks\",1).classed(\"crisp\",!1!==r.crisp).call(u.stroke,e.tickcolor).style(\"stroke-width\",h.crispRound(t,e.tickwidth,1)+\"px\").attr(\"d\",r.path),a.attr(\"transform\",r.transFn)},E.drawGrid=function(t,e,r){r=r||{};var n=e._id+\"grid\",a=r.vals,i=r.counterAxis;if(!1===e.showgrid)a=[];else if(i&&E.shouldShowZeroLine(t,e,i))for(var o=\"array\"===e.tickmode,s=0;s1)for(n=1;n2*o}(t,e)?\"date\":function(t){for(var e=Math.max(1,(t.length-1)/1e3),r=0,n=0,o={},s=0;s2*r}(t)?\"category\":function(t){if(!t)return!1;for(var e=0;e=2){var l,c,u=\"\";if(2===o.length)for(l=0;l<2;l++)if(c=y(o[l])){u=d;break}var h=a(\"pattern\",u);if(h===d)for(l=0;l<2;l++)(c=y(o[l]))&&(e.bounds[l]=o[l]=c-1);if(h)for(l=0;l<2;l++)switch(c=o[l],h){case d: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[l]=o[l]=c;break;case g:if(!n(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[l]=o[l]=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)},r.getAxisGroup=function(t,e){for(var r=t._axisMatchGroups,n=0;n0;o&&(a=\"array\");var s,l=r(\"categoryorder\",a);\"array\"===l&&(s=r(\"categoryarray\")),o||\"array\"!==l||(l=e.categoryorder=\"trace\"),\"trace\"===l?e._initialCategories=[]:\"array\"===l?e._initialCategories=s.slice():(s=function(t,e){var r,n,a,i=e.dataAttr||t._id.charAt(0),o={};if(e.axData)r=e.axData;else for(r=[],n=0;nl*x)||T)for(r=0;rz&&RP&&(P=R);p/=(P-L)/(2*I),L=c.l2r(L),P=c.l2r(P),c.range=c._input.range=S=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function F(t,e,r,n,a){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\",\"translate(\"+r+\", \"+n+\")\").attr(\"d\",a+\"Z\")}function B(t,e,r){return t.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:c.background,stroke:c.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"transform\",\"translate(\"+e+\", \"+r+\")\").attr(\"d\",\"M0,0Z\")}function N(t,e,r,n,a,i){t.attr(\"d\",n+\"M\"+r.l+\",\"+r.t+\"v\"+r.h+\"h\"+r.w+\"v-\"+r.h+\"h-\"+r.w+\"Z\"),j(t,e,a,i)}function j(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 V(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}function U(t){L&&t.data&&t._context.showTips&&(s.notifier(s._(t,\"Double-click to zoom back out\"),\"long\"),L=!1)}function q(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,C)/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 H(t,e,r,n){for(var a,i,o,l,c=!1,u={},h={},f=0;f=0)a._fullLayout._deactivateShape(a);else{var i=a._fullLayout.clickmode;if(V(a),2!==t||dt||Vt(),pt)i.indexOf(\"select\")>-1&&A(r,a,X,J,e.id,Et),i.indexOf(\"event\")>-1&&h.click(a,r,e.id);else if(1===t&&dt){var s=g?j:P,c=\"s\"===g||\"w\"===L?0:1,u=s._name+\".range[\"+c+\"]\",f=function(t,e){var r,a=t.range[e],i=Math.abs(a-t.range[1-e]);return\"date\"===t.type?a:\"log\"===t.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,n.format(\".\"+r+\"g\")(Math.pow(10,a))):(r=Math.floor(Math.log(Math.abs(a))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,n.format(\".\"+String(r)+\"g\")(a))}(s,c),p=\"left\",d=\"middle\";if(s.fixedrange)return;g?(d=\"n\"===g?\"top\":\"bottom\",\"right\"===s.side&&(p=\"right\")):\"e\"===L&&(p=\"right\"),a._context.showAxisRangeEntryBoxes&&n.select(vt).call(l.makeEditable,{gd:a,immediate:!0,background:a._fullLayout.paper_bgcolor,text:String(f),fill:s.tickfont?s.tickfont.color:\"#444\",horizontalAlign:p,verticalAlign:d}).on(\"edit\",(function(t){var e=s.d2r(t);void 0!==e&&o.call(\"_guiRelayout\",a,u,e)}))}}}function Pt(e,r){if(t._transitioningWithDuration)return!1;var n=Math.max(0,Math.min($,e+yt)),a=Math.max(0,Math.min(tt,r+xt)),i=Math.abs(n-yt),o=Math.abs(a-xt);function s(){kt=\"\",bt.r=bt.l,bt.t=bt.b,Mt.attr(\"d\",\"M0,0Z\")}if(bt.l=Math.min(yt,n),bt.r=Math.max(yt,n),bt.t=Math.min(xt,a),bt.b=Math.max(xt,a),et.isSubplotConstrained)i>C||o>C?(kt=\"xy\",i/$>o/tt?(o=i*tt/$,xt>a?bt.t=xt-o:bt.b=xt+o):(i=o*$/tt,yt>n?bt.l=yt-i:bt.r=yt+i),Mt.attr(\"d\",q(bt))):s();else if(rt.isSubplotConstrained)if(i>C||o>C){kt=\"xy\";var l=Math.min(bt.l/$,(tt-bt.b)/tt),c=Math.max(bt.r/$,(tt-bt.t)/tt);bt.l=l*$,bt.r=c*$,bt.b=(1-l)*tt,bt.t=(1-c)*tt,Mt.attr(\"d\",q(bt))}else s();else!at||og[1]-1/4096&&(e.domain=s),a.noneOrAll(t.domain,e.domain,s)}return r(\"layer\"),e}},{\"../../lib\":728,\"fast-isnumeric\":236}],794:[function(t,e,r){\"use strict\";var n=t(\"../../constants/alignment\").FROM_BL;e.exports=function(t,e,r){void 0===r&&(r=n[t.constraintoward||\"center\"]);var a=[t.r2l(t.range[0]),t.r2l(t.range[1])],i=a[0]+(a[1]-a[0])*r;t.range=t._input.range=[t.l2r(i+(a[0]-i)*e),t.l2r(i+(a[1]-i)*e)]}},{\"../../constants/alignment\":697}],795:[function(t,e,r){\"use strict\";var n=t(\"polybooljs\"),a=t(\"../../registry\"),i=t(\"../../components/drawing\").dashStyle,o=t(\"../../components/color\"),s=t(\"../../components/fx\"),l=t(\"../../components/fx/helpers\").makeEventData,c=t(\"../../components/dragelement/helpers\"),u=c.freeMode,h=c.rectMode,f=c.drawMode,p=c.openMode,d=c.selectMode,g=t(\"../../components/shapes/draw_newshape/display_outlines\"),m=t(\"../../components/shapes/draw_newshape/helpers\").handleEllipse,v=t(\"../../components/shapes/draw_newshape/newshapes\"),y=t(\"../../lib\"),x=t(\"../../lib/polygon\"),b=t(\"../../lib/throttle\"),_=t(\"./axis_ids\").getFromId,w=t(\"../../lib/clear_gl_canvases\"),T=t(\"../../plot_api/subroutines\").redrawReglTraces,k=t(\"./constants\"),A=k.MINSELECT,M=x.filter,S=x.tester,E=t(\"./handle_outline\").clearSelect,C=t(\"./helpers\"),L=C.p2r,P=C.axValue,I=C.getTransform;function z(t,e,r,n,a,i,o){var s,l,c,u,h,f,d,m,v,y=e._hoverdata,x=e._fullLayout.clickmode.indexOf(\"event\")>-1,b=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(y)){F(t,e,i);var _=function(t,e){var r,n,a=t[0],i=-1,o=[];for(n=0;n0?function(t,e){var r,n,a,i=[];for(a=0;a0&&i.push(r);if(1===i.length&&i[0]===e.searchInfo&&(n=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(a=0;a1)return!1;if((a+=r.selectedpoints.length)>1)return!1}return 1===a}(s)&&(f=j(_))){for(o&&o.remove(),v=0;v=0&&n._fullLayout._deactivateShape(n),f(e)){var i=n._fullLayout._zoomlayer.selectAll(\".select-outline-\"+r.id);if(i&&n._fullLayout._drawing){var o=v(i,t);o&&a.call(\"_guiRelayout\",n,{shapes:o}),n._fullLayout._drawing=!1}}r.selection={},r.selection.selectionDefs=t.selectionDefs=[],r.selection.mergedPolygons=t.mergedPolygons=[]}function N(t,e,r,n){var a,i,o,s=[],l=e.map((function(t){return t._id})),c=r.map((function(t){return t._id}));for(o=0;o0?n[0]:r;return!!e.selectedpoints&&e.selectedpoints.indexOf(a)>-1}function V(t,e,r){var n,i,o,s;for(n=0;n=0)W._fullLayout._deactivateShape(W);else if(!j){var r=Z.clickmode;b.done(ft).then((function(){if(b.clear(ft),2===t){for(lt.remove(),w=0;w-1&&z(e,W,a.xaxes,a.yaxes,a.subplot,a,lt),\"event\"===r&&W.emit(\"plotly_selected\",void 0);s.click(W,e)})).catch(y.error)}},a.doneFn=function(){ht.remove(),b.done(ft).then((function(){b.clear(ft),a.gd.emit(\"plotly_selected\",E),_&&a.selectionDefs&&(_.subtract=st,a.selectionDefs.push(_),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,x)),a.doneFnCompleted&&a.doneFnCompleted(pt)})).catch(y.error),j&&B(a)}},clearSelect:E,clearSelectionsCache:B,selectOnClick:z}},{\"../../components/color\":595,\"../../components/dragelement/helpers\":613,\"../../components/drawing\":617,\"../../components/fx\":635,\"../../components/fx/helpers\":631,\"../../components/shapes/draw_newshape/display_outlines\":680,\"../../components/shapes/draw_newshape/helpers\":681,\"../../components/shapes/draw_newshape/newshapes\":682,\"../../lib\":728,\"../../lib/clear_gl_canvases\":713,\"../../lib/polygon\":740,\"../../lib/throttle\":753,\"../../plot_api/subroutines\":767,\"../../registry\":859,\"./axis_ids\":779,\"./constants\":782,\"./handle_outline\":786,\"./helpers\":787,polybooljs:471}],796:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"fast-isnumeric\"),i=t(\"../../lib\"),o=i.cleanNumber,s=i.ms2DateTime,l=i.dateTime2ms,c=i.ensureNumber,u=i.isArrayOrTypedArray,h=t(\"../../constants/numerical\"),f=h.FP_SAFE,p=h.BADNUM,d=h.LOG_CLIP,g=h.ONEDAY,m=h.ONEHOUR,v=h.ONEMIN,y=h.ONESEC,x=t(\"./axis_ids\"),b=t(\"./constants\"),_=b.HOUR_PATTERN,w=b.WEEKDAY_PATTERN;function T(t){return Math.pow(10,t)}function k(t){return null!=t}e.exports=function(t,e){e=e||{};var r=t._id||\"x\",h=r.charAt(0);function A(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],a=t.range[1];return.5*(n+a-2*d*Math.abs(n-a))}return p}function M(e,r,n,o){var s=l(e,n||t.calendar);if(s===p){if(!a(e))return p;if(e=+e,(o||{}).msUTC)return e;var c=Math.floor(10*i.mod(e+.05,1)),u=Math.round(e-c/10);s=l(new Date(u))+c/10}return s}function S(e,r,n){return s(e,r,n||t.calendar)}function E(e){return t._categories[Math.round(e)]}function C(e){if(k(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 p}function L(e){if(t._categoriesMap)return t._categoriesMap[e]}function P(t){var e=L(t);return void 0!==e?e:a(t)?+t:void 0}function I(t,e,r){return n.round(r+e*t,2)}function z(t,e,r){return(t-r)/e}var O=function(e){return a(e)?I(e,t._m,t._b):p},D=function(e){return z(e,t._m,t._b)};if(t.rangebreaks){var R=\"y\"===h;O=function(e){if(!a(e))return p;var r=t._rangebreaks.length;if(!r)return I(e,t._m,t._b);var n=R;t.range[0]>t.range[1]&&(n=!n);for(var i=n?-1:1,o=i*e,s=0,l=0;lu)){s=o<(c+u)/2?l:l+1;break}s=l+1}var h=t._B[s]||0;return isFinite(h)?I(e,t._m2,h):0},D=function(e){var r=t._rangebreaks.length;if(!r)return z(e,t._m,t._b);for(var n=0,a=0;at._rangebreaks[a].pmax&&(n=a+1);return z(e,t._m2,t._B[n])}}t.c2l=\"log\"===t.type?A:c,t.l2c=\"log\"===t.type?T:c,t.l2p=O,t.p2l=D,t.c2p=\"log\"===t.type?function(t,e){return O(A(t,e))}:O,t.p2c=\"log\"===t.type?function(t){return T(D(t))}:D,-1!==[\"linear\",\"-\"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=c,t.d2p=t.r2p=function(e){return t.l2p(o(e))},t.p2d=t.p2r=D,t.cleanPos=c):\"log\"===t.type?(t.d2r=t.d2l=function(t,e){return A(o(t),e)},t.r2d=t.r2c=function(t){return T(o(t))},t.d2c=t.r2l=o,t.c2d=t.l2r=c,t.c2r=A,t.l2d=T,t.d2p=function(e,r){return t.l2p(t.d2r(e,r))},t.p2d=function(t){return T(D(t))},t.r2p=function(e){return t.l2p(o(e))},t.p2r=D,t.cleanPos=c):\"date\"===t.type?(t.d2r=t.r2d=i.identity,t.d2c=t.r2c=t.d2l=t.r2l=M,t.c2d=t.c2r=t.l2d=t.l2r=S,t.d2p=t.r2p=function(e,r,n){return t.l2p(M(e,0,n))},t.p2d=t.p2r=function(t,e,r){return S(D(t),e,r)},t.cleanPos=function(e){return i.cleanDate(e,p,t.calendar)}):\"category\"===t.type?(t.d2c=t.d2l=C,t.r2d=t.c2d=t.l2d=E,t.d2r=t.d2l_noadd=P,t.r2c=function(e){var r=P(e);return void 0!==r?r:t.fraction2r(.5)},t.l2r=t.c2r=c,t.r2l=P,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return E(D(t))},t.r2p=t.d2p,t.p2r=D,t.cleanPos=function(t){return\"string\"==typeof t&&\"\"!==t?t:c(t)}):\"multicategory\"===t.type&&(t.r2d=t.c2d=t.l2d=E,t.d2r=t.d2l_noadd=P,t.r2c=function(e){var r=P(e);return void 0!==r?r:t.fraction2r(.5)},t.r2c_just_indices=L,t.l2r=t.c2r=c,t.r2l=P,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return E(D(t))},t.r2p=t.d2p,t.p2r=D,t.cleanPos=function(t){return Array.isArray(t)||\"string\"==typeof t&&\"\"!==t?t:c(t)},t.setupMultiCategory=function(n){var a,o,s=t._traceIndices,l=e._axisMatchGroups;if(l&&l.length&&0===t._categories.length)for(a=0;af&&(s[n]=f),s[0]===s[1]){var c=Math.max(1,Math.abs(1e-6*s[0]));s[0]-=c,s[1]+=c}}else i.nestedProperty(t,e).set(o)},t.setScale=function(r){var n=e._size;if(t.overlaying){var a=x.getFromId({_fullLayout:e},t.overlaying);t.domain=a.domain}var i=r&&t._r?\"_r\":\"range\",o=t.calendar;t.cleanRange(i);var s,l,c=t.r2l(t[i][0],o),u=t.r2l(t[i][1],o),f=\"y\"===h;if((f?(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&&(p=!p),p&&t._rangebreaks.reverse();var d=p?-1:1;for(t._m2=d*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(f?u:c)),s=0;sa&&(a+=7,sa&&(a+=24,s=n&&s=n&&e=s.min&&(ts.max&&(s.max=n),a=!1)}a&&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 m(e,r){var n=e.plotinfo,a=n.xaxis,l=n.yaxis,c=a._length,u=l._length,h=!!e.xr1,f=!!e.yr1,p=[];if(h){var d=i.simpleMap(e.xr0,a.r2l),g=i.simpleMap(e.xr1,a.r2l),m=d[1]-d[0],v=g[1]-g[0];p[0]=(d[0]*(1-r)+r*g[0]-d[0])/(d[1]-d[0])*c,p[2]=c*(1-r+r*v/m),a.range[0]=a.l2r(d[0]*(1-r)+r*g[0]),a.range[1]=a.l2r(d[1]*(1-r)+r*g[1])}else p[0]=0,p[2]=c;if(f){var y=i.simpleMap(e.yr0,l.r2l),x=i.simpleMap(e.yr1,l.r2l),b=y[1]-y[0],_=x[1]-x[0];p[1]=(y[1]*(1-r)+r*x[1]-y[1])/(y[0]-y[1])*u,p[3]=u*(1-r+r*_/b),l.range[0]=a.l2r(y[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(y[1]*(1-r)+r*x[1])}else p[1]=0,p[3]=u;s.drawOne(t,a,{skipTitle:!0}),s.drawOne(t,l,{skipTitle:!0}),s.redrawComponents(t,[a._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=a._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)}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../registry\":859,\"./axes\":776,d3:164}],801:[function(t,e,r){\"use strict\";var n=t(\"../../registry\").traceIs,a=t(\"./axis_autotype\");function i(t){return{v:\"x\",h:\"y\"}[t.orientation||\"v\"]}function o(t,e){var r=i(t),a=n(t,\"box-violin\"),o=n(t._fullInput||{},\"candlestick\");return a&&!o&&e===r&&void 0===t[r]&&void 0===t[r+\"0\"]}e.exports=function(t,e,r,s){\"-\"===r(\"type\",(s.splomStash||{}).type)&&(!function(t,e){if(\"-\"!==t.type)return;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&&(a[\"_\"+r+\"axes\"]||{})[e])return a;if((a[r+\"axis\"]||r)===e){if(o(a,r))return a;if((a[r]||[]).length||a[r+\"0\"])return a}}}(e,s,l);if(!c)return;if(\"histogram\"===c.type&&l==={v:\"y\",h:\"x\"}[c.orientation||\"v\"])return void(t.type=\"linear\");var u=l+\"calendar\",h=c[u],f={noMultiCategory:!n(c,\"cartesian\")||n(c,\"noMultiCategory\")};\"box\"===c.type&&c._hasPreCompStats&&l==={h:\"x\",v:\"y\"}[c.orientation||\"v\"]&&(f.noMultiCategory=!0);if(o(c,l)){var p=i(c),d=[];for(r=0;r0?\".\":\"\")+i;a.isPlainObject(o)?l(o,e,s,n+1):e(s,i,o)}}))}r.manageCommandObserver=function(t,e,n,o){var s={},l=!0;e&&e._commandObserver&&(s=e._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=r.hasSimpleAPICommandBindings(t,n,s.lookupTable);if(e&&e._commandObserver){if(c)return s;if(e._commandObserver.remove)return e._commandObserver.remove(),e._commandObserver=null,s}if(c){i(t,c,s.cache),s.check=function(){if(l){var e=i(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&&a<0&&(a+=360);var s=(a-n)/4;return{type:\"Polygon\",coordinates:[[[n,i],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[a,o],[a,i],[a-s,i],[a-2*s,i],[a-3*s,i],[n,i]]]}}e.exports=function(t){return new _(t)},w.plot=function(t,e,r){var n=this,a=e[this.id],i=[],o=!1;for(var s in v.layerNameToAdjective)if(\"frame\"!==s&&a[\"show\"+s]){o=!0;break}for(var l=0;l0&&i._module.calcGeoJSON(a,e)}if(!this.updateProjection(t,e)){this.viewInitial&&this.scope===r.scope||this.saveViewInitial(r),this.scope=r.scope,this.updateBaseLayers(e,r),this.updateDims(e,r),this.updateFx(e,r),c.generalUpdatePerTraceModule(this.graphDiv,this,t,r);var o=this.layers.frontplot.select(\".scatterlayer\");this.dataPoints.point=o.selectAll(\".point\"),this.dataPoints.text=o.selectAll(\"text\"),this.dataPaths.line=o.selectAll(\".js-line\");var s=this.layers.backplot.select(\".choroplethlayer\");this.dataPaths.choropleth=s.selectAll(\"path\"),this.render()}},w.updateProjection=function(t,e){var r=this.graphDiv,o=e[this.id],s=e._size,l=o.domain,c=o.projection,u=o.lonaxis,f=o.lataxis,p=u._ax,d=f._ax,g=this.projection=function(t){for(var e=t.projection.type,r=n.geo[v.projNames[e]](),a=t._isClipped?v.lonaxisSpan[e]/2:null,i=[\"center\",\"rotate\",\"parallels\",\"clipExtent\"],o=function(t){return t?r:[]},s=0;sa*Math.PI/180}return!1},r.getPath=function(){return n.geo.path().projection(r)},r.getBounds=function(t){return r.getPath().bounds(t)},r.fitExtent=function(t,e){var n=t[1][0]-t[0][0],a=t[1][1]-t[0][1],i=r.clipExtent&&r.clipExtent();r.scale(150).translate([0,0]),i&&r.clipExtent(null);var o=r.getBounds(e),s=Math.min(n/(o[1][0]-o[0][0]),a/(o[1][1]-o[0][1])),l=+t[0][0]+(n-s*(o[1][0]+o[0][0]))/2,c=+t[0][1]+(a-s*(o[1][1]+o[0][1]))/2;return i&&r.clipExtent(i),r.scale(150*s).translate([l,c])},r.precision(v.precision),a&&r.clipAngle(a-v.clipPad);return r}(o),m=[[s.l+s.w*l.x[0],s.t+s.h*(1-l.y[1])],[s.l+s.w*l.x[1],s.t+s.h*(1-l.y[0])]],y=o.center||{},x=c.rotation||{},b=u.range||[],_=f.range||[];if(o.fitbounds){p._length=m[1][0]-m[0][0],d._length=m[1][1]-m[0][1],p.range=h(r,p),d.range=h(r,d);var w=(p.range[0]+p.range[1])/2,k=(d.range[0]+d.range[1])/2;if(o._isScoped)y={lon:w,lat:k};else if(o._isClipped){y={lon:w,lat:k},x={lon:w,lat:k,roll:x.roll};var A=c.type,M=v.lonaxisSpan[A]/2||180,S=v.lataxisSpan[A]/2||180;b=[w-M,w+M],_=[k-S,k+S]}else y={lon:w,lat:k},x={lon:w,lat:x.lat,roll:x.roll}}g.center([y.lon-x.lon,y.lat-x.lat]).rotate([-x.lon,-x.lat,x.roll]).parallels(c.parallels);var E=T(b,_);g.fitExtent(m,E);var C=this.bounds=g.getBounds(E),L=this.fitScale=g.scale(),P=g.translate();if(!isFinite(C[0][0])||!isFinite(C[0][1])||!isFinite(C[1][0])||!isFinite(C[1][1])||isNaN(P[0])||isNaN(P[0])){for(var I=[\"fitbounds\",\"projection.rotation\",\"center\",\"lonaxis.range\",\"lataxis.range\"],z=\"Invalid geo settings, relayout'ing to default view.\",O={},D=0;D-1&&g(n.event,i,[r.xaxis],[r.yaxis],r.id,h),c.indexOf(\"event\")>-1&&l.click(i,n.event))}))}function v(t){return r.projection.invert([t[0]+r.xaxis._offset,t[1]+r.yaxis._offset])}},w.makeFramework=function(){var t=this,e=t.graphDiv,r=e._fullLayout,a=\"clip\"+r._uid+t.id;t.clipDef=r._clips.append(\"clipPath\").attr(\"id\",a),t.clipRect=t.clipDef.append(\"rect\"),t.framework=n.select(t.container).append(\"g\").attr(\"class\",\"geo \"+t.id).call(s.setClipUrl,a,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\"},u.setConvert(t.mockAxis,r)},w.saveViewInitial=function(t){var e,r=t.center||{},n=t.projection,a=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\":a.lon,\"projection.rotation.lat\":a.lat}:{\"center.lon\":r.lon,\"center.lat\":r.lat,\"projection.rotation.lon\":a.lon},i.extendFlat(this.viewInitial,e)},w.render=function(){var t,e=this.projection,r=e.getPath();function n(t){var r=e(t.lonlat);return r?\"translate(\"+r[0]+\",\"+r[1]+\")\":null}function a(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\",a).attr(\"transform\",n)}},{\"../../components/color\":595,\"../../components/dragelement\":614,\"../../components/drawing\":617,\"../../components/fx\":635,\"../../lib\":728,\"../../lib/geo_location_utils\":722,\"../../lib/topojson_utils\":755,\"../../registry\":859,\"../cartesian/autorange\":775,\"../cartesian/axes\":776,\"../cartesian/select\":795,\"../plots\":839,\"./constants\":806,\"./projections\":811,\"./zoom\":812,d3:164,\"topojson-client\":531}],808:[function(t,e,r){\"use strict\";var n=t(\"../../plots/get_data\").getSubplotCalcData,a=t(\"../../lib\").counterRegex,i=t(\"./geo\"),o=\"geo\",s=a(o),l={};l.geo={valType:\"subplotid\",dflt:o,editType:\"calc\"},e.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:t(\"./layout_attributes\"),supplyLayoutDefaults:t(\"./layout_defaults\"),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots.geo,s=0;s0&&L<0&&(L+=360);var P,I,z,O=(C+L)/2;if(!p){var D=d?h.projRotate:[O,0,0];P=r(\"projection.rotation.lon\",D[0]),r(\"projection.rotation.lat\",D[1]),r(\"projection.rotation.roll\",D[2]),r(\"showcoastlines\",!d&&y)&&(r(\"coastlinecolor\"),r(\"coastlinewidth\")),r(\"showocean\",!!y&&void 0)&&r(\"oceancolor\")}(p?(I=-96.6,z=38.7):(I=d?O:P,z=(E[0]+E[1])/2),r(\"center.lon\",I),r(\"center.lat\",z),g)&&r(\"projection.parallels\",h.projParallels||[0,60]);r(\"projection.scale\"),r(\"showland\",!!y&&void 0)&&r(\"landcolor\"),r(\"showlakes\",!!y&&void 0)&&r(\"lakecolor\"),r(\"showrivers\",!!y&&void 0)&&(r(\"rivercolor\"),r(\"riverwidth\")),r(\"showcountries\",d&&\"usa\"!==u&&y)&&(r(\"countrycolor\"),r(\"countrywidth\")),(\"usa\"===u||\"north america\"===u&&50===c)&&(r(\"showsubunits\",y),r(\"subunitcolor\"),r(\"subunitwidth\")),d||r(\"showframe\",y)&&(r(\"framecolor\"),r(\"framewidth\")),r(\"bgcolor\"),r(\"fitbounds\")&&(delete e.projection.scale,d?(delete e.center.lon,delete e.center.lat):m?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}e.exports=function(t,e,r){a(t,e,r,{type:\"geo\",attributes:s,handleDefaults:c,fullData:r,partition:\"y\"})}},{\"../../lib\":728,\"../get_data\":813,\"../subplot_defaults\":853,\"./constants\":806,\"./layout_attributes\":809}],811:[function(t,e,r){\"use strict\";e.exports=function(t){function e(t,e){return{type:\"Feature\",id:t.id,properties:t.properties,geometry:r(t.geometry,e)}}function r(e,n){if(!e)return null;if(\"GeometryCollection\"===e.type)return{type:\"GeometryCollection\",geometries:object.geometries.map((function(t){return r(t,n)}))};if(!c.hasOwnProperty(e.type))return null;var a=c[e.type];return t.geo.stream(e,n(a)),a.result()}t.geo.project=function(t,e){var a=e.stream;if(!a)throw new Error(\"not yet supported\");return(t&&n.hasOwnProperty(t.type)?n[t.type]:r)(t,a)};var n={Feature:e,FeatureCollection:function(t,r){return{type:\"FeatureCollection\",features:t.features.map((function(t){return e(t,r)}))}}},a=[],i=[],o={point:function(t,e){a.push([t,e])},result:function(){var t=a.length?a.length<2?{type:\"Point\",coordinates:a[0]}:{type:\"MultiPoint\",coordinates:a}:null;return a=[],t}},s={lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){a.length&&(i.push(a),a=[])},result:function(){var t=i.length?i.length<2?{type:\"LineString\",coordinates:i[0]}:{type:\"MultiLineString\",coordinates:i}:null;return i=[],t}},l={polygonStart:u,lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){var t=a.length;if(t){do{a.push(a[0].slice())}while(++t<4);i.push(a),a=[]}},polygonEnd:u,result:function(){if(!i.length)return null;var t=[],e=[];return i.forEach((function(r){!function(t){if((e=t.length)<4)return!1;var e,r=0,n=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];for(;++rn^p>n&&r<(f-c)*(n-u)/(p-u)+c&&(a=!a)}return a}(t[0],r))return t.push(e),!0}))||t.push([e])})),i=[],t.length?t.length>1?{type:\"MultiPolygon\",coordinates:t}:{type:\"Polygon\",coordinates:t[0]}:null}},c={Point:o,MultiPoint:o,LineString:s,MultiLineString:s,Polygon:l,MultiPolygon:l,Sphere:l};function u(){}var h=1e-6,f=Math.PI,p=f/2,d=(Math.sqrt(f),f/180),g=180/f;function m(t){return t>1?p:t<-1?-p:Math.asin(t)}function v(t){return t>1?0:t<-1?f:Math.acos(t)}var y=t.geo.projection,x=t.geo.projectionMutator;function b(t,e){var r=(2+p)*Math.sin(e);e/=2;for(var n=0,a=1/0;n<10&&Math.abs(a)>h;n++){var i=Math.cos(e);e-=a=(e+Math.sin(e)*(i+2)-r)/(2*i*(1+i))}return[2/Math.sqrt(f*(4+f))*t*(1+Math.cos(e)),2*Math.sqrt(f/(4+f))*Math.sin(e)]}t.geo.interrupt=function(e){var r,n=[[[[-f,0],[0,p],[f,0]]],[[[-f,0],[0,-p],[f,0]]]];function a(t,r){for(var a=r<0?-1:1,i=n[+(r<0)],o=0,s=i.length-1;oi[o][2][0];++o);var l=e(t-i[o][1][0],r);return l[0]+=e(i[o][1][0],a*r>a*i[o][0][1]?i[o][0][1]:r)[0],l}function i(){r=n.map((function(t){return t.map((function(t){var r,n=e(t[0][0],t[0][1])[0],a=e(t[2][0],t[2][1])[0],i=e(t[1][0],t[0][1])[1],o=e(t[1][0],t[1][1])[1];return i>o&&(r=i,i=o,o=r),[[n,i],[a,o]]}))}))}e.invert&&(a.invert=function(t,i){for(var o=r[+(i<0)],s=n[+(i<0)],l=0,u=o.length;l=0;--a){var p;o=180*(p=n[1][a])[0][0]/f,s=180*p[0][1]/f,c=180*p[1][1]/f,u=180*p[2][0]/f,h=180*p[2][1]/f;r.push(l([[u-e,h-e],[u-e,c+e],[o+e,c+e],[o+e,s-e]],30))}return{type:\"Polygon\",coordinates:[t.merge(r)]}}(),i)},a},o.lobes=function(t){return arguments.length?(n=t.map((function(t){return t.map((function(t){return[[t[0][0]*f/180,t[0][1]*f/180],[t[1][0]*f/180,t[1][1]*f/180],[t[2][0]*f/180,t[2][1]*f/180]]}))})),i(),o):n.map((function(t){return t.map((function(t){return[[180*t[0][0]/f,180*t[0][1]/f],[180*t[1][0]/f,180*t[1][1]/f],[180*t[2][0]/f,180*t[2][1]/f]]}))}))},o},b.invert=function(t,e){var r=.5*e*Math.sqrt((4+f)/f),n=m(r),a=Math.cos(n);return[t/(2/Math.sqrt(f*(4+f))*(1+a)),m((n+r*(a+2))/(2+p))]},(t.geo.eckert4=function(){return y(b)}).raw=b;var _=t.geo.azimuthalEqualArea.raw;function w(t,e){if(arguments.length<2&&(e=t),1===e)return _;if(e===1/0)return T;function r(r,n){var a=_(r/e,n);return a[0]*=t,a}return r.invert=function(r,n){var a=_.invert(r/t,n);return a[0]*=e,a},r}function T(t,e){return[t*Math.cos(e)/Math.cos(e/=2),2*Math.sin(e)]}function k(t,e){return[3*t/(2*f)*Math.sqrt(f*f/3-e*e),e]}function A(t,e){return[t,1.25*Math.log(Math.tan(f/4+.4*e))]}function M(t){return function(e){var r,n=t*Math.sin(e),a=30;do{e-=r=(e+Math.sin(e)-n)/(1+Math.cos(e))}while(Math.abs(r)>h&&--a>0);return e/2}}T.invert=function(t,e){var r=2*m(e/2);return[t*Math.cos(r/2)/Math.cos(r),r]},(t.geo.hammer=function(){var t=2,e=x(w),r=e(t);return r.coefficient=function(r){return arguments.length?e(t=+r):t},r}).raw=w,k.invert=function(t,e){return[2/3*f*t/Math.sqrt(f*f/3-e*e),e]},(t.geo.kavrayskiy7=function(){return y(k)}).raw=k,A.invert=function(t,e){return[t,2.5*Math.atan(Math.exp(.8*e))-.625*f]},(t.geo.miller=function(){return y(A)}).raw=A,M(f);var S=function(t,e,r){var n=M(r);function a(r,a){return[t*r*Math.cos(a=n(a)),e*Math.sin(a)]}return a.invert=function(n,a){var i=m(a/e);return[n/(t*Math.cos(i)),m((2*i+Math.sin(2*i))/r)]},a}(Math.SQRT2/p,Math.SQRT2,f);function E(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)))]}(t.geo.mollweide=function(){return y(S)}).raw=S,E.invert=function(t,e){var r,n=e,a=25;do{var i=n*n,o=i*i;n-=r=(n*(1.007226+i*(.015085+o*(.028874*i-.044475-.005916*o)))-e)/(1.007226+i*(.045255+o*(.259866*i-.311325-.005916*11*o)))}while(Math.abs(r)>h&&--a>0);return[t/(.8707+(i=n*n)*(i*(i*i*i*(.003971-.001529*i)-.013791)-.131979)),n]},(t.geo.naturalEarth=function(){return y(E)}).raw=E;var C=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];function L(t,e){var r,n=Math.min(18,36*Math.abs(e)/f),a=Math.floor(n),i=n-a,o=(r=C[a])[0],s=r[1],l=(r=C[++a])[0],c=r[1],u=(r=C[Math.min(19,++a)])[0],h=r[1];return[t*(l+i*(u-o)/2+i*i*(u-2*l+o)/2),(e>0?p:-p)*(c+i*(h-s)/2+i*i*(h-2*c+s)/2)]}function P(t,e){return[t*Math.cos(e),e]}function I(t,e){var r,n=Math.cos(e),a=(r=v(n*Math.cos(t/=2)))?r/Math.sin(r):1;return[2*n*Math.sin(t)*a,Math.sin(e)*a]}function z(t,e){var r=I(t,e);return[(r[0]+t/p)/2,(r[1]+e)/2]}C.forEach((function(t){t[1]*=1.0144})),L.invert=function(t,e){var r=e/p,n=90*r,a=Math.min(18,Math.abs(n/5)),i=Math.max(0,Math.floor(a));do{var o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],c=l-o,u=l-2*s+o,h=2*(Math.abs(r)-s)/c,f=u/c,m=h*(1-f*h*(1-2*f*h));if(m>=0||1===i){n=(e>=0?5:-5)*(m+a);var v,y=50;do{m=(a=Math.min(18,Math.abs(n)/5))-(i=Math.floor(a)),o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],n-=(v=(e>=0?p:-p)*(s+m*(l-o)/2+m*m*(l-2*s+o)/2)-e)*g}while(Math.abs(v)>1e-12&&--y>0);break}}while(--i>=0);var x=C[i][0],b=C[i+1][0],_=C[Math.min(19,i+2)][0];return[t/(b+m*(_-x)/2+m*m*(_-2*b+x)/2),n*d]},(t.geo.robinson=function(){return y(L)}).raw=L,P.invert=function(t,e){return[t/Math.cos(e),e]},(t.geo.sinusoidal=function(){return y(P)}).raw=P,I.invert=function(t,e){if(!(t*t+4*e*e>f*f+h)){var r=t,n=e,a=25;do{var i,o=Math.sin(r),s=Math.sin(r/2),l=Math.cos(r/2),c=Math.sin(n),u=Math.cos(n),p=Math.sin(2*n),d=c*c,g=u*u,m=s*s,y=1-g*l*l,x=y?v(u*l)*Math.sqrt(i=1/y):i=0,b=2*x*u*s-t,_=x*c-e,w=i*(g*m+x*u*l*d),T=i*(.5*o*p-2*x*c*s),k=.25*i*(p*s-x*c*g*o),A=i*(d*l+x*m*u),M=T*k-A*w;if(!M)break;var S=(_*T-b*A)/M,E=(b*k-_*w)/M;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]}},(t.geo.aitoff=function(){return y(I)}).raw=I,z.invert=function(t,e){var r=t,n=e,a=25;do{var i,o=Math.cos(n),s=Math.sin(n),l=Math.sin(2*n),c=s*s,u=o*o,f=Math.sin(r),d=Math.cos(r/2),g=Math.sin(r/2),m=g*g,y=1-u*d*d,x=y?v(o*d)*Math.sqrt(i=1/y):i=0,b=.5*(2*x*o*g+r/p)-t,_=.5*(x*s+n)-e,w=.5*i*(u*m+x*o*d*c)+.5/p,T=i*(f*l/4-x*s*g),k=.125*i*(l*g-x*s*u*f),A=.5*i*(c*d+x*m*o)+.5,M=T*k-A*w,S=(_*T-b*A)/M,E=(b*k-_*w)/M;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]},(t.geo.winkel3=function(){return y(z)}).raw=z}},{}],812:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../registry\"),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]=a.nestedProperty(l,t).get(),i.call(\"_storeDirectGUIEdit\",s,c._preGUI,h);var r=a.nestedProperty(u,t);r.get()!==e&&(r.set(e),a.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 a(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();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,a)})),r}function p(t,e){var r,a,i,o,s,f,p,d,g,m=u(0,e);function v(t){return e.invert(t)}function y(r){var n=e.rotate(),a=e.invert(t.midPt);r(\"projection.rotation.lon\",-n[0]),r(\"center.lon\",a[0]),r(\"center.lat\",a[1])}return m.on(\"zoomstart\",(function(){n.select(this).style(l),r=n.mouse(this),a=e.rotate(),i=e.translate(),o=a,s=v(r)})).on(\"zoom\",(function(){if(f=n.mouse(this),function(t){var r=v(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 m.scale(e.scale()),void m.translate(e.translate());e.scale(n.event.scale),e.translate([i[0],n.event.translate[1]]),s?v(f)&&(d=v(f),p=[o[0]+(d[0]-s[0]),a[1],a[2]],e.rotate(p),o=p):s=v(r=f),g=!0,t.render();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),g&&h(t,e,y)})),m}function d(t,e){var r,a={r:e.rotate(),k:e.scale()},i=u(0,e),o=function(t){var e=0,r=arguments.length,a=[];for(;++ed?(i=(h>0?90:-90)-p,a=0):(i=Math.asin(h/d)*s-p,a=Math.sqrt(d*d-h*h));var g=180-i-2*p,m=(Math.atan2(f,u)-Math.atan2(c,a))*s,v=(Math.atan2(f,u)-Math.atan2(c,-a))*s;return b(r[0],r[1],i,m)<=b(r[0],r[1],g,v)?[i,m,r[2]]:[g,v,r[2]]}function b(t,e,r,n){var a=_(r-t),i=_(n-e);return Math.sqrt(a*a+i*i)}function _(t){return(t%360+540)%360-180}function w(t,e,r){var n=r*o,a=t.slice(),i=0===e?1:0,s=2===e?1:2,l=Math.cos(n),c=Math.sin(n);return a[i]=t[i]*l-t[s]*c,a[s]=t[s]*l+t[i]*c,a}function T(t){return[Math.atan2(2*(t[0]*t[1]+t[2]*t[3]),1-2*(t[1]*t[1]+t[2]*t[2]))*s,Math.asin(Math.max(-1,Math.min(1,2*(t[0]*t[2]-t[3]*t[1]))))*s,Math.atan2(2*(t[0]*t[3]+t[1]*t[2]),1-2*(t[2]*t[2]+t[3]*t[3]))*s]}function k(t,e){for(var r=0,n=0,a=t.length;nMath.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(i)*_*(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(_))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/_*(i>=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(_)))}}else c.boxEnabled?(i=c.boxStart[0]!==c.boxEnd[0],s=c.boxStart[1]!==c.boxEnd[1],i||s?(i&&(m(0,c.boxStart[0],c.boxEnd[0]),t.xaxis.autorange=!1),s&&(m(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]=a),Math.abs(c.dragStart[0]-n).999&&(g=\"turntable\"):g=\"turntable\")}else g=\"turntable\";r(\"dragmode\",g),r(\"hovermode\",n.getDfltFromLayout(\"hovermode\"))}e.exports=function(t,e,r){var a=e._basePlotModules.length>1;o(t,e,r,{type:\"gl3d\",attributes:l,handleDefaults:u,fullLayout:e,font:e.font,fullData:r,getDfltFromLayout:function(e){if(!a)return n.validate(t[e],l[e])?t[e]:void 0},paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}},{\"../../../components/color\":595,\"../../../lib\":728,\"../../../registry\":859,\"../../get_data\":813,\"../../subplot_defaults\":853,\"./axis_defaults\":821,\"./layout_attributes\":824}],824:[function(t,e,r){\"use strict\";var n=t(\"./axis_attributes\"),a=t(\"../../domain\").attributes,i=t(\"../../../lib/extend\").extendFlat,o=t(\"../../../lib\").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\"}}e.exports={_arrayAttrRegexps:[o(\"scene\",\".annotations\",!0)],bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"plot\"},camera:{up:i(s(0,0,1),{}),center:i(s(0,0,0),{}),eye:i(s(1.25,1.25,1.25),{}),projection:{type:{valType:\"enumerated\",values:[\"perspective\",\"orthographic\"],dflt:\"perspective\",editType:\"calc\"},editType:\"calc\"},editType:\"camera\"},domain:a({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\"}}}},{\"../../../lib\":728,\"../../../lib/extend\":719,\"../../domain\":803,\"./axis_attributes\":820}],825:[function(t,e,r){\"use strict\";var n=t(\"../../../lib/str2rgbarray\"),a=[\"xaxis\",\"yaxis\",\"zaxis\"];function i(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}i.prototype.merge=function(t){for(var e=0;e<3;++e){var r=t[a[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)}},e.exports=function(t){var e=new i;return e.merge(t),e}},{\"../../../lib/str2rgbarray\":751}],826:[function(t,e,r){\"use strict\";e.exports=function(t){for(var e=t.axesOptions,r=t.glplot.axesPixels,s=t.fullSceneLayout,l=[[],[],[]],c=0;c<3;++c){var u=s[i[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||a.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}}e.ticks=l;for(c=0;c<3;++c){o[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]);for(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],a=new Array(n.length),i=0;ir.deltaY?1.1:1/1.1,i=t.glplot.getAspectratio();t.glplot.setAspectratio({x:n*i.x,y:n*i.y,z:n*i.z})}a(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},w.render=function(){var t,e=this,r=e.graphDiv,n=e.svgContainer,a=e.container.getBoundingClientRect(),i=a.width,o=a.height;n.setAttributeNS(null,\"viewBox\",\"0 0 \"+i+\" \"+o),n.setAttributeNS(null,\"width\",i),n.setAttributeNS(null,\"height\",o),x(e),e.glplot.axes.update(e.axesOptions);for(var s,l=Object.keys(e.traces),c=null,u=e.glplot.selection,d=0;d\")):\"isosurface\"===t.type||\"volume\"===t.type?(w.valueLabel=f.tickText(e._mockAxis,e._mockAxis.d2l(u.traceCoordinate[3]),\"hover\").text,M.push(\"value: \"+w.valueLabel),u.textLabel&&M.push(u.textLabel),y=M.join(\"
\")):y=u.textLabel;var S={x:u.traceCoordinate[0],y:u.traceCoordinate[1],z:u.traceCoordinate[2],data:b._input,fullData:b,curveNumber:b.index,pointNumber:_};p.appendArrayPointValue(S,b,_),t._module.eventData&&(S=b._module.eventData(S,u,b,{},_));var E={points:[S]};e.fullSceneLayout.hovermode&&p.loneHover({trace:b,x:(.5+.5*v[0]/v[3])*i,y:(.5-.5*v[1]/v[3])*o,xLabel:w.xLabel,yLabel:w.yLabel,zLabel:w.zLabel,text:y,name:c.name,color:p.castHoverOption(b,_,\"bgcolor\")||c.color,borderColor:p.castHoverOption(b,_,\"bordercolor\"),fontFamily:p.castHoverOption(b,_,\"font.family\"),fontSize:p.castHoverOption(b,_,\"font.size\"),fontColor:p.castHoverOption(b,_,\"font.color\"),nameLength:p.castHoverOption(b,_,\"namelength\"),textAlign:p.castHoverOption(b,_,\"align\"),hovertemplate:h.castOption(b,_,\"hovertemplate\"),hovertemplateLabels:h.extendFlat({},S,w),eventData:[S]},{container:n,gd:r}),u.buttons&&u.distance<5?r.emit(\"plotly_click\",E):r.emit(\"plotly_hover\",E),s=E}else p.loneUnhover(n),r.emit(\"plotly_unhover\",s);e.drawAnnotations(e)},w.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 T=[\"xaxis\",\"yaxis\",\"zaxis\"];function k(t,e,r){for(var n=t.fullSceneLayout,a=0;a<3;a++){var i=T[a],o=i.charAt(0),s=n[i],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;dm[1][i])m[0][i]=-1,m[1][i]=1;else{var C=m[1][i]-m[0][i];m[0][i]-=C/32,m[1][i]+=C/32}if(\"reversed\"===s.autorange){var L=m[0][i];m[0][i]=m[1][i],m[1][i]=L}}else{var P=s.range;m[0][i]=s.r2l(P[0]),m[1][i]=s.r2l(P[1])}m[0][i]===m[1][i]&&(m[0][i]-=1,m[1][i]+=1),v[i]=m[1][i]-m[0][i],this.glplot.setBounds(i,{min:m[0][i]*f[i],max:m[1][i]*f[i]})}var I=c.aspectmode;if(\"cube\"===I)g=[1,1,1];else if(\"manual\"===I){var z=c.aspectratio;g=[z.x,z.y,z.z]}else{if(\"auto\"!==I&&\"data\"!==I)throw new Error(\"scene.js aspectRatio was not one of the enumerated types\");var O=[1,1,1];for(i=0;i<3;++i){var D=y[l=(s=c[T[i]]).type];O[i]=Math.pow(D.acc,1/D.count)/f[i]}g=\"data\"===I||Math.max.apply(null,O)/Math.min.apply(null,O)<=4?O:[1,1,1]}c.aspectratio.x=u.aspectratio.x=g[0],c.aspectratio.y=u.aspectratio.y=g[1],c.aspectratio.z=u.aspectratio.z=g[2],this.glplot.setAspectratio(c.aspectratio),this.viewInitial.aspectratio||(this.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),this.viewInitial.aspectmode||(this.viewInitial.aspectmode=c.aspectmode);var R=c.domain||null,F=e._size||null;if(R&&F){var B=this.container.style;B.position=\"absolute\",B.left=F.l+R.x[0]*F.w+\"px\",B.top=F.t+(1-R.y[1])*F.h+\"px\",B.width=F.w*(R.x[1]-R.x[0])+\"px\",B.height=F.h*(R.y[1]-R.y[0])+\"px\"}this.glplot.redraw()}},w.destroy=function(){this.glplot&&(this.camera.mouseListener.enabled=!1,this.container.removeEventListener(\"wheel\",this.camera.wheelListener),this.camera=null,this.glplot.dispose(),this.container.parentNode.removeChild(this.container),this.glplot=null)},w.getCamera=function(){var t;return this.camera.view.recalcMatrix(this.camera.view.lastT()),{up:{x:(t=this.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\"}}},w.setViewport=function(t){var e,r=t.camera;this.camera.lookAt.apply(this,[[(e=r).eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]),this.glplot.setAspectratio(t.aspectratio),\"orthographic\"===r.projection.type!==this.camera._ortho&&(this.glplot.redraw(),this.glplot.clearRGBA(),this.glplot.dispose(),this.initializeGLPlot())},w.isCameraChanged=function(t){var e=this.getCamera(),r=h.nestedProperty(t,this.id+\".camera\").get();function n(t,e,r,n){var a=[\"up\",\"center\",\"eye\"],i=[\"x\",\"y\",\"z\"];return e[a[r]]&&t[a[r]][i[n]]===e[a[r]][i[n]]}var a=!1;if(void 0===r)a=!0;else{for(var i=0;i<3;i++)for(var o=0;o<3;o++)if(!n(e,r,i,o)){a=!0;break}(!r.projection||e.projection&&e.projection.type!==r.projection.type)&&(a=!0)}return a},w.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},w.saveLayout=function(t){var e,r,n,a,i,o,s=this.fullLayout,l=this.isCameraChanged(t),c=this.isAspectChanged(t),f=l||c;if(f){var p={};if(l&&(e=this.getCamera(),n=(r=h.nestedProperty(t,this.id+\".camera\")).get(),p[this.id+\".camera\"]=n),c&&(a=this.glplot.getAspectratio(),o=(i=h.nestedProperty(t,this.id+\".aspectratio\")).get(),p[this.id+\".aspectratio\"]=o),u.call(\"_storeDirectGUIEdit\",t,s._preGUI,p),l)r.set(e),h.nestedProperty(s,this.id+\".camera\").set(e);if(c)i.set(a),h.nestedProperty(s,this.id+\".aspectratio\").set(a),this.glplot.redraw()}return f},w.updateFx=function(t,e){var r=this.camera;if(r)if(\"orbit\"===t)r.mode=\"orbit\",r.keyBindingMode=\"rotate\";else if(\"turntable\"===t){r.up=[0,0,1],r.mode=\"turntable\",r.keyBindingMode=\"rotate\";var n=this.graphDiv,a=n._fullLayout,i=this.fullSceneLayout.camera,o=i.up.x,s=i.up.y,l=i.up.z;if(l/Math.sqrt(o*o+s*s+l*l)<.999){var c=this.id+\".camera.up\",f={x:0,y:0,z:1},p={};p[c]=f;var d=n.layout;u.call(\"_storeDirectGUIEdit\",d,a._preGUI,p),i.up=f,h.nestedProperty(d,c).set(f)}}else r.keyBindingMode=t;this.fullSceneLayout.hovermode=e},w.toImage=function(t){t||(t=\"png\"),this.staticMode&&this.container.appendChild(n),this.glplot.redraw();var e=this.glplot.gl,r=e.drawingBufferWidth,a=e.drawingBufferHeight;e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*a*4);e.readPixels(0,0,r,a,e.RGBA,e.UNSIGNED_BYTE,i),function(t,e,r){for(var n=0,a=r-1;n0)for(var s=255/o,l=0;l<3;++l)t[i+l]=Math.min(s*t[i+l],255)}}(i,r,a);var o=document.createElement(\"canvas\");o.width=r,o.height=a;var s,l=o.getContext(\"2d\"),c=l.createImageData(r,a);switch(c.data.set(i),l.putImageData(c,0,0),t){case\"jpeg\":s=o.toDataURL(\"image/jpeg\");break;case\"webp\":s=o.toDataURL(\"image/webp\");break;default:s=o.toDataURL(\"image/png\")}return this.staticMode&&this.container.removeChild(n),s},w.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[T[t]];f.setConvert(e,this.fullLayout),e.setScale=h.noop}},w.make4thDimension=function(){var t=this.graphDiv._fullLayout;this._mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},f.setConvert(this._mockAxis,t)},e.exports=_},{\"../../components/fx\":635,\"../../lib\":728,\"../../lib/show_no_webgl_msg\":749,\"../../lib/str2rgbarray\":751,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"./layout/convert\":822,\"./layout/spikes\":825,\"./layout/tick_marks\":826,\"./project\":827,\"gl-plot3d\":296,\"has-passive-events\":410,\"is-mobile\":420,\"webgl-context\":558}],829:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){n=n||t.length;for(var a=new Array(n),i=0;i\\xa9 OpenStreetMap
',tiles:[\"https://a.tile.openstreetmap.org/{z}/{x}/{y}.png\",\"https://b.tile.openstreetmap.org/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-osm-tiles\",type:\"raster\",source:\"plotly-osm-tiles\",minzoom:0,maxzoom:22}]},\"white-bg\":{id:\"white-bg\",version:8,sources:{},layers:[{id:\"white-bg\",type:\"background\",paint:{\"background-color\":\"#FFFFFF\"},minzoom:0,maxzoom:22}]},\"carto-positron\":{id:\"carto-positron\",version:8,sources:{\"plotly-carto-positron\":{type:\"raster\",attribution:'\\xa9 CARTO',tiles:[\"https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-carto-positron\",type:\"raster\",source:\"plotly-carto-positron\",minzoom:0,maxzoom:22}]},\"carto-darkmatter\":{id:\"carto-darkmatter\",version:8,sources:{\"plotly-carto-darkmatter\":{type:\"raster\",attribution:'\\xa9 CARTO',tiles:[\"https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-carto-darkmatter\",type:\"raster\",source:\"plotly-carto-darkmatter\",minzoom:0,maxzoom:22}]},\"stamen-terrain\":{id:\"stamen-terrain\",version:8,sources:{\"plotly-stamen-terrain\":{type:\"raster\",attribution:'Map tiles by Stamen Design, under CC BY 3.0 | Data by OpenStreetMap, under ODbL.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-terrain\",type:\"raster\",source:\"plotly-stamen-terrain\",minzoom:0,maxzoom:22}]},\"stamen-toner\":{id:\"stamen-toner\",version:8,sources:{\"plotly-stamen-toner\":{type:\"raster\",attribution:'Map tiles by Stamen Design, under CC BY 3.0 | Data by OpenStreetMap, under ODbL.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/toner/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-toner\",type:\"raster\",source:\"plotly-stamen-toner\",minzoom:0,maxzoom:22}]},\"stamen-watercolor\":{id:\"stamen-watercolor\",version:8,sources:{\"plotly-stamen-watercolor\":{type:\"raster\",attribution:'Map tiles by Stamen Design, under CC BY 3.0 | Data by OpenStreetMap, under CC BY SA.',tiles:[\"https://stamen-tiles.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-stamen-watercolor\",type:\"raster\",source:\"plotly-stamen-watercolor\",minzoom:0,maxzoom:22}]}},a=Object.keys(n);e.exports={requiredVersion:\"1.10.1\",styleUrlPrefix:\"mapbox://styles/mapbox/\",styleUrlSuffix:\"v9\",styleValuesMapbox:[\"basic\",\"streets\",\"outdoors\",\"light\",\"dark\",\"satellite\",\"satellite-streets\"],styleValueDflt:\"basic\",stylesNonMapbox:n,styleValuesNonMapbox:a,traceLayerPrefix:\"plotly-trace-layer-\",layoutLayerPrefix:\"plotly-layout-layer-\",wrongVersionErrorMsg:[\"Your custom plotly.js bundle is not using the correct mapbox-gl version\",\"Please install mapbox-gl@1.10.1.\"].join(\"\\n\"),noAccessTokenErrorMsg:[\"Missing Mapbox access token.\",\"Mapbox trace type require a Mapbox access token to be registered.\",\"For example:\",\" Plotly.plot(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:\",a.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\\')'}}},{}],832:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){var r=t.split(\" \"),a=r[0],i=r[1],o=n.isArrayOrTypedArray(e)?n.mean(e):e,s=.5+o/100,l=1.5+o/100,c=[\"\",\"\"],u=[0,0];switch(a){case\"top\":c[0]=\"top\",u[1]=-l;break;case\"bottom\":c[0]=\"bottom\",u[1]=l}switch(i){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}}},{\"../../lib\":728}],833:[function(t,e,r){\"use strict\";var n=t(\"mapbox-gl\"),a=t(\"../../lib\"),i=t(\"../../plots/get_data\").getSubplotCalcData,o=t(\"../../constants/xmlns_namespaces\"),s=t(\"d3\"),l=t(\"../../components/drawing\"),c=t(\"../../lib/svg_text_utils\"),u=t(\"./mapbox\"),h=r.constants=t(\"./constants\");function f(t){return\"string\"==typeof t&&(-1!==h.styleValuesMapbox.indexOf(t)||0===t.indexOf(\"mapbox://\"))}r.name=\"mapbox\",r.attr=\"subplot\",r.idRoot=\"mapbox\",r.idRegex=r.attrRegex=a.counterRegex(\"mapbox\"),r.attributes={subplot:{valType:\"subplotid\",dflt:\"mapbox\",editType:\"calc\"}},r.layoutAttributes=t(\"./layout_attributes\"),r.supplyLayoutDefaults=t(\"./layout_defaults\"),r.plot=function(t){var e=t._fullLayout,r=t.calcdata,o=e._subplots.mapbox;if(n.version!==h.requiredVersion)throw new Error(h.wrongVersionErrorMsg);var s=function(t,e){var r=t._fullLayout;if(\"\"===t._context.mapboxAccessToken)return\"\";for(var n=[],i=[],o=!1,s=!1,l=0;l1&&a.warn(h.multipleTokensErrorMsg),n[0]):(i.length&&a.log([\"Listed mapbox access token(s)\",i.join(\",\"),\"but did not use a Mapbox map style, ignoring token(s).\"].join(\" \")),\"\")}(t,o);n.accessToken=s;for(var l=0;lx/2){var b=g.split(\"|\").join(\"
\");v.text(b).attr(\"data-unformatted\",b).call(c.convertToTspans,t),y=l.bBox(v.node())}v.attr(\"transform\",\"translate(-3, \"+(8-y.height)+\")\"),m.insert(\"rect\",\".static-attribution\").attr({x:-y.width-6,y:-y.height-3,width:y.width+6,height:y.height+3,fill:\"rgba(255, 255, 255, 0.75)\"});var _=1;y.width+6>x&&(_=x/(y.width+6));var w=[n.l+n.w*u.x[1],n.t+n.h*(1-u.y[0])];m.attr(\"transform\",\"translate(\"+w[0]+\",\"+w[1]+\") scale(\"+_+\")\")}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.mapbox,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 a=t.symbol,o=i(a.textposition,a.iconsize);n.extendFlat(e,{\"icon-image\":a.icon+\"-15\",\"icon-size\":a.iconsize/10,\"text-field\":a.text,\"text-size\":a.textfont.size,\"text-anchor\":o.anchor,\"text-offset\":o.offset,\"symbol-placement\":a.placement}),n.extendFlat(r,{\"icon-color\":t.color,\"text-color\":a.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||this.source!==t.source||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup[\"layout-\"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates})},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,i={type:r};\"geojson\"===r?e=\"data\":\"vector\"===r?e=\"string\"==typeof n?\"url\":\"tiles\":\"raster\"===r?(e=\"tiles\",i.tileSize=256):\"image\"===r&&(e=\"url\",i.coordinates=t.coordinates);i[e]=n,t.sourceattribution&&(i.attribution=a(t.sourceattribution));return i}(t);e.addSource(this.idSource,r)}},l.updateLayer=function(t){var e,r=this.subplot,n=u(t),a=this.subplot.belowLookup[\"layout-\"+this.index];if(\"traces\"===a)for(var i=r.getMapLayers(),s=0;s1)for(r=0;r-1&&v(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),a.indexOf(\"event\")>-1&&c.click(n,e.originalEvent)}}},_.updateFx=function(t){var e=this,r=e.map,n=e.gd;if(!e.isStatic){var i,o=t.dragmode;i=h(o)?function(t,r){(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]}:function(t,r,n){(t.lassoPoints={})[e.id]=n.filtered.map(c)};var s=e.dragOptions;e.dragOptions=a.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:i},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off(\"click\",e.onClickInPanHandler),p(o)||f(o)?(r.dragPan.disable(),r.on(\"zoomstart\",e.clearSelect),e.dragOptions.prepFn=function(t,r,n){d(t,r,n,e.dragOptions,o)},l.init(e.dragOptions)):(r.dragPan.enable(),r.off(\"zoomstart\",e.clearSelect),e.div.onmousedown=null,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?(i[\"text-anchor\"]=\"start\",i.x=5):(i[\"text-anchor\"]=\"end\",i.x=e._paper.attr(\"width\")-7),r.attr(i);var o=r.select(\".js-link-to-tool\"),s=r.select(\".js-link-spacer\"),u=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(){y.sendDataToCloud(t)}));else{var n=window.location.pathname.split(\"/\"),a=window.location.search;r.attr({\"xlink:xlink:show\":\"new\",\"xlink:xlink:href\":\"/\"+n[2].split(\".\")[0]+\"/\"+n[1]+a})}}(t,o),s.text(o.text()&&u.text()?\" - \":\"\")}},y.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\"),a=r.append(\"form\").attr({action:e+\"/external\",method:\"post\",target:\"_blank\"});return a.append(\"input\").attr({type:\"text\",name:\"data\"}).node().value=y.graphJson(t,!1,\"keepdata\"),a.node().submit(),r.remove(),t.emit(\"plotly_afterexport\"),!1}};var _=[\"days\",\"shortDays\",\"months\",\"shortMonths\",\"periods\",\"dateTime\",\"date\",\"time\",\"decimal\",\"thousands\",\"grouping\",\"currency\"],w=[\"year\",\"month\",\"dayMonth\",\"dayMonthYear\"];function T(t,e){var r=t._context.locale,n=!1,a={};function o(t){for(var r=!0,i=0;i1&&z.length>1){for(i.getComponentMethod(\"grid\",\"sizeDefaults\")(c,s),o=0;o15&&z.length>15&&0===s.shapes.length&&0===s.images.length,s._hasCartesian=s._has(\"cartesian\"),s._hasGeo=s._has(\"geo\"),s._hasGL3D=s._has(\"gl3d\"),s._hasGL2D=s._has(\"gl2d\"),s._hasTernary=s._has(\"ternary\"),s._hasPie=s._has(\"pie\"),y.linkSubplots(h,s,u,a),y.cleanPlot(h,s,u,a);var B=!(!a._has||!a._has(\"gl2d\")),N=!(!s._has||!s._has(\"gl2d\")),j=!(!a._has||!a._has(\"cartesian\"))||B,V=!(!s._has||!s._has(\"cartesian\"))||N;j&&!V?a._bgLayer.remove():V&&!j&&(s._shouldCreateBgLayer=!0),a._zoomlayer&&!t._dragging&&f({_fullLayout:a}),function(t,e){var r,n=[];e.meta&&(r=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var a=0;a0){var h=1-2*s;n=Math.round(h*n),i=Math.round(h*i)}}var f=y.layoutAttributes.width.min,p=y.layoutAttributes.height.min;n1,g=!e.height&&Math.abs(r.height-i)>1;(g||d)&&(d&&(r.width=n),g&&(r.height=i)),t._initialAutoSize||(t._initialAutoSize={width:n,height:i}),y.sanitizeMargins(r)},y.supplyLayoutModuleDefaults=function(t,e,r,n){var a,o,s,c=i.componentsRegistry,u=e._basePlotModules,h=i.subplotsRegistry.cartesian;for(a in c)(s=c[a]).includeBasePlot&&s.includeBasePlot(t,e);for(var f in u.length||u.push(h),e._has(\"cartesian\")&&(i.getComponentMethod(\"grid\",\"contentDefaults\")(t,e),h.finalizeSubplots(t,e)),e._subplots)e._subplots[f].sort(l.subplotSort);for(o=0;o.5*n.width&&(l.log(\"Margin push\",e,\"is too big in x, dropping\"),r.l=r.r=0),r.b+r.t>.5*n.height&&(l.log(\"Margin push\",e,\"is too big in y, dropping\"),r.b=r.t=0);var c=void 0!==r.xl?r.xl:r.x,u=void 0!==r.xr?r.xr:r.x,h=void 0!==r.yt?r.yt:r.y,f=void 0!==r.yb?r.yb:r.y;a[e]={l:{val:c,size:r.l+o},r:{val:u,size:r.r+o},b:{val:f,size:r.b+o},t:{val:h,size:r.t+o}},i[e]=1}else delete a[e],delete i[e];if(!n._replotting)return y.doAutoMargin(t)}},y.doAutoMargin=function(t){var e=t._fullLayout;e._size||(e._size={}),E(e);var r=e._size,n=e.margin,o=l.extendFlat({},r),s=n.l,c=n.r,u=n.t,h=n.b,f=e.width,p=e.height,d=e._pushmargin,g=e._pushmarginIds;if(!1!==e.margin.autoexpand){for(var m in d)g[m]||delete d[m];for(var v in d.base={l:{val:0,size:s},r:{val:1,size:c},t:{val:1,size:u},b:{val:0,size:h}},d){var x=d[v].l||{},b=d[v].b||{},_=x.val,w=x.size,T=b.val,k=b.size;for(var A in d){if(a(w)&&d[A].r){var M=d[A].r.val,S=d[A].r.size;if(M>_){var C=(w*M+(S-f)*_)/(M-_),L=(S*(1-_)+(w-f)*(1-M))/(M-_);C>=0&&L>=0&&f-(C+L)>0&&C+L>s+c&&(s=C,c=L)}}if(a(k)&&d[A].t){var P=d[A].t.val,I=d[A].t.size;if(P>T){var z=(k*P+(I-p)*T)/(P-T),O=(I*(1-T)+(k-p)*(1-P))/(P-T);z>=0&&O>=0&&p-(O+z)>0&&z+O>h+u&&(h=z,u=O)}}}}}if(r.l=Math.round(s),r.r=Math.round(c),r.t=Math.round(u),r.b=Math.round(h),r.p=Math.round(n.pad),r.w=Math.round(f)-r.l-r.r,r.h=Math.round(p)-r.t-r.b,!e._replotting&&y.didMarginChange(o,r)){\"_redrawFromAutoMarginCount\"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var D=3*(1+Object.keys(g).length);if(e._redrawFromAutoMarginCount0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&t._transitionData._interruptCallbacks.push((function(){return i.call(\"redraw\",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit(\"plotly_transitioninterrupted\",[])}));var o=0,s=0;function l(){return o++,function(){s++,n||s!==o||function(e){if(!t._transitionData)return;(function(t){if(t)for(;t.length;)t.shift()})(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return i.call(\"redraw\",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit(\"plotly_transitioned\",[])})).then(e)}(a)}}r.runFn(l),setTimeout(l())}))}],o=l.syncOrAsync(a,t);return o&&o.then||(o=Promise.resolve()),o.then((function(){return t}))}y.didMarginChange=function(t,e){for(var r=0;r1)return!0}return!1},y.graphJson=function(t,e,r,n,a,i){(a&&e&&!t._fullData||a&&!e&&!t._fullLayout)&&y.supplyDefaults(t);var o=a?t._fullData:t.data,s=a?t._fullLayout:t.layout,c=(t._transitionData||{})._frames;function u(t,e){if(\"function\"==typeof t)return e?\"_function_\":null;if(l.isPlainObject(t)){var n,a={};return Object.keys(t).sort().forEach((function(i){if(-1===[\"_\",\"[\"].indexOf(i.charAt(0)))if(\"function\"!=typeof t[i]){if(\"keepdata\"===r){if(\"src\"===i.substr(i.length-3))return}else if(\"keepstream\"===r){if(\"string\"==typeof(n=t[i+\"src\"])&&n.indexOf(\":\")>0&&!l.isPlainObject(t.stream))return}else if(\"keepall\"!==r&&\"string\"==typeof(n=t[i+\"src\"])&&n.indexOf(\":\")>0)return;a[i]=u(t[i],e)}else e&&(a[i]=\"_function\")})),a}return Array.isArray(t)?t.map((function(t){return u(t,e)})):l.isTypedArray(t)?l.simpleMap(t,l.identity):l.isJSDate(t)?l.ms2DateTimeLocal(+t):t}var h={data:(o||[]).map((function(t){var r=u(t);return e&&delete r.fit,r}))};return e||(h.layout=u(s)),t.framework&&t.framework.isPolar&&(h=t.framework.getConfig()),c&&(h.frames=u(c)),i&&(h.config=u(t._context,!0)),\"object\"===n?h:JSON.stringify(h)},y.modifyFrames=function(t,e){var r,n,a,i=t._transitionData._frames,o=t._transitionData._frameHash;for(r=0;r=0;s--)if(o[s].enabled){r._indexToPoints=o[s]._indexToPoints;break}n&&n.calc&&(i=n.calc(t,r))}Array.isArray(i)&&i[0]||(i=[{x:u,y:u}]),i[0].t||(i[0].t={}),i[0].trace=r,d[e]=i}}for(I(c,f,p),a=0;a1e-10?t:0}function f(t,e,r){e=e||0,r=r||0;for(var n=t.length,a=new Array(n),i=0;i0?r:1/0})),a=n.mod(r+1,e.length);return[e[r],e[a]]},findIntersectionXY:c,findXYatLength:function(t,e,r,n){var a=-e*r,i=e*e+1,o=2*(e*a-r),s=a*a+r*r-t*t,l=Math.sqrt(o*o-4*i*s),c=(-o+l)/(2*i),u=(-o-l)/(2*i);return[[c,e*c+a+n],[u,e*u+a+n]]},clampTiny:h,pathPolygon:function(t,e,r,n,a,i){return\"M\"+f(u(t,e,r,n),a,i).join(\"L\")},pathPolygonAnnulus:function(t,e,r,n,a,i,o){var s,l;t=0?f.angularAxis.domain:n.extent(T),E=Math.abs(T[1]-T[0]);A&&!k&&(E=0);var C=S.slice();M&&k&&(C[1]+=E);var L=f.angularAxis.ticksCount||4;L>8&&(L=L/(L/8)+L%8),f.angularAxis.ticksStep&&(L=(C[1]-C[0])/L);var P=f.angularAxis.ticksStep||(C[1]-C[0])/(L*(f.minorTicks+1));w&&(P=Math.max(Math.round(P),1)),C[2]||(C[2]=P);var I=n.range.apply(this,C);if(I=I.map((function(t,e){return parseFloat(t.toPrecision(12))})),s=n.scale.linear().domain(C.slice(0,2)).range(\"clockwise\"===f.direction?[0,360]:[360,0]),u.layout.angularAxis.domain=s.domain(),u.layout.angularAxis.endPadding=M?E:0,\"undefined\"==typeof(t=n.select(this).select(\"svg.chart-root\"))||t.empty()){var z=(new DOMParser).parseFromString(\"' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '\",\"application/xml\"),O=this.appendChild(this.ownerDocument.importNode(z.documentElement,!0));t=n.select(O)}t.select(\".guides-group\").style({\"pointer-events\":\"none\"}),t.select(\".angular.axis-group\").style({\"pointer-events\":\"none\"}),t.select(\".radial.axis-group\").style({\"pointer-events\":\"none\"});var D,R=t.select(\".chart-group\"),F={fill:\"none\",stroke:f.tickColor},B={\"font-size\":f.font.size,\"font-family\":f.font.family,fill:f.font.color,\"text-shadow\":[\"-1px 0px\",\"1px -1px\",\"-1px 1px\",\"1px 1px\"].map((function(t,e){return\" \"+t+\" 0 \"+f.font.outlineColor})).join(\",\")};if(f.showLegend){D=t.select(\".legend-group\").attr({transform:\"translate(\"+[x,f.margin.top]+\")\"}).style({display:\"block\"});var N=p.map((function(t,e){var r=o.util.cloneJson(t);return r.symbol=\"DotPlot\"===t.geometry?t.dotType||\"circle\":\"LinePlot\"!=t.geometry?\"square\":\"line\",r.visibleInLegend=\"undefined\"==typeof t.visibleInLegend||t.visibleInLegend,r.color=\"LinePlot\"===t.geometry?t.strokeColor:t.color,r}));o.Legend().config({data:p.map((function(t,e){return t.name||\"Element\"+e})),legendConfig:a({},o.Legend.defaultConfig().legendConfig,{container:D,elements:N,reverseOrder:f.legend.reverseOrder})})();var j=D.node().getBBox();x=Math.min(f.width-j.width-f.margin.left-f.margin.right,f.height-f.margin.top-f.margin.bottom)/2,x=Math.max(10,x),_=[f.margin.left+x,f.margin.top+x],r.range([0,x]),u.layout.radialAxis.domain=r.domain(),D.attr(\"transform\",\"translate(\"+[_[0]+x,_[1]-x]+\")\")}else D=t.select(\".legend-group\").style({display:\"none\"});t.attr({width:f.width,height:f.height}).style({opacity:f.opacity}),R.attr(\"transform\",\"translate(\"+_+\")\").style({cursor:\"crosshair\"});var V=[(f.width-(f.margin.left+f.margin.right+2*x+(j?j.width:0)))/2,(f.height-(f.margin.top+f.margin.bottom+2*x))/2];if(V[0]=Math.max(0,V[0]),V[1]=Math.max(0,V[1]),t.select(\".outer-group\").attr(\"transform\",\"translate(\"+V+\")\"),f.title&&f.title.text){var U=t.select(\"g.title-group text\").style(B).text(f.title.text),q=U.node().getBBox();U.attr({x:_[0]-q.width/2,y:_[1]-x-20})}var H=t.select(\".radial.axis-group\");if(f.radialAxis.gridLinesVisible){var G=H.selectAll(\"circle.grid-circle\").data(r.ticks(5));G.enter().append(\"circle\").attr({class:\"grid-circle\"}).style(F),G.attr(\"r\",r),G.exit().remove()}H.select(\"circle.outside-circle\").attr({r:x}).style(F);var Y=t.select(\"circle.background-circle\").attr({r:x}).style({fill:f.backgroundColor,stroke:f.stroke});function W(t,e){return s(t)%360+f.orientation}if(f.radialAxis.visible){var Z=n.svg.axis().scale(r).ticks(5).tickSize(5);H.call(Z).attr({transform:\"rotate(\"+f.radialAxis.orientation+\")\"}),H.selectAll(\".domain\").style(F),H.selectAll(\"g>text\").text((function(t,e){return this.textContent+f.radialAxis.ticksSuffix})).style(B).style({\"text-anchor\":\"start\"}).attr({x:0,y:0,dx:0,dy:0,transform:function(t,e){return\"horizontal\"===f.radialAxis.tickOrientation?\"rotate(\"+-f.radialAxis.orientation+\") translate(\"+[0,B[\"font-size\"]]+\")\":\"translate(\"+[0,B[\"font-size\"]]+\")\"}}),H.selectAll(\"g>line\").style({stroke:\"black\"})}var X=t.select(\".angular.axis-group\").selectAll(\"g.angular-tick\").data(I),J=X.enter().append(\"g\").classed(\"angular-tick\",!0);X.attr({transform:function(t,e){return\"rotate(\"+W(t)+\")\"}}).style({display:f.angularAxis.visible?\"block\":\"none\"}),X.exit().remove(),J.append(\"line\").classed(\"grid-line\",!0).classed(\"major\",(function(t,e){return e%(f.minorTicks+1)==0})).classed(\"minor\",(function(t,e){return!(e%(f.minorTicks+1)==0)})).style(F),J.selectAll(\".minor\").style({stroke:f.minorTickColor}),X.select(\"line.grid-line\").attr({x1:f.tickLength?x-f.tickLength:0,x2:x}).style({display:f.angularAxis.gridLinesVisible?\"block\":\"none\"}),J.append(\"text\").classed(\"axis-text\",!0).style(B);var K=X.select(\"text.axis-text\").attr({x:x+f.labelOffset,dy:i+\"em\",transform:function(t,e){var r=W(t),n=x+f.labelOffset,a=f.angularAxis.tickOrientation;return\"horizontal\"==a?\"rotate(\"+-r+\" \"+n+\" 0)\":\"radial\"==a?r<270&&r>90?\"rotate(180 \"+n+\" 0)\":null:\"rotate(\"+(r<=180&&r>0?-90:90)+\" \"+n+\" 0)\"}}).style({\"text-anchor\":\"middle\",display:f.angularAxis.labelsVisible?\"block\":\"none\"}).text((function(t,e){return e%(f.minorTicks+1)!=0?\"\":w?w[t]+f.angularAxis.ticksSuffix:t+f.angularAxis.ticksSuffix})).style(B);f.angularAxis.rewriteTicks&&K.text((function(t,e){return e%(f.minorTicks+1)!=0?\"\":f.angularAxis.rewriteTicks(this.textContent,e)}));var Q=n.max(R.selectAll(\".angular-tick text\")[0].map((function(t,e){return t.getCTM().e+t.getBBox().width})));D.attr({transform:\"translate(\"+[x+Q,f.margin.top]+\")\"});var $=t.select(\"g.geometry-group\").selectAll(\"g\").size()>0,tt=t.select(\"g.geometry-group\").selectAll(\"g.geometry\").data(p);if(tt.enter().append(\"g\").attr({class:function(t,e){return\"geometry geometry\"+e}}),tt.exit().remove(),p[0]||$){var et=[];p.forEach((function(t,e){var n={};n.radialScale=r,n.angularScale=s,n.container=tt.filter((function(t,r){return r==e})),n.geometry=t.geometry,n.orientation=f.orientation,n.direction=f.direction,n.index=e,et.push({data:t,geometryConfig:n})}));var rt=n.nest().key((function(t,e){return\"undefined\"!=typeof t.data.groupId||\"unstacked\"})).entries(et),nt=[];rt.forEach((function(t,e){\"unstacked\"===t.key?nt=nt.concat(t.values.map((function(t,e){return[t]}))):nt.push(t.values)})),nt.forEach((function(t,e){var r;r=Array.isArray(t)?t[0].geometryConfig.geometry:t.geometryConfig.geometry;var n=t.map((function(t,e){return a(o[r].defaultConfig(),t)}));o[r]().config(n)()}))}var at,it,ot=t.select(\".guides-group\"),st=t.select(\".tooltips-group\"),lt=o.tooltipPanel().config({container:st,fontSize:8})(),ct=o.tooltipPanel().config({container:st,fontSize:8})(),ut=o.tooltipPanel().config({container:st,hasTick:!0})();if(!k){var ht=ot.select(\"line\").attr({x1:0,y1:0,y2:0}).style({stroke:\"grey\",\"pointer-events\":\"none\"});R.on(\"mousemove.angular-guide\",(function(t,e){var r=o.util.getMousePos(Y).angle;ht.attr({x2:-x,transform:\"rotate(\"+r+\")\"}).style({opacity:.5});var n=(r+180+360-f.orientation)%360;at=s.invert(n);var a=o.util.convertToCartesian(x+12,r+180);lt.text(o.util.round(at)).move([a[0]+_[0],a[1]+_[1]])})).on(\"mouseout.angular-guide\",(function(t,e){ot.select(\"line\").style({opacity:0})}))}var ft=ot.select(\"circle\").style({stroke:\"grey\",fill:\"none\"});R.on(\"mousemove.radial-guide\",(function(t,e){var n=o.util.getMousePos(Y).radius;ft.attr({r:n}).style({opacity:.5}),it=r.invert(o.util.getMousePos(Y).radius);var a=o.util.convertToCartesian(n,f.radialAxis.orientation);ct.text(o.util.round(it)).move([a[0]+_[0],a[1]+_[1]])})).on(\"mouseout.radial-guide\",(function(t,e){ft.style({opacity:0}),ut.hide(),lt.hide(),ct.hide()})),t.selectAll(\".geometry-group .mark\").on(\"mouseover.tooltip\",(function(e,r){var a=n.select(this),i=this.style.fill,s=\"black\",l=this.style.opacity||1;if(a.attr({\"data-opacity\":l}),i&&\"none\"!==i){a.attr({\"data-fill\":i}),s=n.hsl(i).darker().toString(),a.style({fill:s,opacity:1});var c={t:o.util.round(e[0]),r:o.util.round(e[1])};k&&(c.t=w[e[0]]);var u=\"t: \"+c.t+\", r: \"+c.r,h=this.getBoundingClientRect(),f=t.node().getBoundingClientRect(),p=[h.left+h.width/2-V[0]-f.left,h.top+h.height/2-V[1]-f.top];ut.config({color:s}).text(u),ut.move(p)}else i=this.style.stroke||\"black\",a.attr({\"data-stroke\":i}),s=n.hsl(i).darker().toString(),a.style({stroke:s,opacity:1})})).on(\"mousemove.tooltip\",(function(t,e){if(0!=n.event.which)return!1;n.select(this).attr(\"data-fill\")&&ut.show()})).on(\"mouseout.tooltip\",(function(t,e){ut.hide();var r=n.select(this),a=r.attr(\"data-fill\");a?r.style({fill:a,opacity:r.attr(\"data-opacity\")}):r.style({stroke:r.attr(\"data-stroke\"),opacity:r.attr(\"data-opacity\")})}))}))}(c),this},f.config=function(t){if(!arguments.length)return l;var e=o.util.cloneJson(t);return e.data.forEach((function(t,e){l.data[e]||(l.data[e]={}),a(l.data[e],o.Axis.defaultConfig().data[0]),a(l.data[e],t)})),a(l.layout,o.Axis.defaultConfig().layout),a(l.layout,e.layout),this},f.getLiveConfig=function(){return u},f.getinputConfig=function(){return c},f.radialScale=function(t){return r},f.angularScale=function(t){return s},f.svg=function(){return t},n.rebind(f,h,\"on\"),f},o.Axis.defaultConfig=function(t,e){return{data:[{t:[1,2,3,4],r:[10,11,12,13],name:\"Line1\",geometry:\"LinePlot\",color:null,strokeDash:\"solid\",strokeColor:null,strokeSize:\"1\",visibleInLegend:!0,opacity:1}],layout:{defaultColorRange:n.scale.category10().range(),title:null,height:450,width:500,margin:{top:40,right:40,bottom:40,left:40},font:{size:12,color:\"gray\",outlineColor:\"white\",family:\"Tahoma, sans-serif\"},direction:\"clockwise\",orientation:0,labelOffset:10,radialAxis:{domain:null,orientation:-45,ticksSuffix:\"\",visible:!0,gridLinesVisible:!0,tickOrientation:\"horizontal\",rewriteTicks:null},angularAxis:{domain:[0,360],ticksSuffix:\"\",visible:!0,gridLinesVisible:!0,labelsVisible:!0,tickOrientation:\"horizontal\",rewriteTicks:null,ticksCount:null,ticksStep:null},minorTicks:0,tickLength:null,tickColor:\"silver\",minorTickColor:\"#eee\",backgroundColor:\"none\",needsEndSpacing:null,showLegend:!0,legend:{reverseOrder:!1},opacity:1}}},o.util={},o.DATAEXTENT=\"dataExtent\",o.AREA=\"AreaChart\",o.LINE=\"LinePlot\",o.DOT=\"DotPlot\",o.BAR=\"BarChart\",o.util._override=function(t,e){for(var r in t)r in e&&(e[r]=t[r])},o.util._extend=function(t,e){for(var r in t)e[r]=t[r]},o.util._rndSnd=function(){return 2*Math.random()-1+(2*Math.random()-1)+(2*Math.random()-1)},o.util.dataFromEquation2=function(t,e){var r=e||6;return n.range(0,360+r,r).map((function(e,r){var n=e*Math.PI/180;return[e,t(n)]}))},o.util.dataFromEquation=function(t,e,r){var a=e||6,i=[],o=[];n.range(0,360+a,a).forEach((function(e,r){var n=e*Math.PI/180,a=t(n);i.push(e),o.push(a)}));var s={t:i,r:o};return r&&(s.name=r),s},o.util.ensureArray=function(t,e){if(\"undefined\"==typeof t)return null;var r=[].concat(t);return n.range(e).map((function(t,e){return r[e]||r[0]}))},o.util.fillArrays=function(t,e,r){return e.forEach((function(e,n){t[e]=o.util.ensureArray(t[e],r)})),t},o.util.cloneJson=function(t){return JSON.parse(JSON.stringify(t))},o.util.validateKeys=function(t,e){\"string\"==typeof e&&(e=e.split(\".\"));var r=e.shift();return t[r]&&(!e.length||objHasKeys(t[r],e))},o.util.sumArrays=function(t,e){return n.zip(t,e).map((function(t,e){return n.sum(t)}))},o.util.arrayLast=function(t){return t[t.length-1]},o.util.arrayEqual=function(t,e){for(var r=Math.max(t.length,e.length,1);r-- >=0&&t[r]===e[r];);return-2===r},o.util.flattenArray=function(t){for(var e=[];!o.util.arrayEqual(e,t);)e=t,t=[].concat.apply([],t);return t},o.util.deduplicate=function(t){return t.filter((function(t,e,r){return r.indexOf(t)==e}))},o.util.convertToCartesian=function(t,e){var r=e*Math.PI/180;return[t*Math.cos(r),t*Math.sin(r)]},o.util.round=function(t,e){var r=e||2,n=Math.pow(10,r);return Math.round(t*n)/n},o.util.getMousePos=function(t){var e=n.mouse(t.node()),r=e[0],a=e[1],i={};return i.x=r,i.y=a,i.pos=e,i.angle=180*(Math.atan2(a,r)+Math.PI)/Math.PI,i.radius=Math.sqrt(r*r+a*a),i},o.util.duplicatesCount=function(t){for(var e,r={},n={},a=0,i=t.length;a0)){var l=n.select(this.parentNode).selectAll(\"path.line\").data([0]);l.enter().insert(\"path\"),l.attr({class:\"line\",d:u(s),transform:function(t,r){return\"rotate(\"+(e.orientation+90)+\")\"},\"pointer-events\":\"none\"}).style({fill:function(t,e){return d.fill(r,a,i)},\"fill-opacity\":0,stroke:function(t,e){return d.stroke(r,a,i)},\"stroke-width\":function(t,e){return d[\"stroke-width\"](r,a,i)},\"stroke-dasharray\":function(t,e){return d[\"stroke-dasharray\"](r,a,i)},opacity:function(t,e){return d.opacity(r,a,i)},display:function(t,e){return d.display(r,a,i)}})}};var h=e.angularScale.range(),f=Math.abs(h[1]-h[0])/o[0].length*Math.PI/180,p=n.svg.arc().startAngle((function(t){return-f/2})).endAngle((function(t){return f/2})).innerRadius((function(t){return e.radialScale(l+(t[2]||0))})).outerRadius((function(t){return e.radialScale(l+(t[2]||0))+e.radialScale(t[1])}));c.arc=function(t,r,a){n.select(this).attr({class:\"mark arc\",d:p,transform:function(t,r){return\"rotate(\"+(e.orientation+s(t[0])+90)+\")\"}})};var d={fill:function(e,r,n){return t[n].data.color},stroke:function(e,r,n){return t[n].data.strokeColor},\"stroke-width\":function(e,r,n){return t[n].data.strokeSize+\"px\"},\"stroke-dasharray\":function(e,n,a){return r[t[a].data.strokeDash]},opacity:function(e,r,n){return t[n].data.opacity},display:function(e,r,n){return\"undefined\"==typeof t[n].data.visible||t[n].data.visible?\"block\":\"none\"}},g=n.select(this).selectAll(\"g.layer\").data(o);g.enter().append(\"g\").attr({class:\"layer\"});var m=g.selectAll(\"path.mark\").data((function(t,e){return t}));m.enter().append(\"path\").attr({class:\"mark\"}),m.style(d).each(c[e.geometryType]),m.exit().remove(),g.exit().remove()}))}return i.config=function(e){return arguments.length?(e.forEach((function(e,r){t[r]||(t[r]={}),a(t[r],o.PolyChart.defaultConfig()),a(t[r],e)})),this):t},i.getColorScale=function(){},n.rebind(i,e,\"on\"),i},o.PolyChart.defaultConfig=function(){return{data:{name:\"geom1\",t:[[1,2,3,4]],r:[[1,2,3,4]],dotType:\"circle\",dotSize:64,dotVisible:!1,barWidth:20,color:\"#ffa500\",strokeSize:1,strokeColor:\"silver\",strokeDash:\"solid\",opacity:1,index:0,visible:!0,visibleInLegend:!0},geometryConfig:{geometry:\"LinePlot\",geometryType:\"arc\",direction:\"clockwise\",orientation:0,container:\"body\",radialScale:null,angularScale:null,colorScale:n.scale.category20()}}},o.BarChart=function(){return o.PolyChart()},o.BarChart.defaultConfig=function(){return{geometryConfig:{geometryType:\"bar\"}}},o.AreaChart=function(){return o.PolyChart()},o.AreaChart.defaultConfig=function(){return{geometryConfig:{geometryType:\"arc\"}}},o.DotPlot=function(){return o.PolyChart()},o.DotPlot.defaultConfig=function(){return{geometryConfig:{geometryType:\"dot\",dotType:\"circle\"}}},o.LinePlot=function(){return o.PolyChart()},o.LinePlot.defaultConfig=function(){return{geometryConfig:{geometryType:\"line\"}}},o.Legend=function(){var t=o.Legend.defaultConfig(),e=n.dispatch(\"hover\");function r(){var e=t.legendConfig,i=t.data.map((function(t,r){return[].concat(t).map((function(t,n){var i=a({},e.elements[r]);return i.name=t,i.color=[].concat(e.elements[r].color)[n],i}))})),o=n.merge(i);o=o.filter((function(t,r){return e.elements[r]&&(e.elements[r].visibleInLegend||\"undefined\"==typeof e.elements[r].visibleInLegend)})),e.reverseOrder&&(o=o.reverse());var s=e.container;(\"string\"==typeof s||s.nodeName)&&(s=n.select(s));var l=o.map((function(t,e){return t.color})),c=e.fontSize,u=null==e.isContinuous?\"number\"==typeof o[0]:e.isContinuous,h=u?e.height:c*o.length,f=s.classed(\"legend-group\",!0).selectAll(\"svg\").data([0]),p=f.enter().append(\"svg\").attr({width:300,height:h+c,xmlns:\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",version:\"1.1\"});p.append(\"g\").classed(\"legend-axis\",!0),p.append(\"g\").classed(\"legend-marks\",!0);var d=n.range(o.length),g=n.scale[u?\"linear\":\"ordinal\"]().domain(d).range(l),m=n.scale[u?\"linear\":\"ordinal\"]().domain(d)[u?\"range\":\"rangePoints\"]([0,h]);if(u){var v=f.select(\".legend-marks\").append(\"defs\").append(\"linearGradient\").attr({id:\"grad1\",x1:\"0%\",y1:\"0%\",x2:\"0%\",y2:\"100%\"}).selectAll(\"stop\").data(l);v.enter().append(\"stop\"),v.attr({offset:function(t,e){return e/(l.length-1)*100+\"%\"}}).style({\"stop-color\":function(t,e){return t}}),f.append(\"rect\").classed(\"legend-mark\",!0).attr({height:e.height,width:e.colorBandWidth,fill:\"url(#grad1)\"})}else{var y=f.select(\".legend-marks\").selectAll(\"path.legend-mark\").data(o);y.enter().append(\"path\").classed(\"legend-mark\",!0),y.attr({transform:function(t,e){return\"translate(\"+[c/2,m(e)+c/2]+\")\"},d:function(t,e){var r,a,i,o=t.symbol;return i=3*(a=c),\"line\"===(r=o)?\"M\"+[[-a/2,-a/12],[a/2,-a/12],[a/2,a/12],[-a/2,a/12]]+\"Z\":-1!=n.svg.symbolTypes.indexOf(r)?n.svg.symbol().type(r).size(i)():n.svg.symbol().type(\"square\").size(i)()},fill:function(t,e){return g(e)}}),y.exit().remove()}var x=n.svg.axis().scale(m).orient(\"right\"),b=f.select(\"g.legend-axis\").attr({transform:\"translate(\"+[u?e.colorBandWidth:c,c/2]+\")\"}).call(x);return b.selectAll(\".domain\").style({fill:\"none\",stroke:\"none\"}),b.selectAll(\"line\").style({fill:\"none\",stroke:u?e.textColor:\"none\"}),b.selectAll(\"text\").style({fill:e.textColor,\"font-size\":e.fontSize}).text((function(t,e){return o[e].name})),r}return r.config=function(e){return arguments.length?(a(t,e),this):t},n.rebind(r,e,\"on\"),r},o.Legend.defaultConfig=function(t,e){return{data:[\"a\",\"b\",\"c\"],legendConfig:{elements:[{symbol:\"line\",color:\"red\"},{symbol:\"square\",color:\"yellow\"},{symbol:\"diamond\",color:\"limegreen\"}],height:150,colorBandWidth:30,fontSize:12,container:\"body\",isContinuous:null,textColor:\"grey\",reverseOrder:!1}}},o.tooltipPanel=function(){var t,e,r,i={container:null,hasTick:!1,fontSize:12,color:\"white\",padding:5},s=\"tooltip-\"+o.tooltipPanel.uid++,l=10,c=function(){var n=(t=i.container.selectAll(\"g.\"+s).data([0])).enter().append(\"g\").classed(s,!0).style({\"pointer-events\":\"none\",display:\"none\"});return r=n.append(\"path\").style({fill:\"white\",\"fill-opacity\":.9}).attr({d:\"M0 0\"}),e=n.append(\"text\").attr({dx:i.padding+l,dy:.3*+i.fontSize}),c};return c.text=function(a){var o=n.hsl(i.color).l,s=o>=.5?\"#aaa\":\"white\",u=o>=.5?\"black\":\"white\",h=a||\"\";e.style({fill:u,\"font-size\":i.fontSize+\"px\"}).text(h);var f=i.padding,p=e.node().getBBox(),d={fill:i.color,stroke:s,\"stroke-width\":\"2px\"},g=p.width+2*f+l,m=p.height+2*f;return r.attr({d:\"M\"+[[l,-m/2],[l,-m/4],[i.hasTick?0:l,0],[l,m/4],[l,m/2],[g,m/2],[g,-m/2]].join(\"L\")+\"Z\"}).style(d),t.attr({transform:\"translate(\"+[l,-m/2+2*f]+\")\"}),t.style({display:\"block\"}),c},c.move=function(e){if(t)return t.attr({transform:\"translate(\"+[e[0],e[1]]+\")\"}).style({display:\"block\"}),c},c.hide=function(){if(t)return t.style({display:\"none\"}),c},c.show=function(){if(t)return t.style({display:\"block\"}),c},c.config=function(t){return a(i,t),c},c},o.tooltipPanel.uid=1,o.adapter={},o.adapter.plotly=function(){var t={convert:function(t,e){var r={};if(t.data&&(r.data=t.data.map((function(t,r){var n=a({},t);return[[n,[\"marker\",\"color\"],[\"color\"]],[n,[\"marker\",\"opacity\"],[\"opacity\"]],[n,[\"marker\",\"line\",\"color\"],[\"strokeColor\"]],[n,[\"marker\",\"line\",\"dash\"],[\"strokeDash\"]],[n,[\"marker\",\"line\",\"width\"],[\"strokeSize\"]],[n,[\"marker\",\"symbol\"],[\"dotType\"]],[n,[\"marker\",\"size\"],[\"dotSize\"]],[n,[\"marker\",\"barWidth\"],[\"barWidth\"]],[n,[\"line\",\"interpolation\"],[\"lineInterpolation\"]],[n,[\"showlegend\"],[\"visibleInLegend\"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e||delete n.marker,e&&delete n.groupId,e?(\"LinePlot\"===n.geometry?(n.type=\"scatter\",!0===n.dotVisible?(delete n.dotVisible,n.mode=\"lines+markers\"):n.mode=\"lines\"):\"DotPlot\"===n.geometry?(n.type=\"scatter\",n.mode=\"markers\"):\"AreaChart\"===n.geometry?n.type=\"area\":\"BarChart\"===n.geometry&&(n.type=\"bar\"),delete n.geometry):(\"scatter\"===n.type?\"lines\"===n.mode?n.geometry=\"LinePlot\":\"markers\"===n.mode?n.geometry=\"DotPlot\":\"lines+markers\"===n.mode&&(n.geometry=\"LinePlot\",n.dotVisible=!0):\"area\"===n.type?n.geometry=\"AreaChart\":\"bar\"===n.type&&(n.geometry=\"BarChart\"),delete n.mode,delete n.type),n})),!e&&t.layout&&\"stack\"===t.layout.barmode)){var i=o.util.duplicates(r.data.map((function(t,e){return t.geometry})));r.data.forEach((function(t,e){var n=i.indexOf(t.geometry);-1!=n&&(r.data[e].groupId=n)}))}if(t.layout){var s=a({},t.layout);if([[s,[\"plot_bgcolor\"],[\"backgroundColor\"]],[s,[\"showlegend\"],[\"showLegend\"]],[s,[\"radialaxis\"],[\"radialAxis\"]],[s,[\"angularaxis\"],[\"angularAxis\"]],[s.angularaxis,[\"showline\"],[\"gridLinesVisible\"]],[s.angularaxis,[\"showticklabels\"],[\"labelsVisible\"]],[s.angularaxis,[\"nticks\"],[\"ticksCount\"]],[s.angularaxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.angularaxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.angularaxis,[\"range\"],[\"domain\"]],[s.angularaxis,[\"endpadding\"],[\"endPadding\"]],[s.radialaxis,[\"showline\"],[\"gridLinesVisible\"]],[s.radialaxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.radialaxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.radialaxis,[\"range\"],[\"domain\"]],[s.angularAxis,[\"showline\"],[\"gridLinesVisible\"]],[s.angularAxis,[\"showticklabels\"],[\"labelsVisible\"]],[s.angularAxis,[\"nticks\"],[\"ticksCount\"]],[s.angularAxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.angularAxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.angularAxis,[\"range\"],[\"domain\"]],[s.angularAxis,[\"endpadding\"],[\"endPadding\"]],[s.radialAxis,[\"showline\"],[\"gridLinesVisible\"]],[s.radialAxis,[\"tickorientation\"],[\"tickOrientation\"]],[s.radialAxis,[\"ticksuffix\"],[\"ticksSuffix\"]],[s.radialAxis,[\"range\"],[\"domain\"]],[s.font,[\"outlinecolor\"],[\"outlineColor\"]],[s.legend,[\"traceorder\"],[\"reverseOrder\"]],[s,[\"labeloffset\"],[\"labelOffset\"]],[s,[\"defaultcolorrange\"],[\"defaultColorRange\"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e?(\"undefined\"!=typeof s.tickLength&&(s.angularaxis.ticklen=s.tickLength,delete s.tickLength),s.tickColor&&(s.angularaxis.tickcolor=s.tickColor,delete s.tickColor)):(s.angularAxis&&\"undefined\"!=typeof s.angularAxis.ticklen&&(s.tickLength=s.angularAxis.ticklen),s.angularAxis&&\"undefined\"!=typeof s.angularAxis.tickcolor&&(s.tickColor=s.angularAxis.tickcolor)),s.legend&&\"boolean\"!=typeof s.legend.reverseOrder&&(s.legend.reverseOrder=\"normal\"!=s.legend.reverseOrder),s.legend&&\"boolean\"==typeof s.legend.traceorder&&(s.legend.traceorder=s.legend.traceorder?\"reversed\":\"normal\",delete s.legend.reverseOrder),s.margin&&\"undefined\"!=typeof s.margin.t){var l=[\"t\",\"r\",\"b\",\"l\",\"pad\"],c=[\"top\",\"right\",\"bottom\",\"left\",\"pad\"],u={};n.entries(s.margin).forEach((function(t,e){u[c[l.indexOf(t.key)]]=t.value})),s.margin=u}e&&(delete s.needsEndSpacing,delete s.minorTickColor,delete s.minorTicks,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksStep,delete s.angularaxis.rewriteTicks,delete s.angularaxis.nticks,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksStep,delete s.radialaxis.rewriteTicks,delete s.radialaxis.nticks),r.layout=s}return r}};return t}},{\"../../../constants/alignment\":697,\"../../../lib\":728,d3:164}],849:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../../lib\"),i=t(\"../../../components/color\"),o=t(\"./micropolar\"),s=t(\"./undo_manager\"),l=a.extendDeepAll,c=e.exports={};c.framework=function(t){var e,r,a,i,u,h=new s;function f(r,s){return s&&(u=s),n.select(n.select(u).node().parentNode).selectAll(\".svg-container>*:not(.chart-root)\").remove(),e=e?l(e,r):r,a||(a=o.Axis()),i=o.adapter.plotly().convert(e),a.config(i).render(u),t.data=e.data,t.layout=e.layout,c.fillLayout(t),e}return f.isPolar=!0,f.svg=function(){return a.svg()},f.getConfig=function(){return e},f.getLiveConfig=function(){return o.adapter.plotly().convert(a.getLiveConfig(),!0)},f.getLiveScales=function(){return{t:a.angularScale(),r:a.radialScale()}},f.setUndoPoint=function(){var t,n,a=this,i=o.util.cloneJson(e);t=i,n=r,h.add({undo:function(){n&&a(n)},redo:function(){a(t)}}),r=o.util.cloneJson(i)},f.undo=function(){h.undo()},f.redo=function(){h.redo()},f},c.fillLayout=function(t){var e=n.select(t).selectAll(\".plot-container\"),r=e.selectAll(\".svg-container\"),a=t.framework&&t.framework.svg&&t.framework.svg(),o={width:800,height:600,paper_bgcolor:i.background,_container:e,_paperdiv:r,_paper:a};t._fullLayout=l(o,t.layout)}},{\"../../../components/color\":595,\"../../../lib\":728,\"./micropolar\":848,\"./undo_manager\":850,d3:164}],850:[function(t,e,r){\"use strict\";e.exports=function(){var t,e=[],r=-1,n=!1;function a(t,e){return t?(n=!0,t[e](),n=!1,this):this}return{add:function(t){return n||(e.splice(r+1,e.length-r),e.push(t),r=e.length-1),this},setCallback:function(e){t=e},undo:function(){var n=e[r];return n?(a(n,\"undo\"),r-=1,t&&t(n.undo),this):this},redo:function(){var n=e[r+1];return n?(a(n,\"redo\"),r+=1,t&&t(n.redo),this):this},clear:function(){e=[],r=-1},hasUndo:function(){return-1!==r},hasRedo:function(){return r=90||s>90&&l>=450?1:u<=0&&f<=0?0:Math.max(u,f);e=s<=180&&l>=180||s>180&&l>=540?-1:c>=0&&h>=0?0:Math.min(c,h);r=s<=270&&l>=270||s>270&&l>=630?-1:u>=0&&f>=0?0:Math.min(u,f);n=l>=360?1:c<=0&&h<=0?0:Math.max(c,h);return[e,r,n,a]}(f),x=y[2]-y[0],b=y[3]-y[1],_=h/u,w=Math.abs(b/x);_>w?(p=u,v=(h-(d=u*w))/n.h/2,g=[o[0],o[1]],m=[c[0]+v,c[1]-v]):(d=h,v=(u-(p=h/w))/n.w/2,g=[o[0]+v,o[1]-v],m=[c[0],c[1]]),this.xLength2=p,this.yLength2=d,this.xDomain2=g,this.yDomain2=m;var T=this.xOffset2=n.l+n.w*g[0],k=this.yOffset2=n.t+n.h*(1-m[1]),A=this.radius=p/x,M=this.innerRadius=e.hole*A,S=this.cx=T-A*y[0],L=this.cy=k+A*y[3],P=this.cxx=S-T,I=this.cyy=L-k;this.radialAxis=this.mockAxis(t,e,a,{_id:\"x\",side:{counterclockwise:\"top\",clockwise:\"bottom\"}[a.side],domain:[M/n.w,A/n.w]}),this.angularAxis=this.mockAxis(t,e,i,{side:\"right\",domain:[0,Math.PI],autorange:!1}),this.doAutoRange(t,e),this.updateAngularAxis(t,e),this.updateRadialAxis(t,e),this.updateRadialAxisTitle(t,e),this.xaxis=this.mockCartesianAxis(t,e,{_id:\"x\",domain:g}),this.yaxis=this.mockCartesianAxis(t,e,{_id:\"y\",domain:m});var z=this.pathSubplot();this.clipPaths.forTraces.select(\"path\").attr(\"d\",z).attr(\"transform\",R(P,I)),r.frontplot.attr(\"transform\",R(T,k)).call(l.setClipUrl,this._hasClipOnAxisFalse?null:this.clipIds.forTraces,this.gd),r.bg.attr(\"d\",z).attr(\"transform\",R(S,L)).call(s.fill,e.bgcolor)},I.mockAxis=function(t,e,r,n){var a=o.extendFlat({},r,n);return f(a,e,t),a},I.mockCartesianAxis=function(t,e,r){var n=this,a=r._id,i=o.extendFlat({type:\"linear\"},r);h(i,t);var s={x:[0,2],y:[1,3]};return i.setRange=function(){var t=n.sectorBBox,r=s[a],o=n.radialAxis._rl,l=(o[1]-o[0])/(1-e.hole);i.range=[t[r[0]]*l,t[r[1]]*l]},i.isPtWithinRange=\"x\"===a?function(t){return n.isPtInside(t)}:function(){return!0},i.setRange(),i.setScale(),i},I.doAutoRange=function(t,e){var r=this.gd,n=this.radialAxis,a=e.radialaxis;n.setScale(),p(r,n);var i=n.range;a.range=i.slice(),a._input.range=i.slice(),n._rl=[n.r2l(i[0],null,\"gregorian\"),n.r2l(i[1],null,\"gregorian\")]},I.updateRadialAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.radialaxis,p=E(e.sector[0],360),d=r.radialAxis,g=l90&&p<=270&&(d.tickangle=180);var m=function(t){return\"translate(\"+(d.l2p(t.x)+l)+\",0)\"},v=z(f);if(r.radialTickLayout!==v&&(a[\"radial-axis\"].selectAll(\".xtick\").remove(),r.radialTickLayout=v),g){d.setScale();var y=u.calcTicks(d),x=u.clipEnds(d,y),b=u.getTickSigns(d)[2];u.drawTicks(n,d,{vals:y,layer:a[\"radial-axis\"],path:u.makeTickPath(d,0,b),transFn:m,crisp:!1}),u.drawGrid(n,d,{vals:x,layer:a[\"radial-grid\"],path:function(t){return r.pathArc(d.r2p(t.x)+l)},transFn:o.noop,crisp:!1}),u.drawLabels(n,d,{vals:y,layer:a[\"radial-axis\"],transFn:m,labelFns:u.makeLabelFns(d,0)})}var _=r.radialAxisAngle=r.vangles?L(O(C(f.angle),r.vangles)):f.angle,w=R(c,h),T=w+F(-_);D(a[\"radial-axis\"],g&&(f.showticklabels||f.ticks),{transform:T}),D(a[\"radial-grid\"],g&&f.showgrid,{transform:w}),D(a[\"radial-line\"].select(\"line\"),g&&f.showline,{x1:l,y1:0,x2:i,y2:0,transform:T}).attr(\"stroke-width\",f.linewidth).call(s.stroke,f.linecolor)},I.updateRadialAxisTitle=function(t,e,r){var n=this.gd,a=this.radius,i=this.cx,o=this.cy,s=e.radialaxis,c=this.id+\"title\",u=void 0!==r?r:this.radialAxisAngle,h=C(u),f=Math.cos(h),p=Math.sin(h),d=0;if(s.title){var g=l.bBox(this.layers[\"radial-axis\"].node()).height,m=s.title.font.size;d=\"counterclockwise\"===s.side?-g-.4*m:g+.8*m}this.layers[\"radial-axis-title\"]=v.draw(n,c,{propContainer:s,propName:this.id+\".radialaxis.title\",placeholder:S(n,\"Click to enter radial axis title\"),attributes:{x:i+a/2*f+d*p,y:o-a/2*p+d*f,\"text-anchor\":\"middle\"},transform:{rotate:-u}})},I.updateAngularAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.angularaxis,p=r.angularAxis;r.fillViewInitialKey(\"angularaxis.rotation\",f.rotation),p.setGeometry(),p.setScale();var d=function(t){return p.t2g(t.x)};\"linear\"===p.type&&\"radians\"===p.thetaunit&&(p.tick0=L(p.tick0),p.dtick=L(p.dtick));var g=function(t){return R(c+i*Math.cos(t),h-i*Math.sin(t))},m=u.makeLabelFns(p,0).labelStandoff,v={xFn:function(t){var e=d(t);return Math.cos(e)*m},yFn:function(t){var e=d(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(m+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*k)},anchorFn:function(t){var e=d(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},heightFn:function(t,e,r){var n=d(t);return-.5*(1+Math.sin(n))*r}},y=z(f);r.angularTickLayout!==y&&(a[\"angular-axis\"].selectAll(\".\"+p._id+\"tick\").remove(),r.angularTickLayout=y);var x,b=u.calcTicks(p);if(\"linear\"===e.gridshape?(x=b.map(d),o.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,\"category\"===p.type&&(b=b.filter((function(t){return o.isAngleInsideSector(d(t),r.sectorInRad)}))),p.visible){var _=\"inside\"===p.ticks?-1:1,w=(p.linewidth||1)/2;u.drawTicks(n,p,{vals:b,layer:a[\"angular-axis\"],path:\"M\"+_*w+\",0h\"+_*p.ticklen,transFn:function(t){var e=d(t);return g(e)+F(-L(e))},crisp:!1}),u.drawGrid(n,p,{vals:b,layer:a[\"angular-grid\"],path:function(t){var e=d(t),r=Math.cos(e),n=Math.sin(e);return\"M\"+[c+l*r,h-l*n]+\"L\"+[c+i*r,h-i*n]},transFn:o.noop,crisp:!1}),u.drawLabels(n,p,{vals:b,layer:a[\"angular-axis\"],repositionOnUpdate:!0,transFn:function(t){return g(d(t))},labelFns:v})}D(a[\"angular-line\"].select(\"path\"),f.showline,{d:r.pathSubplot(),transform:R(c,h)}).attr(\"stroke-width\",f.linewidth).call(s.stroke,f.linecolor)},I.updateFx=function(t,e){this.gd._context.staticPlot||(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1),this.updateMainDrag(t))},I.updateMainDrag=function(t){var e=this,r=e.gd,o=e.layers,s=t._zoomlayer,l=A.MINZOOM,c=A.OFFEDGE,u=e.radius,h=e.innerRadius,f=e.cx,p=e.cy,v=e.cxx,_=e.cyy,w=e.sectorInRad,T=e.vangles,k=e.radialAxis,S=M.clampTiny,E=M.findXYatLength,C=M.findEnclosingVertexAngles,L=A.cornerHalfWidth,P=A.cornerLen/2,I=d.makeDragger(o,\"path\",\"maindrag\",\"crosshair\");n.select(I).attr(\"d\",e.pathSubplot()).attr(\"transform\",R(f,p));var z,O,D,F,B,N,j,V,U,q={element:I,gd:r,subplot:e.id,plotinfo:{id:e.id,xaxis:e.xaxis,yaxis:e.yaxis},xaxes:[e.xaxis],yaxes:[e.yaxis]};function H(t,e){return Math.sqrt(t*t+e*e)}function G(t,e){return H(t-v,e-_)}function Y(t,e){return Math.atan2(_-e,t-v)}function W(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function Z(t,r){if(0===t)return e.pathSector(2*L);var n=P/t,a=r-n,i=r+n,o=Math.max(0,Math.min(t,u)),s=o-L,l=o+L;return\"M\"+W(s,a)+\"A\"+[s,s]+\" 0,0,0 \"+W(s,i)+\"L\"+W(l,i)+\"A\"+[l,l]+\" 0,0,1 \"+W(l,a)+\"Z\"}function X(t,r,n){if(0===t)return e.pathSector(2*L);var a,i,o=W(t,r),s=W(t,n),l=S((o[0]+s[0])/2),c=S((o[1]+s[1])/2);if(l&&c){var u=c/l,h=-1/u,f=E(L,u,l,c);a=E(P,h,f[0][0],f[0][1]),i=E(P,h,f[1][0],f[1][1])}else{var p,d;c?(p=P,d=L):(p=L,d=P),a=[[l-p,c-d],[l+p,c-d]],i=[[l-p,c+d],[l+p,c+d]]}return\"M\"+a.join(\"L\")+\"L\"+i.reverse().join(\"L\")+\"Z\"}function J(t,e){return e=Math.max(Math.min(e,u),h),tl?(t-1&&1===t&&x(n,r,[e.xaxis],[e.yaxis],e.id,q),a.indexOf(\"event\")>-1&&m.click(r,n,e.id)}q.prepFn=function(t,n,i){var o=r._fullLayout.dragmode,l=I.getBoundingClientRect();if(z=n-l.left,O=i-l.top,T){var c=M.findPolygonOffset(u,w[0],w[1],T);z+=v+c[0],O+=_+c[1]}switch(o){case\"zoom\":q.moveFn=T?tt:Q,q.clickFn=nt,q.doneFn=et,function(){D=null,F=null,B=e.pathSubplot(),N=!1;var t=r._fullLayout[e.id];j=a(t.bgcolor).getLuminance(),(V=d.makeZoombox(s,j,f,p,B)).attr(\"fill-rule\",\"evenodd\"),U=d.makeCorners(s,f,p),b(r)}();break;case\"select\":case\"lasso\":y(t,n,i,q,o)}},I.onmousemove=function(t){m.hover(r,t,e.id),r._fullLayout._lasthover=I,r._fullLayout._hoversubplot=e.id},I.onmouseout=function(t){r._dragging||g.unhover(r,t)},g.init(q)},I.updateRadialDrag=function(t,e,r){var a=this,s=a.gd,l=a.layers,c=a.radius,u=a.innerRadius,h=a.cx,f=a.cy,p=a.radialAxis,m=A.radialDragBoxSize,v=m/2;if(p.visible){var y,x,_,k=C(a.radialAxisAngle),M=p._rl,S=M[0],E=M[1],P=M[r],I=.75*(M[1]-M[0])/(1-e.hole)/c;r?(y=h+(c+v)*Math.cos(k),x=f-(c+v)*Math.sin(k),_=\"radialdrag\"):(y=h+(u-v)*Math.cos(k),x=f-(u-v)*Math.sin(k),_=\"radialdrag-inner\");var z,B,N,j=d.makeRectDragger(l,_,\"crosshair\",-v,-v,m,m),V={element:j,gd:s};D(n.select(j),p.visible&&u0==(r?N>S:Nn?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*i},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 a=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return\"degrees\"===e?i(t):t}(a(t),e)},t.c2d=function(t,e){return s(function(t,e){return\"degrees\"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,a){var i,o,s=e[a],l=e._length,c=function(r){return t.d2c(r,e.thetaunit)};if(s){if(n.isTypedArray(s)&&\"linear\"===r){if(l===s.length)return s;if(s.subarray)return s.subarray(0,l)}for(i=new Array(l),o=0;o0){for(var n=[],a=0;a=u&&(p.min=0,g.min=0,m.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function d(t,e,r,n){var a=h[e._name];function o(r,n){return i.coerce(t,e,a,r,n)}o(\"uirevision\",n.uirevision),e.type=\"linear\";var f=o(\"color\"),p=f!==a.color.dflt?f:r.font.color,d=e._name.charAt(0).toUpperCase(),g=\"Component \"+d,m=o(\"title.text\",g);e._hovertitle=m===g?m:d,i.coerceFont(o,\"title.font\",{family:r.font.family,size:Math.round(1.2*r.font.size),color:p}),o(\"min\"),c(t,e,o,\"linear\"),s(t,e,o,\"linear\",{}),l(t,e,o,{outerTicks:!0}),o(\"showticklabels\")&&(i.coerceFont(o,\"tickfont\",{family:r.font.family,size:r.font.size,color:p}),o(\"tickangle\"),o(\"tickformat\")),u(t,e,o,{dfltColor:f,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:a}),o(\"hoverformat\"),o(\"layer\")}e.exports=function(t,e,r){o(t,e,r,{type:\"ternary\",attributes:h,handleDefaults:p,font:e.font,paper_bgcolor:e.paper_bgcolor})}},{\"../../components/color\":595,\"../../lib\":728,\"../../plot_api/plot_template\":766,\"../cartesian/line_grid_defaults\":792,\"../cartesian/tick_label_defaults\":797,\"../cartesian/tick_mark_defaults\":798,\"../cartesian/tick_value_defaults\":799,\"../subplot_defaults\":853,\"./layout_attributes\":856}],858:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"tinycolor2\"),i=t(\"../../registry\"),o=t(\"../../lib\"),s=o._,l=t(\"../../components/color\"),c=t(\"../../components/drawing\"),u=t(\"../cartesian/set_convert\"),h=t(\"../../lib/extend\").extendFlat,f=t(\"../plots\"),p=t(\"../cartesian/axes\"),d=t(\"../../components/dragelement\"),g=t(\"../../components/fx\"),m=t(\"../../components/dragelement/helpers\"),v=m.freeMode,y=m.rectMode,x=t(\"../../components/titles\"),b=t(\"../cartesian/select\").prepSelect,_=t(\"../cartesian/select\").selectOnClick,w=t(\"../cartesian/select\").clearSelect,T=t(\"../cartesian/select\").clearSelectionsCache,k=t(\"../cartesian/constants\");function A(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=A;var M=A.prototype;M.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},M.plot=function(t,e){var r=e[this.id],n=e._size;this._hasClipOnAxisFalse=!1;for(var a=0;aS*x?a=(i=x)*S:i=(a=y)/S,o=m*a/y,s=v*i/x,r=e.l+e.w*d-a/2,n=e.t+e.h*(1-g)-i/2,f.x0=r,f.y0=n,f.w=a,f.h=i,f.sum=b,f.xaxis={type:\"linear\",range:[_+2*T-b,b-_-2*w],domain:[d-o/2,d+o/2],_id:\"x\"},u(f.xaxis,f.graphDiv._fullLayout),f.xaxis.setScale(),f.xaxis.isPtWithinRange=function(t){return t.a>=f.aaxis.range[0]&&t.a<=f.aaxis.range[1]&&t.b>=f.baxis.range[1]&&t.b<=f.baxis.range[0]&&t.c>=f.caxis.range[1]&&t.c<=f.caxis.range[0]},f.yaxis={type:\"linear\",range:[_,b-w-T],domain:[g-s/2,g+s/2],_id:\"y\"},u(f.yaxis,f.graphDiv._fullLayout),f.yaxis.setScale(),f.yaxis.isPtWithinRange=function(){return!0};var k=f.yaxis.domain[0],A=f.aaxis=h({},t.aaxis,{range:[_,b-w-T],side:\"left\",tickangle:(+t.aaxis.tickangle||0)-30,domain:[k,k+s*S],anchor:\"free\",position:0,_id:\"y\",_length:a});u(A,f.graphDiv._fullLayout),A.setScale();var M=f.baxis=h({},t.baxis,{range:[b-_-T,w],side:\"bottom\",domain:f.xaxis.domain,anchor:\"free\",position:0,_id:\"x\",_length:a});u(M,f.graphDiv._fullLayout),M.setScale();var E=f.caxis=h({},t.caxis,{range:[b-_-w,T],side:\"right\",tickangle:(+t.caxis.tickangle||0)+30,domain:[k,k+s*S],anchor:\"free\",position:0,_id:\"y\",_length:a});u(E,f.graphDiv._fullLayout),E.setScale();var C=\"M\"+r+\",\"+(n+i)+\"h\"+a+\"l-\"+a/2+\",-\"+i+\"Z\";f.clipDef.select(\"path\").attr(\"d\",C),f.layers.plotbg.select(\"path\").attr(\"d\",C);var L=\"M0,\"+i+\"h\"+a+\"l-\"+a/2+\",-\"+i+\"Z\";f.clipDefRelative.select(\"path\").attr(\"d\",L);var P=\"translate(\"+r+\",\"+n+\")\";f.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",P),f.clipDefRelative.select(\"path\").attr(\"transform\",null);var I=\"translate(\"+(r-M._offset)+\",\"+(n+i)+\")\";f.layers.baxis.attr(\"transform\",I),f.layers.bgrid.attr(\"transform\",I);var z=\"translate(\"+(r+a/2)+\",\"+n+\")rotate(30)translate(0,\"+-A._offset+\")\";f.layers.aaxis.attr(\"transform\",z),f.layers.agrid.attr(\"transform\",z);var O=\"translate(\"+(r+a/2)+\",\"+n+\")rotate(-30)translate(0,\"+-E._offset+\")\";f.layers.caxis.attr(\"transform\",O),f.layers.cgrid.attr(\"transform\",O),f.drawAxes(!0),f.layers.aline.select(\"path\").attr(\"d\",A.showline?\"M\"+r+\",\"+(n+i)+\"l\"+a/2+\",-\"+i:\"M0,0\").call(l.stroke,A.linecolor||\"#000\").style(\"stroke-width\",(A.linewidth||0)+\"px\"),f.layers.bline.select(\"path\").attr(\"d\",M.showline?\"M\"+r+\",\"+(n+i)+\"h\"+a:\"M0,0\").call(l.stroke,M.linecolor||\"#000\").style(\"stroke-width\",(M.linewidth||0)+\"px\"),f.layers.cline.select(\"path\").attr(\"d\",E.showline?\"M\"+(r+a/2)+\",\"+n+\"l\"+a/2+\",\"+i:\"M0,0\").call(l.stroke,E.linecolor||\"#000\").style(\"stroke-width\",(E.linewidth||0)+\"px\"),f.graphDiv._context.staticPlot||f.initInteractions(),c.setClipUrl(f.layers.frontplot,f._hasClipOnAxisFalse?null:f.clipId,f.graphDiv)},M.drawAxes=function(t){var e=this.graphDiv,r=this.id.substr(7)+\"title\",n=this.layers,a=this.aaxis,i=this.baxis,o=this.caxis;if(this.drawAx(a),this.drawAx(i),this.drawAx(o),t){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(o.showticklabels?.75*o.tickfont.size:0)+(\"outside\"===o.ticks?.87*o.ticklen:0)),c=(i.showticklabels?i.tickfont.size:0)+(\"outside\"===i.ticks?i.ticklen:0)+3;n[\"a-title\"]=x.draw(e,\"a\"+r,{propContainer:a,propName:this.id+\".aaxis.title\",placeholder:s(e,\"Click to enter Component A title\"),attributes:{x:this.x0+this.w/2,y:this.y0-a.title.font.size/3-l,\"text-anchor\":\"middle\"}}),n[\"b-title\"]=x.draw(e,\"b\"+r,{propContainer:i,propName:this.id+\".baxis.title\",placeholder:s(e,\"Click to enter Component B title\"),attributes:{x:this.x0-c,y:this.y0+this.h+.83*i.title.font.size+c,\"text-anchor\":\"middle\"}}),n[\"c-title\"]=x.draw(e,\"c\"+r,{propContainer:o,propName:this.id+\".caxis.title\",placeholder:s(e,\"Click to enter Component C title\"),attributes:{x:this.x0+this.w+c,y:this.y0+this.h+.83*o.title.font.size+c,\"text-anchor\":\"middle\"}})}},M.drawAx=function(t){var e,r=this.graphDiv,n=t._name,a=n.charAt(0),i=t._id,s=this.layers[n],l=a+\"tickLayout\",c=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);this[l]!==c&&(s.selectAll(\".\"+i+\"tick\").remove(),this[l]=c),t.setScale();var u=p.calcTicks(t),h=p.clipEnds(t,u),f=p.makeTransFn(t),d=p.getTickSigns(t)[2],g=o.deg2rad(30),m=d*(t.linewidth||1)/2,v=d*t.ticklen,y=this.w,x=this.h,b=\"b\"===a?\"M0,\"+m+\"l\"+Math.sin(g)*v+\",\"+Math.cos(g)*v:\"M\"+m+\",0l\"+Math.cos(g)*v+\",\"+-Math.sin(g)*v,_={a:\"M0,0l\"+x+\",-\"+y/2,b:\"M0,0l-\"+y/2+\",-\"+x,c:\"M0,0l-\"+x+\",\"+y/2}[a];p.drawTicks(r,t,{vals:\"inside\"===t.ticks?h:u,layer:s,path:b,transFn:f,crisp:!1}),p.drawGrid(r,t,{vals:h,layer:this.layers[a+\"grid\"],path:_,transFn:f,crisp:!1}),p.drawLabels(r,t,{vals:u,layer:s,transFn:f,labelFns:p.makeLabelFns(t,0,30)})};var E=k.MINZOOM/2+.87,C=\"m-0.87,.5h\"+E+\"v3h-\"+(E+5.2)+\"l\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l2.6,1.5l-\"+E/2+\",\"+.87*E+\"Z\",L=\"m0.87,.5h-\"+E+\"v3h\"+(E+5.2)+\"l-\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l-2.6,1.5l\"+E/2+\",\"+.87*E+\"Z\",P=\"m0,1l\"+E/2+\",\"+.87*E+\"l2.6,-1.5l-\"+(E/2+2.6)+\",-\"+(.87*E+4.5)+\"l-\"+(E/2+2.6)+\",\"+(.87*E+4.5)+\"l2.6,1.5l\"+E/2+\",-\"+.87*E+\"Z\",I=!0;function z(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}M.clearSelect=function(){T(this.dragOptions),w(this.dragOptions.gd)},M.initInteractions=function(){var t,e,r,n,u,h,f,p,m,x,w=this,T=w.layers.plotbg.select(\"path\").node(),A=w.graphDiv,M=A._fullLayout._zoomlayer;function E(t){var e={};return e[w.id+\".aaxis.min\"]=t.a,e[w.id+\".baxis.min\"]=t.b,e[w.id+\".caxis.min\"]=t.c,e}function O(t,e){var r=A._fullLayout.clickmode;z(A),2===t&&(A.emit(\"plotly_doubleclick\",null),i.call(\"_guiRelayout\",A,E({a:0,b:0,c:0}))),r.indexOf(\"select\")>-1&&1===t&&_(e,A,[w.xaxis],[w.yaxis],w.id,w.dragOptions),r.indexOf(\"event\")>-1&&g.click(A,e,w.id)}function D(t,e){return 1-e/w.h}function R(t,e){return 1-(t+(w.h-e)/Math.sqrt(3))/w.w}function F(t,e){return(t-(w.h-e)/Math.sqrt(3))/w.w}function B(a,i){var o=t+a,s=e+i,l=Math.max(0,Math.min(1,D(0,e),D(0,s))),c=Math.max(0,Math.min(1,R(t,e),R(o,s))),d=Math.max(0,Math.min(1,F(t,e),F(o,s))),g=(l/2+d)*w.w,v=(1-l/2-c)*w.w,y=(g+v)/2,b=v-g,_=(1-l)*w.h,T=_-b/S;b.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),x.transition().style(\"opacity\",1).duration(200),p=!0),A.emit(\"plotly_relayouting\",E(u))}function N(){z(A),u!==r&&(i.call(\"_guiRelayout\",A,E(u)),I&&A.data&&A._context.showTips&&(o.notifier(s(A,\"Double-click to zoom back out\"),\"long\"),I=!1))}function j(t,e){var n=t/w.xaxis._m,a=e/w.yaxis._m,i=[(u={a:r.a-a,b:r.b+(n+a)/2,c:r.c-(n-a)/2}).a,u.b,u.c].sort(o.sorterAsc),s=i.indexOf(u.a),l=i.indexOf(u.b),h=i.indexOf(u.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),u={a:i[s],b:i[l],c:i[h]},e=(r.a-u.a)*w.yaxis._m,t=(r.c-u.c-r.b+u.b)*w.xaxis._m);var f=\"translate(\"+(w.x0+t)+\",\"+(w.y0+e)+\")\";w.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",f);var p=\"translate(\"+-t+\",\"+-e+\")\";w.clipDefRelative.select(\"path\").attr(\"transform\",p),w.aaxis.range=[u.a,w.sum-u.b-u.c],w.baxis.range=[w.sum-u.a-u.c,u.b],w.caxis.range=[w.sum-u.a-u.b,u.c],w.drawAxes(!1),w._hasClipOnAxisFalse&&w.plotContainer.select(\".scatterlayer\").selectAll(\".trace\").call(c.hideOutsideRangePoints,w),A.emit(\"plotly_relayouting\",E(u))}function V(){i.call(\"_guiRelayout\",A,E(u))}this.dragOptions={element:T,gd:A,plotinfo:{id:w.id,domain:A._fullLayout[w.id].domain,xaxis:w.xaxis,yaxis:w.yaxis},subplot:w.id,prepFn:function(i,o,s){w.dragOptions.xaxes=[w.xaxis],w.dragOptions.yaxes=[w.yaxis];var c=w.dragOptions.dragmode=A._fullLayout.dragmode;v(c)?w.dragOptions.minDrag=1:w.dragOptions.minDrag=void 0,\"zoom\"===c?(w.dragOptions.moveFn=B,w.dragOptions.clickFn=O,w.dragOptions.doneFn=N,function(i,o,s){var c=T.getBoundingClientRect();t=o-c.left,e=s-c.top,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,n=w.aaxis.range[1]-r.a,h=a(w.graphDiv._fullLayout[w.id].bgcolor).getLuminance(),f=\"M0,\"+w.h+\"L\"+w.w/2+\", 0L\"+w.w+\",\"+w.h+\"Z\",p=!1,m=M.append(\"path\").attr(\"class\",\"zoombox\").attr(\"transform\",\"translate(\"+w.x0+\", \"+w.y0+\")\").style({fill:h>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"d\",f),x=M.append(\"path\").attr(\"class\",\"zoombox-corners\").attr(\"transform\",\"translate(\"+w.x0+\", \"+w.y0+\")\").style({fill:l.background,stroke:l.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"d\",\"M0,0Z\"),w.clearSelect(A)}(0,o,s)):\"pan\"===c?(w.dragOptions.moveFn=j,w.dragOptions.clickFn=O,w.dragOptions.doneFn=V,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,w.clearSelect(A)):(y(c)||v(c))&&b(i,o,s,w.dragOptions,c)}},T.onmousemove=function(t){g.hover(A,t,w.id),A._fullLayout._lasthover=T,A._fullLayout._hoversubplot=w.id},T.onmouseout=function(t){A._dragging||d.unhover(A,t)},d.init(this.dragOptions)}},{\"../../components/color\":595,\"../../components/dragelement\":614,\"../../components/dragelement/helpers\":613,\"../../components/drawing\":617,\"../../components/fx\":635,\"../../components/titles\":690,\"../../lib\":728,\"../../lib/extend\":719,\"../../registry\":859,\"../cartesian/axes\":776,\"../cartesian/constants\":782,\"../cartesian/select\":795,\"../cartesian/set_convert\":796,\"../plots\":839,d3:164,tinycolor2:528}],859:[function(t,e,r){\"use strict\";var n=t(\"./lib/loggers\"),a=t(\"./lib/noop\"),i=t(\"./lib/push_unique\"),o=t(\"./lib/is_plain_object\"),s=t(\"./lib/dom\").addStyleRule,l=t(\"./lib/extend\"),c=t(\"./plots/attributes\"),u=t(\"./plots/layout_attributes\"),h=l.extendFlat,f=l.extendDeepAll;function p(t){var e=t.name,a=t.categories,i=t.meta;if(r.modules[e])n.log(\"Type \"+e+\" already registered\");else{r.subplotsRegistry[t.basePlotModule.name]||function(t){var e=t.name;if(r.subplotsRegistry[e])return void n.log(\"Plot type \"+e+\" already registered.\");for(var a in v(t),r.subplotsRegistry[e]=t,r.componentsRegistry)b(a,t.name)}(t.basePlotModule);for(var o={},l=0;l-1&&(h[p[r]].title={text:\"\"});for(r=0;r\")?\"\":e.html(t).text()}));return e.remove(),r}(T),T=(T=T.replace(/&(?!\\w+;|\\#[0-9]+;| \\#x[0-9A-F]+;)/g,\"&\")).replace(c,\"'\"),a.isIE()&&(T=(T=(T=T.replace(/\"/gi,\"'\")).replace(/(\\('#)([^']*)('\\))/gi,'(\"#$2\")')).replace(/(\\\\')/gi,'\"')),T}},{\"../components/color\":595,\"../components/drawing\":617,\"../constants/xmlns_namespaces\":705,\"../lib\":728,d3:164}],868:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){for(var r=0;rh+c||!n(u))}for(var p=0;pi))return e}return void 0!==r?r:t.dflt},r.coerceColor=function(t,e,r){return a(e).isValid()?e:void 0!==r?r:t.dflt},r.coerceEnumerated=function(t,e,r){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==r?r:t.dflt},r.getValue=function(t,e){var r;return Array.isArray(t)?e0?a+=i:e<0&&(a-=i)}return n.inbox(r-e,a-e,b+(a-e)/(a-r)-1)}\"h\"===m.orientation?(i=r,s=e,u=\"y\",h=\"x\",f=S,p=M):(i=e,s=r,u=\"x\",h=\"y\",p=S,f=M);var E=t[u+\"a\"],C=t[h+\"a\"];d=Math.abs(E.r2c(E.range[1])-E.r2c(E.range[0]));var L=n.getDistanceFunction(a,f,p,(function(t){return(f(t)+p(t))/2}));if(n.getClosest(g,L,t),!1!==t.index&&g[t.index].p!==c){y||(T=function(t){return Math.min(_(t),t.p-v.bargroupwidth/2)},k=function(t){return Math.max(w(t),t.p+v.bargroupwidth/2)});var P=g[t.index],I=m.base?P.b+P.s:P.s;t[h+\"0\"]=t[h+\"1\"]=C.c2p(P[h],!0),t[h+\"LabelVal\"]=I;var z=v.extents[v.extents.round(P.p)];return t[u+\"0\"]=E.c2p(y?T(P):z[0],!0),t[u+\"1\"]=E.c2p(y?k(P):z[1],!0),t[u+\"LabelVal\"]=P.p,t.labelLabel=l(E,t[u+\"LabelVal\"]),t.valueLabel=l(C,t[h+\"LabelVal\"]),t.spikeDistance=(S(P)+function(t){return A(_(t),w(t))}(P))/2-b,t[u+\"Spike\"]=E.c2p(P.p,!0),o(P,m,t),t.hovertemplate=m.hovertemplate,t}}function h(t,e){var r=e.mcc||t.marker.color,n=e.mlcc||t.marker.line.color,a=s(t,e);return i.opacity(r)?r:i.opacity(n)&&a?n:void 0}e.exports={hoverPoints:function(t,e,r,n){var i=u(t,e,r,n);if(i){var o=i.cd,s=o[0].trace,l=o[i.index];return i.color=h(s,l),a.getComponentMethod(\"errorbars\",\"hoverInfo\")(l,s,i),[i]}},hoverOnBars:u,getTraceColor:h}},{\"../../components/color\":595,\"../../components/fx\":635,\"../../constants/numerical\":704,\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"./helpers\":875}],877:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\").crossTraceCalc,colorbar:t(\"../scatter/marker_colorbar\"),arraysToCalcdata:t(\"./arrays_to_calcdata\"),plot:t(\"./plot\").plot,style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\").hoverPoints,eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"bar\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"bar\",\"oriented\",\"errorBarsOK\",\"showLegend\",\"zoomScale\"],animatable:!0,meta:{}}},{\"../../plots/cartesian\":789,\"../scatter/marker_colorbar\":1152,\"./arrays_to_calcdata\":868,\"./attributes\":869,\"./calc\":870,\"./cross_trace_calc\":872,\"./defaults\":873,\"./event_data\":874,\"./hover\":876,\"./layout_attributes\":878,\"./layout_defaults\":879,\"./plot\":880,\"./select\":881,\"./style\":883}],878:[function(t,e,r){\"use strict\";e.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\",\"relative\"],dflt:\"group\",editType:\"calc\"},barnorm:{valType:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\",editType:\"calc\"},bargap:{valType:\"number\",min:0,max:1,editType:\"calc\"},bargroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],879:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../lib\"),o=t(\"./layout_attributes\");e.exports=function(t,e,r){function s(r,n){return i.coerce(t,e,o,r,n)}for(var l=!1,c=!1,u=!1,h={},f=s(\"barmode\"),p=0;p0}function S(t){return\"auto\"===t?0:t}function E(t,e){var r=Math.PI/180*e,n=Math.abs(Math.sin(r)),a=Math.abs(Math.cos(r));return{x:t.width*a+t.height*n,y:t.width*n+t.height*a}}function C(t,e,r,n,a,i){var o=!!i.isHorizontal,s=!!i.constrained,l=i.angle||0,c=i.anchor||\"end\",u=\"end\"===c,h=\"start\"===c,f=((i.leftToRight||0)+1)/2,p=1-f,d=a.width,g=a.height,m=Math.abs(e-t),v=Math.abs(n-r),y=m>2*_&&v>2*_?_:0;m-=2*y,v-=2*y;var x=S(l);\"auto\"!==l||d<=m&&g<=v||!(d>m||g>v)||(d>v||g>m)&&d.01?H:function(t,e,r){return r&&t===e?t:Math.abs(t-e)>=2?H(t):t>e?Math.ceil(t):Math.floor(t)};B=G(B,N,D),N=G(N,B,D),j=G(j,V,!D),V=G(V,j,!D)}var Y=A(i.ensureSingle(I,\"path\"),P,m,v);if(Y.style(\"vector-effect\",\"non-scaling-stroke\").attr(\"d\",isNaN((N-B)*(V-j))?\"M0,0Z\":\"M\"+B+\",\"+j+\"V\"+V+\"H\"+N+\"V\"+j+\"Z\").call(l.setClipUrl,e.layerClipId,t),!P.uniformtext.mode&&R){var W=l.makePointStyleFns(h);l.singlePointStyle(c,Y,h,W,t)}!function(t,e,r,n,a,s,c,h,p,m,v){var w,T=e.xaxis,M=e.yaxis,L=t._fullLayout;function P(e,r,n){return i.ensureSingle(e,\"text\").text(r).attr({class:\"bartext bartext-\"+w,\"text-anchor\":\"middle\",\"data-notex\":1}).call(l.font,n).call(o.convertToTspans,t)}var I=n[0].trace,z=\"h\"===I.orientation,O=function(t,e,r,n,a){var o,s=e[0].trace;o=s.texttemplate?function(t,e,r,n,a){var o=e[0].trace,s=i.castOption(o,r,\"texttemplate\");if(!s)return\"\";var l,c,h,f,p=\"waterfall\"===o.type,d=\"funnel\"===o.type;\"h\"===o.orientation?(l=\"y\",c=a,h=\"x\",f=n):(l=\"x\",c=n,h=\"y\",f=a);function g(t){return u(f,+t,!0).text}var m=e[r],v={};v.label=m.p,v.labelLabel=v[l+\"Label\"]=(y=m.p,u(c,y,!0).text);var y;var x=i.castOption(o,m.i,\"text\");(0===x||x)&&(v.text=x);v.value=m.s,v.valueLabel=v[h+\"Label\"]=g(m.s);var _={};b(_,o,m.i),p&&(v.delta=+m.rawS||m.s,v.deltaLabel=g(v.delta),v.final=m.v,v.finalLabel=g(v.final),v.initial=v.final-v.delta,v.initialLabel=g(v.initial));d&&(v.value=m.s,v.valueLabel=g(v.value),v.percentInitial=m.begR,v.percentInitialLabel=i.formatPercent(m.begR),v.percentPrevious=m.difR,v.percentPreviousLabel=i.formatPercent(m.difR),v.percentTotal=m.sumR,v.percenTotalLabel=i.formatPercent(m.sumR));var w=i.castOption(o,m.i,\"customdata\");w&&(v.customdata=w);return i.texttemplateString(s,v,t._d3locale,_,v,o._meta||{})}(t,e,r,n,a):s.textinfo?function(t,e,r,n){var a=t[0].trace,o=\"h\"===a.orientation,s=\"waterfall\"===a.type,l=\"funnel\"===a.type;function c(t){return u(o?r:n,+t,!0).text}var h,f=a.textinfo,p=t[e],d=f.split(\"+\"),g=[],m=function(t){return-1!==d.indexOf(t)};m(\"label\")&&g.push((v=t[e].p,u(o?n:r,v,!0).text));var v;m(\"text\")&&(0===(h=i.castOption(a,p.i,\"text\"))||h)&&g.push(h);if(s){var y=+p.rawS||p.s,x=p.v,b=x-y;m(\"initial\")&&g.push(c(b)),m(\"delta\")&&g.push(c(y)),m(\"final\")&&g.push(c(x))}if(l){m(\"value\")&&g.push(c(p.s));var _=0;m(\"percent initial\")&&_++,m(\"percent previous\")&&_++,m(\"percent total\")&&_++;var w=_>1;m(\"percent initial\")&&(h=i.formatPercent(p.begR),w&&(h+=\" of initial\"),g.push(h)),m(\"percent previous\")&&(h=i.formatPercent(p.difR),w&&(h+=\" of previous\"),g.push(h)),m(\"percent total\")&&(h=i.formatPercent(p.sumR),w&&(h+=\" of total\"),g.push(h))}return g.join(\"
\")}(e,r,n,a):g.getValue(s.text,r);return g.coerceString(y,o)}(L,n,a,T,M);w=function(t,e){var r=g.getValue(t.textposition,e);return g.coerceEnumerated(x,r)}(I,a);var D=\"stack\"===m.mode||\"relative\"===m.mode,R=n[a],F=!D||R._outmost;if(!O||\"none\"===w||(R.isBlank||s===c||h===p)&&(\"auto\"===w||\"inside\"===w))return void r.select(\"text\").remove();var B=L.font,N=d.getBarColor(n[a],I),j=d.getInsideTextFont(I,a,B,N),V=d.getOutsideTextFont(I,a,B),U=r.datum();z?\"log\"===T.type&&U.s0<=0&&(s=T.range[0]=G*(X/Y):X>=Y*(Z/G);G>0&&Y>0&&(J||K||Q)?w=\"inside\":(w=\"outside\",q.remove(),q=null)}else w=\"inside\";if(!q){W=i.ensureUniformFontSize(t,\"outside\"===w?V:j);var $=(q=P(r,O,W)).attr(\"transform\");if(q.attr(\"transform\",\"\"),H=l.bBox(q.node()),G=H.width,Y=H.height,q.attr(\"transform\",$),G<=0||Y<=0)return void q.remove()}var tt,et,rt=I.textangle;\"outside\"===w?(et=\"both\"===I.constraintext||\"outside\"===I.constraintext,tt=function(t,e,r,n,a,i){var o,s=!!i.isHorizontal,l=!!i.constrained,c=i.angle||0,u=a.width,h=a.height,f=Math.abs(e-t),p=Math.abs(n-r);o=s?p>2*_?_:0:f>2*_?_:0;var d=1;l&&(d=s?Math.min(1,p/h):Math.min(1,f/u));var g=S(c),m=E(a,g),v=(s?m.x:m.y)/2,y=(a.left+a.right)/2,x=(a.top+a.bottom)/2,b=(t+e)/2,w=(r+n)/2,T=0,A=0,M=s?k(e,t):k(r,n);s?(b=e-M*o,T=M*v):(w=n+M*o,A=-M*v);return{textX:y,textY:x,targetX:b,targetY:w,anchorX:T,anchorY:A,scale:d,rotate:g}}(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt})):(et=\"both\"===I.constraintext||\"inside\"===I.constraintext,tt=C(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt,anchor:I.insidetextanchor}));tt.fontSize=W.size,f(I.type,tt,L),R.transform=tt,A(q,L,m,v).attr(\"transform\",i.getTextTransform(tt))}(t,e,I,r,p,B,N,j,V,m,v),e.layerClipId&&l.hideOutsideRangePoint(c,I.select(\"text\"),w,L,h.xcalendar,h.ycalendar)}));var j=!1===h.cliponaxis;l.setClipUrl(c,j?null:e.layerClipId,t)}));c.getComponentMethod(\"errorbars\",\"plot\")(t,I,e,m)},toMoveInsideBar:C}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../components/fx/helpers\":631,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"./attributes\":869,\"./constants\":871,\"./helpers\":875,\"./style\":883,\"./uniform_text\":885,d3:164,\"fast-isnumeric\":236}],881:[function(t,e,r){\"use strict\";function n(t,e,r,n,a){var i=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 a?[(i+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(i+o)/2,l]}e.exports=function(t,e){var r,a=t.cd,i=t.xaxis,o=t.yaxis,s=a[0].trace,l=\"funnel\"===s.type,c=\"h\"===s.orientation,u=[];if(!1===e)for(r=0;r1||0===a.bargap&&0===a.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:g,styleOnSelect:function(t,e,r){var a=e[0].trace;a.selectedpoints?function(t,e,r){i.selectedPointStyle(t.selectAll(\"path\"),e),function(t,e,r){t.each((function(t){var a,s=n.select(this);if(t.selected){a=o.ensureUniformFontSize(r,m(s,t,e,r));var l=e.selected.textfont&&e.selected.textfont.color;l&&(a.color=l),i.font(s,a)}else i.selectedTextStyle(s,e)}))}(t.selectAll(\"text\"),e,r)}(r,a,t):(d(r,a,t),s.getComponentMethod(\"errorbars\",\"style\")(r))},getInsideTextFont:y,getOutsideTextFont:x,getBarColor:_,resizeText:l}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../lib\":728,\"../../registry\":859,\"./attributes\":869,\"./helpers\":875,\"./uniform_text\":885,d3:164}],884:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\");e.exports=function(t,e,r,o,s){r(\"marker.color\",o),a(t,\"marker\")&&i(t,e,s,r,{prefix:\"marker.\",cLetter:\"c\"}),r(\"marker.line.color\",n.defaultLine),a(t,\"marker.line\")&&i(t,e,s,r,{prefix:\"marker.line.\",cLetter:\"c\"}),r(\"marker.line.width\"),r(\"marker.opacity\"),r(\"selected.marker.color\"),r(\"unselected.marker.color\")}},{\"../../components/color\":595,\"../../components/colorscale/defaults\":605,\"../../components/colorscale/helpers\":606}],885:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\");function i(t){return\"_\"+t+\"Text_minsize\"}e.exports={recordMinTextSize:function(t,e,r){if(r.uniformtext.mode){var n=i(t),a=r.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=o g.point\"}e.selectAll(s).each((function(t){var e=t.transform;e&&(e.scale=l&&e.hide?0:o/e.fontSize,n.select(this).select(\"text\").attr(\"transform\",a.getTextTransform(e)))}))}}}},{\"../../lib\":728,d3:164}],886:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../lib/extend\").extendFlat,i=t(\"../scatterpolar/attributes\"),o=t(\"../bar/attributes\");e.exports={r:i.r,theta:i.theta,r0:i.r0,dr:i.dr,theta0:i.theta0,dtheta:i.dtheta,thetaunit:i.thetaunit,base:a({},o.base,{}),offset:a({},o.offset,{}),width:a({},o.width,{}),text:a({},o.text,{}),hovertext:a({},o.hovertext,{}),marker:o.marker,hoverinfo:i.hoverinfo,hovertemplate:n(),selected:o.selected,unselected:o.unselected}},{\"../../lib/extend\":719,\"../../plots/template_attributes\":854,\"../bar/attributes\":869,\"../scatterpolar/attributes\":1207}],887:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/helpers\").hasColorscale,a=t(\"../../components/colorscale/calc\"),i=t(\"../bar/arrays_to_calcdata\"),o=t(\"../bar/cross_trace_calc\").setGroupPositions,s=t(\"../scatter/calc_selection\"),l=t(\"../../registry\").traceIs,c=t(\"../../lib\").extendFlat;e.exports={calc:function(t,e){for(var r=t._fullLayout,o=e.subplot,l=r[o].radialaxis,c=r[o].angularaxis,u=l.makeCalcdata(e,\"r\"),h=c.makeCalcdata(e,\"theta\"),f=e._length,p=new Array(f),d=u,g=h,m=0;mf.range[1]&&(x+=Math.PI);if(n.getClosest(c,(function(t){return g(y,x,[t.rp0,t.rp1],[t.thetag0,t.thetag1],d)?m+Math.min(1,Math.abs(t.thetag1-t.thetag0)/v)-1+(t.rp1-y)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var b=c[t.index];t.x0=t.x1=b.ct[0],t.y0=t.y1=b.ct[1];var _=a.extendFlat({},b,{r:b.s,theta:b.p});return o(b,u,t),s(_,u,h,t),t.hovertemplate=u.hovertemplate,t.color=i(u,b),t.xLabelVal=t.yLabelVal=void 0,b.s<0&&(t.idealAlign=\"left\"),[t]}}},{\"../../components/fx\":635,\"../../lib\":728,\"../../plots/polar/helpers\":841,\"../bar/hover\":876,\"../scatterpolar/hover\":1211}],890:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"barpolar\",basePlotModule:t(\"../../plots/polar\"),categories:[\"polar\",\"bar\",\"showLegend\"],attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"../scatterpolar/format_labels\"),style:t(\"../bar/style\").style,styleOnSelect:t(\"../bar/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../bar/select\"),meta:{}}},{\"../../plots/polar\":842,\"../bar/select\":881,\"../bar/style\":883,\"../scatter/marker_colorbar\":1152,\"../scatterpolar/format_labels\":1210,\"./attributes\":886,\"./calc\":887,\"./defaults\":888,\"./hover\":889,\"./layout_attributes\":891,\"./layout_defaults\":892,\"./plot\":893}],891:[function(t,e,r){\"use strict\";e.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},bargap:{valType:\"number\",dflt:.1,min:0,max:1,editType:\"calc\"}}},{}],892:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i,o={};function s(r,o){return n.coerce(t[i]||{},e[i],a,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,a,c,u,h,e,r)};return function(t,n,a,o){return i.pathAnnulus(t,n,a,o,e,r)}}(e),p=e.layers.frontplot.select(\"g.barlayer\");i.makeTraceGroups(p,r,\"trace bars\").each((function(){var r=n.select(this),s=i.ensureSingle(r,\"g\",\"points\").selectAll(\"g.point\").data(i.identity);s.enter().append(\"g\").style(\"vector-effect\",\"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=u.c2p(t.s0),s=t.rp1=u.c2p(t.s1),p=t.thetag0=h.c2g(t.p0),d=t.thetag1=h.c2g(t.p1);if(a(o)&&a(s)&&a(p)&&a(d)&&o!==s&&p!==d){var g=u.c2g(t.s1),m=(p+d)/2;t.ct=[l.c2p(g*Math.cos(m)),c.c2p(g*Math.sin(m))],e=f(o,s,p,d)}else e=\"M0,0Z\";i.ensureSingle(r,\"path\").attr(\"d\",e)})),o.setClipUrl(r,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../plots/polar/helpers\":841,d3:164,\"fast-isnumeric\":236}],894:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../bar/attributes\"),i=t(\"../../components/color/attributes\"),o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../lib/extend\").extendFlat,l=n.marker,c=l.line;e.exports={y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},y0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},dx:{valType:\"number\",editType:\"calc\"},dy:{valType:\"number\",editType:\"calc\"},name:{valType:\"string\",editType:\"calc+clearAxisTypes\"},q1:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},median:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},q3:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},lowerfence:{valType:\"data_array\",editType:\"calc\"},upperfence:{valType:\"data_array\",editType:\"calc\"},notched:{valType:\"boolean\",editType:\"calc\"},notchwidth:{valType:\"number\",min:0,max:.5,dflt:.25,editType:\"calc\"},notchspan:{valType:\"data_array\",editType:\"calc\"},boxpoints:{valType:\"enumerated\",values:[\"all\",\"outliers\",\"suspectedoutliers\",!1],editType:\"calc\"},jitter:{valType:\"number\",min:0,max:1,editType:\"calc\"},pointpos:{valType:\"number\",min:-2,max:2,editType:\"calc\"},boxmean:{valType:\"enumerated\",values:[!0,\"sd\",!1],editType:\"calc\"},mean:{valType:\"data_array\",editType:\"calc\"},sd:{valType:\"data_array\",editType:\"calc\"},orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc+clearAxisTypes\"},quartilemethod:{valType:\"enumerated\",values:[\"linear\",\"exclusive\",\"inclusive\"],dflt:\"linear\",editType:\"calc\"},width:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},marker:{outliercolor:{valType:\"color\",dflt:\"rgba(0, 0, 0, 0)\",editType:\"style\"},symbol:s({},l.symbol,{arrayOk:!1,editType:\"plot\"}),opacity:s({},l.opacity,{arrayOk:!1,dflt:1,editType:\"style\"}),size:s({},l.size,{arrayOk:!1,editType:\"calc\"}),color:s({},l.color,{arrayOk:!1,editType:\"style\"}),line:{color:s({},c.color,{arrayOk:!1,dflt:i.defaultLine,editType:\"style\"}),width:s({},c.width,{arrayOk:!1,dflt:0,editType:\"style\"}),outliercolor:{valType:\"color\",editType:\"style\"},outlierwidth:{valType:\"number\",min:0,dflt:1,editType:\"style\"},editType:\"style\"},editType:\"plot\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,dflt:2,editType:\"style\"},editType:\"plot\"},fillcolor:n.fillcolor,whiskerwidth:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"calc\"},offsetgroup:a.offsetgroup,alignmentgroup:a.alignmentgroup,selected:{marker:n.selected.marker,editType:\"style\"},unselected:{marker:n.unselected.marker,editType:\"style\"},text:s({},n.text,{}),hovertext:s({},n.hovertext,{}),hovertemplate:o({}),hoveron:{valType:\"flaglist\",flags:[\"boxes\",\"points\"],dflt:\"boxes+points\",editType:\"style\"}}},{\"../../components/color/attributes\":594,\"../../lib/extend\":719,\"../../plots/template_attributes\":854,\"../bar/attributes\":869,\"../scatter/attributes\":1134}],895:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../lib\"),o=t(\"../../constants/numerical\").BADNUM,s=i._;e.exports=function(t,e){var r,l,v,y,x,b,_=t._fullLayout,w=a.getFromId(t,e.xaxis||\"x\"),T=a.getFromId(t,e.yaxis||\"y\"),k=[],A=\"violin\"===e.type?\"_numViolins\":\"_numBoxes\";\"h\"===e.orientation?(v=w,y=\"x\",x=T,b=\"y\"):(v=T,y=\"y\",x=w,b=\"x\");var M,S,E,C,L,P,I=function(t,e,r,a){var o,s=e+\"0\"in t,l=\"d\"+e in t;if(e in t||s&&l)return r.makeCalcdata(t,e);o=s?t[e+\"0\"]:\"name\"in t&&(\"category\"===r.type||n(t.name)&&-1!==[\"linear\",\"log\"].indexOf(r.type)||i.isDateTime(t.name)&&\"date\"===r.type)?t.name:a;for(var c=\"multicategory\"===r.type?r.r2c_just_indices(o):r.d2c(o,0,t[e+\"calendar\"]),u=t._length,h=new Array(u),f=0;fM.uf};if(e._hasPreCompStats){var F=e[y],B=function(t){return v.d2c((e[t]||[])[r])},N=1/0,j=-1/0;for(r=0;r=M.q1&&M.q3>=M.med){var U=B(\"lowerfence\");M.lf=U!==o&&U<=M.q1?U:f(M,E,C);var q=B(\"upperfence\");M.uf=q!==o&&q>=M.q3?q:p(M,E,C);var H=B(\"mean\");M.mean=H!==o?H:C?i.mean(E,C):(M.q1+M.q3)/2;var G=B(\"sd\");M.sd=H!==o&&G>=0?G:C?i.stdev(E,C,M.mean):M.q3-M.q1,M.lo=d(M),M.uo=g(M);var Y=B(\"notchspan\");Y=Y!==o&&Y>0?Y:m(M,C),M.ln=M.med-Y,M.un=M.med+Y;var W=M.lf,Z=M.uf;e.boxpoints&&E.length&&(W=Math.min(W,E[0]),Z=Math.max(Z,E[C-1])),e.notched&&(W=Math.min(W,M.ln),Z=Math.max(Z,M.un)),M.min=W,M.max=Z}else{var X;i.warn([\"Invalid input - make sure that q1 <= median <= q3\",\"q1 = \"+M.q1,\"median = \"+M.med,\"q3 = \"+M.q3].join(\"\\n\")),X=M.med!==o?M.med:M.q1!==o?M.q3!==o?(M.q1+M.q3)/2:M.q1:M.q3!==o?M.q3:0,M.med=X,M.q1=M.q3=X,M.lf=M.uf=X,M.mean=M.sd=X,M.ln=M.un=X,M.min=M.max=X}N=Math.min(N,M.min),j=Math.max(j,M.max),M.pts2=S.filter(R),k.push(M)}}e._extremes[v._id]=a.findExtremes(v,[N,j],{padded:!0})}else{var J=v.makeCalcdata(e,y),K=function(t,e){for(var r=t.length,n=new Array(r+1),a=0;a=0&&tt0){var ot,st;if((M={}).pos=M[b]=O[r],S=M.pts=$[r].sort(u),C=(E=M[y]=S.map(h)).length,M.min=E[0],M.max=E[C-1],M.mean=i.mean(E,C),M.sd=i.stdev(E,C,M.mean),M.med=i.interp(E,.5),C%2&&(at||it))at?(ot=E.slice(0,C/2),st=E.slice(C/2+1)):it&&(ot=E.slice(0,C/2+1),st=E.slice(C/2)),M.q1=i.interp(ot,.5),M.q3=i.interp(st,.5);else M.q1=i.interp(E,.25),M.q3=i.interp(E,.75);M.lf=f(M,E,C),M.uf=p(M,E,C),M.lo=d(M),M.uo=g(M);var lt=m(M,C);M.ln=M.med-lt,M.un=M.med+lt,et=Math.min(et,M.ln),rt=Math.max(rt,M.un),M.pts2=S.filter(R),k.push(M)}e._extremes[v._id]=a.findExtremes(v,e.notched?J.concat([et,rt]):J,{padded:!0})}return function(t,e){if(i.isArrayOrTypedArray(e.selectedpoints))for(var r=0;r0?(k[0].t={num:_[A],dPos:D,posLetter:b,valLetter:y,labels:{med:s(t,\"median:\"),min:s(t,\"min:\"),q1:s(t,\"q1:\"),q3:s(t,\"q3:\"),max:s(t,\"max:\"),mean:\"sd\"===e.boxmean?s(t,\"mean \\xb1 \\u03c3:\"):s(t,\"mean:\"),lf:s(t,\"lower fence:\"),uf:s(t,\"upper fence:\")}},_[A]++,k):[{t:{empty:!0}}]};var l={text:\"tx\",hovertext:\"htx\"};function c(t,e,r){for(var n in l)i.isArrayOrTypedArray(e[n])&&(Array.isArray(r)?i.isArrayOrTypedArray(e[n][r[0]])&&(t[l[n]]=e[n][r[0]][r[1]]):t[l[n]]=e[n][r])}function u(t,e){return t.v-e.v}function h(t){return t.v}function f(t,e,r){return 0===r?t.q1:Math.min(t.q1,e[Math.min(i.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,r-1)])}function p(t,e,r){return 0===r?t.q3:Math.max(t.q3,e[Math.max(i.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function d(t){return 4*t.q1-3*t.q3}function g(t){return 4*t.q3-3*t.q1}function m(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},{\"../../constants/numerical\":704,\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"fast-isnumeric\":236}],896:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axis_ids\").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=[],g=0;for(s=0;s1,b=1-h[t+\"gap\"],_=1-h[t+\"groupgap\"];for(s=0;s0){var H=E.pointpos,G=E.jitter,Y=E.marker.size/2,W=0;H+G>=0&&((W=U*(H+G))>M?(q=!0,j=Y,B=W):W>R&&(j=Y,B=M)),W<=M&&(B=M);var Z=0;H-G<=0&&((Z=-U*(H-G))>S?(q=!0,V=Y,N=Z):Z>F&&(V=Y,N=S)),Z<=S&&(N=S)}else B=M,N=S;var X=new Array(c.length);for(l=0;l0?(m=\"v\",v=x>0?Math.min(_,b):Math.min(b)):x>0?(m=\"h\",v=Math.min(_)):v=0;if(v){e._length=v;var A=r(\"orientation\",m);e._hasPreCompStats?\"v\"===A&&0===x?(r(\"x0\",0),r(\"dx\",1)):\"h\"===A&&0===y&&(r(\"y0\",0),r(\"dy\",1)):\"v\"===A&&0===x?r(\"x0\"):\"h\"===A&&0===y&&r(\"y0\"),a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],i)}else e.visible=!1}function u(t,e,r,a){var i=a.prefix,o=n.coerce2(t,e,l,\"marker.outliercolor\"),s=r(\"marker.line.outliercolor\"),c=\"outliers\";e._hasPreCompStats?c=\"all\":(o||s)&&(c=\"suspectedoutliers\");var u=r(i+\"points\",c);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.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)}e.exports={supplyDefaults:function(t,e,r,a){function o(r,a){return n.coerce(t,e,l,r,a)}if(c(t,e,o,a),!1!==e.visible){var s=e._hasPreCompStats;s&&(o(\"lowerfence\"),o(\"upperfence\")),o(\"line.color\",(t.marker||{}).color||r),o(\"line.width\"),o(\"fillcolor\",i.addOpacity(e.line.color,.5));var h=!1;if(s){var f=o(\"mean\"),p=o(\"sd\");f&&f.length&&(h=!0,p&&p.length&&(h=\"sd\"))}o(\"boxmean\",h),o(\"whiskerwidth\"),o(\"width\"),o(\"quartilemethod\");var d=!1;if(s){var g=o(\"notchspan\");g&&g.length&&(d=!0)}else n.validate(t.notchwidth,l.notchwidth)&&(d=!0);o(\"notched\",d)&&o(\"notchwidth\"),u(t,e,o,{prefix:\"box\"})}},crossTraceDefaults:function(t,e){var r,a;function i(t){return n.coerce(a._input,a,l,t)}for(var s=0;st.lo&&(x.so=!0)}return i}));f.enter().append(\"path\").classed(\"point\",!0),f.exit().remove(),f.call(i.translatePoints,o,s)}function l(t,e,r,i){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,h=i.bPos,f=i.bPosPxOffset||0,p=r.boxmean||(r.meanline||{}).visible;Array.isArray(i.bdPos)?(o=i.bdPos[0],s=i.bdPos[1]):(o=i.bdPos,s=i.bdPos);var d=t.selectAll(\"path.mean\").data(\"box\"===r.type&&r.boxmean||\"violin\"===r.type&&r.box.visible&&r.meanline.visible?a.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),a=c.l2p(e-o)+f,i=c.l2p(e+s)+f,d=u?(a+i)/2:c.l2p(e)+f,g=l.c2p(t.mean,!0),m=l.c2p(t.mean-t.sd,!0),v=l.c2p(t.mean+t.sd,!0);\"h\"===r.orientation?n.select(this).attr(\"d\",\"M\"+g+\",\"+a+\"V\"+i+(\"sd\"===p?\"m0,0L\"+m+\",\"+d+\"L\"+g+\",\"+a+\"L\"+v+\",\"+d+\"Z\":\"\")):n.select(this).attr(\"d\",\"M\"+a+\",\"+g+\"H\"+i+(\"sd\"===p?\"m0,0L\"+d+\",\"+m+\"L\"+a+\",\"+g+\"L\"+d+\",\"+v+\"Z\":\"\"))}))}e.exports={plot:function(t,e,r,i){var c=e.xaxis,u=e.yaxis;a.makeTraceGroups(i,r,\"trace boxes\").each((function(t){var e,r,a=n.select(this),i=t[0],h=i.t,f=i.trace;(h.wdPos=h.bdPos*f.whiskerwidth,!0!==f.visible||h.empty)?a.remove():(\"h\"===f.orientation?(e=u,r=c):(e=c,r=u),o(a,{pos:e,val:r},f,h),s(a,{x:c,y:u},f,h),l(a,{pos:e,val:r},f,h))}))},plotBoxAndWhiskers:o,plotPoints:s,plotBoxMean:l}},{\"../../components/drawing\":617,\"../../lib\":728,d3:164}],904:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n,a=t.cd,i=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(r=0;r=10)return null;for(var a=1/0,i=-1/0,o=e.length,s=0;s0?Math.floor:Math.ceil,I=C>0?Math.ceil:Math.floor,z=C>0?Math.min:Math.max,O=C>0?Math.max:Math.min,D=P(S+L),R=I(E-L),F=[[h=M(S)]];for(i=D;i*C=0;a--)i[u-a]=t[h][a],o[u-a]=e[h][a];for(s.push({x:i,y:o,bicubic:l}),a=h,i=[],o=[];a>=0;a--)i[h-a]=t[a][0],o[h-a]=e[a][0];return s.push({x:i,y:o,bicubic:c}),s}},{}],918:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib/extend\").extendFlat;e.exports=function(t,e,r){var i,o,s,l,c,u,h,f,p,d,g,m,v,y,x=t[\"_\"+e],b=t[e+\"axis\"],_=b._gridlines=[],w=b._minorgridlines=[],T=b._boundarylines=[],k=t[\"_\"+r],A=t[r+\"axis\"];\"array\"===b.tickmode&&(b.tickvals=x.slice());var M=t._xctrl,S=t._yctrl,E=M[0].length,C=M.length,L=t._a.length,P=t._b.length;n.prepTicks(b),\"array\"===b.tickmode&&delete b.tickvals;var I=b.smoothing?3:1;function z(n){var a,i,o,s,l,c,u,h,p,d,g,m,v=[],y=[],x={};if(\"b\"===e)for(i=t.b2j(n),o=Math.floor(Math.max(0,Math.min(P-2,i))),s=i-o,x.length=P,x.crossLength=L,x.xy=function(e){return t.evalxy([],e,i)},x.dxy=function(e,r){return t.dxydi([],e,o,r,s)},a=0;a0&&(p=t.dxydi([],a-1,o,0,s),v.push(l[0]+p[0]/3),y.push(l[1]+p[1]/3),d=t.dxydi([],a-1,o,1,s),v.push(h[0]-d[0]/3),y.push(h[1]-d[1]/3)),v.push(h[0]),y.push(h[1]),l=h;else for(a=t.a2i(n),c=Math.floor(Math.max(0,Math.min(L-2,a))),u=a-c,x.length=L,x.crossLength=P,x.xy=function(e){return t.evalxy([],a,e)},x.dxy=function(e,r){return t.dxydj([],c,e,u,r)},i=0;i0&&(g=t.dxydj([],c,i-1,u,0),v.push(l[0]+g[0]/3),y.push(l[1]+g[1]/3),m=t.dxydj([],c,i-1,u,1),v.push(h[0]-m[0]/3),y.push(h[1]-m[1]/3)),v.push(h[0]),y.push(h[1]),l=h;return x.axisLetter=e,x.axis=b,x.crossAxis=A,x.value=n,x.constvar=r,x.index=f,x.x=v,x.y=y,x.smoothing=A.smoothing,x}function O(n){var a,i,o,s,l,c=[],u=[],h={};if(h.length=x.length,h.crossLength=k.length,\"b\"===e)for(o=Math.max(0,Math.min(P-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)},a=0;ax.length-1||_.push(a(O(o),{color:b.gridcolor,width:b.gridwidth}));for(f=u;fx.length-1||g<0||g>x.length-1))for(m=x[s],v=x[g],i=0;ix[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(O(0),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(O(x.length-1),{color:b.endlinecolor,width:b.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((x[x.length-1]-b.tick0)/b.dtick*(1+l)),Math.ceil((x[0]-b.tick0)/b.dtick/(1+l))].sort((function(t,e){return t-e})))[0],h=c[1],f=u;f<=h;f++)p=b.tick0+b.dtick*f,_.push(a(z(p),{color:b.gridcolor,width:b.gridwidth}));for(f=u-1;fx[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(z(x[0]),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(z(x[x.length-1]),{color:b.endlinecolor,width:b.endlinewidth}))}}},{\"../../lib/extend\":719,\"../../plots/cartesian/axes\":776}],919:[function(t,e,r){\"use strict\";var n=t(\"../../plots/cartesian/axes\"),a=t(\"../../lib/extend\").extendFlat;e.exports=function(t,e){var r,i,o,s=e._labels=[],l=e._gridlines;for(r=0;re.length&&(t=t.slice(0,e.length)):t=[],a=0;a90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(n,e,r),offsetMultplier:c}}},{}],933:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"./map_1d_array\"),o=t(\"./makepath\"),s=t(\"./orient_text\"),l=t(\"../../lib/svg_text_utils\"),c=t(\"../../lib\"),u=t(\"../../constants/alignment\");function h(t,e,r,a,s,l){var c=\"const-\"+s+\"-lines\",u=r.selectAll(\".\"+c).data(l);u.enter().append(\"path\").classed(c,!0).style(\"vector-effect\",\"non-scaling-stroke\"),u.each((function(r){var a=r,s=a.x,l=a.y,c=i([],s,t.c2p),u=i([],l,e.c2p),h=\"M\"+o(c,u,a.smoothing);n.select(this).attr(\"d\",h).style(\"stroke-width\",a.width).style(\"stroke\",a.color).style(\"fill\",\"none\")})),u.exit().remove()}function f(t,e,r,i,o,c,u,h){var f=c.selectAll(\"text.\"+h).data(u);f.enter().append(\"text\").classed(h,!0);var p=0,d={};return f.each((function(o,c){var u;if(\"auto\"===o.axis.tickangle)u=s(i,e,r,o.xy,o.dxy);else{var h=(o.axis.tickangle+180)*Math.PI/180;u=s(i,e,r,o.xy,[Math.cos(h),Math.sin(h)])}c||(d={angle:u.angle,flip:u.flip});var f=(o.endAnchor?-1:1)*u.flip,g=n.select(this).attr({\"text-anchor\":f>0?\"start\":\"end\",\"data-notex\":1}).call(a.font,o.font).text(o.text).call(l.convertToTspans,t),m=a.bBox(this);g.attr(\"transform\",\"translate(\"+u.p[0]+\",\"+u.p[1]+\") rotate(\"+u.angle+\")translate(\"+o.axis.labelpadding*f+\",\"+.3*m.height+\")\"),p=Math.max(p,m.width+o.axis.labelpadding)})),f.exit().remove(),d.maxExtent=p,d}e.exports=function(t,e,r,a){var l=e.xaxis,u=e.yaxis,p=t._fullLayout._clips;c.makeTraceGroups(a,r,\"trace\").each((function(e){var r=n.select(this),a=e[0],d=a.trace,m=d.aaxis,v=d.baxis,y=c.ensureSingle(r,\"g\",\"minorlayer\"),x=c.ensureSingle(r,\"g\",\"majorlayer\"),b=c.ensureSingle(r,\"g\",\"boundarylayer\"),_=c.ensureSingle(r,\"g\",\"labellayer\");r.style(\"opacity\",d.opacity),h(l,u,x,m,\"a\",m._gridlines),h(l,u,x,v,\"b\",v._gridlines),h(l,u,y,m,\"a\",m._minorgridlines),h(l,u,y,v,\"b\",v._minorgridlines),h(l,u,b,m,\"a-boundary\",m._boundarylines),h(l,u,b,v,\"b-boundary\",v._boundarylines);var w=f(t,l,u,d,a,_,m._labels,\"a-label\"),T=f(t,l,u,d,a,_,v._labels,\"b-label\");!function(t,e,r,n,a,i,o,l){var u,h,f,p,d=c.aggNums(Math.min,null,r.a),m=c.aggNums(Math.max,null,r.a),v=c.aggNums(Math.min,null,r.b),y=c.aggNums(Math.max,null,r.b);u=.5*(d+m),h=v,f=r.ab2xy(u,h,!0),p=r.dxyda_rough(u,h),void 0===o.angle&&c.extendFlat(o,s(r,a,i,f,r.dxydb_rough(u,h)));g(t,e,r,n,f,p,r.aaxis,a,i,o,\"a-title\"),u=d,h=.5*(v+y),f=r.ab2xy(u,h,!0),p=r.dxydb_rough(u,h),void 0===l.angle&&c.extendFlat(l,s(r,a,i,f,r.dxyda_rough(u,h)));g(t,e,r,n,f,p,r.baxis,a,i,l,\"b-title\")}(t,_,d,a,l,u,w,T),function(t,e,r,n,a){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,g=[];for(h=0;h90&&m<270,y=n.select(this);y.text(u.title.text).call(l.convertToTspans,t),v&&(x=(-l.lineCount(y)+d)*p*i-x),y.attr(\"transform\",\"translate(\"+e.p[0]+\",\"+e.p[1]+\") rotate(\"+e.angle+\") translate(0,\"+x+\")\").classed(\"user-select-none\",!0).attr(\"text-anchor\",\"middle\").call(a.font,u.title.font)})),y.exit().remove()}},{\"../../components/drawing\":617,\"../../constants/alignment\":697,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"./makepath\":930,\"./map_1d_array\":931,\"./orient_text\":932,d3:164}],934:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../lib/search\").findBin,i=t(\"./compute_control_points\"),o=t(\"./create_spline_evaluator\"),s=t(\"./create_i_derivative_evaluator\"),l=t(\"./create_j_derivative_evaluator\");e.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],g=r[0],m=r[u-1],v=e[e.length-1]-e[0],y=r[r.length-1]-r[0],x=v*n.RELATIVE_CULL_TOLERANCE,b=y*n.RELATIVE_CULL_TOLERANCE;p-=x,d+=x,g-=b,m+=b,t.isVisible=function(t,e){return t>p&&tg&&ed||em},t.setScale=function(){var e=t._x,r=t._y,n=i(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(a(t,e),c-2)),n=e[r],i=e[r+1];return Math.max(0,Math.min(c-1,r+(t-n)/(i-n)))},t.b2j=function(t){var e=Math.max(0,Math.min(a(t,r),u-2)),n=r[e],i=r[e+1];return Math.max(0,Math.min(u-1,e+(t-n)/(i-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,a,i){if(!i&&(ne[c-1]|ar[u-1]))return[!1,!1];var o=t.a2i(n),s=t.b2j(a),l=t.evalxy([],o,s);if(i){var h,f,p,d,g=0,m=0,v=[];ne[c-1]?(h=c-2,f=1,g=(n-e[c-1])/(e[c-1]-e[c-2])):f=o-(h=Math.max(0,Math.min(c-2,Math.floor(o)))),ar[u-1]?(p=u-2,d=1,m=(a-r[u-1])/(r[u-1]-r[u-2])):d=s-(p=Math.max(0,Math.min(u-2,Math.floor(s)))),g&&(t.dxydi(v,h,p,f,d),l[0]+=v[0]*g,l[1]+=v[1]*g),m&&(t.dxydj(v,h,p,f,d),l[0]+=v[0]*m,l[1]+=v[1]*m)}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,a){var i=t.dxydi(null,e,r,n,a),o=t.dadi(e,n);return[i[0]/o,i[1]/o]},t.dxydb=function(e,r,n,a){var i=t.dxydj(null,e,r,n,a),o=t.dbdj(r,a);return[i[0]/o,i[1]/o]},t.dxyda_rough=function(e,r,n){var a=v*(n||.1),i=t.ab2xy(e+a,r,!0),o=t.ab2xy(e-a,r,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dxydb_rough=function(e,r,n){var a=y*(n||.1),i=t.ab2xy(e,r+a,!0),o=t.ab2xy(e,r-a,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},{\"../../lib/search\":747,\"./compute_control_points\":922,\"./constants\":923,\"./create_i_derivative_evaluator\":924,\"./create_j_derivative_evaluator\":925,\"./create_spline_evaluator\":926}],935:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e,r){var a,i,o,s=[],l=[],c=t[0].length,u=t.length;function h(e,r){var n,a=0,i=0;return e>0&&void 0!==(n=t[r][e-1])&&(i++,a+=n),e0&&void 0!==(n=t[r-1][e])&&(i++,a+=n),r0&&i0&&a1e-5);return n.log(\"Smoother converged to\",k,\"after\",A,\"iterations\"),t}},{\"../../lib\":728}],936:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArray1D;e.exports=function(t,e,r){var a=r(\"x\"),i=a&&a.length,o=r(\"y\"),s=o&&o.length;if(!i&&!s)return!1;if(e._cheater=!a,i&&!n(a)||s&&!n(o))e._length=null;else{var l=i?a.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}},{\"../../lib\":728}],937:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../scattergeo/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../components/color/attributes\").defaultLine,l=t(\"../../lib/extend\").extendFlat,c=a.marker.line;e.exports=l({locations:{valType:\"data_array\",editType:\"calc\"},locationmode:a.locationmode,z:{valType:\"data_array\",editType:\"calc\"},geojson:l({},a.geojson,{}),featureidkey:a.featureidkey,text:l({},a.text,{}),hovertext:l({},a.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:a.selected.marker.opacity,editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:a.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})},i(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},{\"../../components/color/attributes\":594,\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../scattergeo/attributes\":1175}],938:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../constants/numerical\").BADNUM,i=t(\"../../components/colorscale/calc\"),o=t(\"../scatter/arrays_to_calcdata\"),s=t(\"../scatter/calc_selection\");function l(t){return t&&\"string\"==typeof t}e.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,f.mockAxis),[t]}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"./attributes\":937}],942:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),calc:t(\"./calc\"),calcGeoJSON:t(\"./plot\").calcGeoJSON,plot:t(\"./plot\").plot,style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"choropleth\",basePlotModule:t(\"../../plots/geo\"),categories:[\"geo\",\"noOpacity\",\"showLegend\"],meta:{}}},{\"../../plots/geo\":808,\"../heatmap/colorbar\":1016,\"./attributes\":937,\"./calc\":938,\"./defaults\":939,\"./event_data\":940,\"./hover\":941,\"./plot\":943,\"./select\":944,\"./style\":945}],943:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../lib/geo_location_utils\"),o=t(\"../../lib/topojson_utils\").getTopojsonFeatures,s=t(\"../../plots/cartesian/autorange\").findExtremes,l=t(\"./style\").style;e.exports={calcGeoJSON:function(t,e){for(var r=t[0].trace,n=e[r.geo],a=n._subplot,l=r.locationmode,c=r._length,u=\"geojson-id\"===l?i.extractTraceFeature(t):o(r,a.topojson),h=[],f=[],p=0;p=0;n--){var a=r[n].id;if(\"string\"==typeof a&&0===a.indexOf(\"water\"))for(var i=n+1;i=0;r--)t.removeLayer(e[r][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new o(t,r.uid),i=a.sourceId,s=n(e),l=a.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(i,{type:\"geojson\",data:s.geojson}),a._addLayers(s,l),e[0].trace._glTrace=a,a}},{\"../../plots/mapbox/constants\":831,\"./convert\":947}],951:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../mesh3d/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},u:{valType:\"data_array\",editType:\"calc\"},v:{valType:\"data_array\",editType:\"calc\"},w:{valType:\"data_array\",editType:\"calc\"},sizemode:{valType:\"enumerated\",values:[\"scaled\",\"absolute\"],editType:\"calc\",dflt:\"scaled\"},sizeref:{valType:\"number\",editType:\"calc\",min:0},anchor:{valType:\"enumerated\",editType:\"calc\",values:[\"tip\",\"tail\",\"cm\",\"center\"],dflt:\"cm\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertemplate:a({editType:\"calc\"},{keys:[\"norm\"]}),showlegend:s({},o.showlegend,{dflt:!1})};s(l,n(\"\",{colorAttr:\"u/v/w norm\",showScaleDflt:!0,editTypeOverride:\"calc\"}));[\"opacity\",\"lightposition\",\"lighting\"].forEach((function(t){l[t]=i[t]})),l.hoverinfo=s({},o.hoverinfo,{editType:\"calc\",flags:[\"x\",\"y\",\"z\",\"u\",\"v\",\"w\",\"norm\",\"text\",\"name\"],dflt:\"x+y+z+norm+text+name\"}),l.transforms=void 0,e.exports=l},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../mesh3d/attributes\":1075}],952:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){for(var r=e.u,a=e.v,i=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,r.length,a.length,i.length),s=-1/0,l=1/0,c=0;co.level||o.starts.length&&i===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)}}}},{}],959:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale\"),a=t(\"./make_color_map\"),i=t(\"./end_plus\");e.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=a(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:i(o),size:l}}}},{\"../../components/colorscale\":607,\"./end_plus\":967,\"./make_color_map\":972}],960:[function(t,e,r){\"use strict\";e.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}},{}],961:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"./label_defaults\"),i=t(\"../../components/color\"),o=i.addOpacity,s=i.opacity,l=t(\"../../constants/filter_ops\"),c=l.CONSTRAINT_REDUCTION,u=l.COMPARISON_OPS2;e.exports=function(t,e,r,i,l,h){var f,p,d,g=e.contours,m=r(\"contours.operation\");(g._operation=c[m],function(t,e){var r;-1===u.indexOf(e.operation)?(t(\"contours.value\",[0,1]),Array.isArray(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(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)||(Array.isArray(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(r,g),\"=\"===m?f=g.showlines=!0:(f=r(\"contours.showlines\"),d=r(\"fillcolor\",o((t.line||{}).color||l,.5))),f)&&(p=r(\"line.color\",d&&s(d)?o(e.fillcolor,1):l),r(\"line.width\",2),r(\"line.dash\"));r(\"line.smoothing\"),a(r,i,p,h)}},{\"../../components/color\":595,\"../../constants/filter_ops\":700,\"./label_defaults\":971,\"fast-isnumeric\":236}],962:[function(t,e,r){\"use strict\";var n=t(\"../../constants/filter_ops\"),a=t(\"fast-isnumeric\");function i(t,e){var r,i=Array.isArray(e);function o(t){return a(t)?+t:null}return-1!==n.COMPARISON_OPS2.indexOf(t)?r=o(i?e[0]:e):-1!==n.INTERVAL_OPS.indexOf(t)?r=i?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==n.SET_OPS.indexOf(t)&&(r=i?e.map(o):[o(e)]),r}function o(t){return function(e){e=i(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=i(t,e),end:1/0,size:1/0}}}e.exports={\"[]\":o(\"[]\"),\"][\":o(\"][\"),\">\":s(\">\"),\"<\":s(\"<\"),\"=\":s(\"=\")}},{\"../../constants/filter_ops\":700,\"fast-isnumeric\":236}],963:[function(t,e,r){\"use strict\";e.exports=function(t,e,r,n){var a=n(\"contours.start\"),i=n(\"contours.end\"),o=!1===a||!1===i,s=r(\"contours.size\");!(o?e.autocontour=!0:r(\"autocontour\",!1))&&s||r(\"ncontours\")}},{}],964:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");function a(t){return n.extendFlat({},t,{edgepaths:n.extendDeep([],t.edgepaths),paths:n.extendDeep([],t.paths),starts:n.extendDeep([],t.starts)})}e.exports=function(t,e){var r,i,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.\"),i=t[0],r=0;r1e3){n.warn(\"Too many contours, clipping at 1000\",t);break}return l}},{\"../../lib\":728,\"./constraint_mapping\":962,\"./end_plus\":967}],967:[function(t,e,r){\"use strict\";e.exports=function(t){return t.end+t.size/1e6}},{}],968:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./constants\");function i(t,e,r,n){return Math.abs(t[0]-e[0])20&&e?208===t||1114===t?n=0===r[0]?1:-1:i=0===r[1]?1:-1:-1!==a.BOTTOMSTART.indexOf(t)?i=1:-1!==a.LEFTSTART.indexOf(t)?n=1:-1!==a.TOPSTART.indexOf(t)?i=-1:n=-1;return[n,i]}(h,r,e),p=[s(t,e,[-f[0],-f[1]])],d=t.z.length,g=t.z[0].length,m=e.slice(),v=f.slice();for(c=0;c<1e4;c++){if(h>20?(h=a.CHOOSESADDLE[h][(f[0]||f[1])<0?0:1],t.crossings[u]=a.SADDLEREMAINDER[h]):delete t.crossings[u],!(f=a.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(\",\"),i(p[p.length-1],p[p.length-2],o,l)&&p.pop();var y=f[0]&&(e[0]<0||e[0]>g-2)||f[1]&&(e[1]<0||e[1]>d-2);if(e[0]===m[0]&&e[1]===m[1]&&f[0]===v[0]&&f[1]===v[1]||r&&y)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,P,I,z,O=i(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[b]M&&S--,t.edgepaths[S]=C.concat(p,E));break}U||(t.edgepaths[M]=p.concat(E))}for(M=0;Mt?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}e.exports=function(t){var e,r,i,o,s,l,c,u,h,f=t[0].z,p=f.length,d=f[0].length,g=2===p||2===d;for(r=0;r=0&&(n=y,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-y[1])<.01&&(y[0]-r[0])*(n[0]-y[0])>=0&&(n=y,s=l):a.log(\"endpt to newendpt is not vert. or horz.\",r,n,y)}if(r=n,s>=0)break;h+=\"L\"+n}if(s===t.edgepaths.length){a.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=v.EDGECOST*(1/(f-1)+1/(p-1));d+=v.ANGLECOST*c*c;for(var g=s-u,m=l-h,y=s+u,x=l+h,b=0;b2*v.MAXCOST)break;p&&(s/=2),l=(o=c-s/2)+1.5*s}if(f<=v.MAXCOST)return u},r.addLabelData=function(t,e,r,n){var a=e.fontSize,i=e.width+a/3,o=Math.max(0,e.height-a/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(-i/2,-o/2),f(-i/2,o/2),f(i/2,o/2),f(i/2,-o/2)];r.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:i,height:o}),n.push(p)},r.drawLabels=function(t,e,r,i,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,a=t.y-Math.cos(t.theta)*t.dy;n.select(this).text(t.text).attr({x:e,y:a,transform:\"rotate(\"+180*t.theta/Math.PI+\" \"+e+\" \"+a+\")\"}).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={}),a.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;if(u>h&&(r.start=f.start=h,h=r.end=f.end=u,u=r.start),!(r.size>0))c=u===h?1:i(u,h,t.ncontours).dtick,f.size=r.size=c}}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776}],976:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../heatmap/style\"),o=t(\"./make_color_map\");e.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,i=r.contours,s=r.line,l=i.size||1,c=i.start,u=\"constraint\"===i.type,h=!u&&\"lines\"===i.coloring,f=!u&&\"fill\"===i.coloring,p=h||f?o(r):null;e.selectAll(\"g.contourlevel\").each((function(t){n.select(this).selectAll(\"path\").call(a.lineGroupStyle,s.width,h?p(t.level):s.color,s.dash)}));var d=i.labelfont;if(e.selectAll(\"g.contourlabels text\").each((function(t){a.font(n.select(this),{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 g;e.selectAll(\"g.contourfill path\").style(\"fill\",(function(t){return void 0===g&&(g=t.level),p(t.level+.5*l)})),void 0===g&&(g=c),e.selectAll(\"g.contourbg path\").style(\"fill\",p(g-.5*l))}})),i(t)}},{\"../../components/drawing\":617,\"../heatmap/style\":1025,\"./make_color_map\":972,d3:164}],977:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/defaults\"),a=t(\"./label_defaults\");e.exports=function(t,e,r,i,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,i,r,{prefix:\"\",cLetter:\"z\"})),r(\"line.smoothing\"),a(r,i,c,o)}},{\"../../components/colorscale/defaults\":605,\"./label_defaults\":971}],978:[function(t,e,r){\"use strict\";var n=t(\"../heatmap/attributes\"),a=t(\"../contour/attributes\"),i=t(\"../../components/colorscale/attributes\"),o=t(\"../../lib/extend\").extendFlat,s=a.contours;e.exports=o({carpet:{valType:\"string\",editType:\"calc\"},z:n.z,a:n.x,a0:n.x0,da:n.dx,b:n.y,b0:n.y0,db:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,atype:n.xtype,btype:n.ytype,fillcolor:a.fillcolor,autocontour:a.autocontour,ncontours:a.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:a.line.color,width:a.line.width,dash:a.line.dash,smoothing:a.line.smoothing,editType:\"plot\"},transforms:void 0},i(\"\",{cLetter:\"z\",autoColorDflt:!1}))},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../contour/attributes\":956,\"../heatmap/attributes\":1013}],979:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\"),a=t(\"../../lib\"),i=t(\"../heatmap/convert_column_xyz\"),o=t(\"../heatmap/clean_2d_array\"),s=t(\"../heatmap/interp2d\"),l=t(\"../heatmap/find_empties\"),c=t(\"../heatmap/make_bound_array\"),u=t(\"./defaults\"),h=t(\"../carpet/lookup_carpetid\"),f=t(\"../contour/set_contours\");e.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 g=function(t,e){var r,u,h,f,p,d,g,m=e._carpetTrace,v=m.aaxis,y=m.baxis;v._minDtick=0,y._minDtick=0,a.isArray1D(e.z)&&i(e,v,y,\"a\",\"b\",[\"z\"]);r=e._a=e._a||e.a,f=e._b=e._b||e.b,r=r?v.makeCalcdata(e,\"_a\"):[],f=f?y.makeCalcdata(e,\"_b\"):[],u=e.a0||0,h=e.da||1,p=e.b0||0,d=e.db||1,g=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(g),s(g,e._emptypoints);var x=a.maxRowLength(g),b=\"scaled\"===e.xtype?\"\":r,_=c(e,b,u,h,x,v),w=\"scaled\"===e.ytype?\"\":f,T=c(e,w,p,d,g.length,y),k={a:_,b:T,z:g};\"levels\"===e.contours.type&&\"none\"!==e.contours.coloring&&n(t,e,{vals:g,containerStr:\"\",cLetter:\"z\"});return[k]}(t,e);return f(e,e._z),g}}},{\"../../components/colorscale/calc\":603,\"../../lib\":728,\"../carpet/lookup_carpetid\":929,\"../contour/set_contours\":975,\"../heatmap/clean_2d_array\":1015,\"../heatmap/convert_column_xyz\":1017,\"../heatmap/find_empties\":1019,\"../heatmap/interp2d\":1022,\"../heatmap/make_bound_array\":1023,\"./defaults\":980}],980:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../heatmap/xyz_defaults\"),i=t(\"./attributes\"),o=t(\"../contour/constraint_defaults\"),s=t(\"../contour/contours_defaults\"),l=t(\"../contour/style_defaults\");e.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,i,r,a)}if(u(\"carpet\"),t.a&&t.b){if(!a(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,i,r)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=r,e._length=null}},{\"../../lib\":728,\"../contour/constraint_defaults\":961,\"../contour/contours_defaults\":963,\"../contour/style_defaults\":977,\"../heatmap/xyz_defaults\":1027,\"./attributes\":978}],981:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../contour/colorbar\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../contour/style\"),moduleType:\"trace\",name:\"contourcarpet\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"carpet\",\"contour\",\"symbols\",\"showLegend\",\"hasLines\",\"carpetDependent\",\"noHover\",\"noSortingByValue\"],meta:{}}},{\"../../plots/cartesian\":789,\"../contour/colorbar\":959,\"../contour/style\":976,\"./attributes\":978,\"./calc\":979,\"./defaults\":980,\"./plot\":982}],982:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../carpet/map_1d_array\"),i=t(\"../carpet/makepath\"),o=t(\"../../components/drawing\"),s=t(\"../../lib\"),l=t(\"../contour/make_crossings\"),c=t(\"../contour/find_all_paths\"),u=t(\"../contour/plot\"),h=t(\"../contour/constants\"),f=t(\"../contour/convert_to_constraints\"),p=t(\"../contour/empty_pathinfo\"),d=t(\"../contour/close_boundaries\"),g=t(\"../carpet/lookup_carpetid\"),m=t(\"../carpet/axis_aligned_line\");function v(t,e,r){var n=t.getPointAtLength(e),a=t.getPointAtLength(r),i=a.x-n.x,o=a.y-n.y,s=Math.sqrt(i*i+o*o);return[i/s,o/s]}function y(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function x(t,e){var r=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-r*r)/r}e.exports=function(t,e,r,b){var _=e.xaxis,w=e.yaxis;s.makeTraceGroups(b,r,\"contour\").each((function(r){var b=n.select(this),T=r[0],k=T.trace,A=k._carpetTrace=g(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),P=\"constraint\"===C.type,I=C._operation,z=P?\"=\"===I?\"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,V=L;\"constraint\"===C.type&&(V=f(L,I)),function(t,e){var r,n,a,i,o,s,l,c,u;for(r=0;r=0;j--)F=M.clipsegments[j],B=a([],F.x,_.c2p),N=a([],F.y,w.c2p),B.reverse(),N.reverse(),U.push(i(B,N,F.bicubic));var q=\"M\"+U.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=g):Math.abs(h[1]-f[1])=0&&(f=C,d=g):s.log(\"endpt to newendpt is not vert. or horz.\",h,f,C)}if(d>=0)break;y+=S(h,f),h=f}if(d===e.edgepaths.length){s.log(\"unclosed perimeter path\");break}u=d,(b=-1===x.indexOf(u))&&(u=x[0],y+=S(h,f)+\"Z\",h=null)}for(u=0;um&&(n.max=m);n.len=n.max-n.min}(this,r,t,n,c,e.height),!(n.len<(e.width+e.height)*h.LABELMIN)))for(var a=Math.min(Math.ceil(n.len/I),h.LABELMAX),i=0;i0?+p[u]:0),h.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:v},properties:y})}}var b=o.extractOpts(e),_=b.reversescale?o.flipScale(b.colorscale):b.colorscale,w=_[0][1],T=[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,i.opacity(w)<1?w:i.addOpacity(w,0)];for(u=1;u<_.length;u++)T.push(_[u][0],_[u][1]);var k=[\"interpolate\",[\"linear\"],[\"get\",\"z\"],b.min,0,b.max,1];return a.extendFlat(c.heatmap.paint,{\"heatmap-weight\":d?k:1/(b.max-b.min),\"heatmap-color\":T,\"heatmap-radius\":g?{type:\"identity\",property:\"r\"}:e.radius,\"heatmap-opacity\":e.opacity}),c.geojson={type:\"FeatureCollection\",features:h},c.heatmap.layout.visibility=\"visible\",c}},{\"../../components/color\":595,\"../../components/colorscale\":607,\"../../constants/numerical\":704,\"../../lib\":728,\"../../lib/geojson_utils\":723,\"fast-isnumeric\":236}],986:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/colorscale/defaults\"),i=t(\"./attributes\");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s(\"lon\")||[],c=s(\"lat\")||[],u=Math.min(l.length,c.length);u?(e._length=u,s(\"z\"),s(\"radius\"),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),a(t,e,o,s,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},{\"../../components/colorscale/defaults\":605,\"../../lib\":728,\"./attributes\":983}],987:[function(t,e,r){\"use strict\";e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}},{}],988:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../scattermapbox/hover\");e.exports=function(t,e,r){var o=i(t,e,r);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,\"z\"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=a.tickText(h,h.c2l(u.z),\"hover\").text}return s.extraText=function(t,e,r){if(t.hovertemplate)return;var a=(e.hi||t.hoverinfo).split(\"+\"),i=-1!==a.indexOf(\"all\"),o=-1!==a.indexOf(\"lon\"),s=-1!==a.indexOf(\"lat\"),l=e.lonlat,c=[];function u(t){return t+\"\\xb0\"}i||o&&s?c.push(\"(\"+u(l[0])+\", \"+u(l[1])+\")\"):o?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(i||-1!==a.indexOf(\"text\"))&&n.fillText(e,t,c);return c.join(\"
\")}(c,u,l[0].t.labels),[s]}}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"../scattermapbox/hover\":1203}],989:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../heatmap/colorbar\"),formatLabels:t(\"../scattermapbox/format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new i(t,r.uid),o=a.sourceId,s=n(e),l=a.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(o,{type:\"geojson\",data:s.geojson}),a._addLayers(s,l),a}},{\"../../plots/mapbox/constants\":831,\"./convert\":985}],991:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");e.exports=function(t,e){for(var r=0;r\"),s.color=function(t,e){var r=t.marker,a=e.mc||r.color,i=e.mlc||r.line.color,o=e.mlw||r.line.width;if(n(a))return a;if(n(i)&&o)return i}(c,h),[s]}}},{\"../../components/color\":595,\"../../lib\":728,\"../bar/hover\":876}],999:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\").style,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"../bar/select\"),moduleType:\"trace\",name:\"funnel\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":789,\"../bar/select\":881,\"./attributes\":992,\"./calc\":993,\"./cross_trace_calc\":995,\"./defaults\":996,\"./event_data\":997,\"./hover\":998,\"./layout_attributes\":1e3,\"./layout_defaults\":1001,\"./plot\":1002,\"./style\":1003}],1e3:[function(t,e,r){\"use strict\";e.exports={funnelmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},funnelgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},funnelgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],1001:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s path\").each((function(t){if(!t.isBlank){var e=s.marker;n.select(this).call(i.fill,t.mc||e.color).call(i.stroke,t.mlc||e.line.color).call(a.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(i.fill,s.connector.fillcolor)})),r.selectAll(\".lines\").each((function(){var t=s.connector.line;a.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../constants/interactions\":703,\"../bar/style\":883,\"../bar/uniform_text\":885,d3:164}],1004:[function(t,e,r){\"use strict\";var n=t(\"../pie/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/domain\").attributes,o=t(\"../../plots/template_attributes\").hovertemplateAttrs,s=t(\"../../plots/template_attributes\").texttemplateAttrs,l=t(\"../../lib/extend\").extendFlat;e.exports={labels:n.labels,label0:n.label0,dlabel:n.dlabel,values:n.values,marker:{colors:n.marker.colors,line:{color:l({},n.marker.line.color,{dflt:null}),width:l({},n.marker.line.width,{dflt:1}),editType:\"calc\"},editType:\"calc\"},text:n.text,hovertext:n.hovertext,scalegroup:l({},n.scalegroup,{}),textinfo:l({},n.textinfo,{flags:[\"label\",\"text\",\"value\",\"percent\"]}),texttemplate:s({editType:\"plot\"},{keys:[\"label\",\"color\",\"value\",\"text\",\"percent\"]}),hoverinfo:l({},a.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:i({name:\"funnelarea\",trace:!0,editType:\"calc\"}),aspectratio:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},baseratio:{valType:\"number\",min:0,max:1,dflt:.333,editType:\"plot\"}}},{\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/domain\":803,\"../../plots/template_attributes\":854,\"../pie/attributes\":1108}],1005:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"funnelarea\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":839}],1006:[function(t,e,r){\"use strict\";var n=t(\"../pie/calc\");e.exports={calc:function(t,e){return n.calc(t,e)},crossTraceCalc:function(t){n.crossTraceCalc(t,{type:\"funnelarea\"})}}},{\"../pie/calc\":1110}],1007:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults,o=t(\"../bar/defaults\").handleText,s=t(\"../pie/defaults\").handleLabelsAndValues;e.exports=function(t,e,r,l){function c(r,i){return n.coerce(t,e,a,r,i)}var u=c(\"labels\"),h=c(\"values\"),f=s(u,h),p=f.len;if(e._hasLabels=f.hasLabels,e._hasValues=f.hasValues,!e._hasLabels&&e._hasValues&&(c(\"label0\"),c(\"dlabel\")),p){e._length=p,c(\"marker.line.width\")&&c(\"marker.line.color\",l.paper_bgcolor),c(\"marker.colors\"),c(\"scalegroup\");var d,g=c(\"text\"),m=c(\"texttemplate\");if(m||(d=c(\"textinfo\",Array.isArray(g)?\"text+percent\":\"percent\")),c(\"hovertext\"),c(\"hovertemplate\"),m||d&&\"none\"!==d){var v=c(\"textposition\");o(t,e,l,c,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}i(e,l,c),c(\"title.text\")&&(c(\"title.position\"),n.coerceFont(c,\"title.font\",l.font)),c(\"aspectratio\"),c(\"baseratio\")}else e.visible=!1}},{\"../../lib\":728,\"../../plots/domain\":803,\"../bar/defaults\":873,\"../pie/defaults\":1111,\"./attributes\":1004}],1008:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"funnelarea\",basePlotModule:t(\"./base_plot\"),categories:[\"pie-like\",\"funnelarea\",\"showLegend\"],attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),style:t(\"./style\"),styleOne:t(\"../pie/style_one\"),meta:{}}},{\"../pie/style_one\":1119,\"./attributes\":1004,\"./base_plot\":1005,\"./calc\":1006,\"./defaults\":1007,\"./layout_attributes\":1009,\"./layout_defaults\":1010,\"./plot\":1011,\"./style\":1012}],1009:[function(t,e,r){\"use strict\";var n=t(\"../pie/layout_attributes\").hiddenlabels;e.exports={hiddenlabels:n,funnelareacolorway:{valType:\"colorlist\",editType:\"calc\"},extendfunnelareacolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{\"../pie/layout_attributes\":1115}],1010:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"hiddenlabels\"),r(\"funnelareacolorway\",e.colorway),r(\"extendfunnelareacolors\")}},{\"../../lib\":728,\"./layout_attributes\":1009}],1011:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/drawing\"),i=t(\"../../lib\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"../bar/plot\").toMoveInsideBar,l=t(\"../bar/uniform_text\"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t(\"../pie/helpers\"),f=t(\"../pie/plot\"),p=f.attachFxHandlers,d=f.determineInsideTextFont,g=f.layoutAreas,m=f.prerenderTitles,v=f.positionTitleOutside,y=f.formatSliceLabel;function x(t,e){return\"l\"+(e[0]-t[0])+\",\"+(e[1]-t[1])}e.exports=function(t,e){var r=t._fullLayout;u(\"funnelarea\",r),m(e,t),g(e,r._size),i.makeTraceGroups(r._funnelarealayer,e,\"trace\").each((function(e){var l=n.select(this),u=e[0],f=u.trace;!function(t){if(!t.length)return;var e=t[0],r=e.trace,n=r.aspectratio,a=r.baseratio;a>.999&&(a=.999);var i,o=Math.pow(a,2),s=e.vTotal,l=s,c=s*o/(1-o)/s;function u(){var t,e={x:t=Math.sqrt(c),y:-t};return[e.x,e.y]}var h,f,p=[];for(p.push(u()),h=t.length-1;h>-1;h--)if(!(f=t[h]).hidden){var d=f.v/l;c+=d,p.push(u())}var g=1/0,m=-1/0;for(h=0;h-1;h--)if(!(f=t[h]).hidden){var A=p[k+=1][0],M=p[k][1];f.TL=[-A,M],f.TR=[A,M],f.BL=w,f.BR=T,f.pxmid=(S=f.TR,E=f.BR,[.5*(S[0]+E[0]),.5*(S[1]+E[1])]),w=f.TL,T=f.TR}var S,E}(e),l.each((function(){var l=n.select(this).selectAll(\"g.slice\").data(e);l.enter().append(\"g\").classed(\"slice\",!0),l.exit().remove(),l.each((function(l,g){if(l.hidden)n.select(this).selectAll(\"path,g\").remove();else{l.pointNumber=l.i,l.curveNumber=f.index;var m=u.cx,v=u.cy,b=n.select(this),_=b.selectAll(\"path.surface\").data([l]);_.enter().append(\"path\").classed(\"surface\",!0).style({\"pointer-events\":\"all\"}),b.call(p,t,e);var w=\"M\"+(m+l.TR[0])+\",\"+(v+l.TR[1])+x(l.TR,l.BR)+x(l.BR,l.BL)+x(l.BL,l.TL)+\"Z\";_.attr(\"d\",w),y(t,l,u);var T=h.castOption(f.textposition,l.pts),k=b.selectAll(\"g.slicetext\").data(l.text&&\"none\"!==T?[0]:[]);k.enter().append(\"g\").classed(\"slicetext\",!0),k.exit().remove(),k.each((function(){var u=i.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),h=i.ensureUniformFontSize(t,d(f,l,r.font));u.text(l.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(a.font,h).call(o.convertToTspans,t);var p,y,x,b=a.bBox(u.node()),_=Math.min(l.BL[1],l.BR[1])+v,w=Math.max(l.TL[1],l.TR[1])+v;y=Math.max(l.TL[0],l.BL[0])+m,x=Math.min(l.TR[0],l.BR[0])+m,(p=s(y,x,_,w,b,{isHorizontal:!0,constrained:!0,angle:0,anchor:\"middle\"})).fontSize=h.size,c(f.type,p,r),e[g].transform=p,u.attr(\"transform\",i.getTextTransform(p))}))}}));var g=n.select(this).selectAll(\"g.titletext\").data(f.title.text?[0]:[]);g.enter().append(\"g\").classed(\"titletext\",!0),g.exit().remove(),g.each((function(){var e=i.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),s=f.title.text;f._meta&&(s=i.templateString(s,f._meta)),e.text(s).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(a.font,f.title.font).call(o.convertToTspans,t);var l=v(u,r._size);e.attr(\"transform\",\"translate(\"+l.x+\",\"+l.y+\")\"+(l.scale<1?\"scale(\"+l.scale+\")\":\"\")+\"translate(\"+l.tx+\",\"+l.ty+\")\")}))}))}))}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../bar/plot\":880,\"../bar/uniform_text\":885,\"../pie/helpers\":1113,\"../pie/plot\":1117,d3:164}],1012:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../pie/style_one\"),i=t(\"../bar/uniform_text\").resizeText;e.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(\".trace\");i(t,e,\"funnelarea\"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll(\"path.surface\").each((function(t){n.select(this).call(a,t,e)}))}))}},{\"../bar/uniform_text\":885,\"../pie/style_one\":1119,d3:164}],1013:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../components/colorscale/attributes\"),s=(t(\"../../constants/docs\").FORMAT_LINK,t(\"../../lib/extend\").extendFlat);e.exports=s({z:{valType:\"data_array\",editType:\"calc\"},x:s({},n.x,{impliedEdits:{xtype:\"array\"}}),x0:s({},n.x0,{impliedEdits:{xtype:\"scaled\"}}),dx:s({},n.dx,{impliedEdits:{xtype:\"scaled\"}}),y:s({},n.y,{impliedEdits:{ytype:\"array\"}}),y0:s({},n.y0,{impliedEdits:{ytype:\"scaled\"}}),dy:s({},n.dy,{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\"},zhoverformat:{valType:\"string\",dflt:\"\",editType:\"none\"},hovertemplate:i(),showlegend:s({},a.showlegend,{dflt:!1})},{transforms:void 0},o(\"\",{cLetter:\"z\",autoColorDflt:!1}))},{\"../../components/colorscale/attributes\":602,\"../../constants/docs\":699,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../scatter/attributes\":1134}],1014:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../histogram2d/calc\"),s=t(\"../../components/colorscale/calc\"),l=t(\"./convert_column_xyz\"),c=t(\"./clean_2d_array\"),u=t(\"./interp2d\"),h=t(\"./find_empties\"),f=t(\"./make_bound_array\"),p=t(\"../../constants/numerical\").BADNUM;function d(t){for(var e=[],r=t.length,n=0;nI){L(\"x scale is not linear\");break}}if(v.length&&\"fast\"===E){var z=(v[v.length-1]-v[0])/(v.length-1),O=Math.abs(z/100);for(_=0;_O){L(\"y scale is not linear\");break}}}var D=a.maxRowLength(b),R=\"scaled\"===e.xtype?\"\":r,F=f(e,R,g,m,D,T),B=\"scaled\"===e.ytype?\"\":v,N=f(e,B,y,x,b.length,k);S||(e._extremes[T._id]=i.findExtremes(T,F),e._extremes[k._id]=i.findExtremes(k,N));var j={x:F,y:N,z:b,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(R&&R.length===F.length-1&&(j.xCenter=R),B&&B.length===N.length-1&&(j.yCenter=B),M&&(j.xRanges=w.xRanges,j.yRanges=w.yRanges,j.pts=w.pts),A||s(t,e,{vals:b,cLetter:\"z\"}),A&&e.contours&&\"heatmap\"===e.contours.coloring){var V={type:\"contour\"===e.type?\"heatmap\":\"histogram2d\",xcalendar:e.xcalendar,ycalendar:e.ycalendar};j.xfill=f(V,R,g,m,D,T),j.yfill=f(V,B,y,x,b.length,k)}return[j]}},{\"../../components/colorscale/calc\":603,\"../../constants/numerical\":704,\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"../histogram2d/calc\":1046,\"./clean_2d_array\":1015,\"./convert_column_xyz\":1017,\"./find_empties\":1019,\"./interp2d\":1022,\"./make_bound_array\":1023}],1015:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../../lib\"),i=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r,o){var s,l,c,u,h,f;function p(t){if(n(t))return+t}if(e&&e.transpose){for(s=0,h=0;h=0;o--)(s=((h[[(r=(i=f[o])[0])-1,a=i[1]]]||g)[2]+(h[[r+1,a]]||g)[2]+(h[[r,a-1]]||g)[2]+(h[[r,a+1]]||g)[2])/20)&&(l[i]=[r,a,s],f.splice(o,1),c=!0);if(!c)throw\"findEmpties iterated with no new neighbors\";for(i in l)h[i]=l[i],u.push(l[i])}return u.sort((function(t,e){return e[2]-t[2]}))}},{\"../../lib\":728}],1020:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx\"),a=t(\"../../lib\"),i=t(\"../../plots/cartesian/axes\"),o=t(\"../../components/colorscale\").extractOpts;e.exports=function(t,e,r,s,l,c){var u,h,f,p,d=t.cd[0],g=d.trace,m=t.xa,v=t.ya,y=d.x,x=d.y,b=d.z,_=d.xCenter,w=d.yCenter,T=d.zmask,k=g.zhoverformat,A=y,M=x;if(!1!==t.index){try{f=Math.round(t.index[1]),p=Math.round(t.index[0])}catch(e){return void a.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-y[0],e-y[y.length-1],0)>0||n.inbox(r-x[0],r-x[x.length-1],0)>0)return;if(c){var S;for(A=[2*y[0]-y[1]],S=1;Sg&&(v=Math.max(v,Math.abs(t[i][o]-d)/(m-g))))}return v}e.exports=function(t,e){var r,a=1;for(o(t,e),r=0;r.01;r++)a=o(t,e,i(a));return a>.01&&n.log(\"interp2d didn't converge quickly\",a),t}},{\"../../lib\":728}],1023:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\").isArrayOrTypedArray;e.exports=function(t,e,r,i,o,s){var l,c,u,h=[],f=n.traceIs(t,\"contour\"),p=n.traceIs(t,\"histogram\"),d=n.traceIs(t,\"gl2d\");if(a(e)&&e.length>1&&!p&&\"category\"!==s.type){var g=e.length;if(!(g<=o))return f?e.slice(0,o):e.slice(0,o+1);if(f||d)h=e.slice(0,o);else if(1===o)h=[e[0]-.5,e[0]+.5];else{for(h=[1.5*e[0]-.5*e[1]],u=1;u0;)f=p.c2p(T[y]),y--;for(f0;)v=d.c2p(k[y]),y--;if(v0&&(i=!0);for(var l=0;li){var o=i-r[t];return r[t]=i,o}}return 0},max:function(t,e,r,a){var i=a[e];if(n(i)){if(i=Number(i),!n(r[t]))return r[t]=i,i;if(r[t]c?t>o?t>1.1*a?a:t>1.1*i?i:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function p(t,e,r,n,i,s){if(n&&t>o){var l=d(e,i,s),c=d(r,i,s),u=t===a?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,a,r).split(\"-\");return\"\"===n[0]&&(n.unshift(),n[0]=\"-\"+n[0]),n}e.exports=function(t,e,r,n,i){var s,l,c=-1.1*e,f=-.1*e,p=t-f,d=r[0],g=r[1],m=Math.min(h(d+f,d+p,n,i),h(g+f,g+p,n,i)),v=Math.min(h(d+c,d+f,n,i),h(g+c,g+f,n,i));if(m>v&&vo){var y=s===a?1:6,x=s===a?\"M12\":\"M1\";return function(e,r){var o=n.c2d(e,a,i),s=o.indexOf(\"-\",y);s>0&&(o=o.substr(0,s));var c=n.d2c(o,0,i);if(cr.r2l(B)&&(j=o.tickIncrement(j,b.size,!0,p)),O.start=r.l2r(j),F||a.nestedProperty(e,v+\".start\").set(O.start)}var V=b.end,U=r.r2l(z.end),q=void 0!==U;if((b.endFound||q)&&U!==r.r2l(V)){var H=q?U:a.aggNums(Math.max,null,d);O.end=r.l2r(H),q||a.nestedProperty(e,v+\".start\").set(O.end)}var G=\"autobin\"+s;return!1===e._input[G]&&(e._input[v]=a.extendFlat({},e[v]||{}),delete e._input[G],delete e[G]),[O,d]}e.exports={calc:function(t,e){var r,i,p,d,g=[],m=[],v=o.getFromId(t,\"h\"===e.orientation?e.yaxis:e.xaxis),y=\"h\"===e.orientation?\"y\":\"x\",x={x:\"y\",y:\"x\"}[y],b=e[y+\"calendar\"],_=e.cumulative,w=f(t,e,v,y),T=w[0],k=w[1],A=\"string\"==typeof T.size,M=[],S=A?M:T,E=[],C=[],L=[],P=0,I=e.histnorm,z=e.histfunc,O=-1!==I.indexOf(\"density\");_.enabled&&O&&(I=I.replace(/ ?density$/,\"\"),O=!1);var D,R=\"max\"===z||\"min\"===z?null:0,F=l.count,B=c[I],N=!1,j=function(t){return v.r2c(t,0,b)};for(a.isArrayOrTypedArray(e[x])&&\"count\"!==z&&(D=e[x],N=\"avg\"===z,F=l[z]),r=j(T.start),p=j(T.end)+(r-o.tickIncrement(r,T.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())}}(m,_.direction,_.currentbin);var J=Math.min(g.length,m.length),K=[],Q=0,$=J-1;for(r=0;r=Q;r--)if(m[r]){$=r;break}for(r=Q;r<=$;r++)if(n(g[r])&&n(m[r])){var tt={p:g[r],s:m[r],b:0};_.enabled||(tt.pts=L[r],G?tt.ph0=tt.ph1=L[r].length?k[L[r][0]]:g[r]:(e._computePh=!0,tt.ph0=q(M[r]),tt.ph1=q(M[r+1],!0))),K.push(tt)}return 1===K.length&&(K[0].width1=o.tickIncrement(K[0].p,T.size,!1,b)-K[0].p),s(K,e),a.isArrayOrTypedArray(e.selectedpoints)&&a.tagSelected(K,e,Z),K},calcAllAutoBins:f}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"../../registry\":859,\"../bar/arrays_to_calcdata\":868,\"./average\":1033,\"./bin_functions\":1035,\"./bin_label_vals\":1036,\"./norm_functions\":1044,\"fast-isnumeric\":236}],1038:[function(t,e,r){\"use strict\";e.exports={eventDataKeys:[\"binNumber\"]}},{}],1039:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../plots/cartesian/axis_ids\"),i=t(\"../../registry\").traceIs,o=t(\"../bar/defaults\").handleGroupingDefaults,s=n.nestedProperty,l=a.getAxisGroup,c=[{aStr:{x:\"xbins.start\",y:\"ybins.start\"},name:\"start\"},{aStr:{x:\"xbins.end\",y:\"ybins.end\"},name:\"end\"},{aStr:{x:\"xbins.size\",y:\"ybins.size\"},name:\"size\"},{aStr:{x:\"nbinsx\",y:\"nbinsy\"},name:\"nbins\"}],u=[\"x\",\"y\"];e.exports=function(t,e){var r,h,f,p,d,g,m,v=e._histogramBinOpts={},y=[],x={},b=[];function _(t,e){return n.coerce(r._input,r,r._module.attributes,t,e)}function w(t){return\"v\"===t.orientation?\"x\":\"y\"}function T(t,r,i){var o=t.uid+\"__\"+i;r||(r=o);var s=function(t,r){return a.getFromTrace({_fullLayout:e},t,r).type}(t,i),l=t[i+\"calendar\"]||\"\",c=v[r],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(i)):(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:[i],axType:s,calendar:t[i+\"calendar\"]||\"\"}),t[\"_\"+i+\"bingroup\"]=r}for(d=0;dS&&T.splice(S,T.length-S),M.length>S&&M.splice(S,M.length-S);var E=[],C=[],L=[],P=\"string\"==typeof w.size,I=\"string\"==typeof A.size,z=[],O=[],D=P?z:w,R=I?O:A,F=0,B=[],N=[],j=e.histnorm,V=e.histfunc,U=-1!==j.indexOf(\"density\"),q=\"max\"===V||\"min\"===V?null:0,H=i.count,G=o[j],Y=!1,W=[],Z=[],X=\"z\"in e?e.z:\"marker\"in e&&Array.isArray(e.marker.color)?e.marker.color:\"\";X&&\"count\"!==V&&(Y=\"avg\"===V,H=i[V]);var J=w.size,K=x(w.start),Q=x(w.end)+(K-a.tickIncrement(K,J,!1,v))/1e6;for(r=K;r=0&&p=0&&d0||n.inbox(r-o.y0,r-(o.y0+o.h*s.dy),0)>0)){var u=Math.floor((e-o.x0)/s.dx),h=Math.floor(Math.abs(r-o.y0)/s.dy);if(o.z[h][u]){var f,p=o.hi||s.hoverinfo;if(p){var d=p.split(\"+\");-1!==d.indexOf(\"all\")&&(d=[\"color\"]),-1!==d.indexOf(\"color\")&&(f=!0)}var g,m=s.colormodel,v=m.length,y=s._scaler(o.z[h][u]),x=i.colormodel[m].suffix,b=[];(s.hovertemplate||f)&&(b.push(\"[\"+[y[0]+x[0],y[1]+x[1],y[2]+x[2]].join(\", \")),4===v&&b.push(\", \"+y[3]+x[3]),b.push(\"]\"),b=b.join(\"\"),t.extraText=m.toUpperCase()+\": \"+b),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[h])?g=s.hovertext[h][u]:Array.isArray(s.text)&&Array.isArray(s.text[h])&&(g=s.text[h][u]);var _=c.c2p(o.y0+(h+.5)*s.dy),w=o.x0+(u+.5)*s.dx,T=o.y0+(h+.5)*s.dy,k=\"[\"+o.z[h][u].slice(0,s.colormodel.length).join(\", \")+\"]\";return[a.extendFlat(t,{index:[h,u],x0:l.c2p(o.x0+u*s.dx),x1:l.c2p(o.x0+(u+1)*s.dx),y0:_,y1:_,color:y,xVal:w,xLabelVal:w,yVal:T,yLabelVal:T,zLabelVal:k,text:g,hovertemplateLabels:{zLabel:k,colorLabel:b,\"color[0]Label\":y[0]+x[0],\"color[1]Label\":y[1]+x[1],\"color[2]Label\":y[2]+x[2],\"color[3]Label\":y[3]+x[3]}})]}}}},{\"../../components/fx\":635,\"../../lib\":728,\"./constants\":1056}],1060:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"./style\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"image\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"2dMap\",\"noSortingByValue\"],animatable:!1,meta:{}}},{\"../../plots/cartesian\":789,\"./attributes\":1054,\"./calc\":1055,\"./defaults\":1057,\"./event_data\":1058,\"./hover\":1059,\"./plot\":1061,\"./style\":1062}],1061:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../constants/xmlns_namespaces\"),o=t(\"./constants\");e.exports=function(t,e,r,s){var l=e.xaxis,c=e.yaxis;a.makeTraceGroups(s,r,\"im\").each((function(t){var e,r,s,u,h,f,p=n.select(this),d=t[0],g=d.trace,m=d.z,v=d.x0,y=d.y0,x=d.w,b=d.h,_=g.dx,w=g.dy;for(f=0;void 0===e&&f0;)r=l.c2p(v+f*_),f--;for(f=0;void 0===u&&f0;)h=c.c2p(y+f*w),f--;r0}function x(t){t.each((function(t){d.stroke(n.select(this),t.line.color)})).each((function(t){d.fill(n.select(this),t.color)})).style(\"stroke-width\",(function(t){return t.line.width}))}function b(t,e,r){var n=t._fullLayout,i=a.extendFlat({type:\"linear\",ticks:\"outside\",range:r,showline:!0},e),o={type:\"linear\",_id:\"x\"+e._id},s={letter:\"x\",font:n.font,noHover:!0,noTickson:!0};function l(t,e){return a.coerce(i,o,p,t,e)}return h(i,o,l,s,n),f(i,o,l,s),o}function _(t,e){return\"translate(\"+t+\",\"+e+\")\"}function w(t,e,r){return[Math.min(e/t.width,r/t.height),t,e+\"x\"+r]}function T(t,e,r,a){var i=document.createElementNS(\"http://www.w3.org/2000/svg\",\"text\"),o=n.select(i);return o.text(t).attr(\"x\",0).attr(\"y\",0).attr(\"text-anchor\",r).attr(\"data-unformatted\",t).call(c.convertToTspans,a).call(s.font,e),s.bBox(o.node())}function k(t,e,r,n,i,o){var s=\"_cache\"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:r});var l=a.aggNums(o,null,[t[s].value,n],2);return t[s].value=l,l}e.exports=function(t,e,r,h){var f,p=t._fullLayout;y(r)&&h&&(f=h()),a.makeTraceGroups(p._indicatorlayer,e,\"trace\").each((function(e){var h,A,M,S,E,C=e[0].trace,L=n.select(this),P=C._hasGauge,I=C._isAngular,z=C._isBullet,O=C.domain,D={w:p._size.w*(O.x[1]-O.x[0]),h:p._size.h*(O.y[1]-O.y[0]),l:p._size.l+p._size.w*O.x[0],r:p._size.r+p._size.w*(1-O.x[1]),t:p._size.t+p._size.h*(1-O.y[1]),b:p._size.b+p._size.h*O.y[0]},R=D.l+D.w/2,F=D.t+D.h/2,B=Math.min(D.w/2,D.h),N=l.innerRadius*B,j=C.align||\"center\";if(A=F,P){if(I&&(h=R,A=F+B/2,M=function(t){return function(t,e){var r=Math.sqrt(t.width/2*(t.width/2)+t.height*t.height);return[e/r,t,e]}(t,.9*N)}),z){var V=l.bulletPadding,U=1-l.bulletNumberDomainSize+V;h=D.l+(U+(1-U)*m[j])*D.w,M=function(t){return w(t,(l.bulletNumberDomainSize-V)*D.w,D.h)}}}else h=D.l+m[j]*D.w,M=function(t){return w(t,D.w,D.h)};!function(t,e,r,i){var o,l,h,f=r[0].trace,p=i.numbersX,x=i.numbersY,w=f.align||\"center\",A=g[w],M=i.transitionOpts,S=i.onComplete,E=a.ensureSingle(e,\"g\",\"numbers\"),C=[];f._hasNumber&&C.push(\"number\");f._hasDelta&&(C.push(\"delta\"),\"left\"===f.delta.position&&C.reverse());var L=E.selectAll(\"text\").data(C);function P(e,r,n,a){if(!e.match(\"s\")||n>=0==a>=0||r(n).slice(-1).match(v)||r(a).slice(-1).match(v))return r;var i=e.slice().replace(\"s\",\"f\").replace(/\\d+/,(function(t){return parseInt(t)-1})),o=b(t,{tickformat:i});return function(t){return Math.abs(t)<1?u.tickText(o,t).text:r(t)}}L.enter().append(\"text\"),L.attr(\"text-anchor\",(function(){return A})).attr(\"class\",(function(t){return t})).attr(\"x\",null).attr(\"y\",null).attr(\"dx\",null).attr(\"dy\",null),L.exit().remove();var I,z=f.mode+f.align;f._hasDelta&&(I=function(){var e=b(t,{tickformat:f.delta.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=function(t){return f.delta.relative?t.relativeDelta:t.delta},o=function(t,e){return 0===t||\"number\"!=typeof t||isNaN(t)?\"-\":(t>0?f.delta.increasing.symbol:f.delta.decreasing.symbol)+e(t)},h=function(t){return t.delta>=0?f.delta.increasing.color:f.delta.decreasing.color};void 0===f._deltaLastValue&&(f._deltaLastValue=i(r[0]));var p=E.select(\"text.delta\");function g(){p.text(o(i(r[0]),a)).call(d.fill,h(r[0])).call(c.convertToTspans,t)}return p.call(s.font,f.delta.font).call(d.fill,h({delta:f._deltaLastValue})),y(M)?p.transition().duration(M.duration).ease(M.easing).tween(\"text\",(function(){var t=n.select(this),e=i(r[0]),s=f._deltaLastValue,l=P(f.delta.valueformat,a,s,e),c=n.interpolateNumber(s,e);return f._deltaLastValue=e,function(e){t.text(o(c(e),l)),t.call(d.fill,h({delta:c(e)}))}})).each(\"end\",(function(){g(),S&&S()})).each(\"interrupt\",(function(){g(),S&&S()})):g(),l=T(o(i(r[0]),a),f.delta.font,A,t),p}(),z+=f.delta.position+f.delta.font.size+f.delta.font.family+f.delta.valueformat,z+=f.delta.increasing.symbol+f.delta.decreasing.symbol,h=l);f._hasNumber&&(!function(){var e=b(t,{tickformat:f.number.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=f.number.suffix,l=f.number.prefix,h=E.select(\"text.number\");function p(){var e=\"number\"==typeof r[0].y?l+a(r[0].y)+i:\"-\";h.text(e).call(s.font,f.number.font).call(c.convertToTspans,t)}y(M)?h.transition().duration(M.duration).ease(M.easing).each(\"end\",(function(){p(),S&&S()})).each(\"interrupt\",(function(){p(),S&&S()})).attrTween(\"text\",(function(){var t=n.select(this),e=n.interpolateNumber(r[0].lastY,r[0].y);f._lastValue=r[0].y;var o=P(f.number.valueformat,a,r[0].lastY,r[0].y);return function(r){t.text(l+o(e(r))+i)}})):p(),o=T(l+a(r[0].y)+i,f.number.font,A,t)}(),z+=f.number.font.size+f.number.font.family+f.number.valueformat+f.number.suffix+f.number.prefix,h=o);if(f._hasDelta&&f._hasNumber){var O,D,R=[(o.left+o.right)/2,(o.top+o.bottom)/2],F=[(l.left+l.right)/2,(l.top+l.bottom)/2],B=.75*f.delta.font.size;\"left\"===f.delta.position&&(O=k(f,\"deltaPos\",0,-1*(o.width*m[f.align]+l.width*(1-m[f.align])+B),z,Math.min),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:l.left+O,right:o.right,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),\"right\"===f.delta.position&&(O=k(f,\"deltaPos\",0,o.width*(1-m[f.align])+l.width*m[f.align]+B,z,Math.max),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:o.left,right:l.right+O,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),\"bottom\"===f.delta.position&&(O=null,D=l.height,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height,bottom:o.bottom+l.height}),\"top\"===f.delta.position&&(O=null,D=o.top,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height-l.height,bottom:o.bottom}),I.attr({dx:O,dy:D})}(f._hasNumber||f._hasDelta)&&E.attr(\"transform\",(function(){var t=i.numbersScaler(h);z+=t[2];var e,r=k(f,\"numbersScale\",1,t[0],z,Math.min);f._scaleNumbers||(r=1),e=f._isAngular?x-r*h.bottom:x-r*(h.top+h.bottom)/2,f._numbersTop=r*h.top+e;var n=h[w];\"center\"===w&&(n=(h.left+h.right)/2);var a=p-r*n;return _(a=k(f,\"numbersTranslate\",0,a,z,Math.max),e)+\" scale(\"+r+\")\"}))}(t,L,e,{numbersX:h,numbersY:A,numbersScaler:M,transitionOpts:r,onComplete:f}),P&&(S={range:C.gauge.axis.range,color:C.gauge.bgcolor,line:{color:C.gauge.bordercolor,width:0},thickness:1},E={range:C.gauge.axis.range,color:\"rgba(0, 0, 0, 0)\",line:{color:C.gauge.bordercolor,width:C.gauge.borderwidth},thickness:1});var q=L.selectAll(\"g.angular\").data(I?e:[]);q.exit().remove();var H=L.selectAll(\"g.angularaxis\").data(I?e:[]);H.exit().remove(),I&&function(t,e,r,a){var s,l,c,h,f=r[0].trace,p=a.size,d=a.radius,g=a.innerRadius,m=a.gaugeBg,v=a.gaugeOutline,w=[p.l+p.w/2,p.t+p.h/2+d/2],T=a.gauge,k=a.layer,A=a.transitionOpts,M=a.onComplete,S=Math.PI/2;function E(t){var e=f.gauge.axis.range[0],r=(t-e)/(f.gauge.axis.range[1]-e)*Math.PI-S;return r<-S?-S:r>S?S:r}function C(t){return n.svg.arc().innerRadius((g+d)/2-t/2*(d-g)).outerRadius((g+d)/2+t/2*(d-g)).startAngle(-S)}function L(t){t.attr(\"d\",(function(t){return C(t.thickness).startAngle(E(t.range[0])).endAngle(E(t.range[1]))()}))}T.enter().append(\"g\").classed(\"angular\",!0),T.attr(\"transform\",_(w[0],w[1])),k.enter().append(\"g\").classed(\"angularaxis\",!0).classed(\"crisp\",!0),k.selectAll(\"g.xangularaxistick,path,text\").remove(),(s=b(t,f.gauge.axis)).type=\"linear\",s.range=f.gauge.axis.range,s._id=\"xangularaxis\",s.setScale();var P=function(t){return(s.range[0]-t.x)/(s.range[1]-s.range[0])*Math.PI+Math.PI},I={},z=u.makeLabelFns(s,0).labelStandoff;I.xFn=function(t){var e=P(t);return Math.cos(e)*z},I.yFn=function(t){var e=P(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(z+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*o)},I.anchorFn=function(t){var e=P(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},I.heightFn=function(t,e,r){var n=P(t);return-.5*(1+Math.sin(n))*r};var O=function(t){return _(w[0]+d*Math.cos(t),w[1]-d*Math.sin(t))};c=function(t){return O(P(t))};if(l=u.calcTicks(s),h=u.getTickSigns(s)[2],s.visible){h=\"inside\"===s.ticks?-1:1;var D=(s.linewidth||1)/2;u.drawTicks(t,s,{vals:l,layer:k,path:\"M\"+h*D+\",0h\"+h*s.ticklen,transFn:function(t){var e=P(t);return O(e)+\"rotate(\"+-i(e)+\")\"}}),u.drawLabels(t,s,{vals:l,layer:k,transFn:c,labelFns:I})}var R=[m].concat(f.gauge.steps),F=T.selectAll(\"g.bg-arc\").data(R);F.enter().append(\"g\").classed(\"bg-arc\",!0).append(\"path\"),F.select(\"path\").call(L).call(x),F.exit().remove();var B=C(f.gauge.bar.thickness),N=T.selectAll(\"g.value-arc\").data([f.gauge.bar]);N.enter().append(\"g\").classed(\"value-arc\",!0).append(\"path\");var j=N.select(\"path\");y(A)?(j.transition().duration(A.duration).ease(A.easing).each(\"end\",(function(){M&&M()})).each(\"interrupt\",(function(){M&&M()})).attrTween(\"d\",(V=B,U=E(r[0].lastY),q=E(r[0].y),function(){var t=n.interpolate(U,q);return function(e){return V.endAngle(t(e))()}})),f._lastValue=r[0].y):j.attr(\"d\",\"number\"==typeof r[0].y?B.endAngle(E(r[0].y)):\"M0,0Z\");var V,U,q;j.call(x),N.exit().remove(),R=[];var H=f.gauge.threshold.value;H&&R.push({range:[H,H],color:f.gauge.threshold.color,line:{color:f.gauge.threshold.line.color,width:f.gauge.threshold.line.width},thickness:f.gauge.threshold.thickness});var G=T.selectAll(\"g.threshold-arc\").data(R);G.enter().append(\"g\").classed(\"threshold-arc\",!0).append(\"path\"),G.select(\"path\").call(L).call(x),G.exit().remove();var Y=T.selectAll(\"g.gauge-outline\").data([v]);Y.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"path\"),Y.select(\"path\").call(L).call(x),Y.exit().remove()}(t,0,e,{radius:B,innerRadius:N,gauge:q,layer:H,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var G=L.selectAll(\"g.bullet\").data(z?e:[]);G.exit().remove();var Y=L.selectAll(\"g.bulletaxis\").data(z?e:[]);Y.exit().remove(),z&&function(t,e,r,n){var a,i,o,s,c,h=r[0].trace,f=n.gauge,p=n.layer,g=n.gaugeBg,m=n.gaugeOutline,v=n.size,_=h.domain,w=n.transitionOpts,T=n.onComplete;f.enter().append(\"g\").classed(\"bullet\",!0),f.attr(\"transform\",\"translate(\"+v.l+\", \"+v.t+\")\"),p.enter().append(\"g\").classed(\"bulletaxis\",!0).classed(\"crisp\",!0),p.selectAll(\"g.xbulletaxistick,path,text\").remove();var k=v.h,A=h.gauge.bar.thickness*k,M=_.x[0],S=_.x[0]+(_.x[1]-_.x[0])*(h._hasNumber||h._hasDelta?1-l.bulletNumberDomainSize:1);(a=b(t,h.gauge.axis))._id=\"xbulletaxis\",a.domain=[M,S],a.setScale(),i=u.calcTicks(a),o=u.makeTransFn(a),s=u.getTickSigns(a)[2],c=v.t+v.h,a.visible&&(u.drawTicks(t,a,{vals:\"inside\"===a.ticks?u.clipEnds(a,i):i,layer:p,path:u.makeTickPath(a,c,s),transFn:o}),u.drawLabels(t,a,{vals:i,layer:p,transFn:o,labelFns:u.makeLabelFns(a,c)}));function E(t){t.attr(\"width\",(function(t){return Math.max(0,a.c2p(t.range[1])-a.c2p(t.range[0]))})).attr(\"x\",(function(t){return a.c2p(t.range[0])})).attr(\"y\",(function(t){return.5*(1-t.thickness)*k})).attr(\"height\",(function(t){return t.thickness*k}))}var C=[g].concat(h.gauge.steps),L=f.selectAll(\"g.bg-bullet\").data(C);L.enter().append(\"g\").classed(\"bg-bullet\",!0).append(\"rect\"),L.select(\"rect\").call(E).call(x),L.exit().remove();var P=f.selectAll(\"g.value-bullet\").data([h.gauge.bar]);P.enter().append(\"g\").classed(\"value-bullet\",!0).append(\"rect\"),P.select(\"rect\").attr(\"height\",A).attr(\"y\",(k-A)/2).call(x),y(w)?P.select(\"rect\").transition().duration(w.duration).ease(w.easing).each(\"end\",(function(){T&&T()})).each(\"interrupt\",(function(){T&&T()})).attr(\"width\",Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y)))):P.select(\"rect\").attr(\"width\",\"number\"==typeof r[0].y?Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y))):0);P.exit().remove();var I=r.filter((function(){return h.gauge.threshold.value})),z=f.selectAll(\"g.threshold-bullet\").data(I);z.enter().append(\"g\").classed(\"threshold-bullet\",!0).append(\"line\"),z.select(\"line\").attr(\"x1\",a.c2p(h.gauge.threshold.value)).attr(\"x2\",a.c2p(h.gauge.threshold.value)).attr(\"y1\",(1-h.gauge.threshold.thickness)/2*k).attr(\"y2\",(1-(1-h.gauge.threshold.thickness)/2)*k).call(d.stroke,h.gauge.threshold.line.color).style(\"stroke-width\",h.gauge.threshold.line.width),z.exit().remove();var O=f.selectAll(\"g.gauge-outline\").data([m]);O.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"rect\"),O.select(\"rect\").call(E).call(x),O.exit().remove()}(t,0,e,{gauge:G,layer:Y,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var W=L.selectAll(\"text.title\").data(e);W.exit().remove(),W.enter().append(\"text\").classed(\"title\",!0),W.attr(\"text-anchor\",(function(){return z?g.right:g[C.title.align]})).text(C.title.text).call(s.font,C.title.font).call(c.convertToTspans,t),W.attr(\"transform\",(function(){var t,e=D.l+D.w*m[C.title.align],r=l.titlePadding,n=s.bBox(W.node());if(P){if(I)if(C.gauge.axis.visible)t=s.bBox(H.node()).top-r-n.bottom;else t=D.t+D.h/2-B/2-n.bottom-r;z&&(t=A-(n.top+n.bottom)/2,e=D.l-l.bulletPadding*D.w)}else t=C._numbersTop-r-n.bottom;return _(e,t)}))}))}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../constants/alignment\":697,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../plots/cartesian/axes\":776,\"../../plots/cartesian/axis_defaults\":778,\"../../plots/cartesian/layout_attributes\":790,\"../../plots/cartesian/position_defaults\":793,\"./constants\":1066,d3:164}],1070:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../mesh3d/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/edit_types\").overrideAll;var c=e.exports=l(s({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(),showlegend:s({},o.showlegend,{dflt:!1})},n(\"\",{colorAttr:\"`value`\",showScaleDflt:!0,editTypeOverride:\"calc\"}),{opacity:i.opacity,lightposition:i.lightposition,lighting:i.lighting,flatshading:i.flatshading,contour:i.contour,hoverinfo:s({},o.hoverinfo)}),\"calc\",\"nested\");c.flatshading.dflt=!0,c.lighting.facenormalsepsilon.dflt=0,c.x.editType=c.y.editType=c.z.editType=c.value.editType=\"calc+clearAxisTypes\",c.transforms=void 0},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plot_api/edit_types\":759,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../mesh3d/attributes\":1075}],1071:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\"),a=t(\"../streamtube/calc\").processGrid,i=t(\"../streamtube/calc\").filter;e.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=i(e.x,e._len),e._y=i(e.y,e._len),e._z=i(e.z,e._len),e._value=i(e.value,e._len);var r=a(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;for(var o=1/0,s=-1/0,l=0;l0;r--){var n=Math.min(e[r],e[r-1]),a=Math.max(e[r],e[r-1]);if(a>n&&n-1}function R(t,e){return null===t?e:t}function F(e,r,n){L();var a,i,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],a=t[2],i=function(t,e,r){for(var n=[],a=0;a-1?n[p]:C(d,g,v);f[p]=x>-1?x:I(d,g,v,R(e,y))}a=f[0],i=f[1],o=f[2],t._meshI.push(a),t._meshJ.push(i),t._meshK.push(o),++m}}function B(t,e,r,n){var a=t[3];an&&(a=n);for(var i=(t[3]-a)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-i)*t[s]+i*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 V(e){for(var r=[],n=0;n<4;n++){var a=e[n];r.push([t._x[a],t._y[a],t._z[a],t._value[a]])}return r}function U(t,e,r,n,a,i){i||(i=1),r=[-1,-1,-1];var o=!1,s=[N(e[0][3],n,a),N(e[1][3],n,a),N(e[2][3],n,a)];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):i<3&&U(t,e,r,S,E,++i)};if(s[0]&&s[1]&&s[2])return l(t,e,r)||o;var c=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach((function(i){if(s[i[0]]&&s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(f,u,n,a),d=B(f,h,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,o=l(t,[u,h,d],[r[i[0]],r[i[1]],-1])||o,c=!0}})),c||[[0,1,2],[1,2,0],[2,0,1]].forEach((function(i){if(s[i[0]]&&!s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(h,u,n,a),d=B(f,u,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,c=!0}})),o}function q(t,e,r,n){var a=!1,i=V(e),o=[N(i[0][3],r,n),N(i[1][3],r,n),N(i[2][3],r,n),N(i[3][3],r,n)];if(!(o[0]||o[1]||o[2]||o[3]))return a;if(o[0]&&o[1]&&o[2]&&o[3])return g&&(a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(3,0,1),n(2,3,0),n(1,2,3)}(t,i,e)||a),a;var s=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]];if(g)a=F(t,[c,u,h],[e[l[0]],e[l[1]],e[l[2]]])||a;else{var p=B(f,c,r,n),d=B(f,u,r,n),m=B(f,h,r,n);a=F(null,[p,d,m],[-1,-1,-1])||a}s=!0}})),s?a:([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(h,c,r,n),d=B(h,u,r,n),m=B(f,u,r,n),v=B(f,c,r,n);g?(a=F(t,[c,v,p],[e[l[0]],-1,-1])||a,a=F(t,[u,d,m],[e[l[1]],-1,-1])||a):a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(2,3,0)}(null,[p,d,m,v],[-1,-1,-1,-1])||a,s=!0}})),s||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach((function(l){if(o[l[0]]&&!o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(u,c,r,n),d=B(h,c,r,n),m=B(f,c,r,n);g?(a=F(t,[c,p,d],[e[l[0]],-1,-1])||a,a=F(t,[c,d,m],[e[l[0]],-1,-1])||a,a=F(t,[c,m,p],[e[l[0]],-1,-1])||a):a=F(null,[p,d,m],[-1,-1,-1])||a,s=!0}})),a)}function H(t,e,r,n,a,i,o,s,l,c,u){var h=!1;return d&&(D(t,\"A\")&&(h=q(null,[e,r,n,i],c,u)||h),D(t,\"B\")&&(h=q(null,[r,n,a,l],c,u)||h),D(t,\"C\")&&(h=q(null,[r,i,o,l],c,u)||h),D(t,\"D\")&&(h=q(null,[n,i,s,l],c,u)||h),D(t,\"E\")&&(h=q(null,[r,n,i,l],c,u)||h)),g&&(h=q(t,[r,n,i,l],c,u)||h),h}function G(t,e,r,n,a,i,o,s){return[!0===s[0]||U(t,V([e,r,n]),[e,r,n],i,o),!0===s[1]||U(t,V([n,a,e]),[n,a,e],i,o)]}function Y(t,e,r,n,a,i,o,s,l){return s?G(t,e,r,a,n,i,o,l):G(t,r,a,n,e,i,o,l)}function W(t,e,r,n,a,i,o){var s,l,c,u,h=!1,f=function(){h=U(t,[s,l,c],[-1,-1,-1],a,i)||h,h=U(t,[c,u,s],[-1,-1,-1],a,i)||h},p=o[0],d=o[1],g=o[2];return p&&(s=z(V([k(e,r-0,n-0)])[0],V([k(e-1,r-0,n-0)])[0],p),l=z(V([k(e,r-0,n-1)])[0],V([k(e-1,r-0,n-1)])[0],p),c=z(V([k(e,r-1,n-1)])[0],V([k(e-1,r-1,n-1)])[0],p),u=z(V([k(e,r-1,n-0)])[0],V([k(e-1,r-1,n-0)])[0],p),f()),d&&(s=z(V([k(e-0,r,n-0)])[0],V([k(e-0,r-1,n-0)])[0],d),l=z(V([k(e-0,r,n-1)])[0],V([k(e-0,r-1,n-1)])[0],d),c=z(V([k(e-1,r,n-1)])[0],V([k(e-1,r-1,n-1)])[0],d),u=z(V([k(e-1,r,n-0)])[0],V([k(e-1,r-1,n-0)])[0],d),f()),g&&(s=z(V([k(e-0,r-0,n)])[0],V([k(e-0,r-0,n-1)])[0],g),l=z(V([k(e-0,r-1,n)])[0],V([k(e-0,r-1,n-1)])[0],g),c=z(V([k(e-1,r-1,n)])[0],V([k(e-1,r-1,n-1)])[0],g),u=z(V([k(e-1,r-0,n)])[0],V([k(e-1,r-0,n-1)])[0],g),f()),h}function Z(t,e,r,n,a,i,o,s,l,c,u,h){var f=t;return h?(d&&\"even\"===t&&(f=null),H(f,e,r,n,a,i,o,s,l,c,u)):(d&&\"odd\"===t&&(f=null),H(f,l,s,o,i,a,n,r,e,c,u))}function X(t,e,r,n,a){for(var i=[],o=0,s=0;sMath.abs(d-M)?[A,d]:[d,M];$(e,T[0],T[1])}}var C=[[Math.min(S,M),Math.max(S,M)],[Math.min(A,E),Math.max(A,E)]];[\"x\",\"y\",\"z\"].forEach((function(e){for(var r=[],n=0;n0&&(u.push(p.id),\"x\"===e?h.push([p.distRatio,0,0]):\"y\"===e?h.push([0,p.distRatio,0]):h.push([0,0,p.distRatio]))}else c=nt(1,\"x\"===e?b-1:\"y\"===e?_-1:w-1);u.length>0&&(r[a]=\"x\"===e?tt(null,u,i,o,h,r[a]):\"y\"===e?et(null,u,i,o,h,r[a]):rt(null,u,i,o,h,r[a]),a++),c.length>0&&(r[a]=\"x\"===e?X(null,c,i,o,r[a]):\"y\"===e?J(null,c,i,o,r[a]):K(null,c,i,o,r[a]),a++)}var d=t.caps[e];d.show&&d.fill&&(O(d.fill),r[a]=\"x\"===e?X(null,[0,b-1],i,o,r[a]):\"y\"===e?J(null,[0,_-1],i,o,r[a]):K(null,[0,w-1],i,o,r[a]),a++)}})),0===m&&P(),t._meshX=n,t._meshY=a,t._meshZ=i,t._meshIntensity=o,t._Xs=v,t._Ys=y,t._Zs=x}(),t}e.exports={findNearestOnAxis:l,generateIsoMeshes:f,createIsosurfaceTrace:function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new c(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}}},{\"../../components/colorscale\":607,\"../../lib/gl_format_color\":725,\"../../lib/str2rgbarray\":751,\"../../plots/gl3d/zip3\":829,\"gl-mesh3d\":287}],1073:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./attributes\"),o=t(\"../../components/colorscale/defaults\");function s(t,e,r,n,i){var s=i(\"isomin\"),l=i(\"isomax\");null!=l&&null!=s&&s>l&&(e.isomin=null,e.isomax=null);var c=i(\"x\"),u=i(\"y\"),h=i(\"z\"),f=i(\"value\");c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length?(a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],n),[\"x\",\"y\",\"z\"].forEach((function(t){var e=\"caps.\"+t;i(e+\".show\")&&i(e+\".fill\");var r=\"slices.\"+t;i(r+\".show\")&&(i(r+\".fill\"),i(r+\".locations\"))})),i(\"spaceframe.show\")&&i(\"spaceframe.fill\"),i(\"surface.show\")&&(i(\"surface.count\"),i(\"surface.fill\"),i(\"surface.pattern\")),i(\"contour.show\")&&(i(\"contour.color\"),i(\"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){i(t)})),o(t,e,n,i,{prefix:\"\",cLetter:\"c\"}),e._length=null):e.visible=!1}e.exports={supplyDefaults:function(t,e,r,a){s(t,e,r,a,(function(r,a){return n.coerce(t,e,i,r,a)}))},supplyIsoDefaults:s}},{\"../../components/colorscale/defaults\":605,\"../../lib\":728,\"../../registry\":859,\"./attributes\":1070}],1074:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,calc:t(\"./calc\"),colorbar:{min:\"cmin\",max:\"cmax\"},plot:t(\"./convert\").createIsosurfaceTrace,moduleType:\"trace\",name:\"isosurface\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"showLegend\"],meta:{}}},{\"../../plots/gl3d\":818,\"./attributes\":1070,\"./calc\":1071,\"./convert\":1072,\"./defaults\":1073}],1075:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/template_attributes\").hovertemplateAttrs,i=t(\"../surface/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat;e.exports=s({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\"}),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:i.opacity,flatshading:{valType:\"boolean\",dflt:!1,editType:\"calc\"},contour:{show:s({},i.contours.x.show,{}),color:i.contours.x.color,width:i.contours.x.width,editType:\"calc\"},lightposition:{x:s({},i.lightposition.x,{dflt:1e5}),y:s({},i.lightposition.y,{dflt:1e5}),z:s({},i.lightposition.z,{dflt:0}),editType:\"calc\"},lighting:s({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\"},i.lighting),hoverinfo:s({},o.hoverinfo,{editType:\"calc\"}),showlegend:s({},o.showlegend,{dflt:!1})})},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../surface/attributes\":1257}],1076:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){e.intensity&&n(t,e,{vals:e.intensity,containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":603}],1077:[function(t,e,r){\"use strict\";var n=t(\"gl-mesh3d\"),a=t(\"delaunay-triangulate\"),i=t(\"alpha-shape\"),o=t(\"convex-hull\"),s=t(\"../../lib/gl_format_color\").parseColorScale,l=t(\"../../lib/str2rgbarray\"),c=t(\"../../components/colorscale\").extractOpts,u=t(\"../../plots/gl3d/zip3\");function h(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.color=\"#fff\",this.data=null,this.showContour=!1}var f=h.prototype;function p(t){for(var e=[],r=t.length,n=0;n=e-.5)return!1;return!0}f.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 Array.isArray(r)&&void 0!==r[e]?t.textLabel=r[e]:r&&(t.textLabel=r),!0}},f.update=function(t){var e=this.scene,r=e.fullSceneLayout;this.data=t;var n,h=t.x.length,f=u(d(r.xaxis,t.x,e.dataScale[0],t.xcalendar),d(r.yaxis,t.y,e.dataScale[1],t.ycalendar),d(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||!m(t.i,h)||!m(t.j,h)||!m(t.k,h))return;n=u(g(t.i),g(t.j),g(t.k))}else n=0===t.alphahull?o(f):t.alphahull>0?i(t.alphahull,f):function(t,e){for(var r=[\"x\",\"y\",\"z\"].indexOf(t),n=[],i=e.length,o=0;om):g=T>b,m=T;var k=l(b,_,w,T);k.pos=x,k.yc=(b+T)/2,k.i=y,k.dir=g?\"increasing\":\"decreasing\",k.x=k.pos,k.y=[w,_],p&&(k.tx=e.text[y]),d&&(k.htx=e.hovertext[y]),v.push(k)}else v.push({pos:x,empty:!0})}return e._extremes[s._id]=i.findExtremes(s,n.concat(h,u),{padded:!0}),v.length&&(v[0].t={labels:{open:a(t,\"open:\")+\" \",high:a(t,\"high:\")+\" \",low:a(t,\"low:\")+\" \",close:a(t,\"close:\")+\" \"}}),v}e.exports={calc:function(t,e){var r=i.getFromId(t,e.xaxis),a=i.getFromId(t,e.yaxis),o=function(t,e,r){var a=r._minDiff;if(!a){var i,o=t._fullData,s=[];for(a=1/0,i=0;i\"+c.labels[x]+n.hoverLabelText(s,b):((y=a.extendFlat({},f)).y0=y.y1=_,y.yLabelVal=b,y.yLabel=c.labels[x]+n.hoverLabelText(s,b),y.name=\"\",h.push(y),m[b]=y)}return h}function f(t,e,r,a){var i=t.cd,o=t.ya,l=i[0].trace,h=i[0].t,f=u(t,e,r,a);if(!f)return[];var p=i[f.index],d=f.index=p.i,g=p.dir;function m(t){return h.labels[t]+n.hoverLabelText(o,l[t][d])}var v=p.hi||l.hoverinfo,y=v.split(\"+\"),x=\"all\"===v,b=x||-1!==y.indexOf(\"y\"),_=x||-1!==y.indexOf(\"text\"),w=b?[m(\"open\"),m(\"high\"),m(\"low\"),m(\"close\")+\" \"+c[g]]:[];return _&&s(p,l,w),f.extraText=w.join(\"
\"),f.y0=f.y1=o.c2p(p.yc,!0),[f]}e.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}},{\"../../components/color\":595,\"../../components/fx\":635,\"../../constants/delta.js\":698,\"../../lib\":728,\"../../plots/cartesian/axes\":776}],1084:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"ohlc\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"showLegend\"],meta:{},attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\").calc,plot:t(\"./plot\"),style:t(\"./style\"),hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"./select\")}},{\"../../plots/cartesian\":789,\"./attributes\":1080,\"./calc\":1081,\"./defaults\":1082,\"./hover\":1083,\"./plot\":1086,\"./select\":1087,\"./style\":1088}],1085:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){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\"],i),s&&l&&c&&u){var h=Math.min(s.length,l.length,c.length,u.length);return o&&(h=Math.min(h,a.minRowLength(o))),e._length=h,h}}},{\"../../lib\":728,\"../../registry\":859}],1086:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\");e.exports=function(t,e,r,i){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;a.makeTraceGroups(i,r,\"trace ohlc\").each((function(t){var e=n.select(this),r=t[0],i=r.t;if(!0!==r.trace.visible||i.empty)e.remove();else{var c=i.tickLen,u=e.selectAll(\"path\").data(a.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}))}}))}},{\"../../lib\":728,d3:164}],1087:[function(t,e,r){\"use strict\";e.exports=function(t,e){var r,n=t.cd,a=t.xaxis,i=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}(t.map((function(t){return t.displayindex}))))for(e=0;e0;c&&(o=\"array\");var u=r(\"categoryorder\",o);\"array\"===u?(r(\"categoryarray\"),r(\"ticktext\")):(delete t.categoryarray,delete t.ticktext),c||\"array\"!==u||(e.categoryorder=\"trace\")}}e.exports=function(t,e,r,h){function f(r,a){return n.coerce(t,e,l,r,a)}var p=s(t,e,{name:\"dimensions\",handleItemDefaults:u}),d=function(t,e,r,o,s){s(\"line.shape\"),s(\"line.hovertemplate\");var l=s(\"line.color\",o.colorway[0]);if(a(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),i(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}),l.length;e.line.color=r}return 1/0}(t,e,r,h,f);o(e,h,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 g={family:h.font.family,size:Math.round(h.font.size),color:h.font.color};n.coerceFont(f,\"labelfont\",g);var m={family:h.font.family,size:Math.round(h.font.size/1.2),color:h.font.color};n.coerceFont(f,\"tickfont\",m)}},{\"../../components/colorscale/defaults\":605,\"../../components/colorscale/helpers\":606,\"../../lib\":728,\"../../plots/array_container_defaults\":772,\"../../plots/domain\":803,\"../parcoords/merge_length\":1105,\"./attributes\":1089}],1093:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcats\",basePlotModule:t(\"./base_plot\"),categories:[\"noOpacity\"],meta:{}}},{\"./attributes\":1089,\"./base_plot\":1090,\"./calc\":1091,\"./defaults\":1092,\"./plot\":1095}],1094:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plot_api/plot_api\"),i=t(\"../../components/fx\"),o=t(\"../../lib\"),s=t(\"../../components/drawing\"),l=t(\"tinycolor2\"),c=t(\"../../lib/svg_text_utils\");function u(t,e,r,a){var i=t.map(D.bind(0,e,r)),l=a.selectAll(\"g.parcatslayer\").data([null]);l.enter().append(\"g\").attr(\"class\",\"parcatslayer\").style(\"pointer-events\",\"all\");var u=l.selectAll(\"g.trace.parcats\").data(i,h),m=u.enter().append(\"g\").attr(\"class\",\"trace parcats\");u.attr(\"transform\",(function(t){return\"translate(\"+t.x+\", \"+t.y+\")\"})),m.append(\"g\").attr(\"class\",\"paths\");var v=u.select(\"g.paths\").selectAll(\"path.path\").data((function(t){return t.paths}),h);v.attr(\"fill\",(function(t){return t.model.color}));var b=v.enter().append(\"path\").attr(\"class\",\"path\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.model.color})).attr(\"fill-opacity\",0);x(b),v.attr(\"d\",(function(t){return t.svgD})),b.empty()||v.sort(p),v.exit().remove(),v.on(\"mouseover\",d).on(\"mouseout\",g).on(\"click\",y),m.append(\"g\").attr(\"class\",\"dimensions\");var T=u.select(\"g.dimensions\").selectAll(\"g.dimension\").data((function(t){return t.dimensions}),h);T.enter().append(\"g\").attr(\"class\",\"dimension\"),T.attr(\"transform\",(function(t){return\"translate(\"+t.x+\", 0)\"})),T.exit().remove();var k=T.selectAll(\"g.category\").data((function(t){return t.categories}),h),A=k.enter().append(\"g\").attr(\"class\",\"category\");k.attr(\"transform\",(function(t){return\"translate(0, \"+t.y+\")\"})),A.append(\"rect\").attr(\"class\",\"catrect\").attr(\"pointer-events\",\"none\"),k.select(\"rect.catrect\").attr(\"fill\",\"none\").attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})),_(A);var M=k.selectAll(\"rect.bandrect\").data((function(t){return t.bands}),h);M.each((function(){o.raiseToTop(this)})),M.attr(\"fill\",(function(t){return t.color}));var I=M.enter().append(\"rect\").attr(\"class\",\"bandrect\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.color})).attr(\"fill-opacity\",0);M.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\"})),w(I),M.exit().remove(),A.append(\"text\").attr(\"class\",\"catlabel\").attr(\"pointer-events\",\"none\");var z=e._fullLayout.paper_bgcolor;k.select(\"text.catlabel\").attr(\"text-anchor\",(function(t){return f(t)?\"start\":\"end\"})).attr(\"alignment-baseline\",\"middle\").style(\"text-shadow\",z+\" -1px 1px 2px, \"+z+\" 1px 1px 2px, \"+z+\" 1px -1px 2px, \"+z+\" -1px -1px 2px\").style(\"fill\",\"rgb(0, 0, 0)\").attr(\"x\",(function(t){return f(t)?t.width+5:-5})).attr(\"y\",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){s.font(n.select(this),t.parcatsViewModel.categorylabelfont),c.convertToTspans(n.select(this),e)})),A.append(\"text\").attr(\"class\",\"dimlabel\"),k.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){s.font(n.select(this),t.parcatsViewModel.labelfont)})),k.selectAll(\"rect.bandrect\").on(\"mouseover\",S).on(\"mouseout\",E),k.exit().remove(),T.call(n.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on(\"dragstart\",C).on(\"drag\",L).on(\"dragend\",P)),u.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\")})),u.exit().remove()}function h(t){return t.key}function f(t){var e=t.parcatsViewModel.dimensions.length,r=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===r}function p(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor\"),C=n.mouse(h)[0];i.loneHover({trace:f,x:_-d.left+g.left,y:w-d.top+g.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 g(t){if(!t.parcatsViewModel.dragDimension&&(x(n.select(this)),i.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),t.parcatsViewModel.pathSelection.sort(p),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\"))){var e=m(t),r=v(t);t.parcatsViewModel.graphDiv.emit(\"plotly_unhover\",{points:e,event:n.event,constraints:r})}}function m(t){for(var e=[],r=I(t.parcatsViewModel),n=0;n1&&c.displayInd===l.dimensions.length-1?(r=o.left,a=\"left\"):(r=o.left+o.width,a=\"right\");var f=s.model.count,p=s.model.categoryLabel,d=f/s.parcatsViewModel.model.count,g={countLabel:f,categoryLabel:p,probabilityLabel:d.toFixed(3)},m=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&m.push([\"Count:\",g.countLabel].join(\" \")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&m.push([\"P(\"+g.categoryLabel+\"):\",g.probabilityLabel].join(\" \"));var v=m.join(\"
\");return{trace:u,x:r-t.left,y:h-t.top,text:v,color:\"lightgray\",borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontSize:12,fontColor:\"black\",idealAlign:a,hovertemplate:u.hovertemplate,hovertemplateLabels:g,eventData:[{data:u._input,fullData:u,count:f,category:p,probability:d}]}}function S(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){if(n.mouse(this)[1]<-1)return;var e,r=t.parcatsViewModel.graphDiv,a=r._fullLayout,s=a._paperdiv.node().getBoundingClientRect(),c=t.parcatsViewModel.hoveron;if(\"color\"===c?(!function(t){var e=n.select(t).datum(),r=T(e);b(r),r.each((function(){o.raiseToTop(this)})),n.select(t.parentNode).selectAll(\"rect.bandrect\").filter((function(t){return t.color===e.color})).each((function(){o.raiseToTop(this),n.select(this).attr(\"stroke\",\"black\").attr(\"stroke-width\",1.5)}))}(this),A(this,\"plotly_hover\",n.event)):(!function(t){n.select(t.parentNode).selectAll(\"rect.bandrect\").each((function(t){var e=T(t);b(e),e.each((function(){o.raiseToTop(this)}))})),n.select(t.parentNode).select(\"rect.catrect\").attr(\"stroke\",\"black\").attr(\"stroke-width\",2.5)}(this),k(this,\"plotly_hover\",n.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"none\"))\"category\"===c?e=M(s,this):\"color\"===c?e=function(t,e){var r,a,i=e.getBoundingClientRect(),o=n.select(e).datum(),s=o.categoryViewModel,c=s.parcatsViewModel,u=c.model.dimensions[s.model.dimensionInd],h=c.trace,f=i.y+i.height/2;c.dimensions.length>1&&u.displayInd===c.dimensions.length-1?(r=i.left,a=\"left\"):(r=i.left+i.width,a=\"right\");var p=s.model.categoryLabel,d=o.parcatsViewModel.model.count,g=0;o.categoryViewModel.bands.forEach((function(t){t.color===o.color&&(g+=t.count)}));var m=s.model.count,v=0;c.pathSelection.each((function(t){t.model.color===o.color&&(v+=t.model.count)}));var y=g/d,x=g/v,b=g/m,_={countLabel:d,categoryLabel:p,probabilityLabel:y.toFixed(3)},w=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&w.push([\"Count:\",_.countLabel].join(\" \")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&(w.push(\"P(color \\u2229 \"+p+\"): \"+_.probabilityLabel),w.push(\"P(\"+p+\" | color): \"+x.toFixed(3)),w.push(\"P(color | \"+p+\"): \"+b.toFixed(3)));var T=w.join(\"
\"),k=l.mostReadable(o.color,[\"black\",\"white\"]);return{trace:h,x:r-t.left,y:f-t.top,text:T,color:o.color,borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontColor:k,fontSize:10,idealAlign:a,hovertemplate:h.hovertemplate,hovertemplateLabels:_,eventData:[{data:h._input,fullData:h,category:p,count:d,probability:y,categorycount:m,colorcount:v,bandcolorcount:g}]}}(s,this):\"dimension\"===c&&(e=function(t,e){var r=[];return n.select(e.parentNode.parentNode).selectAll(\"g.category\").select(\"rect.catrect\").each((function(){r.push(M(t,this))})),r}(s,this)),e&&i.loneHover(e,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r})}}function E(t){var e=t.parcatsViewModel;if(!e.dragDimension&&(x(e.pathSelection),_(e.dimensionSelection.selectAll(\"g.category\")),w(e.dimensionSelection.selectAll(\"g.category\").selectAll(\"rect.bandrect\")),i.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(p),-1===e.hoverinfoItems.indexOf(\"skip\"))){\"color\"===t.parcatsViewModel.hoveron?A(this,\"plotly_unhover\",n.event):k(this,\"plotly_unhover\",n.event)}}function C(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],a=n.mouse(this)[1];-2<=r&&r<=e.width+2&&-2<=a&&a<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,o.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){i.model.dragX=n.event.x;var f=t.parcatsViewModel.dimensions[r],p=t.parcatsViewModel.dimensions[a];void 0!==f&&i.model.dragXp.x&&(i.model.displayInd=p.model.displayInd,p.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=i.model.displayInd}B(t.parcatsViewModel),F(t.parcatsViewModel),O(t.parcatsViewModel),z(t.parcatsViewModel)}}function P(t){if(\"fixed\"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){n.select(this).selectAll(\"text\").attr(\"font-weight\",\"normal\");var e={},r=I(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 a=t.parcatsViewModel.model.dimensions[n].containerInd;e[\"dimensions[\"+a+\"].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\"}}if(-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")&&!t.dragHasMoved&&t.potentialClickBand&&(\"color\"===t.parcatsViewModel.hoveron?A(t.potentialClickBand,\"plotly_click\",n.event.sourceEvent):k(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,B(t.parcatsViewModel),F(t.parcatsViewModel),n.transition().duration(300).ease(\"cubic-in-out\").each((function(){O(t.parcatsViewModel,!0),z(t.parcatsViewModel,!0)})).each(\"end\",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[r])}))}}function I(t){for(var e,r=t.graphDiv._fullData,n=0;n=0;s--)u+=\"C\"+c[s]+\",\"+(e[s+1]+a)+\" \"+l[s]+\",\"+(e[s]+a)+\" \"+(t[s]+r[s])+\",\"+(e[s]+a),u+=\"l-\"+r[s]+\",0 \";return u+=\"Z\"}function F(t){var e=t.dimensions,r=t.model,n=e.map((function(t){return t.categories.map((function(t){return t.y}))})),a=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),i=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 a[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,r){var n=h(e),a=h(r);return\"backward\"===t.sortpaths&&(n.reverse(),a.reverse()),n.push(e.valueInds[0]),a.push(r.valueInds[0]),t.bundlecolors&&(n.unshift(e.rawColor),a.unshift(r.rawColor)),na?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})),g=0;g0?d*(v.count/p):0;for(var y,x=new Array(n.length),b=0;b1?(t.width-80-16)/(n-1):0)*a;var i,o,s,l,c,u=[],h=t.model.maxCats,f=e.categories.length,p=e.count,d=t.height-8*(h-1),g=8*(h-f)/2,m=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(m.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:i,y:null!==o.dragY?o.dragY:g,bands:[],parcatsViewModel:t},g=g+i+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}}e.exports=function(t,e,r,n){u(r,t,n,e)}},{\"../../components/drawing\":617,\"../../components/fx\":635,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../plot_api/plot_api\":763,d3:164,tinycolor2:528}],1095:[function(t,e,r){\"use strict\";var n=t(\"./parcats\");e.exports=function(t,e,r,a){var i=t._fullLayout,o=i._paper,s=i._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,a)}},{\"./parcats\":1094}],1096:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/attributes\"),a=t(\"../../plots/cartesian/layout_attributes\"),i=t(\"../../plots/font_attributes\"),o=t(\"../../plots/domain\").attributes,s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/plot_template\").templatedArray;e.exports={domain:o({name:\"parcoords\",trace:!0,editType:\"plot\"}),labelangle:{valType:\"angle\",dflt:0,editType:\"plot\"},labelside:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},labelfont:i({editType:\"plot\"}),tickfont:i({editType:\"plot\"}),rangefont:i({editType:\"plot\"}),dimensions:l(\"dimension\",{label:{valType:\"string\",editType:\"plot\"},tickvals:s({},a.tickvals,{editType:\"plot\"}),ticktext:s({},a.ticktext,{editType:\"plot\"}),tickformat:s({},a.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:\"number\",editType:\"plot\"},{valType:\"number\",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\"}))}},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plot_api/plot_template\":766,\"../../plots/cartesian/layout_attributes\":790,\"../../plots/domain\":803,\"../../plots/font_attributes\":804}],1097:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"d3\"),i=t(\"../../lib/gup\").keyFun,o=t(\"../../lib/gup\").repeat,s=t(\"../../lib\").sorterAsc,l=n.bar.snapRatio;function c(t,e){return t*(1-l)+e*l}var u=n.bar.snapClose;function h(t,e){return t*(1-u)+e*u}function f(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 a=t?-1:1,i=0,o=e.length-1;if(a<0){var s=i;i=o,o=s}for(var l=e[i],u=l,f=i;a*fe){f=r;break}}if(i=u,isNaN(i)&&(i=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);g&&(o.interval=l[i],o.intervalPix=d,o.region=g)}}if(t.ordinal&&!o.region){var v=t.unitTickvals,y=t.unitToPaddedPx.invert(e);for(r=0;r=x[0]&&y<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function _(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=e.brush.svgBrush;i.wasDragged=!0,i._dragging=!0,i.grabbingBar?i.newExtent=[r-i.grabPoint,r+i.barLength-i.grabPoint].map(e.unitToPaddedPx.invert):i.newExtent=[i.startExtent,e.unitToPaddedPx.invert(r)].sort(s),e.brush.filterSpecified=!0,i.extent=i.stayingIntervals.concat([i.newExtent]),i.brushCallback(e),x(t.parentNode)}function w(t,e){var r=b(e,e.height-a.mouse(t)[1]-2*n.verticalPadding),i=\"crosshair\";r.clickableOrdinalRange?i=\"pointer\":r.region&&(i=r.region+\"-resize\"),a.select(document.body).style(\"cursor\",i)}function T(t){t.on(\"mousemove\",(function(t){a.event.preventDefault(),t.parent.inBrushDrag||w(this,t)})).on(\"mouseleave\",(function(t){t.parent.inBrushDrag||v()})).call(a.behavior.drag().on(\"dragstart\",(function(t){!function(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=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]:i,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on(\"drag\",(function(t){_(this,t)})).on(\"dragend\",(function(t){!function(t,e){var r=e.brush,n=r.filter,i=r.svgBrush;i._dragging||(w(t,e),_(t,e),e.brush.svgBrush.wasDragged=!1),i._dragging=!1,a.event.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,e.parent.inBrushDrag=!1,v(),!i.wasDragged)return i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&e.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,0===i.extent.length&&A(r)):A(r),i.brushCallback(e),x(t.parentNode),void i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]i.newExtent[0];i.extent=i.stayingIntervals.concat(c?[i.newExtent]:[]),i.extent.length||A(r),i.brushCallback(e),c?x(t.parentNode,s):(s(),x(t.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,t)})))}function k(t,e){return t[0]-e[0]}function A(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function M(t){for(var e,r=t.slice(),n=[],a=r.shift();a;){for(e=a.slice();(a=r.shift())&&a[0]<=e[1];)e[1]=Math.max(e[1],a[1]);n.push(e)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(t,e,r,n,a,i){var o,l=function(){var t,e,r=[];return{set:function(n){1===(r=n.map((function(t){return t.slice().sort(s)})).sort(k)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),t=M(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=a,function(t){var e=t.brush,r=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e).slice();e.filter.set(r),o()}),brushEndCallback:i}}},ensureAxisBrush:function(t){var e=t.selectAll(\".\"+n.cn.axisBrush).data(o,i);e.enter().append(\"g\").classed(n.cn.axisBrush,!0),function(t){var e=t.selectAll(\".background\").data(o);e.enter().append(\"rect\").classed(\"background\",!0).call(p).call(d).style(\"pointer-events\",\"auto\").attr(\"transform\",\"translate(0 \"+n.verticalPadding+\")\"),e.call(T).attr(\"height\",(function(t){return t.height-n.verticalPadding}));var r=t.selectAll(\".highlight-shadow\").data(o);r.enter().append(\"line\").classed(\"highlight-shadow\",!0).attr(\"x\",-n.bar.width/2).attr(\"stroke-width\",n.bar.width+n.bar.strokeWidth).attr(\"stroke\",n.bar.strokeColor).attr(\"opacity\",n.bar.strokeOpacity).attr(\"stroke-linecap\",\"butt\"),r.attr(\"y1\",(function(t){return t.height})).call(y);var a=t.selectAll(\".highlight\").data(o);a.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\"),a.attr(\"y1\",(function(t){return t.height})).call(y)}(e)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?M(t.sort(k)):[t[0]]):t=[t.sort(s)],e.tickvals){var r=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[f(0,r,t[0],[]),f(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]}}},{\"../../lib\":728,\"../../lib/gup\":726,\"./constants\":1100,d3:164}],1098:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../plots/get_data\").getModuleCalcData,i=t(\"./plot\"),o=t(\"../../constants/xmlns_namespaces\");r.name=\"parcoords\",r.plot=function(t){var e=a(t.calcdata,\"parcoords\")[0];e.length&&i(t,e)},r.clean=function(t,e,r,n){var a=n._has&&n._has(\"parcoords\"),i=e._has&&e._has(\"parcoords\");a&&!i&&(n._paperdiv.selectAll(\".parcoords\").remove(),n._glimages.selectAll(\"*\").remove())},r.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.toDataURL(\"image/png\");e.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":t,preserveAspectRatio:\"none\",x:0,y:0,width:this.width,height:this.height})})),window.setTimeout((function(){n.selectAll(\"#filterBarPattern\").attr(\"id\",\"filterBarPattern\")}),60)}},{\"../../constants/xmlns_namespaces\":705,\"../../plots/get_data\":813,\"./plot\":1107,d3:164}],1099:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray,a=t(\"../../components/colorscale\"),i=t(\"../../lib/gup\").wrap;e.exports=function(t,e){var r,o;return a.hasColorscale(e,\"line\")&&n(e.line.color)?(r=e.line.color,o=a.extractOpts(e.line).colorscale,a.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 g=s(t,e,{name:\"dimensions\",layout:l,handleItemDefaults:p}),m=function(t,e,r,o,s){var l=s(\"line.color\",r);if(a(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),i(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(g)&&g.length||(e.visible=!1),f(e,g,\"values\",m);var v={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};n.coerceFont(u,\"labelfont\",v),n.coerceFont(u,\"tickfont\",v),n.coerceFont(u,\"rangefont\",v),u(\"labelangle\"),u(\"labelside\")}},{\"../../components/colorscale/defaults\":605,\"../../components/colorscale/helpers\":606,\"../../lib\":728,\"../../plots/array_container_defaults\":772,\"../../plots/cartesian/axes\":776,\"../../plots/domain\":803,\"./attributes\":1096,\"./axisbrush\":1097,\"./constants\":1100,\"./merge_length\":1105}],1102:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isTypedArray;r.convertTypedArray=function(t){return n(t)?Array.prototype.slice.call(t):t},r.isOrdinal=function(t){return!!t.tickvals},r.isVisible=function(t){return t.visible||!(\"visible\"in t)}},{\"../../lib\":728}],1103:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcoords\",basePlotModule:t(\"./base_plot\"),categories:[\"gl\",\"regl\",\"noOpacity\",\"noHover\"],meta:{}}},{\"./attributes\":1096,\"./base_plot\":1098,\"./calc\":1099,\"./defaults\":1101,\"./plot\":1107}],1104:[function(t,e,r){\"use strict\";var n=t(\"glslify\"),a=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nattribute vec4 p01_04, p05_08, p09_12, p13_16,\\n p17_20, p21_24, p25_28, p29_32,\\n p33_36, p37_40, p41_44, p45_48,\\n p49_52, p53_56, p57_60, colors;\\n\\nuniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\\n loA, hiA, loB, hiB, loC, hiC, loD, hiD;\\n\\nuniform vec2 resolution, viewBoxPos, viewBoxSize;\\nuniform sampler2D mask, palette;\\nuniform float maskHeight;\\nuniform float drwLayer; // 0: context, 1: focus, 2: pick\\nuniform vec4 contextColor;\\n\\nbool isPick = (drwLayer > 1.5);\\nbool isContext = (drwLayer < 0.5);\\n\\nconst vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\\nconst vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\\n\\nfloat val(mat4 p, mat4 v) {\\n return dot(matrixCompMult(p, v) * UNITS, UNITS);\\n}\\n\\nfloat axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\\n float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\\n float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\\n return y1 * (1.0 - ratio) + y2 * ratio;\\n}\\n\\nint iMod(int a, int b) {\\n return a - b * (a / b);\\n}\\n\\nbool fOutside(float p, float lo, float hi) {\\n return (lo < hi) && (lo > p || p > hi);\\n}\\n\\nbool vOutside(vec4 p, vec4 lo, vec4 hi) {\\n return (\\n fOutside(p[0], lo[0], hi[0]) ||\\n fOutside(p[1], lo[1], hi[1]) ||\\n fOutside(p[2], lo[2], hi[2]) ||\\n fOutside(p[3], lo[3], hi[3])\\n );\\n}\\n\\nbool mOutside(mat4 p, mat4 lo, mat4 hi) {\\n return (\\n vOutside(p[0], lo[0], hi[0]) ||\\n vOutside(p[1], lo[1], hi[1]) ||\\n vOutside(p[2], lo[2], hi[2]) ||\\n vOutside(p[3], lo[3], hi[3])\\n );\\n}\\n\\nbool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\\n return mOutside(A, loA, hiA) ||\\n mOutside(B, loB, hiB) ||\\n mOutside(C, loC, hiC) ||\\n mOutside(D, loD, hiD);\\n}\\n\\nbool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\\n mat4 pnts[4];\\n pnts[0] = A;\\n pnts[1] = B;\\n pnts[2] = C;\\n pnts[3] = D;\\n\\n for(int i = 0; i < 4; ++i) {\\n for(int j = 0; j < 4; ++j) {\\n for(int k = 0; k < 4; ++k) {\\n if(0 == iMod(\\n int(255.0 * texture2D(mask,\\n vec2(\\n (float(i * 2 + j / 2) + 0.5) / 8.0,\\n (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\\n ))[3]\\n ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\\n 2\\n )) return true;\\n }\\n }\\n }\\n return false;\\n}\\n\\nvec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\\n float x = 0.5 * sign(v) + 0.5;\\n float y = axisY(x, A, B, C, D);\\n float z = 1.0 - abs(v);\\n\\n z += isContext ? 0.0 : 2.0 * float(\\n outsideBoundingBox(A, B, C, D) ||\\n outsideRasterMask(A, B, C, D)\\n );\\n\\n return vec4(\\n 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\\n z,\\n 1.0\\n );\\n}\\n\\nvoid main() {\\n mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\\n mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\\n mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\\n mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\\n\\n float v = colors[3];\\n\\n gl_Position = position(isContext, v, A, B, C, D);\\n\\n fragColor =\\n isContext ? vec4(contextColor) :\\n isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\\n}\\n\"]),i=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n gl_FragColor = fragColor;\\n}\\n\"]),o=t(\"./constants\").maxDimensionCount,s=t(\"../../lib\"),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,a){var i=t._gl;i.enable(i.SCISSOR_TEST),i.scissor(e,r,n,a),t.clear({color:[0,0,0,0],depth:1})}function f(t,e,r,n,a,i){var o=i.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,a-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(t,i.scissorX,i.scissorY,i.scissorWidth,i.viewBoxSize[1])),r.clearOnly||(i.count=2*c,i.offset=2*l*n,e(i),l*n+c>>8*e)%256/255}function g(t,e,r){for(var n=new Array(8*e),a=0,i=0;iu&&(u=t[a].dim1.canvasX,o=a);0===s&&h(T,0,0,r.canvasWidth,r.canvasHeight);var p=function(t){var e,r,n,a=[[],[]];for(n=0;n<64;n++){var i=!t&&na._length&&(S=S.slice(0,a._length));var E,C=a.tickvals;function L(t,e){return{val:t,text:E[e]}}function P(t,e){return t.val-e.val}if(Array.isArray(C)&&C.length){E=a.ticktext,Array.isArray(E)&&E.length?E.length>C.length?E=E.slice(0,C.length):C.length>E.length&&(C=C.slice(0,E.length)):E=C.map(n.format(a.tickformat));for(var I=1;I=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!==O&&(u?a.hover(f):a.unhover&&a.unhover(f),O=h)}})),z.style(\"opacity\",(function(t){return t.pick?0:1})),u.style(\"background\",\"rgba(255, 255, 255, 0)\");var D=u.selectAll(\".\"+g.cn.parcoords).data(k,h);D.exit().remove(),D.enter().append(\"g\").classed(g.cn.parcoords,!0).style(\"shape-rendering\",\"crispEdges\").style(\"pointer-events\",\"none\"),D.attr(\"transform\",(function(t){return\"translate(\"+t.model.translateX+\",\"+t.model.translateY+\")\"}));var R=D.selectAll(\".\"+g.cn.parcoordsControlView).data(f,h);R.enter().append(\"g\").classed(g.cn.parcoordsControlView,!0),R.attr(\"transform\",(function(t){return\"translate(\"+t.model.pad.l+\",\"+t.model.pad.t+\")\"}));var F=R.selectAll(\".\"+g.cn.yAxis).data((function(t){return t.dimensions}),h);F.enter().append(\"g\").classed(g.cn.yAxis,!0),R.each((function(t){L(F,t)})),z.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=v(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)}})),F.attr(\"transform\",(function(t){return\"translate(\"+t.xScale(t.xIndex)+\", 0)\"})),F.call(n.behavior.drag().origin((function(t){return t})).on(\"drag\",(function(t){var e=t.parent;T.linePickActive(!1),t.x=Math.max(-g.overdrag,Math.min(t.model.width+g.overdrag,n.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,F.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})),L(F,e),F.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr(\"transform\",(function(t){return\"translate(\"+t.xScale(t.xIndex)+\", 0)\"})),n.select(this).attr(\"transform\",\"translate(\"+t.x+\", 0)\"),F.each((function(r,n,a){a===t.parent.key&&(e.dimensions[n]=r)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!A(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,L(F,e),n.select(this).attr(\"transform\",(function(t){return\"translate(\"+t.x+\", 0)\"})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!A(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),T.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),F.exit().remove();var B=F.selectAll(\".\"+g.cn.axisOverlays).data(f,h);B.enter().append(\"g\").classed(g.cn.axisOverlays,!0),B.selectAll(\".\"+g.cn.axis).remove();var N=B.selectAll(\".\"+g.cn.axis).data(f,h);N.enter().append(\"g\").classed(g.cn.axis,!0),N.each((function(t){var e=t.model.height/t.model.tickDistance,r=t.domainScale,a=r.domain();n.select(this).call(n.svg.axis().orient(\"left\").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?a:null).tickFormat((function(e){return d.isOrdinal(t)?e:P(t.model.dimensions[t.visibleIndex],e)})).scale(r)),l.font(N.selectAll(\"text\"),t.model.tickFont)})),N.selectAll(\".domain, .tick>line\").attr(\"fill\",\"none\").attr(\"stroke\",\"black\").attr(\"stroke-opacity\",.25).attr(\"stroke-width\",\"1px\"),N.selectAll(\"text\").style(\"text-shadow\",\"1px 1px 1px #fff, -1px -1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff\").style(\"cursor\",\"default\").style(\"user-select\",\"none\");var j=B.selectAll(\".\"+g.cn.axisHeading).data(f,h);j.enter().append(\"g\").classed(g.cn.axisHeading,!0);var V=j.selectAll(\".\"+g.cn.axisTitle).data(f,h);V.enter().append(\"text\").classed(g.cn.axisTitle,!0).attr(\"text-anchor\",\"middle\").style(\"cursor\",\"ew-resize\").style(\"user-select\",\"none\").style(\"pointer-events\",\"auto\"),V.text((function(t){return t.label})).each((function(e){var r=n.select(this);l.font(r,e.model.labelFont),s.convertToTspans(r,t)})).attr(\"transform\",(function(t){var e=C(t.model.labelAngle,t.model.labelSide),r=g.axisTitleOffset;return(e.dir>0?\"\":\"translate(0,\"+(2*r+t.model.height)+\")\")+\"rotate(\"+e.degrees+\")translate(\"+-r*e.dx+\",\"+-r*e.dy+\")\"})).attr(\"text-anchor\",(function(t){var e=C(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 U=B.selectAll(\".\"+g.cn.axisExtent).data(f,h);U.enter().append(\"g\").classed(g.cn.axisExtent,!0);var q=U.selectAll(\".\"+g.cn.axisExtentTop).data(f,h);q.enter().append(\"g\").classed(g.cn.axisExtentTop,!0),q.attr(\"transform\",\"translate(0,\"+-g.axisExtentOffset+\")\");var H=q.selectAll(\".\"+g.cn.axisExtentTopText).data(f,h);H.enter().append(\"text\").classed(g.cn.axisExtentTopText,!0).call(E),H.text((function(t){return I(t,!0)})).each((function(t){l.font(n.select(this),t.model.rangeFont)}));var G=U.selectAll(\".\"+g.cn.axisExtentBottom).data(f,h);G.enter().append(\"g\").classed(g.cn.axisExtentBottom,!0),G.attr(\"transform\",(function(t){return\"translate(0,\"+(t.model.height+g.axisExtentOffset)+\")\"}));var Y=G.selectAll(\".\"+g.cn.axisExtentBottomText).data(f,h);Y.enter().append(\"text\").classed(g.cn.axisExtentBottomText,!0).attr(\"dy\",\"0.75em\").call(E),Y.text((function(t){return I(t,!1)})).each((function(t){l.font(n.select(this),t.model.rangeFont)})),m.ensureAxisBrush(B)}},{\"../../components/colorscale\":607,\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/gup\":726,\"../../lib/svg_text_utils\":752,\"../../plots/cartesian/axes\":776,\"./axisbrush\":1097,\"./constants\":1100,\"./helpers\":1102,\"./lines\":1104,\"color-rgba\":124,d3:164}],1107:[function(t,e,r){\"use strict\";var n=t(\"./parcoords\"),a=t(\"../../lib/prepare_regl\"),i=t(\"./helpers\").isVisible;function o(t,e,r){var n=e.indexOf(r),a=t.indexOf(n);return-1===a&&(a+=e.length),a}e.exports=function(t,e){var r=t._fullLayout;if(a(t)){var s={},l={},c={},u={},h=r._size;e.forEach((function(e,r){var n=e[0].trace;c[r]=n.index;var a=u[r]=n._fullInput.index;s[r]=t.data[a].dimensions,l[r]=t.data[a].dimensions.slice()}));n(t,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{filterChanged:function(e,n,a){var i=l[e][n],o=a.map((function(t){return t.slice()})),s=\"dimensions[\"+n+\"].constraintrange\",h=r._tracePreGUI[t._fullData[c[e]]._fullInput.uid];if(void 0===h[s]){var f=i.constraintrange;h[s]=f||null}var p=t._fullData[c[e]].dimensions[n];o.length?(1===o.length&&(o=o[0]),i.constraintrange=o,p.constraintrange=o.slice(),o=[o]):(delete i.constraintrange,delete p.constraintrange,o=null);var d={};d[s]=o,t.emit(\"plotly_restyle\",[d,[u[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 o(t,e,r)-o(t,e,n)}}(r,l[e].filter(i));s[e].sort(n),l[e].filter((function(t){return!i(t)})).sort((function(t){return l[e].indexOf(t)})).forEach((function(t){s[e].splice(s[e].indexOf(t),1),s[e].splice(l[e].indexOf(t),0,t)})),t.emit(\"plotly_restyle\",[{dimensions:[s[e]]},[u[e]]])}})}}},{\"../../lib/prepare_regl\":741,\"./helpers\":1102,\"./parcoords\":1106}],1108:[function(t,e,r){\"use strict\";var n=t(\"../../plots/attributes\"),a=t(\"../../plots/domain\").attributes,i=t(\"../../plots/font_attributes\"),o=t(\"../../components/color/attributes\"),s=t(\"../../plots/template_attributes\").hovertemplateAttrs,l=t(\"../../plots/template_attributes\").texttemplateAttrs,c=t(\"../../lib/extend\").extendFlat,u=i({editType:\"plot\",arrayOk:!0,colorEditType:\"plot\"});e.exports={labels:{valType:\"data_array\",editType:\"calc\"},label0:{valType:\"number\",dflt:0,editType:\"calc\"},dlabel:{valType:\"number\",dflt:1,editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc\"},marker:{colors:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:o.defaultLine,arrayOk:!0,editType:\"style\"},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0,editType:\"style\"},editType:\"calc\"},editType:\"calc\"},text:{valType:\"data_array\",editType:\"plot\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"style\"},scalegroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"value\",\"percent\"],extras:[\"none\"],editType:\"calc\"},hoverinfo: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({},u,{}),insidetextorientation:{valType:\"enumerated\",values:[\"horizontal\",\"radial\",\"tangential\",\"auto\"],dflt:\"auto\",editType:\"plot\"},insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),automargin:{valType:\"boolean\",dflt:!1,editType:\"plot\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"plot\"},font:c({},u,{}),position:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"plot\"},editType:\"plot\"},domain:a({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:\"number\",min:-360,max:360,dflt:0,editType:\"calc\"},pull:{valType:\"number\",min:0,max:1,dflt:0,arrayOk:!0,editType:\"calc\"},_deprecated:{title:{valType:\"string\",dflt:\"\",editType:\"calc\"},titlefont:c({},u,{}),titleposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"calc\"}}}},{\"../../components/color/attributes\":594,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/domain\":803,\"../../plots/font_attributes\":804,\"../../plots/template_attributes\":854}],1109:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"pie\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":839}],1110:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"tinycolor2\"),i=t(\"../../components/color\"),o={};function s(t){return function(e,r){return!!e&&(!!(e=a(e)).isValid()&&(e=i.addOpacity(e,e.getAlpha()),t[r]||(t[r]=e),e))}}function l(t,e){var r,n=JSON.stringify(t),i=e[n];if(!i){for(i=t.slice(),r=0;r0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:i,len:o}}e.exports={handleLabelsAndValues:l,supplyDefaults:function(t,e,r,n){function c(r,n){return a.coerce(t,e,i,r,n)}var u=l(c(\"labels\"),c(\"values\")),h=u.len;if(e._hasLabels=u.hasLabels,e._hasValues=u.hasValues,!e._hasLabels&&e._hasValues&&(c(\"label0\"),c(\"dlabel\")),h){e._length=h,c(\"marker.line.width\")&&c(\"marker.line.color\"),c(\"marker.colors\"),c(\"scalegroup\");var f,p=c(\"text\"),d=c(\"texttemplate\");if(d||(f=c(\"textinfo\",Array.isArray(p)?\"text+percent\":\"percent\")),c(\"hovertext\"),c(\"hovertemplate\"),d||f&&\"none\"!==f){var g=c(\"textposition\");s(t,e,n,c,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||\"auto\"===g||\"outside\"===g)&&c(\"automargin\"),(\"inside\"===g||\"auto\"===g||Array.isArray(g))&&c(\"insidetextorientation\")}o(e,n,c);var m=c(\"hole\");if(c(\"title.text\")){var v=c(\"title.position\",m?\"middle center\":\"top center\");m||\"middle center\"!==v||(e.title.position=\"top center\"),a.coerceFont(c,\"title.font\",n.font)}c(\"sort\"),c(\"direction\"),c(\"rotation\"),c(\"pull\")}else e.visible=!1}}},{\"../../lib\":728,\"../../plots/domain\":803,\"../bar/defaults\":873,\"./attributes\":1108,\"fast-isnumeric\":236}],1112:[function(t,e,r){\"use strict\";var n=t(\"../../components/fx/helpers\").appendArrayMultiPointValues;e.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,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}},{\"../../components/fx/helpers\":631}],1113:[function(t,e,r){\"use strict\";var n=t(\"../../lib\");r.formatPiePercent=function(t,e){var r=(100*t).toPrecision(3);return-1!==r.lastIndexOf(\".\")&&(r=r.replace(/[.]?0+$/,\"\")),n.numSeparate(r,e)+\"%\"},r.formatPieValue=function(t,e){var r=t.toPrecision(10);return-1!==r.lastIndexOf(\".\")&&(r=r.replace(/[.]?0+$/,\"\")),n.numSeparate(r,e)},r.getFirstFilled=function(t,e){if(Array.isArray(t))for(var r=0;r\"),name:u.hovertemplate||-1!==h.indexOf(\"name\")?u.name:void 0,idealAlign:t.pxmid[0]<0?\"left\":\"right\",color:d.castOption(b.bgcolor,t.pts)||t.color,borderColor:d.castOption(b.bordercolor,t.pts),fontFamily:d.castOption(_.family,t.pts),fontSize:d.castOption(_.size,t.pts),fontColor:d.castOption(_.color,t.pts),nameLength:d.castOption(b.namelength,t.pts),textAlign:d.castOption(b.align,t.pts),hovertemplate:d.castOption(u.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[g(t,u)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e}),o._hasHoverLabel=!0}o._hasHoverEvent=!0,e.emit(\"plotly_hover\",{points:[g(t,u)],event:n.event})}})),t.on(\"mouseout\",(function(t){var r=e._fullLayout,a=e._fullData[o.index],s=n.select(this).datum();o._hasHoverEvent&&(t.originalEvent=n.event,e.emit(\"plotly_unhover\",{points:[g(s,a)],event:n.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(i.loneUnhover(r._hoverlayer.node()),o._hasHoverLabel=!1)})),t.on(\"click\",(function(t){var r=e._fullLayout,a=e._fullData[o.index];e._dragging||!1===r.hovermode||(e._hoverdata=[g(t,a)],i.click(e,n.event))}))}function y(t,e,r){var n=d.castOption(t.insidetextfont.color,e.pts);!n&&t._input.textfont&&(n=d.castOption(t._input.textfont.color,e.pts));var a=d.castOption(t.insidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.insidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n||o.contrast(e.color),family:a,size:i}}function x(t,e){for(var r,n,a=0;ae&&e>n||r=-4;m-=2)v(Math.PI*m,\"tan\");for(m=4;m>=-4;m-=2)v(Math.PI*(m+1),\"tan\")}if(h||p){for(m=4;m>=-4;m-=2)v(Math.PI*(m+1.5),\"rad\");for(m=4;m>=-4;m-=2)v(Math.PI*(m+.5),\"rad\")}}if(s||d||h){var y=Math.sqrt(t.width*t.width+t.height*t.height);if((i={scale:a*n*2/y,rCenter:1-a,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,i.scale>=1)return i;g.push(i)}(d||p)&&((i=_(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i)),(d||f)&&((i=w(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i));for(var x=0,b=0,T=0;T=1)break}return g[x]}function _(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.width/t.height,o=A(i,n,e,r);return{scale:2*o/t.height,rCenter:T(i,o/e),rotate:k(a)}}function w(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.height/t.width,o=A(i,n,e,r);return{scale:2*o/t.width,rCenter:T(i,o/e),rotate:k(a+Math.PI/2)}}function T(t,e){return Math.cos(e)-t*e}function k(t){return(180/Math.PI*t+720)%180-90}function A(t,e,r,n){var a=t+1/(2*Math.tan(e));return r*Math.min(1/(Math.sqrt(a*a+.5)+a),n/(Math.sqrt(t*t+n/2)+t))}function M(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function S(t,e){var r=e.pxmid[0],n=e.pxmid[1],a=t.width/2,i=t.height/2;return r<0&&(a*=-1),n<0&&(i*=-1),{scale:1,rCenter:1,rotate:0,x:a+Math.abs(i)*(a>0?1:-1)/2,y:i/(1+r*r/(n*n)),outside:!0}}function E(t,e){var r,n,a,i=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=i.title.font.size,a=L(i),-1!==i.title.position.indexOf(\"top\")?(o.y-=(1+a)*t.r,s.ty-=t.titleBox.height):-1!==i.title.position.indexOf(\"bottom\")&&(o.y+=(1+a)*t.r);var l,c,u=(l=t.r,c=t.trace.aspectratio,l/(void 0===c?1:c)),h=e.w*(i.domain.x[1]-i.domain.x[0])/2;return-1!==i.title.position.indexOf(\"left\")?(h+=u,o.x-=(1+a)*u,s.tx+=t.titleBox.width/2):-1!==i.title.position.indexOf(\"center\")?h*=2:-1!==i.title.position.indexOf(\"right\")&&(h+=u,o.x+=(1+a)*u,s.tx-=t.titleBox.width/2),r=h/t.titleBox.width,n=C(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function C(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 L(t){var e,r=t.pull;if(!r)return 0;if(Array.isArray(r))for(r=0,e=0;er&&(r=t.pull[e]);return r}function P(t,e){for(var r=[],n=0;n1?(c=r.r,u=c/a.aspectratio):(u=r.r,c=u*a.aspectratio),c*=(1+a.baseratio)/2,l=c*u}o=Math.min(o,l/r.vTotal)}for(n=0;n\")}if(i){var x=l.castOption(a,e.i,\"texttemplate\");if(x){var b=function(t){return{label:t.label,value:t.v,valueLabel:d.formatPieValue(t.v,n.separators),percent:t.v/r.vTotal,percentLabel:d.formatPiePercent(t.v/r.vTotal,n.separators),color:t.color,text:t.text,customdata:l.castOption(a,t.i,\"customdata\")}}(e),_=d.getFirstFilled(a.text,e.pts);(m(_)||\"\"===_)&&(b.text=_),e.text=l.texttemplateString(x,b,t._fullLayout._d3locale,b,a._meta||{})}else e.text=\"\"}}function O(t,e){var r=t.rotate*Math.PI/180,n=Math.cos(r),a=Math.sin(r),i=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=i*n-o*a,t.textY=i*a+o*n,t.noCenter=!0}e.exports={plot:function(t,e){var r=t._fullLayout,i=r._size;f(\"pie\",r),x(e,t),P(e,i);var u=l.makeTraceGroups(r._pielayer,e,\"trace\").each((function(e){var u=n.select(this),f=e[0],p=f.trace;!function(t){var e,r,n,a=t[0],i=a.r,o=a.trace,s=o.rotation*Math.PI/180,l=2*Math.PI/a.vTotal,c=\"px0\",u=\"px1\";if(\"counterclockwise\"===o.direction){for(e=0;ea.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/a.vTotal,.5),r.ring=1-o.hole,r.rInscribed=M(r,a))}(e),u.attr(\"stroke-linejoin\",\"round\"),u.each((function(){var g=n.select(this).selectAll(\"g.slice\").data(e);g.enter().append(\"g\").classed(\"slice\",!0),g.exit().remove();var m=[[[],[]],[[],[]]],x=!1;g.each((function(a,i){if(a.hidden)n.select(this).selectAll(\"path,g\").remove();else{a.pointNumber=a.i,a.curveNumber=p.index,m[a.pxmid[1]<0?0:1][a.pxmid[0]<0?0:1].push(a);var o=f.cx,u=f.cy,g=n.select(this),_=g.selectAll(\"path.surface\").data([a]);if(_.enter().append(\"path\").classed(\"surface\",!0).style({\"pointer-events\":\"all\"}),g.call(v,t,e),p.pull){var w=+d.castOption(p.pull,a.pts)||0;w>0&&(o+=w*a.pxmid[0],u+=w*a.pxmid[1])}a.cxFinal=o,a.cyFinal=u;var T=p.hole;if(a.v===f.vTotal){var k=\"M\"+(o+a.px0[0])+\",\"+(u+a.px0[1])+L(a.px0,a.pxmid,!0,1)+L(a.pxmid,a.px0,!0,1)+\"Z\";T?_.attr(\"d\",\"M\"+(o+T*a.px0[0])+\",\"+(u+T*a.px0[1])+L(a.px0,a.pxmid,!1,T)+L(a.pxmid,a.px0,!1,T)+\"Z\"+k):_.attr(\"d\",k)}else{var A=L(a.px0,a.px1,!0,1);if(T){var M=1-T;_.attr(\"d\",\"M\"+(o+T*a.px1[0])+\",\"+(u+T*a.px1[1])+L(a.px1,a.px0,!1,T)+\"l\"+M*a.px0[0]+\",\"+M*a.px0[1]+A+\"Z\")}else _.attr(\"d\",\"M\"+o+\",\"+u+\"l\"+a.px0[0]+\",\"+a.px0[1]+A+\"Z\")}z(t,a,f);var E=d.castOption(p.textposition,a.pts),C=g.selectAll(\"g.slicetext\").data(a.text&&\"none\"!==E?[0]:[]);C.enter().append(\"g\").classed(\"slicetext\",!0),C.exit().remove(),C.each((function(){var g=l.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),m=l.ensureUniformFontSize(t,\"outside\"===E?function(t,e,r){var n=d.castOption(t.outsidetextfont.color,e.pts)||d.castOption(t.textfont.color,e.pts)||r.color,a=d.castOption(t.outsidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.outsidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n,family:a,size:i}}(p,a,r.font):y(p,a,r.font));g.text(a.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,m).call(c.convertToTspans,t);var v,_=s.bBox(g.node());if(\"outside\"===E)v=S(_,a);else if(v=b(_,a,f),\"auto\"===E&&v.scale<1){var w=l.ensureUniformFontSize(t,p.outsidetextfont);g.call(s.font,w),v=S(_=s.bBox(g.node()),a)}var T=v.textPosAngle,k=void 0===T?a.pxmid:I(f.r,T);if(v.targetX=o+k[0]*v.rCenter+(v.x||0),v.targetY=u+k[1]*v.rCenter+(v.y||0),O(v,_),v.outside){var A=v.targetY;a.yLabelMin=A-_.height/2,a.yLabelMid=A,a.yLabelMax=A+_.height/2,a.labelExtraX=0,a.labelExtraY=0,x=!0}v.fontSize=m.size,h(p.type,v,r),e[i].transform=v,g.attr(\"transform\",l.getTextTransform(v))}))}function L(t,e,r,n){var i=n*(e[0]-t[0]),o=n*(e[1]-t[1]);return\"a\"+n*f.r+\",\"+n*f.r+\" 0 \"+a.largeArc+(r?\" 1 \":\" 0 \")+i+\",\"+o}}));var _=n.select(this).selectAll(\"g.titletext\").data(p.title.text?[0]:[]);if(_.enter().append(\"g\").classed(\"titletext\",!0),_.exit().remove(),_.each((function(){var e,r=l.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),a=p.title.text;p._meta&&(a=l.templateString(a,p._meta)),r.text(a).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,p.title.font).call(c.convertToTspans,t),e=\"middle center\"===p.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}}(f):E(f,i),r.attr(\"transform\",\"translate(\"+e.x+\",\"+e.y+\")\"+(e.scale<1?\"scale(\"+e.scale+\")\":\"\")+\"translate(\"+e.tx+\",\"+e.ty+\")\")})),x&&function(t,e){var r,n,a,i,o,s,l,c,u,h,f,p,g;function m(t,e){return t.pxmid[1]-e.pxmid[1]}function v(t,e){return e.pxmid[1]-t.pxmid[1]}function y(t,r){r||(r={});var a,c,u,f,p=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),g=n?t.yLabelMin:t.yLabelMax,m=n?t.yLabelMax:t.yLabelMin,v=t.cyFinal+o(t.px0[1],t.px1[1]),y=p-g;if(y*l>0&&(t.labelExtraY=y),Array.isArray(e.pull))for(c=0;c=(d.castOption(e.pull,u.pts)||0)||((t.pxmid[1]-u.pxmid[1])*l>0?(y=u.cyFinal+o(u.px0[1],u.px1[1])-g-t.labelExtraY)*l>0&&(t.labelExtraY+=y):(m+t.labelExtraY-v)*l>0&&(a=3*s*Math.abs(c-h.indexOf(t)),(f=u.cxFinal+i(u.px0[0],u.px1[0])+a-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=f)))}for(n=0;n<2;n++)for(a=n?m:v,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(i=r?Math.max:Math.min,s=r?1:-1,(c=t[n][r]).sort(a),u=t[1-n][r],h=u.concat(c),p=[],f=0;fMath.abs(h)?s+=\"l\"+h*t.pxmid[0]/t.pxmid[1]+\",\"+h+\"H\"+(i+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()}))}(g,p),x&&p.automargin){var w=s.bBox(u.node()),T=p.domain,k=i.w*(T.x[1]-T.x[0]),A=i.h*(T.y[1]-T.y[0]),M=(.5*k-f.r)/i.w,C=(.5*A-f.r)/i.h;a.autoMargin(t,\"pie.\"+p.uid+\".automargin\",{xl:T.x[0]-M,xr:T.x[1]+M,yb:T.y[0]-C,yt:T.y[1]+C,l:Math.max(f.cx-f.r-w.left,0),r:Math.max(w.right-(f.cx+f.r),0),b:Math.max(w.bottom-(f.cy+f.r),0),t:Math.max(f.cy-f.r-w.top,0),pad:5})}}))}));setTimeout((function(){u.selectAll(\"tspan\").each((function(){var t=n.select(this);t.attr(\"dy\")&&t.attr(\"dy\",t.attr(\"dy\"))}))}),0)},formatSliceLabel:z,transformInsideText:b,determineInsideTextFont:y,positionTitleOutside:E,prerenderTitles:x,layoutAreas:P,attachFxHandlers:v,computeTransform:O}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../components/fx\":635,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../../plots/plots\":839,\"../bar/constants\":871,\"../bar/uniform_text\":885,\"./event_data\":1112,\"./helpers\":1113,d3:164}],1118:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"./style_one\"),i=t(\"../bar/uniform_text\").resizeText;e.exports=function(t){var e=t._fullLayout._pielayer.selectAll(\".trace\");i(t,e,\"pie\"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll(\"path.surface\").each((function(t){n.select(this).call(a,t,e)}))}))}},{\"../bar/uniform_text\":885,\"./style_one\":1119,d3:164}],1119:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"./helpers\").castOption;e.exports=function(t,e,r){var i=r.marker.line,o=a(i.color,e.pts)||n.defaultLine,s=a(i.width,e.pts)||0;t.style(\"stroke-width\",s).call(n.fill,e.color).call(n.stroke,o)}},{\"../../components/color\":595,\"./helpers\":1113}],1120:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\");e.exports={x:n.x,y:n.y,xy:{valType:\"data_array\",editType:\"calc\"},indices:{valType:\"data_array\",editType:\"calc\"},xbounds:{valType:\"data_array\",editType:\"calc\"},ybounds:{valType:\"data_array\",editType:\"calc\"},text:n.text,marker:{color:{valType:\"color\",arrayOk:!1,editType:\"calc\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,arrayOk:!1,editType:\"calc\"},blend:{valType:\"boolean\",dflt:null,editType:\"calc\"},sizemin:{valType:\"number\",min:.1,max:2,dflt:.5,editType:\"calc\"},sizemax:{valType:\"number\",min:.1,dflt:20,editType:\"calc\"},border:{color:{valType:\"color\",arrayOk:!1,editType:\"calc\"},arearatio:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},transforms:void 0}},{\"../scatter/attributes\":1134}],1121:[function(t,e,r){\"use strict\";var n=t(\"gl-pointcloud2d\"),a=t(\"../../lib/str2rgbarray\"),i=t(\"../../plots/cartesian/autorange\").findExtremes,o=t(\"../scatter/get_trace_color\");function s(t,e){this.scene=t,this.uid=e,this.type=\"pointcloud\",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color=\"rgb(0, 0, 0)\",this.name=\"\",this.hoverinfo=\"all\",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:Array.isArray(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},l.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=o(t,{})},l.updateFast=function(t){var e,r,n,o,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]=o),sd[3]&&(d[3]=s);if(p)r=p;else for(r=new Int32Array(e),l=0;ld[2]&&(d[2]=o),sd[3]&&(d[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var g=a(t.marker.color),m=a(t.marker.border.color),v=t.opacity*t.marker.opacity;g[3]*=v,this.pointcloudOptions.color=g;var y=t.marker.blend;if(null===y){y=c.length<100||u.length<100}this.pointcloudOptions.blend=y,m[3]*=v,this.pointcloudOptions.borderColor=m;var x=t.marker.sizemin,b=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=b,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var _=this.scene.xaxis,w=this.scene.yaxis,T=b/2||.5;t._extremes[_._id]=i(_,[d[0],d[2]],{ppad:T}),t._extremes[w._id]=i(w,[d[1],d[3]],{ppad:T})},l.dispose=function(){this.pointcloud.dispose()},e.exports=function(t,e){var r=new s(t,e.uid);return r.update(e),r}},{\"../../lib/str2rgbarray\":751,\"../../plots/cartesian/autorange\":775,\"../scatter/get_trace_color\":1144,\"gl-pointcloud2d\":298}],1122:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\");e.exports=function(t,e,r){function i(r,i){return n.coerce(t,e,a,r,i)}i(\"x\"),i(\"y\"),i(\"xbounds\"),i(\"ybounds\"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),i(\"text\"),i(\"marker.color\",r),i(\"marker.opacity\"),i(\"marker.blend\"),i(\"marker.sizemin\"),i(\"marker.sizemax\"),i(\"marker.border.color\",r),i(\"marker.border.arearatio\"),e._length=null}},{\"../../lib\":728,\"./attributes\":1120}],1123:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"../scatter3d/calc\"),plot:t(\"./convert\"),moduleType:\"trace\",name:\"pointcloud\",basePlotModule:t(\"../../plots/gl2d\"),categories:[\"gl\",\"gl2d\",\"showLegend\"],meta:{}}},{\"../../plots/gl2d\":816,\"../scatter3d/calc\":1162,\"./attributes\":1120,\"./convert\":1121,\"./defaults\":1122}],1124:[function(t,e,r){\"use strict\";var n=t(\"../../plots/font_attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../components/color/attributes\"),o=t(\"../../components/fx/attributes\"),s=t(\"../../plots/domain\").attributes,l=t(\"../../plots/template_attributes\").hovertemplateAttrs,c=t(\"../../components/colorscale/attributes\"),u=t(\"../../plot_api/plot_template\").templatedArray,h=t(\"../../lib/extend\").extendFlat,f=t(\"../../plot_api/edit_types\").overrideAll;t(\"../../constants/docs\").FORMAT_LINK;(e.exports=f({hoverinfo:h({},a.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\"},valuesuffix:{valType:\"string\",dflt:\"\"},arrangement:{valType:\"enumerated\",values:[\"snap\",\"perpendicular\",\"freeform\",\"fixed\"],dflt:\"snap\"},textfont:n({}),customdata:void 0,node:{label:{valType:\"data_array\",dflt:[]},groups:{valType:\"info_array\",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:\"number\",editType:\"calc\"}},x:{valType:\"data_array\",dflt:[]},y:{valType:\"data_array\",dflt:[]},color:{valType:\"color\",arrayOk:!0},customdata:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:i.defaultLine,arrayOk:!0},width:{valType:\"number\",min:0,dflt:.5,arrayOk:!0}},pad:{valType:\"number\",arrayOk:!1,min:0,dflt:20},thickness:{valType:\"number\",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:\"enumerated\",values:[\"all\",\"none\",\"skip\"],dflt:\"all\"},hoverlabel:o.hoverlabel,hovertemplate:l({},{keys:[\"value\",\"label\"]})},link:{label:{valType:\"data_array\",dflt:[]},color:{valType:\"color\",arrayOk:!0},customdata:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:i.defaultLine,arrayOk:!0},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0}},source:{valType:\"data_array\",dflt:[]},target:{valType:\"data_array\",dflt:[]},value:{valType:\"data_array\",dflt:[]},hoverinfo:{valType:\"enumerated\",values:[\"all\",\"none\",\"skip\"],dflt:\"all\"},hoverlabel:o.hoverlabel,hovertemplate:l({},{keys:[\"value\",\"label\"]}),colorscales:u(\"concentrationscales\",{editType:\"calc\",label:{valType:\"string\",editType:\"calc\",dflt:\"\"},cmax:{valType:\"number\",editType:\"calc\",dflt:1},cmin:{valType:\"number\",editType:\"calc\",dflt:0},colorscale:h(c().colorscale,{dflt:[[0,\"white\"],[1,\"black\"]]})})}},\"calc\",\"nested\")).transforms=void 0},{\"../../components/color/attributes\":594,\"../../components/colorscale/attributes\":602,\"../../components/fx/attributes\":626,\"../../constants/docs\":699,\"../../lib/extend\":719,\"../../plot_api/edit_types\":759,\"../../plot_api/plot_template\":766,\"../../plots/attributes\":773,\"../../plots/domain\":803,\"../../plots/font_attributes\":804,\"../../plots/template_attributes\":854}],1125:[function(t,e,r){\"use strict\";var n=t(\"../../plot_api/edit_types\").overrideAll,a=t(\"../../plots/get_data\").getModuleCalcData,i=t(\"./plot\"),o=t(\"../../components/fx/layout_attributes\"),s=t(\"../../lib/setcursor\"),l=t(\"../../components/dragelement\"),c=t(\"../../plots/cartesian/select\").prepSelect,u=t(\"../../lib\"),h=t(\"../../registry\");function f(t,e){var r=t._fullData[e],n=t._fullLayout,a=n.dragmode,i=\"pan\"===n.dragmode?\"move\":\"crosshair\",o=r._bgRect;if(\"pan\"!==a&&\"zoom\"!==a){s(o,i);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,a=t._fullData[e],i=a.node.groups.slice(),o=[];function s(t){for(var e=a._sankey.graph.nodes,r=0;ry&&(y=i.source[e]),i.target[e]>y&&(y=i.target[e]);var x,b=y+1;t.node._count=b;var _=t.node.groups,w={};for(e=0;e<_.length;e++){var T=_[e];for(x=0;x0&&s(E,b)&&s(C,b)&&(!w.hasOwnProperty(E)||!w.hasOwnProperty(C)||w[E]!==w[C])){w.hasOwnProperty(C)&&(C=w[C]),w.hasOwnProperty(E)&&(E=w[E]),C=+C,f[E=+E]=f[C]=!0;var L=\"\";i.label&&i.label[e]&&(L=i.label[e]);var P=null;L&&p.hasOwnProperty(L)&&(P=p[L]),c.push({pointNumber:e,label:L,color:u?i.color[e]:i.color,customdata:h?i.customdata[e]:i.customdata,concentrationscale:P,source:E,target:C,value:+S}),M.source.push(E),M.target.push(C)}}var I=b+_.length,z=o(r.color),O=o(r.customdata),D=[];for(e=0;eb-1,childrenNodes:[],pointNumber:e,label:R,color:z?r.color[e]:r.color,customdata:O?r.customdata[e]:r.customdata})}var F=!1;return function(t,e,r){for(var i=a.init2dArray(t,0),o=0;o1}))}(I,M.source,M.target)&&(F=!0),{circular:F,links:c,nodes:D,groups:_,groupLookup:w}}e.exports=function(t,e){var r=c(e);return i({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},{\"../../components/colorscale\":607,\"../../lib\":728,\"../../lib/gup\":726,\"strongly-connected-components\":521}],1127:[function(t,e,r){\"use strict\";e.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:\"linear\",cn:{sankey:\"sankey\",sankeyLinks:\"sankey-links\",sankeyLink:\"sankey-link\",sankeyNodeSet:\"sankey-node-set\",sankeyNode:\"sankey-node\",nodeRect:\"node-rect\",nodeCapture:\"node-capture\",nodeCentered:\"node-entered\",nodeLabelGuide:\"node-label-guide\",nodeLabel:\"node-label\",nodeLabelTextPath:\"node-label-text-path\"}}},{}],1128:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../components/color\"),o=t(\"tinycolor2\"),s=t(\"../../plots/domain\").defaults,l=t(\"../../components/fx/hoverlabel_defaults\"),c=t(\"../../plot_api/plot_template\"),u=t(\"../../plots/array_container_defaults\");function h(t,e){function r(r,i){return n.coerce(t,e,a.link.colorscales,r,i)}r(\"label\"),r(\"cmin\"),r(\"cmax\"),r(\"colorscale\")}e.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,a,r,i)}var d=n.extendDeep(f.hoverlabel,t.hoverlabel),g=t.node,m=c.newContainer(e,\"node\");function v(t,e){return n.coerce(g,m,a.node,t,e)}v(\"label\"),v(\"groups\"),v(\"x\"),v(\"y\"),v(\"pad\"),v(\"thickness\"),v(\"line.color\"),v(\"line.width\"),v(\"hoverinfo\",t.hoverinfo),l(g,m,v,d),v(\"hovertemplate\");var y=f.colorway;v(\"color\",m.label.map((function(t,e){return i.addOpacity(function(t){return y[t%y.length]}(e),.8)}))),v(\"customdata\");var x=t.link||{},b=c.newContainer(e,\"link\");function _(t,e){return n.coerce(x,b,a.link,t,e)}_(\"label\"),_(\"source\"),_(\"target\"),_(\"value\"),_(\"line.color\"),_(\"line.width\"),_(\"hoverinfo\",t.hoverinfo),l(x,b,_,d),_(\"hovertemplate\");var w,T=o(f.paper_bgcolor).getLuminance()<.333?\"rgba(255, 255, 255, 0.6)\":\"rgba(0, 0, 0, 0.2)\";_(\"color\",n.repeat(T,b.value.length)),_(\"customdata\"),u(x,b,{name:\"colorscales\",handleItemDefaults:h}),s(e,f,p),p(\"orientation\"),p(\"valueformat\"),p(\"valuesuffix\"),m.x.length&&m.y.length&&(w=\"freeform\"),p(\"arrangement\",w),n.coerceFont(p,\"textfont\",n.extendFlat({},f.font)),e._length=null}},{\"../../components/color\":595,\"../../components/fx/hoverlabel_defaults\":633,\"../../lib\":728,\"../../plot_api/plot_template\":766,\"../../plots/array_container_defaults\":772,\"../../plots/domain\":803,\"./attributes\":1124,tinycolor2:528}],1129:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),calc:t(\"./calc\"),plot:t(\"./plot\"),moduleType:\"trace\",name:\"sankey\",basePlotModule:t(\"./base_plot\"),selectPoints:t(\"./select.js\"),categories:[\"noOpacity\"],meta:{}}},{\"./attributes\":1124,\"./base_plot\":1125,\"./calc\":1126,\"./defaults\":1128,\"./plot\":1130,\"./select.js\":1132}],1130:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"./render\"),i=t(\"../../components/fx\"),o=t(\"../../components/color\"),s=t(\"../../lib\"),l=t(\"./constants\").cn,c=s._;function u(t){return\"\"!==t}function h(t,e){return t.filter((function(t){return t.key===e.traceId}))}function f(t,e){n.select(t).select(\"path\").style(\"fill-opacity\",e),n.select(t).select(\"rect\").style(\"fill-opacity\",e)}function p(t){n.select(t).select(\"text.name\").style(\"fill\",\"black\")}function d(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 m(t,e,r){e&&r&&h(r,e).selectAll(\".\"+l.sankeyLink).filter(d(e)).call(y.bind(0,e,r,!1))}function v(t,e,r){e&&r&&h(r,e).selectAll(\".\"+l.sankeyLink).filter(d(e)).call(x.bind(0,e,r,!1))}function y(t,e,r,n){var a=n.datum().link.label;n.style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return.4})),a&&h(e,t).selectAll(\".\"+l.sankeyLink).filter((function(t){return t.link.label===a})).style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return.4})),r&&h(e,t).selectAll(\".\"+l.sankeyNode).filter(g(t)).call(m)}function x(t,e,r,n){var a=n.datum().link.label;n.style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),a&&h(e,t).selectAll(\".\"+l.sankeyLink).filter((function(t){return t.link.label===a})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),r&&h(e,t).selectAll(l.sankeyNode).filter(g(t)).call(v)}function b(t,e){var r=t.hoverlabel||{},n=s.nestedProperty(r,e).get();return!Array.isArray(n)&&n}e.exports=function(t,e){for(var r=t._fullLayout,s=r._paper,h=r._size,d=0;d\"),color:b(s,\"bgcolor\")||o.addOpacity(d.color,1),borderColor:b(s,\"bordercolor\"),fontFamily:b(s,\"font.family\"),fontSize:b(s,\"font.size\"),fontColor:b(s,\"font.color\"),nameLength:b(s,\"namelength\"),textAlign:b(s,\"align\"),idealAlign:n.event.x\"),color:b(o,\"bgcolor\")||a.tinyColorHue,borderColor:b(o,\"bordercolor\"),fontFamily:b(o,\"font.family\"),fontSize:b(o,\"font.size\"),fontColor:b(o,\"font.color\"),nameLength:b(o,\"namelength\"),textAlign:b(o,\"align\"),idealAlign:\"left\",hovertemplate:o.hovertemplate,hovertemplateLabels:v,eventData:[a.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t});f(y,.85),p(y)}}},unhover:function(e,a,o){!1!==t._fullLayout.hovermode&&(n.select(e).call(v,a,o),\"skip\"!==a.node.trace.node.hoverinfo&&(a.node.fullData=a.node.trace,t.emit(\"plotly_unhover\",{event:n.event,points:[a.node]})),i.loneUnhover(r._hoverlayer.node()))},select:function(e,r,a){var o=r.node;o.originalEvent=n.event,t._hoverdata=[o],n.select(e).call(v,r,a),i.click(t,{target:!0})}}})}},{\"../../components/color\":595,\"../../components/fx\":635,\"../../lib\":728,\"./constants\":1127,\"./render\":1131,d3:164}],1131:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"d3\"),i=t(\"tinycolor2\"),o=t(\"../../components/color\"),s=t(\"../../components/drawing\"),l=t(\"@plotly/d3-sankey\"),c=t(\"@plotly/d3-sankey-circular\"),u=t(\"d3-force\"),h=t(\"../../lib\"),f=t(\"../../lib/gup\"),p=f.keyFun,d=f.repeat,g=f.unwrap,m=t(\"d3-interpolate\").interpolateNumber,v=t(\"../../registry\");function y(t,e,r){var a,o=g(e),s=o.trace,u=s.domain,f=\"h\"===s.orientation,p=s.node.pad,d=s.node.thickness,m=t.width*(u.x[1]-u.x[0]),v=t.height*(u.y[1]-u.y[0]),y=o._nodes,x=o._links,b=o.circular;(a=b?c.sankeyCircular().circularLinkGap(0):l.sankey()).iterations(n.sankeyIterations).size(f?[m,v]:[v,m]).nodeWidth(d).nodePadding(p).nodeId((function(t){return t.pointNumber})).nodes(y).links(x);var _,w,T,k=a();for(var A in a.nodePadding()=a||(r=a-e.y0)>1e-6&&(e.y0+=r,e.y1+=r),a=e.y1+p}))}(function(t){var e,r,n=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),a=[],i=-1,o=-1/0;for(_=0;_o+d&&(i+=1,e=s.x0),o=s.x0,a[i]||(a[i]=[]),a[i].push(s),r=e-s.x0,s.x0+=r,s.x1+=r}return a}(y=k.nodes));a.update(k)}return{circular:b,key:r,trace:s,guid:h.randstr(),horizontal:f,width:m,height:v,nodePad:s.node.pad,nodeLineColor:s.node.line.color,nodeLineWidth:s.node.line.width,linkLineColor:s.link.line.color,linkLineWidth:s.link.line.width,valueFormat:s.valueformat,valueSuffix:s.valuesuffix,textFont:s.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:f?v:m,dragPerpendicular:f?m:v,arrangement:s.arrangement,sankey:a,graph:k,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function x(t,e,r){var n=i(e.color),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:o.tinyRGB(n),tinyColorAlpha:n.getAlpha(),linkPath:b,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function b(){return function(t){if(t.link.circular)return e=t.link,r=e.width/2,n=e.circularPathData,\"top\"===e.circularLinkType?\"M \"+n.targetX+\" \"+(n.targetY+r)+\" L\"+n.rightInnerExtent+\" \"+(n.targetY+r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 1 \"+(n.rightFullExtent-r)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 1 \"+n.rightInnerExtent+\" \"+(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+\" \"+(n.verticalFullExtent+r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 0 \"+(n.rightFullExtent+r)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 0 \"+n.rightInnerExtent+\" \"+(n.targetY-r)+\"L\"+n.targetX+\" \"+(n.targetY-r)+\"Z\":\"M \"+n.targetX+\" \"+(n.targetY-r)+\" L\"+n.rightInnerExtent+\" \"+(n.targetY-r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 0 \"+(n.rightFullExtent-r)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 0 \"+n.rightInnerExtent+\" \"+(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+\" \"+(n.verticalFullExtent-r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 1 \"+(n.rightFullExtent+r)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 1 \"+n.rightInnerExtent+\" \"+(n.targetY+r)+\"L\"+n.targetX+\" \"+(n.targetY+r)+\"Z\";var e,r,n,a=t.link.source.x1,i=t.link.target.x0,o=m(a,i),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;return\"M\"+a+\",\"+c+\"C\"+s+\",\"+c+\" \"+l+\",\"+h+\" \"+i+\",\"+h+\"L\"+i+\",\"+f+\"C\"+l+\",\"+f+\" \"+s+\",\"+u+\" \"+a+\",\"+u+\"Z\"}}function _(t,e){var r=i(e.color),a=n.nodePadAcross,s=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var l=e.dx,c=Math.max(.5,e.dy),u=\"node_\"+e.pointNumber;return e.group&&(u=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:u,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(l),visibleHeight:c,zoneX:-a,zoneY:-s,zoneWidth:l+2*a,zoneHeight:c+2*s,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:o.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,u].join(\"_\"),interactionState:t.interactionState,figure:t}}function w(t){t.attr(\"transform\",(function(t){return\"translate(\"+t.node.x0.toFixed(3)+\", \"+t.node.y0.toFixed(3)+\")\"}))}function T(t){t.call(w)}function k(t,e){t.call(T),e.attr(\"d\",b())}function A(t){t.attr(\"width\",(function(t){return t.node.x1-t.node.x0})).attr(\"height\",(function(t){return t.visibleHeight}))}function M(t){return t.link.width>1||t.linkLineWidth>0}function S(t){return\"translate(\"+t.translateX+\",\"+t.translateY+\")\"+(t.horizontal?\"matrix(1 0 0 1 0 0)\":\"matrix(0 1 1 0 0 0)\")}function E(t){return\"translate(\"+(t.horizontal?0:t.labelY)+\" \"+(t.horizontal?t.labelY:0)+\")\"}function C(t){return a.svg.line()([[t.horizontal?t.left?-t.sizeAcross:t.visibleWidth+n.nodeTextOffsetHorizontal:n.nodeTextOffsetHorizontal,0],[t.horizontal?t.left?-n.nodeTextOffsetHorizontal:t.sizeAcross:t.visibleHeight-n.nodeTextOffsetHorizontal,0]])}function L(t){return t.horizontal?\"matrix(1 0 0 1 0 0)\":\"matrix(0 1 1 0 0 0)\"}function P(t){return t.horizontal?\"scale(1 1)\":\"scale(-1 1)\"}function I(t){return t.darkBackground&&!t.horizontal?\"rgb(255,255,255)\":\"rgb(0,0,0)\"}function z(t){return t.horizontal&&t.left?\"100%\":\"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&&(h.ensureSingle(i._fullLayout._infolayer,\"g\",\"dragcover\",(function(t){i._fullLayout._dragCover=t})),h.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,a){!function(t){for(var e=0;e0&&a.forceLayouts[e].alpha(0)}}(0,e,i,r)).stop()}(0,o,a),function(t,e,r,a,i){window.requestAnimationFrame((function o(){var s;for(s=0;s0)window.requestAnimationFrame(o);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+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),k(t.filter(B(r)),e))}})).on(\"dragend\",(function(t){if(\"fixed\"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;e5?t.node.label:\"\"})).attr(\"text-anchor\",(function(t){return t.horizontal&&t.left?\"end\":\"start\"})),q.transition().ease(n.ease).duration(n.duration).attr(\"startOffset\",z).style(\"fill\",I)}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/gup\":726,\"../../registry\":859,\"./constants\":1127,\"@plotly/d3-sankey\":56,\"@plotly/d3-sankey-circular\":55,d3:164,\"d3-force\":157,\"d3-interpolate\":159,tinycolor2:528}],1132:[function(t,e,r){\"use strict\";e.exports=function(t,e){for(var r=[],n=t.cd[0].trace,a=n._sankey.graph.nodes,i=0;is&&A[m].gap;)m--;for(y=A[m].s,d=A.length-1;d>m;d--)A[d].s=y;for(;sM[u]&&u=0;a--){var i=t[a];if(\"scatter\"===i.type&&i.xaxis===r.xaxis&&i.yaxis===r.yaxis){i.opacity=void 0;break}}}}}},{}],1141:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./attributes\"),o=t(\"./constants\"),s=t(\"./subtypes\"),l=t(\"./xy_defaults\"),c=t(\"./stack_defaults\"),u=t(\"./marker_defaults\"),h=t(\"./line_defaults\"),f=t(\"./line_shape_defaults\"),p=t(\"./text_defaults\"),d=t(\"./fillcolor_defaults\");e.exports=function(t,e,r,g){function m(r,a){return n.coerce(t,e,i,r,a)}var v=l(t,e,g,m);if(v||(e.visible=!1),e.visible){var y=c(t,e,g,m),x=!y&&vG!=(F=I[L][1])>=G&&(O=I[L-1][0],D=I[L][0],F-R&&(z=O+(D-O)*(G-R)/(F-R),V=Math.min(V,z),U=Math.max(U,z)));V=Math.max(V,0),U=Math.min(U,f._length);var Y=s.defaultLine;return s.opacity(h.fillcolor)?Y=h.fillcolor:s.opacity((h.line||{}).color)&&(Y=h.line.color),n.extendFlat(t,{distance:t.maxHoverDistance,x0:V,x1:U,y0:G,y1:G,color:Y,hovertemplate:!1}),delete t.index,h.text&&!Array.isArray(h.text)?t.text=String(h.text):t.text=h.name,[t]}}}},{\"../../components/color\":595,\"../../components/fx\":635,\"../../lib\":728,\"../../registry\":859,\"./get_trace_color\":1144}],1146:[function(t,e,r){\"use strict\";var n=t(\"./subtypes\");e.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"./cross_trace_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./cross_trace_calc\"),arraysToCalcdata:t(\"./arrays_to_calcdata\"),plot:t(\"./plot\"),colorbar:t(\"./marker_colorbar\"),formatLabels:t(\"./format_labels\"),style:t(\"./style\").style,styleOnSelect:t(\"./style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"./select\"),animatable:!0,moduleType:\"trace\",name:\"scatter\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"symbols\",\"errorBarsOK\",\"showLegend\",\"scatter-like\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":789,\"./arrays_to_calcdata\":1133,\"./attributes\":1134,\"./calc\":1135,\"./cross_trace_calc\":1139,\"./cross_trace_defaults\":1140,\"./defaults\":1141,\"./format_labels\":1143,\"./hover\":1145,\"./marker_colorbar\":1152,\"./plot\":1154,\"./select\":1155,\"./style\":1157,\"./subtypes\":1158}],1147:[function(t,e,r){\"use strict\";var n=t(\"../../lib\").isArrayOrTypedArray,a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\");e.exports=function(t,e,r,o,s,l){var c=(t.marker||{}).color;(s(\"line.color\",r),a(t,\"line\"))?i(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}):s(\"line.color\",!n(c)&&c||r);s(\"line.width\"),(l||{}).noDash||s(\"line.dash\")}},{\"../../components/colorscale/defaults\":605,\"../../components/colorscale/helpers\":606,\"../../lib\":728}],1148:[function(t,e,r){\"use strict\";var n=t(\"../../constants/numerical\"),a=n.BADNUM,i=n.LOG_CLIP,o=i+.5,s=i-.5,l=t(\"../../lib\"),c=l.segmentsIntersect,u=l.constrain,h=t(\"./constants\");e.exports=function(t,e){var r,n,i,f,p,d,g,m,v,y,x,b,_,w,T,k,A,M,S=e.xaxis,E=e.yaxis,C=\"log\"===S.type,L=\"log\"===E.type,P=S._length,I=E._length,z=e.connectGaps,O=e.baseTolerance,D=e.shape,R=\"linear\"===D,F=e.fill&&\"none\"!==e.fill,B=[],N=h.minTolerance,j=t.length,V=new Array(j),U=0;function q(r){var n=t[r];if(!n)return!1;var i=e.linearized?S.l2p(n.x):S.c2p(n.x),l=e.linearized?E.l2p(n.y):E.c2p(n.y);if(i===a){if(C&&(i=S.c2p(n.x,!0)),i===a)return!1;L&&l===a&&(i*=Math.abs(S._m*I*(S._m>0?o:s)/(E._m*P*(E._m>0?o:s)))),i*=1e3}if(l===a){if(L&&(l=E.c2p(n.y,!0)),l===a)return!1;l*=1e3}return[i,l]}function H(t,e,r,n){var a=r-t,i=n-e,o=.5-t,s=.5-e,l=a*a+i*i,c=a*o+i*s;if(c>0&&crt||t[1]at)return[u(t[0],et,rt),u(t[1],nt,at)]}function st(t,e){return t[0]===e[0]&&(t[0]===et||t[0]===rt)||(t[1]===e[1]&&(t[1]===nt||t[1]===at)||void 0)}function lt(t,e,r){return function(n,a){var i=ot(n),o=ot(a),s=[];if(i&&o&&st(i,o))return s;i&&s.push(i),o&&s.push(o);var c=2*l.constrain((n[t]+a[t])/2,e,r)-((i||n)[t]+(o||a)[t]);c&&((i&&o?c>0==i[t]>o[t]?i:o:i||o)[t]+=c);return s}}function ct(t){var e=t[0],r=t[1],n=e===V[U-1][0],a=r===V[U-1][1];if(!n||!a)if(U>1){var i=e===V[U-2][0],o=r===V[U-2][1];n&&(e===et||e===rt)&&i?o?U--:V[U-1]=t:a&&(r===nt||r===at)&&o?i?U--:V[U-1]=t:V[U++]=t}else V[U++]=t}function ut(t){V[U-1][0]!==t[0]&&V[U-1][1]!==t[1]&&ct([X,J]),ct(t),K=null,X=J=0}function ht(t){if(A=t[0]/P,M=t[1]/I,W=t[0]rt?rt:0,Z=t[1]at?at:0,W||Z){if(U)if(K){var e=$(K,t);e.length>1&&(ut(e[0]),V[U++]=e[1])}else Q=$(V[U-1],t)[0],V[U++]=Q;else V[U++]=[W||t[0],Z||t[1]];var r=V[U-1];W&&Z&&(r[0]!==W||r[1]!==Z)?(K&&(X!==W&&J!==Z?ct(X&&J?(n=K,i=(a=t)[0]-n[0],o=(a[1]-n[1])/i,(n[1]*a[0]-a[1]*n[0])/i>0?[o>0?et:rt,at]:[o>0?rt:et,nt]):[X||W,J||Z]):X&&J&&ct([X,J])),ct([W,Z])):X-W&&J-Z&&ct([W||X,Z||J]),K=t,X=W,J=Z}else K&&ut($(K,t)[0]),V[U++]=t;var n,a,i,o}for(\"linear\"===D||\"spline\"===D?$=function(t,e){for(var r=[],n=0,a=0;a<4;a++){var i=it[a],o=c(t[0],t[1],e[0],e[1],i[0],i[1],i[2],i[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&&Y(o,t)G(d,ft))break;i=d,(_=v[0]*m[0]+v[1]*m[1])>x?(x=_,f=d,g=!1):_=t.length||!d)break;ht(d),n=d}}else ht(f)}K&&ct([X||K[0],J||K[1]]),B.push(V.slice(0,U))}return B}},{\"../../constants/numerical\":704,\"../../lib\":728,\"./constants\":1138}],1149:[function(t,e,r){\"use strict\";e.exports=function(t,e,r){\"spline\"===r(\"line.shape\")&&r(\"line.smoothing\")}},{}],1150:[function(t,e,r){\"use strict\";var n={tonextx:1,tonexty:1,tonext:1};e.exports=function(t,e,r){var a,i,o,s,l,c={},u=!1,h=-1,f=0,p=-1;for(i=0;i=0?l=p:(l=p=f,f++),l0?Math.max(e,a):0}}},{\"fast-isnumeric\":236}],1152:[function(t,e,r){\"use strict\";e.exports={container:\"marker\",min:\"cmin\",max:\"cmax\"}},{}],1153:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/helpers\").hasColorscale,i=t(\"../../components/colorscale/defaults\"),o=t(\"./subtypes\");e.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\"),l(\"marker.color\",r),a(t,\"marker\")&&i(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),a(t,\"marker.line\")&&i(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\"))}},{\"../../components/color\":595,\"../../components/colorscale/defaults\":605,\"../../components/colorscale/helpers\":606,\"./subtypes\":1158}],1154:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../registry\"),i=t(\"../../lib\"),o=i.ensureSingle,s=i.identity,l=t(\"../../components/drawing\"),c=t(\"./subtypes\"),u=t(\"./line_points\"),h=t(\"./link_traces\"),f=t(\"../../lib/polygon\").tester;function p(t,e,r,h,p,d,g){var m;!function(t,e,r,a,o){var s=r.xaxis,l=r.yaxis,u=n.extent(i.simpleMap(s.range,s.r2c)),h=n.extent(i.simpleMap(l.range,l.r2c)),f=a[0].trace;if(!c.hasMarkers(f))return;var p=f.marker.maxdisplayed;if(0===p)return;var d=a.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=h[0]&&t.y<=h[1]})),g=Math.ceil(d.length/p),m=0;o.forEach((function(t,r){var n=t[0].trace;c.hasMarkers(n)&&n.marker.maxdisplayed>0&&r0;function y(t){return v?t.transition():t}var x=r.xaxis,b=r.yaxis,_=h[0].trace,w=_.line,T=n.select(d),k=o(T,\"g\",\"errorbars\"),A=o(T,\"g\",\"lines\"),M=o(T,\"g\",\"points\"),S=o(T,\"g\",\"text\");if(a.getComponentMethod(\"errorbars\",\"plot\")(t,k,r,g),!0===_.visible){var E,C;y(T).style(\"opacity\",_.opacity);var L=_.fill.charAt(_.fill.length-1);\"x\"!==L&&\"y\"!==L&&(L=\"\"),h[0][r.isRangePlot?\"nodeRangePlot3\":\"node3\"]=T;var P,I,z=\"\",O=[],D=_._prevtrace;D&&(z=D._prevRevpath||\"\",C=D._nextFill,O=D._polygons);var R,F,B,N,j,V,U,q=\"\",H=\"\",G=[],Y=i.noop;if(E=_._ownFill,c.hasLines(_)||\"none\"!==_.fill){for(C&&C.datum(h),-1!==[\"hv\",\"vh\",\"hvh\",\"vhv\"].indexOf(w.shape)?(R=l.steps(w.shape),F=l.steps(w.shape.split(\"\").reverse().join(\"\"))):R=F=\"spline\"===w.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),w.smoothing):l.smoothopen(t,w.smoothing)}:function(t){return\"M\"+t.join(\"L\")},B=function(t){return F(t.reverse())},G=u(h,{xaxis:x,yaxis:b,connectGaps:_.connectgaps,baseTolerance:Math.max(w.width||1,3)/4,shape:w.shape,simplify:w.simplify,fill:_.fill}),U=_._polygons=new Array(G.length),m=0;m1){var r=n.select(this);if(r.datum(h),t)y(r.style(\"opacity\",0).attr(\"d\",P).call(l.lineGroupStyle)).style(\"opacity\",1);else{var a=y(r);a.attr(\"d\",P),l.singleLineStyle(h,a)}}}}}var W=A.selectAll(\".js-line\").data(G);y(W.exit()).style(\"opacity\",0).remove(),W.each(Y(!1)),W.enter().append(\"path\").classed(\"js-line\",!0).style(\"vector-effect\",\"non-scaling-stroke\").call(l.lineGroupStyle).each(Y(!0)),l.setClipUrl(W,r.layerClipId,t),G.length?(E?(E.datum(h),N&&V&&(L?(\"y\"===L?N[1]=V[1]=b.c2p(0,!0):\"x\"===L&&(N[0]=V[0]=x.c2p(0,!0)),y(E).attr(\"d\",\"M\"+V+\"L\"+N+\"L\"+q.substr(1)).call(l.singleFillStyle)):y(E).attr(\"d\",q+\"Z\").call(l.singleFillStyle))):C&&(\"tonext\"===_.fill.substr(0,6)&&q&&z?(\"tonext\"===_.fill?y(C).attr(\"d\",q+\"Z\"+z+\"Z\").call(l.singleFillStyle):y(C).attr(\"d\",q+\"L\"+z.substr(1)+\"Z\").call(l.singleFillStyle),_._polygons=_._polygons.concat(O)):(X(C),_._polygons=null)),_._prevRevpath=H,_._prevPolygons=U):(E?X(E):C&&X(C),_._polygons=_._prevRevpath=_._prevPolygons=null),M.datum(h),S.datum(h),function(e,a,i){var o,u=i[0].trace,h=c.hasMarkers(u),f=c.hasText(u),p=tt(u),d=et,g=et;if(h||f){var m=s,_=u.stackgroup,w=_&&\"infer zero\"===t._fullLayout._scatterStackOpts[x._id+b._id][_].stackgaps;u.marker.maxdisplayed||u._needsCull?m=w?K:J:_&&!w&&(m=Q),h&&(d=m),f&&(g=m)}var T,k=(o=e.selectAll(\"path.point\").data(d,p)).enter().append(\"path\").classed(\"point\",!0);v&&k.call(l.pointStyle,u,t).call(l.translatePoints,x,b).style(\"opacity\",0).transition().style(\"opacity\",1),o.order(),h&&(T=l.makePointStyleFns(u)),o.each((function(e){var a=n.select(this),i=y(a);l.translatePoint(e,i,x,b)?(l.singlePointStyle(e,i,u,T,t),r.layerClipId&&l.hideOutsideRangePoint(e,i,x,b,u.xcalendar,u.ycalendar),u.customdata&&a.classed(\"plotly-customdata\",null!==e.data&&void 0!==e.data)):i.remove()})),v?o.exit().transition().style(\"opacity\",0).remove():o.exit().remove(),(o=a.selectAll(\"g\").data(g,p)).enter().append(\"g\").classed(\"textpoint\",!0).append(\"text\"),o.order(),o.each((function(t){var e=n.select(this),a=y(e.select(\"text\"));l.translatePoint(t,a,x,b)?r.layerClipId&&l.hideOutsideRangePoint(t,e,x,b,u.xcalendar,u.ycalendar):e.remove()})),o.selectAll(\"text\").call(l.textPointStyle,u,t).each((function(t){var e=x.c2p(t.x),r=b.c2p(t.y);n.select(this).selectAll(\"tspan.line\").each((function(){y(n.select(this)).attr({x:e,y:r})}))})),o.exit().remove()}(M,S,h);var Z=!1===_.cliponaxis?null:r.layerClipId;l.setClipUrl(M,Z,t),l.setClipUrl(S,Z,t)}function X(t){y(t).attr(\"d\",\"M0,0Z\")}function J(t){return t.filter((function(t){return!t.gap&&t.vis}))}function K(t){return t.filter((function(t){return t.vis}))}function Q(t){return t.filter((function(t){return!t.gap}))}function $(t){return t.id}function tt(t){if(t.ids)return $}function et(){return!1}}e.exports=function(t,e,r,a,i,c){var u,f,d=!i,g=!!i&&i.duration>0,m=h(t,e,r);((u=a.selectAll(\"g.trace\").data(m,(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 a=o(n.select(this),\"g\",\"fills\");l.setClipUrl(a,r.layerClipId,t);var i=e[0].trace,c=[];i._ownfill&&c.push(\"_ownFill\"),i._nexttrace&&c.push(\"_nextFill\");var u=a.selectAll(\"g\").data(c,s);u.enter().append(\"g\"),u.exit().each((function(t){i[t]=null})).remove(),u.order().each((function(t){i[t]=o(n.select(this),\"path\",\"js-fill\")}))}))}(t,u,e),g)?(c&&(f=c()),n.transition().duration(i.duration).ease(i.easing).each(\"end\",(function(){f&&f()})).each(\"interrupt\",(function(){f&&f()})).each((function(){a.selectAll(\"g.trace\").each((function(r,n){p(t,n,e,r,m,this,i)}))}))):u.each((function(r,n){p(t,n,e,r,m,this,i)}));d&&u.exit().remove(),a.selectAll(\"path:not([d])\").remove()}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/polygon\":740,\"../../registry\":859,\"./line_points\":1148,\"./link_traces\":1150,\"./subtypes\":1158,d3:164}],1155:[function(t,e,r){\"use strict\";var n=t(\"./subtypes\");e.exports=function(t,e){var r,a,i,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=a.c2l(u);a._lowerLogErrorBound||(a._lowerLogErrorBound=f),a._lowerErrorBound=Math.min(a._lowerLogErrorBound,f)}}else o[s]=[-l[0]*r,l[1]*r]}return o}e.exports=function(t,e,r){var n=[a(t.x,t.error_x,e[0],r.xaxis),a(t.y,t.error_y,e[1],r.yaxis),a(t.z,t.error_z,e[2],r.zaxis)],i=function(t){for(var e=0;e-1?-1:t.indexOf(\"right\")>-1?1:0}function b(t){return null==t?0:t.indexOf(\"top\")>-1?-1:t.indexOf(\"bottom\")>-1?1:0}function _(t,e){return e(4*t)}function w(t){return p[t]}function T(t,e,r,n,a){var i=null;if(l.isArrayOrTypedArray(t)){i=[];for(var o=0;o=0){var g=function(t,e,r){var n,a=(r+1)%3,i=(r+2)%3,o=[],l=[];for(n=0;n=0&&h(\"surfacecolor\",f||p);for(var d=[\"x\",\"y\",\"z\"],g=0;g<3;++g){var m=\"projection.\"+d[g];h(m+\".show\")&&(h(m+\".opacity\"),h(m+\".scale\"))}var v=n.getComponentMethod(\"errorbars\",\"supplyDefaults\");v(t,e,f||p||r,{axis:\"z\"}),v(t,e,f||p||r,{axis:\"y\",inherit:\"z\"}),v(t,e,f||p||r,{axis:\"x\",inherit:\"z\"})}else e.visible=!1}},{\"../../lib\":728,\"../../registry\":859,\"../scatter/line_defaults\":1147,\"../scatter/marker_defaults\":1153,\"../scatter/subtypes\":1158,\"../scatter/text_defaults\":1159,\"./attributes\":1161}],1166:[function(t,e,r){\"use strict\";e.exports={plot:t(\"./convert\"),attributes:t(\"./attributes\"),markerSymbols:t(\"../../constants/gl3d_markers\"),supplyDefaults:t(\"./defaults\"),colorbar:[{container:\"marker\",min:\"cmin\",max:\"cmax\"},{container:\"line\",min:\"cmin\",max:\"cmax\"}],calc:t(\"./calc\"),moduleType:\"trace\",name:\"scatter3d\",basePlotModule:t(\"../../plots/gl3d\"),categories:[\"gl3d\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../constants/gl3d_markers\":702,\"../../plots/gl3d\":818,\"./attributes\":1161,\"./calc\":1162,\"./convert\":1164,\"./defaults\":1165}],1167:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../plots/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/template_attributes\").texttemplateAttrs,s=t(\"../../components/colorscale/attributes\"),l=t(\"../../lib/extend\").extendFlat,c=n.marker,u=n.line,h=c.line;e.exports={carpet:{valType:\"string\",editType:\"calc\"},a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},mode:l({},n.mode,{dflt:\"markers\"}),text:l({},n.text,{}),texttemplate:o({editType:\"plot\"},{keys:[\"a\",\"b\",\"text\"]}),hovertext:l({},n.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,shape:l({},u.shape,{values:[\"linear\",\"spline\"]}),smoothing:u.smoothing,editType:\"calc\"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:n.fillcolor,marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:h.width,editType:\"calc\"},s(\"marker.line\")),gradient:c.gradient,editType:\"calc\"},s(\"marker\")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},a.hoverinfo,{flags:[\"a\",\"b\",\"text\",\"name\"]}),hoveron:n.hoveron,hovertemplate:i()}},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../scatter/attributes\":1134}],1168:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../scatter/colorscale_calc\"),i=t(\"../scatter/arrays_to_calcdata\"),o=t(\"../scatter/calc_selection\"),s=t(\"../scatter/calc\").calcMarkerSize,l=t(\"../carpet/lookup_carpetid\");e.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 y(t,e){var r;r=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,\"\"):t._hovertitle,m.push(r+\": \"+e.toFixed(3)+t.labelsuffix)}}},{\"../../lib\":728,\"../scatter/hover\":1145}],1173:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../scatter/select\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"scattercarpet\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"svg\",\"carpet\",\"symbols\",\"showLegend\",\"carpetDependent\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":789,\"../scatter/marker_colorbar\":1152,\"../scatter/select\":1155,\"../scatter/style\":1157,\"./attributes\":1167,\"./calc\":1168,\"./defaults\":1169,\"./event_data\":1170,\"./format_labels\":1171,\"./hover\":1172,\"./plot\":1174}],1174:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\"),a=t(\"../../plots/cartesian/axes\"),i=t(\"../../components/drawing\");e.exports=function(t,e,r,o){var s,l,c,u=r[0][0].carpet,h={xaxis:a.getFromId(t,u.xaxis||\"x\"),yaxis:a.getFromId(t,u.yaxis||\"y\"),plot:e.plot};for(n(t,h,r,o),s=0;s\")}(c,g,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{\"../../components/fx\":635,\"../../constants/numerical\":704,\"../../lib\":728,\"../scatter/get_trace_color\":1144,\"./attributes\":1175}],1181:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),calcGeoJSON:t(\"./plot\").calcGeoJSON,plot:t(\"./plot\").plot,style:t(\"./style\"),styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),moduleType:\"trace\",name:\"scattergeo\",basePlotModule:t(\"../../plots/geo\"),categories:[\"geo\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/geo\":808,\"../scatter/marker_colorbar\":1152,\"../scatter/style\":1157,\"./attributes\":1175,\"./calc\":1176,\"./defaults\":1177,\"./event_data\":1178,\"./format_labels\":1179,\"./hover\":1180,\"./plot\":1182,\"./select\":1183,\"./style\":1184}],1182:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../lib/topojson_utils\").getTopojsonFeatures,o=t(\"../../lib/geojson_utils\"),s=t(\"../../lib/geo_location_utils\"),l=t(\"../../plots/cartesian/autorange\").findExtremes,c=t(\"../../constants/numerical\").BADNUM,u=t(\"../scatter/calc\").calcMarkerSize,h=t(\"../scatter/subtypes\"),f=t(\"./style\");e.exports={calcGeoJSON:function(t,e){var r,n,a=t[0].trace,o=e[a.geo],h=o._subplot,f=a._length;if(Array.isArray(a.locations)){var p=a.locationmode,d=\"geojson-id\"===p?s.extractTraceFeature(t):i(a,h.topojson);for(r=0;r=g,T=2*_,k={},A=e._x=y.makeCalcdata(e,\"x\"),M=e._y=x.makeCalcdata(e,\"y\"),S=new Array(T);for(r=0;r<_;r++)o=A[r],s=M[r],S[2*r]=o===d?NaN:o,S[2*r+1]=s===d?NaN:s;if(\"log\"===y.type)for(r=0;r1&&a.extendFlat(s.line,f.linePositions(t,r,n));if(s.errorX||s.errorY){var l=f.errorBarPositions(t,r,n,i,o);s.errorX&&a.extendFlat(s.errorX,l.x),s.errorY&&a.extendFlat(s.errorY,l.y)}s.text&&(a.extendFlat(s.text,{positions:n},f.textPosition(t,r,s.text,s.marker)),a.extendFlat(s.textSel,{positions:n},f.textPosition(t,r,s.text,s.markerSel)),a.extendFlat(s.textUnsel,{positions:n},f.textPosition(t,r,s.text,s.markerUnsel)));return s}(t,0,e,S,A,M),P=p(t,b);return u(v,e),w?L.marker&&(C=2*(L.marker.sizeAvg||Math.max(L.marker.size,3))):C=l(e,_),c(t,e,y,x,A,M,C),L.errorX&&m(e,y,L.errorX),L.errorY&&m(e,x,L.errorY),L.fill&&!P.fill2d&&(P.fill2d=!0),L.marker&&!P.scatter2d&&(P.scatter2d=!0),L.line&&!P.line2d&&(P.line2d=!0),!L.errorX&&!L.errorY||P.error2d||(P.error2d=!0),L.text&&!P.glText&&(P.glText=!0),L.marker&&(L.marker.snap=_),P.lineOptions.push(L.line),P.errorXOptions.push(L.errorX),P.errorYOptions.push(L.errorY),P.fillOptions.push(L.fill),P.markerOptions.push(L.marker),P.markerSelectedOptions.push(L.markerSel),P.markerUnselectedOptions.push(L.markerUnsel),P.textOptions.push(L.text),P.textSelectedOptions.push(L.textSel),P.textUnselectedOptions.push(L.textUnsel),P.selectBatch.push([]),P.unselectBatch.push([]),k._scene=P,k.index=P.count,k.x=A,k.y=M,k.positions=S,P.count++,[{x:!1,y:!1,t:k,trace:e}]}},{\"../../constants/numerical\":704,\"../../lib\":728,\"../../plots/cartesian/autorange\":775,\"../../plots/cartesian/axis_ids\":779,\"../scatter/calc\":1135,\"../scatter/colorscale_calc\":1137,\"./constants\":1187,\"./convert\":1188,\"./scene_update\":1196,\"point-cluster\":467}],1187:[function(t,e,r){\"use strict\";e.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:20,SYMBOL_STROKE:1,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}},{}],1188:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"svg-path-sdf\"),i=t(\"color-normalize\"),o=t(\"../../registry\"),s=t(\"../../lib\"),l=t(\"../../components/drawing\"),c=t(\"../../plots/cartesian/axis_ids\"),u=t(\"../../lib/gl_format_color\").formatColor,h=t(\"../scatter/subtypes\"),f=t(\"../scatter/make_bubble_size_func\"),p=t(\"./helpers\"),d=t(\"./constants\"),g=t(\"../../constants/interactions\").DESELECTDIM,m={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},v=t(\"../../components/fx/helpers\").appendArrayPointValue;function y(t,e){var r,a=t._fullLayout,i=e._length,o=e.textfont,l=e.textposition,c=Array.isArray(l)?l:[l],u=o.color,h=o.size,f=o.family,p={},d=e.texttemplate;if(d){p.text=[];var g=a._d3locale,m=Array.isArray(d),y=m?Math.min(d.length,i):i,x=m?function(t){return d[t]}:function(){return d};for(r=0;rd.TOO_MANY_POINTS||h.hasMarkers(e)?\"rect\":\"round\";if(c&&e.connectgaps){var f=n[0],p=n[1];for(a=0;a1?l[a]:l[0]:l,d=Array.isArray(c)?c.length>1?c[a]:c[0]:c,g=m[p],v=m[d],y=u?u/.8+1:0,x=-v*y-.5*v;o.offset[a]=[g*y/f,x/f]}}return o}}},{\"../../components/drawing\":617,\"../../components/fx/helpers\":631,\"../../constants/interactions\":703,\"../../lib\":728,\"../../lib/gl_format_color\":725,\"../../plots/cartesian/axis_ids\":779,\"../../registry\":859,\"../scatter/make_bubble_size_func\":1151,\"../scatter/subtypes\":1158,\"./constants\":1187,\"./helpers\":1192,\"color-normalize\":122,\"fast-isnumeric\":236,\"svg-path-sdf\":526}],1189:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../registry\"),i=t(\"./helpers\"),o=t(\"./attributes\"),s=t(\"../scatter/constants\"),l=t(\"../scatter/subtypes\"),c=t(\"../scatter/xy_defaults\"),u=t(\"../scatter/marker_defaults\"),h=t(\"../scatter/line_defaults\"),f=t(\"../scatter/fillcolor_defaults\"),p=t(\"../scatter/text_defaults\");e.exports=function(t,e,r,d){function g(r,a){return n.coerce(t,e,o,r,a)}var m=!!t.marker&&i.isOpenSymbol(t.marker.symbol),v=l.isBubble(t),y=c(t,e,d,g);if(y){var x=y100},r.isDotSymbol=function(t){return\"string\"==typeof t?n.DOT_RE.test(t):t>200}},{\"./constants\":1187}],1193:[function(t,e,r){\"use strict\";var n=t(\"../../registry\"),a=t(\"../../lib\"),i=t(\"../scatter/get_trace_color\");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=Array.isArray(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=a.isArrayOrTypedArray(p.size)?p.size[h]:p.size,f.tc=Array.isArray(p.color)?p.color[h]:p.color,f.tf=Array.isArray(p.family)?p.family[h]:p.family);var d=o.marker;d&&(f.ms=a.isArrayOrTypedArray(d.size)?d.size[h]:d.size,f.mo=a.isArrayOrTypedArray(d.opacity)?d.opacity[h]:d.opacity,f.mx=a.isArrayOrTypedArray(d.symbol)?d.symbol[h]:d.symbol,f.mc=a.isArrayOrTypedArray(d.color)?d.color[h]:d.color);var g=d&&d.line;g&&(f.mlc=Array.isArray(g.color)?g.color[h]:g.color,f.mlw=a.isArrayOrTypedArray(g.width)?g.width[h]:g.width);var m=d&&d.gradient;m&&\"none\"!==m.type&&(f.mgt=Array.isArray(m.type)?m.type[h]:m.type,f.mgc=Array.isArray(m.color)?m.color[h]:m.color);var v=s.c2p(f.x,!0),y=l.c2p(f.y,!0),x=f.mrc||1,b=o.hoverlabel;b&&(f.hbg=Array.isArray(b.bgcolor)?b.bgcolor[h]:b.bgcolor,f.hbc=Array.isArray(b.bordercolor)?b.bordercolor[h]:b.bordercolor,f.hts=a.isArrayOrTypedArray(b.font.size)?b.font.size[h]:b.font.size,f.htc=Array.isArray(b.font.color)?b.font.color[h]:b.font.color,f.htf=Array.isArray(b.font.family)?b.font.family[h]:b.font.family,f.hnl=a.isArrayOrTypedArray(b.namelength)?b.namelength[h]:b.namelength);var _=o.hoverinfo;_&&(f.hi=Array.isArray(_)?_[h]:_);var w=o.hovertemplate;w&&(f.ht=Array.isArray(w)?w[h]:w);var T={};T[t.index]=f;var k=a.extendFlat({},t,{color:i(o,f),x0:v-x,x1:v+x,xLabelVal:f.x,y0:y-x,y1:y+x,yLabelVal:f.y,cd:T,distance:c,spikeDistance:u,hovertemplate:f.ht});return f.htx?k.text=f.htx:f.tx?k.text=f.tx:o.text&&(k.text=o.text),a.fillText(f,o,k),n.getComponentMethod(\"errorbars\",\"hoverInfo\")(f,o,k),k}e.exports={hoverPoints:function(t,e,r,n){var a,i,s,l,c,u,h,f,p,d=t.cd,g=d[0].t,m=d[0].trace,v=t.xa,y=t.ya,x=g.x,b=g.y,_=v.c2p(e),w=y.c2p(r),T=t.distance;if(g.tree){var k=v.p2c(_-T),A=v.p2c(_+T),M=y.p2c(w-T),S=y.p2c(w+T);a=\"x\"===n?g.tree.range(Math.min(k,A),Math.min(y._rl[0],y._rl[1]),Math.max(k,A),Math.max(y._rl[0],y._rl[1])):g.tree.range(Math.min(k,A),Math.min(M,S),Math.max(k,A),Math.max(M,S))}else a=g.ids;var E=T;if(\"x\"===n)for(c=0;c-1;c--)s=x[a[c]],l=b[a[c]],u=v.c2p(s)-_,h=y.c2p(l)-w,(f=Math.sqrt(u*u+h*h))v.glText.length){var w=b-v.glText.length;for(d=0;dr&&(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 k=(v.errorXOptions||[]).concat(v.errorYOptions||[]);v.error2d.update(k)}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 a,i,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=[],a=0,i=0;i-1;for(d=0;d=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),d=e-p;if(n.getClosest(l,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;var n=a.modHalf(e[0],360),i=e[1],o=f.project([n,i]),l=o.x-u.c2p([d,i]),c=o.y-h.c2p([n,r]),p=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-p,1-3/p)}),t),!1!==t.index){var g=l[t.index],m=g.lonlat,v=[a.modHalf(m[0],360)+p,m[1]],y=u.c2p(v),x=h.c2p(v),b=g.mrc||1;t.x0=y-b,t.x1=y+b,t.y0=x-b,t.y1=x+b;var _={};_[c.subplot]={_subplot:f};var w=c._module.formatLabels(g,c,_);return t.lonLabel=w.lonLabel,t.latLabel=w.latLabel,t.color=i(c,g),t.extraText=function(t,e,r){if(t.hovertemplate)return;var n=(e.hi||t.hoverinfo).split(\"+\"),a=-1!==n.indexOf(\"all\"),i=-1!==n.indexOf(\"lon\"),s=-1!==n.indexOf(\"lat\"),l=e.lonlat,c=[];function u(t){return t+\"\\xb0\"}a||i&&s?c.push(\"(\"+u(l[0])+\", \"+u(l[1])+\")\"):i?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(a||-1!==n.indexOf(\"text\"))&&o(e,t,c);return c.join(\"
\")}(c,g,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{\"../../components/fx\":635,\"../../constants/numerical\":704,\"../../lib\":728,\"../scatter/get_trace_color\":1144}],1204:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"../scattergeo/calc\"),plot:t(\"./plot\"),hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"./select\"),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:\"trace\",name:\"scattermapbox\",basePlotModule:t(\"../../plots/mapbox\"),categories:[\"mapbox\",\"gl\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/mapbox\":833,\"../scatter/marker_colorbar\":1152,\"../scattergeo/calc\":1176,\"./attributes\":1198,\"./defaults\":1200,\"./event_data\":1201,\"./format_labels\":1202,\"./hover\":1203,\"./plot\":1205,\"./select\":1206}],1205:[function(t,e,r){\"use strict\";var n=t(\"./convert\"),a=t(\"../../plots/mapbox/constants\").traceLayerPrefix,i=[\"fill\",\"line\",\"circle\",\"symbol\"];function o(t,e){this.type=\"scattermapbox\",this.subplot=t,this.uid=e,this.sourceIds={fill:\"source-\"+e+\"-fill\",line:\"source-\"+e+\"-line\",circle:\"source-\"+e+\"-circle\",symbol:\"source-\"+e+\"-symbol\"},this.layerIds={fill:a+e+\"-fill\",line:a+e+\"-line\",circle:a+e+\"-circle\",symbol:a+e+\"-symbol\"},this.below=null}var s=o.prototype;s.addSource=function(t,e){this.subplot.map.addSource(this.sourceIds[t],{type:\"geojson\",data:e.geojson})},s.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},s.addLayer=function(t,e,r){this.subplot.addLayer({type:t,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint},r)},s.update=function(t){var e,r,a,o=this.subplot,s=o.map,l=n(o.gd,t),c=o.belowLookup[\"trace-\"+this.uid];if(c!==this.below){for(e=i.length-1;e>=0;e--)r=i[e],s.removeLayer(this.layerIds[r]);for(e=0;e=0;e--){var r=i[e];t.removeLayer(this.layerIds[r]),t.removeSource(this.sourceIds[r])}},e.exports=function(t,e){for(var r=e[0].trace,a=new o(t,r.uid),s=n(t.gd,e),l=a.below=t.belowLookup[\"trace-\"+r.uid],c=0;c\")}}e.exports={hoverPoints:function(t,e,r,i){var o=n(t,e,r,i);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,a(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:a}},{\"../scatter/hover\":1145}],1212:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"scatterpolar\",basePlotModule:t(\"../../plots/polar\"),categories:[\"polar\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\").hoverPoints,selectPoints:t(\"../scatter/select\"),meta:{}}},{\"../../plots/polar\":842,\"../scatter/marker_colorbar\":1152,\"../scatter/select\":1155,\"../scatter/style\":1157,\"./attributes\":1207,\"./calc\":1208,\"./defaults\":1209,\"./format_labels\":1210,\"./hover\":1211,\"./plot\":1213}],1213:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\"),a=t(\"../../constants/numerical\").BADNUM;e.exports=function(t,e,r){for(var i=e.layers.frontplot.select(\"g.scatterlayer\"),o={xaxis:e.xaxis,yaxis:e.yaxis,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},s=e.radialAxis,l=e.angularAxis,c=0;c=c&&(y.marker.cluster=d.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=_),y.line&&_.length>1&&l.extendFlat(y.line,s.linePositions(t,p,_)),y.text&&(l.extendFlat(y.text,{positions:_},s.textPosition(t,p,y.text,y.marker)),l.extendFlat(y.textSel,{positions:_},s.textPosition(t,p,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:_},s.textPosition(t,p,y.text,y.markerUnsel))),y.fill&&!f.fill2d&&(f.fill2d=!0),y.marker&&!f.scatter2d&&(f.scatter2d=!0),y.line&&!f.line2d&&(f.line2d=!0),y.text&&!f.glText&&(f.glText=!0),f.lineOptions.push(y.line),f.fillOptions.push(y.fill),f.markerOptions.push(y.marker),f.markerSelectedOptions.push(y.markerSel),f.markerUnselectedOptions.push(y.markerUnsel),f.textOptions.push(y.text),f.textSelectedOptions.push(y.textSel),f.textUnselectedOptions.push(y.textUnsel),f.selectBatch.push([]),f.unselectBatch.push([]),d.x=w,d.y=T,d.rawx=w,d.rawy=T,d.r=m,d.theta=v,d.positions=_,d._scene=f,d.index=f.count,f.count++}})),i(t,e,r)}}},{\"../../lib\":728,\"../scattergl/constants\":1187,\"../scattergl/convert\":1188,\"../scattergl/plot\":1195,\"../scattergl/scene_update\":1196,\"fast-isnumeric\":236,\"point-cluster\":467}],1221:[function(t,e,r){\"use strict\";var n=t(\"../../plots/template_attributes\").hovertemplateAttrs,a=t(\"../../plots/template_attributes\").texttemplateAttrs,i=t(\"../scatter/attributes\"),o=t(\"../../plots/attributes\"),s=t(\"../../components/colorscale/attributes\"),l=t(\"../../components/drawing/attributes\").dash,c=t(\"../../lib/extend\").extendFlat,u=i.marker,h=i.line,f=u.line;e.exports={a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},c:{valType:\"data_array\",editType:\"calc\"},sum:{valType:\"number\",dflt:0,min:0,editType:\"calc\"},mode:c({},i.mode,{dflt:\"markers\"}),text:c({},i.text,{}),texttemplate:a({editType:\"plot\"},{keys:[\"a\",\"b\",\"c\",\"text\"]}),hovertext:c({},i.hovertext,{}),line:{color:h.color,width:h.width,dash:l,shape:c({},h.shape,{values:[\"linear\",\"spline\"]}),smoothing:h.smoothing,editType:\"calc\"},connectgaps:i.connectgaps,cliponaxis:i.cliponaxis,fill:c({},i.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:i.fillcolor,marker:c({symbol:u.symbol,opacity:u.opacity,maxdisplayed:u.maxdisplayed,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:c({width:f.width,editType:\"calc\"},s(\"marker.line\")),gradient:u.gradient,editType:\"calc\"},s(\"marker\")),textfont:i.textfont,textposition:i.textposition,selected:i.selected,unselected:i.unselected,hoverinfo:c({},o.hoverinfo,{flags:[\"a\",\"b\",\"c\",\"text\",\"name\"]}),hoveron:i.hoveron,hovertemplate:n()}},{\"../../components/colorscale/attributes\":602,\"../../components/drawing/attributes\":616,\"../../lib/extend\":719,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854,\"../scatter/attributes\":1134}],1222:[function(t,e,r){\"use strict\";var n=t(\"fast-isnumeric\"),a=t(\"../scatter/colorscale_calc\"),i=t(\"../scatter/arrays_to_calcdata\"),o=t(\"../scatter/calc_selection\"),s=t(\"../scatter/calc\").calcMarkerSize,l=[\"a\",\"b\",\"c\"],c={a:[\"b\",\"c\"],b:[\"a\",\"c\"],c:[\"a\",\"b\"]};e.exports=function(t,e){var r,u,h,f,p,d,g=t._fullLayout[e.subplot].sum,m=e.sum||g,v={a:e.a,b:e.b,c:e.c};for(r=0;r\"),o.hovertemplate=f.hovertemplate,i}function x(t,e){v.push(t._hovertitle+\": \"+e)}}},{\"../scatter/hover\":1145}],1227:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),supplyDefaults:t(\"./defaults\"),colorbar:t(\"../scatter/marker_colorbar\"),formatLabels:t(\"./format_labels\"),calc:t(\"./calc\"),plot:t(\"./plot\"),style:t(\"../scatter/style\").style,styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../scatter/select\"),eventData:t(\"./event_data\"),moduleType:\"trace\",name:\"scatterternary\",basePlotModule:t(\"../../plots/ternary\"),categories:[\"ternary\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},{\"../../plots/ternary\":855,\"../scatter/marker_colorbar\":1152,\"../scatter/select\":1155,\"../scatter/style\":1157,\"./attributes\":1221,\"./calc\":1222,\"./defaults\":1223,\"./event_data\":1224,\"./format_labels\":1225,\"./hover\":1226,\"./plot\":1228}],1228:[function(t,e,r){\"use strict\";var n=t(\"../scatter/plot\");e.exports=function(t,e,r){var a=e.plotContainer;a.select(\".scatterlayer\").selectAll(\"*\").remove();var i={xaxis:e.xaxis,yaxis:e.yaxis,plot:a,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},o=e.layers.frontplot.select(\"g.scatterlayer\");n(t,i,r,o)}},{\"../scatter/plot\":1154}],1229:[function(t,e,r){\"use strict\";var n=t(\"../scatter/attributes\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../scattergl/attributes\"),s=t(\"../../plots/cartesian/constants\").idRegex,l=t(\"../../plot_api/plot_template\").templatedArray,c=t(\"../../lib/extend\").extendFlat,u=n.marker,h=u.line,f=c(a(\"marker.line\",{editTypeOverride:\"calc\"}),{width:c({},h.width,{editType:\"calc\"}),editType:\"calc\"}),p=c(a(\"marker\"),{symbol:u.symbol,size:c({},u.size,{editType:\"markerSize\"}),sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,opacity:u.opacity,colorbar:u.colorbar,line:f,editType:\"calc\"});function d(t){return{valType:\"info_array\",freeLength:!0,editType:\"calc\",items:{valType:\"subplotid\",regex:s[t],editType:\"plot\"}}}p.color.editType=p.cmin.editType=p.cmax.editType=\"style\",e.exports={dimensions:l(\"dimension\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},label:{valType:\"string\",editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},axis:{type:{valType:\"enumerated\",values:[\"linear\",\"log\",\"date\",\"category\"],editType:\"calc+clearAxisTypes\"},matches:{valType:\"boolean\",dflt:!1,editType:\"calc\"},editType:\"calc+clearAxisTypes\"},editType:\"calc+clearAxisTypes\"}),text:c({},o.text,{}),hovertext:c({},o.hovertext,{}),hovertemplate:i(),marker:p,xaxes:d(\"x\"),yaxes:d(\"y\"),diagonal:{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"},showupperhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},showlowerhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},selected:{marker:o.selected.marker,editType:\"calc\"},unselected:{marker:o.unselected.marker,editType:\"calc\"},opacity:o.opacity}},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plot_api/plot_template\":766,\"../../plots/cartesian/constants\":782,\"../../plots/template_attributes\":854,\"../scatter/attributes\":1134,\"../scattergl/attributes\":1185}],1230:[function(t,e,r){\"use strict\";var n=t(\"regl-line2d\"),a=t(\"../../registry\"),i=t(\"../../lib/prepare_regl\"),o=t(\"../../plots/get_data\").getModuleCalcData,s=t(\"../../plots/cartesian\"),l=t(\"../../plots/cartesian/axis_ids\").getFromId,c=t(\"../../plots/cartesian/axes\").shouldShowZeroLine;function u(t,e,r){for(var n=r.matrixOptions.data.length,a=e._visibleDims,i=r.viewOpts.ranges=new Array(n),o=0;of?2*(b.sizeAvg||Math.max(b.size,3)):i(e,x),p=0;pi&&l||a-1,M=!0;if(o(x)||!!p.selectedpoints||A){var S=p._length;if(p.selectedpoints){g.selectBatch=p.selectedpoints;var E=p.selectedpoints,C={};for(l=0;l1&&(u=g[y-1],f=m[y-1],d=v[y-1]),e=0;eu?\"-\":\"+\")+\"x\")).replace(\"y\",(h>f?\"-\":\"+\")+\"y\")).replace(\"z\",(p>d?\"-\":\"+\")+\"z\");var C=function(){y=0,M=[],S=[],E=[]};(!y||y2?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,a=t.dataScale,u=e._len,h={};function d(t,e){var n=r[e],o=a[c[e]];return i.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 g=d(e._Xs,\"xaxis\"),m=d(e._Ys,\"yaxis\"),v=d(e._Zs,\"zaxis\");if(h.meshgrid=[g,m,v],h.gridFill=e._gridFill,e._slen)h.startingPositions=l(d(e._startsX,\"xaxis\"),d(e._startsY,\"yaxis\"),d(e._startsZ,\"zaxis\"));else{for(var y=m[0],x=f(g),b=f(v),_=new Array(x.length*b.length),w=0,T=0;T=0};v?(r=Math.min(m.length,x.length),l=function(t){return A(m[t])&&M(t)},h=function(t){return String(m[t])}):(r=Math.min(y.length,x.length),l=function(t){return A(y[t])&&M(t)},h=function(t){return String(y[t])}),_&&(r=Math.min(r,b.length));for(var S=0;S1){for(var P=i.randstr(),I=0;I\"),name:k||z(\"name\")?l.name:void 0,color:T(\"hoverlabel.bgcolor\")||y.color,borderColor:T(\"hoverlabel.bordercolor\"),fontFamily:T(\"hoverlabel.font.family\"),fontSize:T(\"hoverlabel.font.size\"),fontColor:T(\"hoverlabel.font.color\"),nameLength:T(\"hoverlabel.namelength\"),textAlign:T(\"hoverlabel.align\"),hovertemplate:k,hovertemplateLabels:L,eventData:[h(a,l,f.eventDataKeys)]};m&&(R.x0=S-a.rInscribed*a.rpx1,R.x1=S+a.rInscribed*a.rpx1,R.idealAlign=a.pxmid[0]<0?\"left\":\"right\"),v&&(R.x=S,R.idealAlign=S<0?\"left\":\"right\"),o.loneHover(R,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}),d._hasHoverLabel=!0}if(v){var F=t.select(\"path.surface\");f.styleOne(F,a,l,{hovered:!0})}d._hasHoverEvent=!0,r.emit(\"plotly_hover\",{points:[h(a,l,f.eventDataKeys)],event:n.event})}})),t.on(\"mouseout\",(function(e){var a=r._fullLayout,i=r._fullData[d.index],s=n.select(this).datum();if(d._hasHoverEvent&&(e.originalEvent=n.event,r.emit(\"plotly_unhover\",{points:[h(s,i,f.eventDataKeys)],event:n.event}),d._hasHoverEvent=!1),d._hasHoverLabel&&(o.loneUnhover(a._hoverlayer.node()),d._hasHoverLabel=!1),v){var l=t.select(\"path.surface\");f.styleOne(l,s,i,{hovered:!1})}})),t.on(\"click\",(function(t){var e=r._fullLayout,i=r._fullData[d.index],s=m&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),p=c.isEntry(t)?c.findEntryWithChild(g,u):c.findEntryWithLevel(g,u),v=c.getPtId(p),y={points:[h(t,i,f.eventDataKeys)],event:n.event};s||(y.nextLevel=v);var x=l.triggerHandler(r,\"plotly_\"+d.type+\"click\",y);if(!1!==x&&e.hovermode&&(r._hoverdata=[h(t,i,f.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){a.call(\"_storeDirectGUIEdit\",i,e._tracePreGUI[i.uid],{level:i.level});var b={data:[{level:v}],traces:[d.index]},_={frame:{redraw:!1,duration:f.transitionTime},transition:{duration:f.transitionTime,easing:f.transitionEasing},mode:\"immediate\",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),a.call(\"animate\",r,b,_)}}))}},{\"../../components/fx\":635,\"../../components/fx/helpers\":631,\"../../lib\":728,\"../../lib/events\":718,\"../../registry\":859,\"../pie/helpers\":1113,\"./helpers\":1251,d3:164}],1251:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"../../components/color\"),i=t(\"../../lib/setcursor\"),o=t(\"../pie/helpers\");function s(t){return t.data.data.pid}r.findEntryWithLevel=function(t,e){var n;return e&&t.eachAfter((function(t){if(r.getPtId(t)===e)return n=t.copy()})),n||t},r.findEntryWithChild=function(t,e){var n;return t.eachAfter((function(t){for(var a=t.children||[],i=0;i0)},r.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},r.isHeader=function(t,e){return!(r.isLeaf(t)||t.depth===e._maxDepth-1)},r.getParent=function(t,e){return r.findEntryWithLevel(t,s(e))},r.listPath=function(t,e){var n=t.parent;if(!n)return[];var a=e?[n.data[e]]:[n];return r.listPath(n,e).concat(a)},r.getPath=function(t){return r.listPath(t,\"label\").join(\"/\")+\"/\"},r.formatValue=o.formatPieValue,r.formatPercent=function(t,e){var r=n.formatPercent(t,0);return\"0%\"===r&&(r=o.formatPiePercent(t,e)),r}},{\"../../components/color\":595,\"../../lib\":728,\"../../lib/setcursor\":748,\"../pie/helpers\":1113}],1252:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"sunburst\",basePlotModule:t(\"./base_plot\"),categories:[],animatable:!0,attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\").plot,style:t(\"./style\").style,colorbar:t(\"../scatter/marker_colorbar\"),meta:{}}},{\"../scatter/marker_colorbar\":1152,\"./attributes\":1245,\"./base_plot\":1246,\"./calc\":1247,\"./defaults\":1249,\"./layout_attributes\":1253,\"./layout_defaults\":1254,\"./plot\":1255,\"./style\":1256}],1253:[function(t,e,r){\"use strict\";e.exports={sunburstcolorway:{valType:\"colorlist\",editType:\"calc\"},extendsunburstcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{}],1254:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"sunburstcolorway\",e.colorway),r(\"extendsunburstcolors\")}},{\"../../lib\":728,\"./layout_attributes\":1253}],1255:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"d3-hierarchy\"),i=t(\"../../components/drawing\"),o=t(\"../../lib\"),s=t(\"../../lib/svg_text_utils\"),l=t(\"../bar/uniform_text\"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t(\"../pie/plot\"),f=h.computeTransform,p=h.transformInsideText,d=t(\"./style\").styleOne,g=t(\"../bar/style\").resizeText,m=t(\"./fx\"),v=t(\"./constants\"),y=t(\"./helpers\");function x(t,e,l,u){var h=t._fullLayout,g=!h.uniformtext.mode&&y.hasTransition(u),x=n.select(l).selectAll(\"g.slice\"),_=e[0],w=_.trace,T=_.hierarchy,k=y.findEntryWithLevel(T,w.level),A=y.getMaxDepth(w),M=h._size,S=w.domain,E=M.w*(S.x[1]-S.x[0]),C=M.h*(S.y[1]-S.y[0]),L=.5*Math.min(E,C),P=_.cx=M.l+M.w*(S.x[1]+S.x[0])/2,I=_.cy=M.t+M.h*(1-S.y[0])-C/2;if(!k)return x.remove();var z=null,O={};g&&x.each((function(t){O[y.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!z&&y.isEntry(t)&&(z=t)}));var D=function(t){return a.partition().size([2*Math.PI,t.height+1])(t)}(k).descendants(),R=k.height+1,F=0,B=A;_.hasMultipleRoots&&y.isHierarchyRoot(k)&&(D=D.slice(1),R-=1,F=1,B+=1),D=D.filter((function(t){return t.y1<=B}));var N=Math.min(R,A),j=function(t){return(t-F)/N*L},V=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},U=function(t){return o.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,P,I)},q=function(t){return P+b(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},H=function(t){return I+b(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(x=x.data(D,y.getPtId)).enter().append(\"g\").classed(\"slice\",!0),g?x.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=y.getPtId(t),a=O[r],i=O[y.getPtId(k)];if(i){var o=t.x1>i.x1?2*Math.PI:0;e=t.rpx1G?2*Math.PI:0;e={x0:i,x1:i}}else e={rpx0:L,rpx1:L},o.extendFlat(e,Z(t));else e={rpx0:0,rpx1:0};else e={x0:0,x1:0};return n.interpolate(e,a)}(t);return function(t){return U(e(t))}})):u.attr(\"d\",U),l.call(m,k,t,e,{eventDataKeys:v.eventDataKeys,transitionTime:v.CLICK_TRANSITION_TIME,transitionEasing:v.CLICK_TRANSITION_EASING}).call(y.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),u.call(d,a,w);var x=o.ensureSingle(l,\"g\",\"slicetext\"),b=o.ensureSingle(x,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),T=o.ensureUniformFontSize(t,y.determineTextFont(w,a,h.font));b.text(r.formatSliceLabel(a,k,w,e,h)).classed(\"slicetext\",!0).attr(\"text-anchor\",\"middle\").call(i.font,T).call(s.convertToTspans,t);var A=i.bBox(b.node());a.transform=p(A,a,_),a.transform.targetX=q(a),a.transform.targetY=H(a);var M=function(t,e){var r=t.transform;return f(r,e),r.fontSize=T.size,c(w.type,r,h),o.getTextTransform(r)};g?b.transition().attrTween(\"transform\",(function(t){var e=function(t){var e,r=O[y.getPtId(t)],a=t.transform;if(r)e=r;else if(e={rpx1:t.rpx1,transform:{textPosAngle:a.textPosAngle,scale:0,rotate:a.rotate,rCenter:a.rCenter,x:a.x,y:a.y}},z)if(t.parent)if(G){var i=t.x1>G?2*Math.PI:0;e.x0=e.x1=i}else o.extendFlat(e,Z(t));else e.x0=e.x1=0;else e.x0=e.x1=0;var s=n.interpolate(e.transform.textPosAngle,t.transform.textPosAngle),l=n.interpolate(e.rpx1,t.rpx1),u=n.interpolate(e.x0,t.x0),f=n.interpolate(e.x1,t.x1),p=n.interpolate(e.transform.scale,a.scale),d=n.interpolate(e.transform.rotate,a.rotate),g=0===a.rCenter?3:0===e.transform.rCenter?1/3:1,m=n.interpolate(e.transform.rCenter,a.rCenter);return function(t){var e=l(t),r=u(t),n=f(t),i=function(t){return m(Math.pow(t,g))}(t),o={pxmid:V(e,(r+n)/2),rpx1:e,transform:{textPosAngle:s(t),rCenter:i,x:a.x,y:a.y}};return c(w.type,a,h),{transform:{targetX:q(o),targetY:H(o),scale:p(t),rotate:d(t),rCenter:i}}}}(t);return function(t){return M(e(t),A)}})):b.attr(\"transform\",M(a,A))}))}function b(t){return e=t.rpx1,r=t.transform.textPosAngle,[e*Math.sin(r),-e*Math.cos(r)];var e,r}r.plot=function(t,e,r,a){var i,o,s=t._fullLayout,l=s._sunburstlayer,c=!r,h=!s.uniformtext.mode&&y.hasTransition(r);(u(\"sunburst\",s),(i=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\"),i.order(),h)?(a&&(o=a()),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){x(t,e,this,r)}))}))):(i.each((function(e){x(t,e,this,r)})),s.uniformtext.mode&&g(t,s._sunburstlayer.selectAll(\".trace\"),\"sunburst\"));c&&i.exit().remove()},r.formatSliceLabel=function(t,e,r,n,a){var i=r.texttemplate,s=r.textinfo;if(!(i||s&&\"none\"!==s))return\"\";var l=a.separators,c=n[0],u=t.data.data,h=c.hierarchy,f=y.isHierarchyRoot(t),p=y.getParent(h,t),d=y.getValue(t);if(!i){var g,m=s.split(\"+\"),v=function(t){return-1!==m.indexOf(t)},x=[];if(v(\"label\")&&u.label&&x.push(u.label),u.hasOwnProperty(\"v\")&&v(\"value\")&&x.push(y.formatValue(u.v,l)),!f){v(\"current path\")&&x.push(y.getPath(t.data));var b=0;v(\"percent parent\")&&b++,v(\"percent entry\")&&b++,v(\"percent root\")&&b++;var _=b>1;if(b){var w,T=function(t){g=y.formatPercent(w,l),_&&(g+=\" of \"+t),x.push(g)};v(\"percent parent\")&&!f&&(w=d/y.getValue(p),T(\"parent\")),v(\"percent entry\")&&(w=d/y.getValue(e),T(\"entry\")),v(\"percent root\")&&(w=d/y.getValue(h),T(\"root\"))}}return v(\"text\")&&(g=o.castOption(r,u.i,\"text\"),o.isValidTextValue(g)&&x.push(g)),x.join(\"
\")}var k=o.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=y.formatValue(u.v,l)),A.currentPath=y.getPath(t.data),f||(A.percentParent=d/y.getValue(p),A.percentParentLabel=y.formatPercent(A.percentParent,l),A.parent=y.getPtLabel(p)),A.percentEntry=d/y.getValue(e),A.percentEntryLabel=y.formatPercent(A.percentEntry,l),A.entry=y.getPtLabel(e),A.percentRoot=d/y.getValue(h),A.percentRootLabel=y.formatPercent(A.percentRoot,l),A.root=y.getPtLabel(h),u.hasOwnProperty(\"color\")&&(A.color=u.color);var M=o.castOption(r,u.i,\"text\");return(o.isValidTextValue(M)||\"\"===M)&&(A.text=M),A.customdata=o.castOption(r,u.i,\"customdata\"),o.texttemplateString(k,A,a._d3locale,A,r._meta||{})}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../bar/style\":883,\"../bar/uniform_text\":885,\"../pie/plot\":1117,\"./constants\":1248,\"./fx\":1250,\"./helpers\":1251,\"./style\":1256,d3:164,\"d3-hierarchy\":158}],1256:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../lib\"),o=t(\"../bar/uniform_text\").resizeText;function s(t,e,r){var n=e.data.data,o=!e.children,s=n.i,l=i.castOption(r,s,\"marker.line.color\")||a.defaultLine,c=i.castOption(r,s,\"marker.line.width\")||0;t.style(\"stroke-width\",c).call(a.fill,n.color).call(a.stroke,l).style(\"opacity\",o?r.leaf.opacity:null)}e.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(\".trace\");o(t,e,\"sunburst\"),e.each((function(t){var e=n.select(this),r=t[0].trace;e.style(\"opacity\",r.opacity),e.selectAll(\"path.surface\").each((function(t){n.select(this).call(s,t,r)}))}))},styleOne:s}},{\"../../components/color\":595,\"../../lib\":728,\"../bar/uniform_text\":885,d3:164}],1257:[function(t,e,r){\"use strict\";var n=t(\"../../components/color\"),a=t(\"../../components/colorscale/attributes\"),i=t(\"../../plots/template_attributes\").hovertemplateAttrs,o=t(\"../../plots/attributes\"),s=t(\"../../lib/extend\").extendFlat,l=t(\"../../plot_api/edit_types\").overrideAll;function c(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 u=e.exports=l(s({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:i(),connectgaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},surfacecolor:{valType:\"data_array\"}},a(\"\",{colorAttr:\"z or surfacecolor\",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:\"calc\"}),{contours:{x:c(),y:c(),z:c()},hidesurface:{valType:\"boolean\",dflt:!1},lightposition:{x:{valType:\"number\",min:-1e5,max:1e5,dflt:10},y:{valType:\"number\",min:-1e5,max:1e5,dflt:1e4},z:{valType:\"number\",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:\"number\",min:0,max:1,dflt:.8},diffuse:{valType:\"number\",min:0,max:1,dflt:.8},specular:{valType:\"number\",min:0,max:2,dflt:.05},roughness:{valType:\"number\",min:0,max:1,dflt:.5},fresnel:{valType:\"number\",min:0,max:5,dflt:.2}},opacity:{valType:\"number\",min:0,max:1,dflt:1},opacityscale:{valType:\"any\",editType:\"calc\"},_deprecated:{zauto:s({},a.zauto,{}),zmin:s({},a.zmin,{}),zmax:s({},a.zmax,{})},hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),\"calc\",\"nested\");u.x.editType=u.y.editType=u.z.editType=\"calc+clearAxisTypes\",u.transforms=void 0},{\"../../components/color\":595,\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plot_api/edit_types\":759,\"../../plots/attributes\":773,\"../../plots/template_attributes\":854}],1258:[function(t,e,r){\"use strict\";var n=t(\"../../components/colorscale/calc\");e.exports=function(t,e){e.surfacecolor?n(t,e,{vals:e.surfacecolor,containerStr:\"\",cLetter:\"c\"}):n(t,e,{vals:e.z,containerStr:\"\",cLetter:\"c\"})}},{\"../../components/colorscale/calc\":603}],1259:[function(t,e,r){\"use strict\";var n=t(\"gl-surface3d\"),a=t(\"ndarray\"),i=t(\"ndarray-linear-interpolate\").d2,o=t(\"../heatmap/interp2d\"),s=t(\"../heatmap/find_empties\"),l=t(\"../../lib\").isArrayOrTypedArray,c=t(\"../../lib/gl_format_color\").parseColorScale,u=t(\"../../lib/str2rgbarray\"),h=t(\"../../components/colorscale\").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 a=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===r?a:n.d2l(a,0,r)},p.getYat=function(t,e,r,n){var a=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===r?a:n.d2l(a,0,r)},p.getZat=function(t,e,r,n){var a=this.data.z[e][t];return null===a&&this.data.connectgaps&&this.data._interpolatedZ&&(a=this.data._interpolatedZ[e][t]),void 0===r?a:n.d2l(a,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),a=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);t.index=[n,a],t.traceCoordinate=[this.getXat(n,a),this.getYat(n,a),this.getZat(n,a)],t.dataCoordinate=[this.getXat(n,a,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,a,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,a,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var i=0;i<3;i++){var o=t.dataCoordinate[i];null!=o&&(t.dataCoordinate[i]*=this.scene.dataScale[i])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[a]&&void 0!==s[a][n]?t.textLabel=s[a][n]:t.textLabel=s||\"\",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 g(t,e){if(t0){r=d[n];break}return r}function y(t,e){if(!(t<1||e<1)){for(var r=m(t),n=m(e),a=1,i=0;i_;)r--,r/=v(r),++r1?n:1},p.refineCoords=function(t){for(var e=this.dataScaleX,r=this.dataScaleY,n=t[0].shape[0],i=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+i+1,u=a(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(a[t]=!0,e=this.contourStart[t];ei&&(this.minValues[e]=i),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\"}}},{}],1266:[function(t,e,r){\"use strict\";var n=t(\"./constants\"),a=t(\"../../lib/extend\").extendFlat,i=t(\"fast-isnumeric\");function o(t){if(Array.isArray(t)){for(var e=0,r=0;r=e||c===t.length-1)&&(n[a]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},a+=i,s=c+1,i=0);return n}e.exports=function(t,e){var r=l(e.cells.values),p=function(t){return t.slice(e.header.values.length,t.length)},d=l(e.header.values);d.length&&!d[0].length&&(d[0]=[\"\"],d=l(d));var g=d.concat(p(r).map((function(){return c((d[0]||[\"\"]).length)}))),m=e.domain,v=Math.floor(t._fullLayout._size.w*(m.x[1]-m.x[0])),y=Math.floor(t._fullLayout._size.h*(m.y[1]-m.y[0])),x=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})):[],_=x.reduce(s,0),w=f(b,y-_+n.uplift),T=h(f(x,_),[]),k=h(w,T),A={},M=e._fullInput.columnorder.concat(p(r.map((function(t,e){return e})))),S=g.map((function(t,r){var n=Array.isArray(e.columnwidth)?e.columnwidth[Math.min(r,e.columnwidth.length-1)]:e.columnwidth;return i(n)?Number(n):1})),E=S.reduce(s,0);S=S.map((function(t){return t/E*v}));var C=Math.max(o(e.header.line.width),o(e.cells.line.width)),L={key:e.uid+t._context.staticPlot,translateX:m.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-m.y[1]),size:t._fullLayout._size,width:v,maxLineWidth:C,height:y,columnOrder:M,groupHeight:y,rowBlocks:k,headerRowBlocks:T,scrollY:0,cells:a({},e.cells,{values:r}),headerCells:a({},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=A[t];return A[t]=(r||0)+1,{key:t+\"__\"+A[t],label:t,specIndex:e,xIndex:M[e],xScale:u,x:void 0,calcdata:void 0,columnWidth:S[e]}}))};return L.columns.forEach((function(t){t.calcdata=L,t.x=u(t)})),L}},{\"../../lib/extend\":719,\"./constants\":1265,\"fast-isnumeric\":236}],1267:[function(t,e,r){\"use strict\";var n=t(\"../../lib/extend\").extendFlat;r.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]},r.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],r=e?e.rows[0].rowIndex:0,n=e?r+e.rows.length:0;return[r,n]}(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}}))}},{\"../../lib/extend\":719}],1268:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../plots/domain\").defaults;e.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}i(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\",n.extendFlat({},o.font)),function(t,e){for(var r=t.columnorder||[],n=t.header.values.length,a=r.slice(0,n),i=a.slice().sort((function(t,e){return t-e})),o=a.map((function(t){return i.indexOf(t)})),s=o.length;s/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c,u=\"string\"==typeof(c=i)&&c.match(n.latexCheck);t.latex=u;var h,f,p=u?\"\":_(t.calcdata.cells.prefix,e,r)||\"\",d=u?\"\":_(t.calcdata.cells.suffix,e,r)||\"\",g=u?null:_(t.calcdata.cells.format,e,r)||null,m=p+(g?a.format(g)(t.value):t.value)+d;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(h=b(m)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===h?b(m):h),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var v=(\" \"===n.wrapSplitCharacter?m.replace(/a&&n.push(i),a+=l}return n}(a,l,s);1===c.length&&(c[0]===a.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){return\"translate(0 \"+(z(t.rowBlocks,t.page)-t.scrollY)+\")\"})),t&&(E(t,r,e,c,n.prevPages,n,0),E(t,r,e,c,n.prevPages,n,1),v(r,t))}}function S(t,e,r,i){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===i?s.scrollY+c*a.event.dy:i;var h=l.selectAll(\".\"+n.cn.yColumn).selectAll(\".\"+n.cn.columnBlock).filter(T);return M(t,h,l),s.scrollY===u}}function E(t,e,r,n,a,i,o){n[o]!==a[o]&&(clearTimeout(i.currentRepaint[o]),i.currentRepaint[o]=setTimeout((function(){var i=r.filter((function(t,e){return e===o&&n[e]!==a[e]}));y(t,e,i,r),a[o]=n[o]})))}function C(t,e,r,i){return function(){var o=a.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,a,i=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+(a=(r=s.shift()).width+i)>u&&(t.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],c=0),l.push(r.text),c+=a;c&&(t.value+=l.join(n.wrapSpacer)),t.wrapped=!0})),o.selectAll(\"tspan.line\").remove(),x(o.select(\".\"+n.cn.cellText),r,t,i),a.select(e.parentNode.parentNode).call(I)}}function L(t,e,r,i,o){return function(){if(!o.settledY){var s=a.select(e.parentNode),l=R(o),c=o.key-l.firstRowIndex,u=l.rows[c].rowHeight,h=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*n.cellPad:u,f=Math.max(h,u);f-l.rows[c].rowHeight&&(l.rows[c].rowHeight=f,t.selectAll(\".\"+n.cn.columnCell).call(I),M(null,t.filter(T),0),v(r,i,!0)),s.attr(\"transform\",(function(){var t=this.parentNode.getBoundingClientRect(),e=a.select(this.parentNode).select(\".\"+n.cn.cellRect).node().getBoundingClientRect(),r=this.transform.baseVal.consolidate(),i=e.top-t.top+(r?r.matrix.f:n.cellPad);return\"translate(\"+P(o,a.select(this.parentNode).select(\".\"+n.cn.cellTextHolder).node().getBoundingClientRect().width)+\" \"+i+\")\"})),o.settledY=!0}}}function P(t,e){switch(t.align){case\"left\":return n.cellPad;case\"right\":return t.column.columnWidth-(e||0)-n.cellPad;case\"center\":return(t.column.columnWidth-(e||0))/2;default:return n.cellPad}}function I(t){t.attr(\"transform\",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+O(e,1/0)}),0);return\"translate(0 \"+(O(R(t),t.key)+e)+\")\"})).selectAll(\".\"+n.cn.cellRect).attr(\"height\",(function(t){return(e=R(t),r=t.key,e.rows[r-e.firstRowIndex]).rowHeight;var e,r}))}function z(t,e){for(var r=0,n=e-1;n>=0;n--)r+=D(t[n]);return r}function O(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:a({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\"},domain:o({name:\"treemap\",trace:!0,editType:\"calc\"})}},{\"../../components/colorscale/attributes\":602,\"../../lib/extend\":719,\"../../plots/domain\":803,\"../../plots/template_attributes\":854,\"../pie/attributes\":1108,\"../sunburst/attributes\":1245,\"./constants\":1274}],1272:[function(t,e,r){\"use strict\";var n=t(\"../../plots/plots\");r.name=\"treemap\",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{\"../../plots/plots\":839}],1273:[function(t,e,r){\"use strict\";var n=t(\"../sunburst/calc\");r.calc=function(t,e){return n.calc(t,e)},r.crossTraceCalc=function(t){return n._runCrossTraceCalc(\"treemap\",t)}},{\"../sunburst/calc\":1247}],1274:[function(t,e,r){\"use strict\";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:\"poly\",eventDataKeys:[\"currentPath\",\"root\",\"entry\",\"percentRoot\",\"percentEntry\",\"percentParent\"],gapWithPathbar:1}},{}],1275:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./attributes\"),i=t(\"../../components/color\"),o=t(\"../../plots/domain\").defaults,s=t(\"../bar/defaults\").handleText,l=t(\"../bar/constants\").TEXTPAD,c=t(\"../../components/colorscale\"),u=c.hasColorscale,h=c.handleDefaults;e.exports=function(t,e,r,c){function f(r,i){return n.coerce(t,e,a,r,i)}var p=f(\"labels\"),d=f(\"parents\");if(p&&p.length&&d&&d.length){var g=f(\"values\");g&&g.length?f(\"branchvalues\"):f(\"count\"),f(\"level\"),f(\"maxdepth\"),\"squarify\"===f(\"tiling.packing\")&&f(\"tiling.squarifyratio\"),f(\"tiling.flip\"),f(\"tiling.pad\");var m=f(\"text\");f(\"texttemplate\"),e.texttemplate||f(\"textinfo\",Array.isArray(m)?\"text+label\":\"label\"),f(\"hovertext\"),f(\"hovertemplate\");var v=f(\"pathbar.visible\");s(t,e,c,f,\"auto\",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),f(\"textposition\");var y=-1!==e.textposition.indexOf(\"bottom\");f(\"marker.line.width\")&&f(\"marker.line.color\",c.paper_bgcolor);var x=f(\"marker.colors\"),b=e._hasColorscale=u(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis;b?h(t,e,c,f,{prefix:\"marker.\",cLetter:\"c\"}):f(\"marker.depthfade\",!(x||[]).length);var _=2*e.textfont.size;f(\"marker.pad.t\",y?_/4:_),f(\"marker.pad.l\",_/4),f(\"marker.pad.r\",_/4),f(\"marker.pad.b\",y?_:_/4),b&&h(t,e,c,f,{prefix:\"marker.\",cLetter:\"c\"}),e._hovered={marker:{line:{width:2,color:i.contrast(c.paper_bgcolor)}}},v&&(f(\"pathbar.thickness\",e.pathbar.textfont.size+2*l),f(\"pathbar.side\"),f(\"pathbar.edgeshape\")),o(e,c,f),e._length=null}else e.visible=!1}},{\"../../components/color\":595,\"../../components/colorscale\":607,\"../../lib\":728,\"../../plots/domain\":803,\"../bar/constants\":871,\"../bar/defaults\":873,\"./attributes\":1271}],1276:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"./partition\"),l=t(\"./style\").styleOne,c=t(\"./constants\"),u=t(\"../sunburst/helpers\"),h=t(\"../sunburst/fx\");e.exports=function(t,e,r,f,p){var d=p.barDifY,g=p.width,m=p.height,v=p.viewX,y=p.viewY,x=p.pathSlice,b=p.toMoveInsideSlice,_=p.strTransform,w=p.hasTransition,T=p.handleSlicesExit,k=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,M={},S=t._fullLayout,E=e[0],C=E.trace,L=E.hierarchy,P=g/C._entryDepth,I=u.listPath(r.data,\"id\"),z=s(L.copy(),[g,m],{packing:\"dice\",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(z=z.filter((function(t){var e=I.indexOf(t.data.id);return-1!==e&&(t.x0=P*e,t.x1=P*(e+1),t.y0=d,t.y1=d+m,t.onPathbar=!0,!0)}))).reverse(),(f=f.data(z,u.getPtId)).enter().append(\"g\").classed(\"pathbar\",!0),T(f,!0,M,[g,m],x),f.order();var O=f;w&&(O=O.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),O.each((function(s){s._hoverX=v(s.x1-Math.min(g,m)/2),s._hoverY=y(s.y1-m/2);var f=n.select(this),p=a.ensureSingle(f,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",\"all\")}));w?p.transition().attrTween(\"d\",(function(t){var e=k(t,!0,M,[g,m]);return function(t){return x(e(t))}})):p.attr(\"d\",x),f.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}),p.call(l,s,C,{hovered:!1}),s._text=(u.getPtLabel(s)||\"\").split(\"
\").join(\" \")||\"\";var d=a.ensureSingle(f,\"g\",\"slicetext\"),T=a.ensureSingle(d,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),E=a.ensureUniformFontSize(t,u.determineTextFont(C,s,S.font,{onPathbar:!0}));T.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",\"start\").call(i.font,E).call(o.convertToTspans,t),s.textBB=i.bBox(T.node()),s.transform=b(s,{fontSize:E.size,onPathbar:!0}),s.transform.fontSize=E.size,w?T.transition().attrTween(\"transform\",(function(t){var e=A(t,!0,M,[g,m]);return function(t){return _(e(t))}})):T.attr(\"transform\",_(s))}))}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../sunburst/fx\":1250,\"../sunburst/helpers\":1251,\"./constants\":1274,\"./partition\":1281,\"./style\":1283,d3:164}],1277:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../../lib/svg_text_utils\"),s=t(\"./partition\"),l=t(\"./style\").styleOne,c=t(\"./constants\"),u=t(\"../sunburst/helpers\"),h=t(\"../sunburst/fx\"),f=t(\"../sunburst/plot\").formatSliceLabel;e.exports=function(t,e,r,p,d){var g=d.width,m=d.height,v=d.viewX,y=d.viewY,x=d.pathSlice,b=d.toMoveInsideSlice,_=d.strTransform,w=d.hasTransition,T=d.handleSlicesExit,k=d.makeUpdateSliceInterpolator,A=d.makeUpdateTextInterpolator,M=d.prevEntry,S=t._fullLayout,E=e[0].trace,C=-1!==E.textposition.indexOf(\"left\"),L=-1!==E.textposition.indexOf(\"right\"),P=-1!==E.textposition.indexOf(\"bottom\"),I=!P&&!E.marker.pad.t||P&&!E.marker.pad.b,z=s(r,[g,m],{packing:E.tiling.packing,squarifyratio:E.tiling.squarifyratio,flipX:E.tiling.flip.indexOf(\"x\")>-1,flipY:E.tiling.flip.indexOf(\"y\")>-1,pad:{inner:E.tiling.pad,top:E.marker.pad.t,left:E.marker.pad.l,right:E.marker.pad.r,bottom:E.marker.pad.b}}).descendants(),O=1/0,D=-1/0;z.forEach((function(t){var e=t.depth;e>=E._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(O=Math.min(O,e),D=Math.max(D,e))})),p=p.data(z,u.getPtId),E._maxVisibleLayers=isFinite(D)?D-O+1:0,p.enter().append(\"g\").classed(\"slice\",!0),T(p,!1,{},[g,m],x),p.order();var R=null;if(w&&M){var F=u.getPtId(M);p.each((function(t){null===R&&u.getPtId(t)===F&&(R={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var B=function(){return R||{x0:0,x1:g,y0:0,y1:m}},N=p;return w&&(N=N.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),N.each((function(s){var p=u.isHeader(s,E);s._hoverX=v(s.x1-E.marker.pad.r),s._hoverY=y(P?s.y1-E.marker.pad.b/2:s.y0+E.marker.pad.t/2);var d=n.select(this),T=a.ensureSingle(d,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",\"all\")}));w?T.transition().attrTween(\"d\",(function(t){var e=k(t,!1,B(),[g,m]);return function(t){return x(e(t))}})):T.attr(\"d\",x),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}),T.call(l,s,E,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text=\"\":s._text=p?I?\"\":u.getPtLabel(s)||\"\":f(s,r,E,e,S)||\"\";var M=a.ensureSingle(d,\"g\",\"slicetext\"),z=a.ensureSingle(M,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),O=a.ensureUniformFontSize(t,u.determineTextFont(E,s,S.font));z.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",L?\"end\":C||p?\"start\":\"middle\").call(i.font,O).call(o.convertToTspans,t),s.textBB=i.bBox(z.node()),s.transform=b(s,{fontSize:O.size,isHeader:p}),s.transform.fontSize=O.size,w?z.transition().attrTween(\"transform\",(function(t){var e=A(t,!1,B(),[g,m]);return function(t){return _(e(t))}})):z.attr(\"transform\",_(s))})),R}},{\"../../components/drawing\":617,\"../../lib\":728,\"../../lib/svg_text_utils\":752,\"../sunburst/fx\":1250,\"../sunburst/helpers\":1251,\"../sunburst/plot\":1255,\"./constants\":1274,\"./partition\":1281,\"./style\":1283,d3:164}],1278:[function(t,e,r){\"use strict\";e.exports={moduleType:\"trace\",name:\"treemap\",basePlotModule:t(\"./base_plot\"),categories:[],animatable:!0,attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\").calc,crossTraceCalc:t(\"./calc\").crossTraceCalc,plot:t(\"./plot\"),style:t(\"./style\").style,colorbar:t(\"../scatter/marker_colorbar\"),meta:{}}},{\"../scatter/marker_colorbar\":1152,\"./attributes\":1271,\"./base_plot\":1272,\"./calc\":1273,\"./defaults\":1275,\"./layout_attributes\":1279,\"./layout_defaults\":1280,\"./plot\":1282,\"./style\":1283}],1279:[function(t,e,r){\"use strict\";e.exports={treemapcolorway:{valType:\"colorlist\",editType:\"calc\"},extendtreemapcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},{}],1280:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"treemapcolorway\",e.colorway),r(\"extendtreemapcolors\")}},{\"../../lib\":728,\"./layout_attributes\":1279}],1281:[function(t,e,r){\"use strict\";var n=t(\"d3-hierarchy\");e.exports=function(t,e,r){var a,i=r.flipX,o=r.flipY,s=\"dice-slice\"===r.packing,l=r.pad[o?\"bottom\":\"top\"],c=r.pad[i?\"right\":\"left\"],u=r.pad[i?\"left\":\"right\"],h=r.pad[o?\"top\":\"bottom\"];s&&(a=c,c=l,l=a,a=u,u=h,h=a);var f=n.treemap().tile(function(t,e){switch(t){case\"squarify\":return n.treemapSquarify.ratio(e);case\"binary\":return n.treemapBinary;case\"dice\":return n.treemapDice;case\"slice\":return n.treemapSlice;default:return n.treemapSliceDice}}(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(c).paddingRight(u).paddingTop(l).paddingBottom(h).size(s?[e[1],e[0]]:e)(t);return(s||i||o)&&function t(e,r,n){var a;n.swapXY&&(a=e.x0,e.x0=e.y0,e.y0=a,a=e.x1,e.x1=e.y1,e.y1=a);n.flipX&&(a=e.x0,e.x0=r[0]-e.x1,e.x1=r[0]-a);n.flipY&&(a=e.y0,e.y0=r[1]-e.y1,e.y1=r[1]-a);var i=e.children;if(i)for(var o=0;o-1?E+P:-(L+P):0,z={x0:C,x1:C,y0:I,y1:I+L},O=function(t,e,r){var n=m.tiling.pad,a=function(t){return t-n<=e.x0},i=function(t){return t+n>=e.x1},o=function(t){return t-n<=e.y0},s=function(t){return t+n>=e.y1};return{x0:a(t.x0-n)?0:i(t.x0-n)?r[0]:t.x0,x1:a(t.x1+n)?0:i(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}},D=null,R={},F={},B=null,N=function(t,e){return e?R[g(t)]:F[g(t)]},j=function(t,e,r,n){if(e)return R[g(v)]||z;var a=F[m.level]||r;return function(t){return t.data.depth-y.data.depth=(n-=v.r-o)){var y=(r+n)/2;r=y,n=y}var x;f?a<(x=i-v.b)&&x\"===Q?(l.x-=i,c.x-=i,u.x-=i,h.x-=i):\"/\"===Q?(u.x-=i,h.x-=i,o.x-=i/2,s.x-=i/2):\"\\\\\"===Q?(l.x-=i,c.x-=i,o.x-=i/2,s.x-=i/2):\"<\"===Q&&(o.x-=i,s.x-=i),K(l),K(h),K(o),K(c),K(u),K(s),\"M\"+X(l.x,l.y)+\"L\"+X(c.x,c.y)+\"L\"+X(s.x,s.y)+\"L\"+X(u.x,u.y)+\"L\"+X(h.x,h.y)+\"L\"+X(o.x,o.y)+\"Z\"},toMoveInsideSlice:$,makeUpdateSliceInterpolator:et,makeUpdateTextInterpolator:rt,handleSlicesExit:nt,hasTransition:T,strTransform:at}):b.remove()}e.exports=function(t,e,r,i){var o,s,l=t._fullLayout,c=l._treemaplayer,f=!r;(u(\"treemap\",l),(o=c.selectAll(\"g.trace.treemap\").data(e,(function(t){return t[0].trace.uid}))).enter().append(\"g\").classed(\"trace\",!0).classed(\"treemap\",!0),o.order(),!l.uniformtext.mode&&a.hasTransition(r))?(i&&(s=i()),n.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){s&&s()})).each(\"interrupt\",(function(){s&&s()})).each((function(){c.selectAll(\"g.trace\").each((function(e){m(t,e,this,r)}))}))):(o.each((function(e){m(t,e,this,r)})),l.uniformtext.mode&&h(t,l._treemaplayer.selectAll(\".trace\"),\"treemap\"));f&&o.exit().remove()}},{\"../../lib\":728,\"../bar/constants\":871,\"../bar/plot\":880,\"../bar/style\":883,\"../bar/uniform_text\":885,\"../sunburst/helpers\":1251,\"./constants\":1274,\"./draw_ancestors\":1276,\"./draw_descendants\":1277,d3:164}],1283:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../components/color\"),i=t(\"../../lib\"),o=t(\"../sunburst/helpers\"),s=t(\"../bar/uniform_text\").resizeText;function l(t,e,r,n){var s,l,c=(n||{}).hovered,u=e.data.data,h=u.i,f=u.color,p=o.isHierarchyRoot(e),d=1;if(c)s=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(p&&\"rgba(0,0,0,0)\"===f)d=0,s=\"rgba(0,0,0,0)\",l=0;else if(s=i.castOption(r,h,\"marker.line.color\")||a.defaultLine,l=i.castOption(r,h,\"marker.line.width\")||0,!r._hasColorscale&&!e.onPathbar){var g=r.marker.depthfade;if(g){var m,v=a.combine(a.addOpacity(r._backgroundColor,.75),f);if(!0===g){var y=o.getMaxDepth(r);m=isFinite(y)?o.isLeaf(e)?0:r._maxVisibleLayers-(e.data.depth-r._entryDepth):e.data.height+1}else m=e.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var x=0;x0){var y,x,b,_,w,T=t.xa,k=t.ya;\"h\"===f.orientation?(w=e,y=\"y\",b=k,x=\"x\",_=T):(w=r,y=\"x\",b=T,x=\"y\",_=k);var A=h[t.index];if(w>=A.span[0]&&w<=A.span[1]){var M=n.extendFlat({},t),S=_.c2p(w,!0),E=o.getKdeValue(A,f,w),C=o.getPositionOnKdePath(A,f,S),L=b._offset,P=b._length;M[y+\"0\"]=C[0],M[y+\"1\"]=C[1],M[x+\"0\"]=M[x+\"1\"]=S,M[x+\"Label\"]=x+\": \"+a.hoverLabelText(_,w)+\", \"+h[0].t.labels.kde+\" \"+E.toFixed(3),M.spikeDistance=v[0].spikeDistance;var I=y+\"Spike\";M[I]=v[0][I],v[0].spikeDistance=void 0,v[0][I]=void 0,M.hovertemplate=!1,m.push(M),(u={stroke:t.color})[y+\"1\"]=n.constrain(L+C[0],L,L+P),u[y+\"2\"]=n.constrain(L+C[1],L,L+P),u[x+\"1\"]=u[x+\"2\"]=_._offset+S}}d&&(m=m.concat(v))}-1!==p.indexOf(\"points\")&&(c=i.hoverOnPoints(t,e,r));var z=l.selectAll(\".violinline-\"+f.uid).data(u?[0]:[]);return z.enter().append(\"line\").classed(\"violinline-\"+f.uid,!0).attr(\"stroke-width\",1.5),z.exit().remove(),z.attr(u),\"closest\"===s?c?[c]:m:c?(m.push(c),m):m}},{\"../../lib\":728,\"../../plots/cartesian/axes\":776,\"../box/hover\":899,\"./helpers\":1288}],1290:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\"),crossTraceDefaults:t(\"../box/defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\"),styleOnSelect:t(\"../scatter/style\").styleOnSelect,hoverPoints:t(\"./hover\"),selectPoints:t(\"../box/select\"),moduleType:\"trace\",name:\"violin\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"cartesian\",\"svg\",\"symbols\",\"oriented\",\"box-violin\",\"showLegend\",\"violinLayout\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":789,\"../box/defaults\":897,\"../box/select\":904,\"../scatter/style\":1157,\"./attributes\":1284,\"./calc\":1285,\"./cross_trace_calc\":1286,\"./defaults\":1287,\"./hover\":1289,\"./layout_attributes\":1291,\"./layout_defaults\":1292,\"./plot\":1293,\"./style\":1294}],1291:[function(t,e,r){\"use strict\";var n=t(\"../box/layout_attributes\"),a=t(\"../../lib\").extendFlat;e.exports={violinmode:a({},n.boxmode,{}),violingap:a({},n.boxgap,{}),violingroupgap:a({},n.boxgroupgap,{})}},{\"../../lib\":728,\"../box/layout_attributes\":901}],1292:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\"),i=t(\"../box/layout_defaults\");e.exports=function(t,e,r){i._supply(t,e,r,(function(r,i){return n.coerce(t,e,a,r,i)}),\"violin\")}},{\"../../lib\":728,\"../box/layout_defaults\":902,\"./layout_attributes\":1291}],1293:[function(t,e,r){\"use strict\";var n=t(\"d3\"),a=t(\"../../lib\"),i=t(\"../../components/drawing\"),o=t(\"../box/plot\"),s=t(\"../scatter/line_points\"),l=t(\"./helpers\");e.exports=function(t,e,r,c){var u=t._fullLayout,h=e.xaxis,f=e.yaxis;function p(t){var e=s(t,{xaxis:h,yaxis:f,connectGaps:!0,baseTolerance:.75,shape:\"spline\",simplify:!0,linearized:!0});return i.smoothopen(e[0],1)}a.makeTraceGroups(c,r,\"trace violins\").each((function(t){var r=n.select(this),i=t[0],s=i.t,c=i.trace;if(!0!==c.visible||s.empty)r.remove();else{var d=s.bPos,g=s.bdPos,m=e[s.valLetter+\"axis\"],v=e[s.posLetter+\"axis\"],y=\"both\"===c.side,x=y||\"positive\"===c.side,b=y||\"negative\"===c.side,_=r.selectAll(\"path.violin\").data(a.identity);_.enter().append(\"path\").style(\"vector-effect\",\"non-scaling-stroke\").attr(\"class\",\"violin\"),_.exit().remove(),_.each((function(t){var e,r,a,i,o,l,h,f,_=n.select(this),w=t.density,T=w.length,k=v.c2l(t.pos+d,!0),A=v.l2p(k);if(c.width)e=s.maxKDE/g;else{var M=u._violinScaleGroupStats[c.scalegroup];e=\"count\"===c.scalemode?M.maxKDE/g*(M.maxCount/t.pts.length):M.maxKDE/g}if(x){for(h=new Array(T),o=0;o\")),c.color=function(t,e){var r=t[e.dir].marker,n=r.color,i=r.line.color,o=r.line.width;if(a(n))return n;if(a(i)&&o)return i}(h,d),[c]}function w(t){return n(p,t)}}},{\"../../components/color\":595,\"../../constants/delta.js\":698,\"../../plots/cartesian/axes\":776,\"../bar/hover\":876}],1306:[function(t,e,r){\"use strict\";e.exports={attributes:t(\"./attributes\"),layoutAttributes:t(\"./layout_attributes\"),supplyDefaults:t(\"./defaults\").supplyDefaults,crossTraceDefaults:t(\"./defaults\").crossTraceDefaults,supplyLayoutDefaults:t(\"./layout_defaults\"),calc:t(\"./calc\"),crossTraceCalc:t(\"./cross_trace_calc\"),plot:t(\"./plot\"),style:t(\"./style\").style,hoverPoints:t(\"./hover\"),eventData:t(\"./event_data\"),selectPoints:t(\"../bar/select\"),moduleType:\"trace\",name:\"waterfall\",basePlotModule:t(\"../../plots/cartesian\"),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},{\"../../plots/cartesian\":789,\"../bar/select\":881,\"./attributes\":1299,\"./calc\":1300,\"./cross_trace_calc\":1302,\"./defaults\":1303,\"./event_data\":1304,\"./hover\":1305,\"./layout_attributes\":1307,\"./layout_defaults\":1308,\"./plot\":1309,\"./style\":1310}],1307:[function(t,e,r){\"use strict\";e.exports={waterfallmode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"group\",editType:\"calc\"},waterfallgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},waterfallgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},{}],1308:[function(t,e,r){\"use strict\";var n=t(\"../../lib\"),a=t(\"./layout_attributes\");e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s0&&(m+=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(i.fill,e.color).call(i.stroke,e.line.color).call(a.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;a.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},{\"../../components/color\":595,\"../../components/drawing\":617,\"../../constants/interactions\":703,\"../bar/style\":883,\"../bar/uniform_text\":885,d3:164}],1311:[function(t,e,r){\"use strict\";var n=t(\"../plots/cartesian/axes\"),a=t(\"../lib\"),i=t(\"../plot_api/plot_schema\"),o=t(\"./helpers\").pointsAccessorFunction,s=t(\"../constants/numerical\").BADNUM;r.moduleType=\"transform\",r.name=\"aggregate\";var l=r.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,i){if(i.enabled){for(var o=i.target,l=a.nestedProperty(e,o),c=l.get(),u=function(t,e){var r=t.func,n=e.d2c,i=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,a=0;aa&&(a=u,o=c)}}return a?i(o):s};case\"rms\":return function(t,e){for(var r=0,a=0,o=0;o\":return function(t){return f(t)>s};case\">=\":return function(t){return f(t)>=s};case\"[]\":return function(t){var e=f(t);return e>=s[0]&&e<=s[1]};case\"()\":return function(t){var e=f(t);return e>s[0]&&e=s[0]&&es[0]&&e<=s[1]};case\"][\":return function(t){var e=f(t);return e<=s[0]||e>=s[1]};case\")(\":return function(t){var e=f(t);return es[1]};case\"](\":return function(t){var e=f(t);return e<=s[0]||e>s[1]};case\")[\":return function(t){var e=f(t);return e=s[1]};case\"{}\":return function(t){return-1!==s.indexOf(f(t))};case\"}{\":return function(t){return-1===s.indexOf(f(t))}}}(r,i.getDataToCoordFunc(t,e,s,a),f),x={},b={},_=0;d?(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set(new Array(h))},v=function(t,e){var r=x[t.astr][e];t.get()[e]=r}):(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set([])},v=function(t,e){var r=x[t.astr][e];t.get().push(r)}),k(m);for(var w=o(e.transforms,r),T=0;T1?\"%{group} (%{trace})\":\"%{group}\");var l=t.styles,c=o.styles=[];if(l)for(i=0;i\n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Induced Drag", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 10800, 10748.53364019368, 10697.434292704282, 10646.698476201344, 10596.322750534837, 10546.303716152013, 10496.638013523847, 10447.322322580918, 10398.353362158534, 10349.727889450962, 10301.442699474537, 10253.494624539544, 10205.880533730675, 10158.597332395897, 10111.641961643621, 10065.011397847955, 10018.70265216193, 9972.712770038568, 9927.038830759608, 9881.677946971762, 9836.627264230397, 9791.883960550464, 9747.445245964545, 9703.308362087948, 9659.470581690637, 9615.929208275933, 9572.681575665843, 9529.725047592921, 9487.057017298477, 9444.674907137127, 9402.57616818747, 9360.758279868838, 9319.218749564012, 9277.95511224776, 9236.964930121145, 9196.245792251442, 9155.795314217643, 9115.611137761363, 9075.690930443128, 9036.03238530391, 8996.633220531816, 8957.491179133864, 8918.604028612757, 8879.969560648531, 8841.58559078504, 8803.449958121168, 8765.56052500669, 8727.915176742701, 8690.51182128656, 8653.348388961209, 8616.422832168886, 8579.733125109062, 8543.277263500579, 8507.053264307939, 8471.059165471623, 8435.293025642384, 8399.752923919494, 8364.436959592815, 8329.343251888666, 8294.469939719404, 8259.815181436694, 8225.377154588346, 8191.15405567872, 8157.144099932595, 8123.3455210624725, 8089.756571039235, 8056.375519866146, 8023.200655356057, 7990.230282911879, 7957.462725310159, 7924.896322487773, 7892.529431331666, 7860.360425471606, 7828.38769507585, 7796.6096466497675, 7765.024702837273, 7733.63130222509, 7702.427899149769, 7671.412963507444, 7640.584980566236, 7609.942450781317, 7579.483889612551, 7549.207827344686, 7519.112808910044, 7489.197393713716, 7459.4601554611345, 7429.899681988087, 7400.514575093049, 7371.303450371848, 7342.264937054599, 7313.397677844897, 7284.7003287612, 7256.171558980406, 7227.8100506835535, 7199.614498903642, 7171.583611375501, 7143.7161083877445, 7116.010722636685, 7088.466199082274, 7061.081294805954, 7033.854778870436, 7006.785432181394, 6979.872047350979, 6953.113428563183, 6926.50839144102, 6900.055762915452, 6873.754381096083, 6847.603095143582, 6821.600765143779, 6795.746261983442, 6770.03846722771, 6744.476272999133, 6719.058581858297, 6693.784306686051, 6668.652370567261, 6643.661706676074, 6618.811258162729, 6594.099978041803, 6569.526829081938, 6545.090783696985, 6520.790823838602, 6496.625940890183, 6472.595135562227, 6448.697417789005, 6424.931806626596, 6401.297330152211, 6377.79302536483, 6354.417938087097, 6331.1711228684935, 6308.051642889717, 6285.058569868316, 6262.19098396549, 6239.447973694113, 6216.828635827882, 6194.332075311658, 6171.957405172907, 6149.703746434282, 6127.570228027283, 6105.555986707029, 6083.660166968077, 6061.881920961314, 6040.220408411874, 6018.6747965380855, 5997.244259971429, 5975.9279806774975, 5954.725147877916, 5933.634957973265, 5912.656614466919, 5891.789327889854, 5871.032315726365, 5850.3848023407145, 5829.846018904659, 5809.415203325893, 5789.091600177345, 5768.874460627349, 5748.763042370664, 5728.756609560341, 5708.854432740405, 5689.055788779374, 5669.359960804559, 5649.766238137183, 5630.273916228258, 5610.882296595268, 5591.590686759574, 5572.398400184609, 5553.30475621479, 5534.309080015168, 5515.4107025117955, 5496.608960332825, 5477.903195750271, 5459.292756622511, 5440.776996337428, 5422.355273756255, 5404.026953158058, 5385.791404184915, 5367.648001787688, 5349.59612617248, 5331.635162747697, 5313.764502071737, 5295.983539801286, 5278.291676640235, 5260.688318289167, 5243.172875395464, 5225.744763503967, 5208.403403008224, 5191.148219102294, 5173.978641733128, 5156.89410555347, 5139.894049875328, 5122.977918623972, 5106.145160292457, 5089.395227896666, 5072.727578930886, 5056.141675323866, 5039.636983395406, 5023.212973813413, 5006.869121551464, 4990.60490584685, 4974.419810159088, 4958.313322128912, 4942.28493353772, 4926.334140267486, 4910.46044226112, 4894.6633434832775, 4878.9423518816075, 4863.296979348427, 4847.726741682852, 4832.2311585533125, 4816.809753460524, 4801.462053700843, 4786.187590330056, 4770.985898127542, 4755.856515560864, 4740.798984750729, 4725.812851436339, 4710.897664941149, 4696.0529781389605, 4681.278347420428, 4666.573332659908, 4651.93749718269, 4637.370407732566, 4622.8716344397735, 4608.440750789287, 4594.077333589439, 4579.7809629409, 4565.551222205993, 4551.38769797833, 4537.289980052794, 4523.257661395829, 4509.290338116069, 4495.387609435267, 4481.549077659553, 4467.774348150984, 4454.063029299412, 4440.414732494653, 4426.82907209895, 4413.305665419731, 4399.84413268266, 4386.444097004973, 4373.105184369097, 4359.827023596553, 4346.609246322138, 4333.451486968367, 4320.353382720206, 4307.314573500053, 4294.334701942989, 4281.413413372298, 4268.550355775239, 4255.745179779061, 4242.997538627289, 4230.307088156247, 4217.673486771822, 4205.0963954264835, 4192.575477596536, 4180.110399259603, 4167.700828872353, 4155.346437348455, 4143.046898036756, 4130.801886699693, 4118.611081491923, 4106.474162939175, 4094.390813917318, 4082.3607196316493, 4070.383567596385, 4058.459047614371, 4046.586851757001, 4034.766674344335, 4022.998211925421, 4011.2811632588214, 3999.615229293334, 3988.000113148909, 3976.435520097765, 3964.9211575456925, 3953.4567350135394, 3942.0419641188996, 3930.6765585579697, 3919.3602340876005, 3908.092708507526, 3896.873701642768, 3885.702935326217, 3874.5801333813956, 3863.50502160538, 3852.477327751906, 3841.496781514641, 3830.563114510612, 3819.6760602638124, 3808.8353541889624, 3798.0407335754335, 3787.291937571332, 3776.5887071677435, 3765.9307851831254, 3755.3179162478614, 3744.7498467889613, 3734.226325014914, 3723.7471009006917, 3713.311926172899, 3702.9205542950685, 3692.5727404530944, 3682.268241540821, 3672.0068161457543, 3661.78822453493, 3651.612228640911, 3641.4785920479176, 3631.387079978098, 3621.3374592779314, 3611.329498404756, 3601.3629674134368, 3591.437637943156, 3581.553283204332, 3571.7096779656617, 3561.906598541297, 3552.143822778126, 3542.4211300431953, 3532.738301211242, 3523.0951186523484, 3513.4913662197123, 3503.9268292375345, 3494.401294489022, 3484.914550204504, 3475.4663860496657, 3466.0565931138863, 3456.6849638986914, 3447.351292306316, 3438.055373628367, 3428.7970045346055, 3419.5759830618263, 3410.3921086028436, 3401.245181895578, 3392.135005012252, 3383.0613813486766, 3374.02411561365, 3365.023013818448, 3356.057883266411, 3347.128532542635, 3338.2347715037504, 3329.3764112678004, 3320.553264204214, 3311.7651439238693, 3303.0118652692504, 3294.293244304694, 3285.6090983067256, 3276.959245754488, 3268.3435063202514, 3259.761700860022, 3251.2136514042218, 3242.699181148468, 3234.218114444428, 3225.770276790758, 3217.3554948241303, 3208.973596310338, 3200.6244101354837, 3192.3077662972414, 3184.0234958962087, 3175.771431127325, 3167.5514052713775, 3159.3632526865827, 3151.206808800237, 3143.081910100451, 3134.988394127952, 3126.926099467963, 3118.8948657421565, 3110.894533600679, 3102.924944714244, 3094.9859417662997, 3087.0773684452683, 3079.1990694368455, 3071.35089041638, 3063.532678041316, 3055.7442799437017, 3047.9855447227633, 3040.2563219375525, 3032.556462099648, 3024.88581666593, 3017.2442380314183, 3009.631579522167, 3002.0476953882317, 2994.4924407966873, 2986.9656718247156, 2979.4672454527517, 2971.997019557691, 2964.554852906152, 2957.140605147804, 2949.7541368087454, 2942.3953092849497, 2935.0639848357578, 2927.760026577438, 2920.483298476793, 2913.2336653448283, 2906.010992830468, 2898.8151474143383, 2891.6459964025885, 2884.5034079207812, 2877.3872509078224, 2870.2973951099525, 2863.2337110747817, 2856.1960701453872, 2849.184344454448, 2842.198406918442, 2835.2381312318853, 2828.303391861624, 2821.3940640411715, 2814.510023765102, 2807.6511477834797, 2800.817313596347, 2794.0083994482547, 2787.2242843228364, 2780.464847937432, 2773.7299707377574, 2767.0195338926155, 2760.333419288659, 2753.6715095251893, 2747.033687909003, 2740.4198384492825, 2733.8298458525287, 2727.263595517538, 2720.7209735304164, 2714.2018666596437, 2707.70616235117, 2701.2337487235577, 2694.7845145631686, 2688.3583493193805, 2681.9551430998526, 2675.574786665829, 2669.2171714274755, 2662.882189439262, 2656.5697333953813, 2650.2796966252004, 2644.0119730887604, 2637.766457372303, 2631.54304468384, 2625.3416308487554, 2619.162112305449, 2613.0043861010104, 2606.868349886932, 2600.7539019148558, 2594.6609410323567, 2588.5893666787542, 2582.539078880971, 2576.509978249409, 2570.501965973874, 2564.514943819527, 2558.5488141228634, 2552.603479787734, 2546.678844281396, 2540.7748116305884, 2534.891286417654, 2529.0281737766763, 2523.1853793896607, 2517.3628094827363, 2511.5603708224, 2505.777970711776, 2500.0155169869236, 2494.272918013154, 2488.5500826813964, 2482.8469204045778, 2477.1633411140415, 2471.499255255991, 2465.8545737879613, 2460.2292081753194, 2454.623070387793, 2449.0360728960286, 2443.468128668168, 2437.9191511664694, 2432.389054343936, 2426.877752640985, 2421.3851609821363, 2415.9111947727306, 2410.4557698956687, 2405.018802708185, 2399.6002100386395, 2394.199909183335, 2388.8178179033634, 2383.453854421475, 2378.1079374189694, 2372.7799860326168, 2367.469919851598, 2362.177658914472, 2356.903123706165, 2351.646235154983, 2346.406914629647, 2341.1850839363565, 2335.9806653158703, 2330.79358144061, 2325.6237554117893, 2320.471110756565, 2315.335571425204, 2310.217061788284, 2305.1155066339047, 2300.030831164926, 2294.9629609962253, 2289.9118221519802, 2284.877341062964, 2279.859444563871, 2274.8580598906565, 2269.8731146779005, 2264.904536956186, 2259.9522551495074, 2255.0161980726857, 2250.0962949288164, 2245.1924753067296, 2240.304669178468, 2235.432806896789, 2230.5768191926845, 2225.736637172915, 2220.9121923175703, 2216.1034164776433, 2211.310241872622, 2206.5326010881013, 2201.7704270734152, 2197.0236531392784, 2192.292212955458, 2187.5760405484543, 2182.875070299198, 2178.1892369407715, 2173.5184755561427, 2168.8627215759125, 2164.2219107760898, 2159.5959792758727, 2154.98486353545, 2150.3885003538226, 2145.806826866634, 2141.2397805440205, 2136.6872991884825, 2132.149320932762, 2127.625784237744, 2123.1166278903684, 2118.621791001559, 2114.1412130041676, 2109.6748336509363, 2105.2225930124687, 2100.7844314752233, 2096.360289739514, 2091.950108817534, 2087.553830031382, 2083.17139501112, 2078.802745692829, 2074.4478243166877, 2070.106573425064, 2065.7789358606205, 2061.464854764428, 2057.1642735741043, 2052.8771360219584, 2048.603386133148, 2044.3429682238539, 2040.0958268994664, 2035.8619070527818, 2031.6411538622208, 2027.433512790048, 2023.2389295806136, 2019.0573502586024, 2014.8887211272997, 2010.7329887668636, 2006.590100032618, 2002.4600020533512, 1998.342642229629, 1994.2379682321207, 1990.1459279999367, 1986.0664697389745, 1981.9995419202855, 1977.9450932784432, 1973.9030728099292, 1969.8734297715287, 1965.8561136787403, 1961.8510743041886, 1957.8582616760627, 1953.877626076551, 1949.909118040296, 1945.9526883528576, 1942.0082880491873, 1938.0758684121104, 1934.1553809708264, 1930.2467774994134, 1926.3500100153435, 1922.4650307780116, 1918.5917922872748, 1914.7302472819952, 1910.8803487386044, 1907.042049869669, 1903.2153041224685, 1899.4000651775852, 1895.5962869475022, 1891.8039235752094, 1888.0229294328253, 1884.2532591202219, 1880.4948674636626, 1876.7477095144486, 1873.011740547576, 1869.286916060398, 1865.5731917713042, 1861.8705236184019, 1858.178867758209, 1854.498180564357, 1850.8284186263022, 1847.1695387480436, 1843.521497946855, 1839.8842534520209, 1836.2577627035823, 1832.6419833510936, 1829.0368732523846, 1825.4423904723312, 1821.8584932816402, 1818.2851401556343, 1814.7222897730508, 1811.1699010148473, 1807.6279329630147, 1804.0963448993982, 1800.5750963045289, 1797.0641468564604, 1793.5634564296145, 1790.0729850936355, 1786.5926931122506, 1783.122540942138, 1779.6624892318064, 1776.2124988204785, 1772.7725307369808, 1769.342546198646, 1765.9225066102185, 1762.5123735627667, 1759.1121088326092, 1755.7216743802396, 1752.341032349265, 1748.9701450653479, 1745.6089750351575, 1742.2574849453256, 1738.915637661413, 1735.5833962268805, 1732.2607238620653, 1728.9475839631687, 1725.643940101247, 1722.3497560212077, 1719.064995640819, 1715.7896230497195, 1712.5236025084366, 1709.2668984474121, 1706.0194754660342, 1702.7812983316726, 1699.552331978728, 1696.3325415076783, 1693.1218921841373, 1689.9203494379185, 1686.727878862104, 1683.544446212118, 1680.3700174048126, 1677.2045585175522, 1674.0480357873093, 1670.9004156097624, 1667.7616645384032, 1664.6317492836456, 1661.510636711947, 1658.3982938449285, 1655.2946878585037, 1652.199786082015, 1649.113555997373, 1646.0359652382003, 1642.9669815889868, 1639.9065729842434, 1636.8547075076665, 1633.8113533913045, 1630.7764790147323, 1627.750052904227, 1624.7320437319568, 1621.722420315166, 1618.721151615372, 1615.728206737564, 1612.743554929408, 1609.7671655804563, 1606.799008221364, 1603.8390525231082, 1600.8872682962144, 1597.9436254899842, 1595.0080941917342, 1592.0806446260322, 1589.1612471539438, 1586.2498722722844, 1583.34649061287, 1580.4510729417786, 1577.5635901586154, 1574.6840132957775, 1571.8123135177332, 1568.9484621202948, 1566.0924305299047, 1563.2441903029214, 1560.403713124912, 1557.570970809946, 1554.7459352998999, 1551.92857866376, 1549.1188730969322, 1546.3167909205577, 1543.5223045808286, 1540.735386648312, 1537.9560098172772, 1535.1841469050266, 1532.419770851231, 1529.6628547172688, 1526.9133716855706, 1524.1712950589651, 1521.4365982600336, 1518.7092548304647, 1515.9892384304142, 1513.2765228378692, 1510.571081948017, 1507.8728897726148, 1505.1819204393685, 1502.4981481913112, 1499.821547386186, 1497.152092495835, 1494.48975810559, 1491.834518913666, 1489.186349730563, 1486.5452254784673, 1483.9111211906566, 1481.2840120109117, 1478.6638731929295, 1476.0506800997396, 1473.4444082031255, 1470.8450330830503, 1468.252530427083, 1465.6668760298305, 1463.0880457923734, 1460.5160157217022, 1457.9507619301623, 1455.3922606348974, 1452.8404881572992, 1450.295420922458, 1447.757035458621, 1445.2253083966473, 1442.7002164694732, 1440.1817365115774, 1437.6698454584473, 1435.1645203460537, 1432.6657383103245, 1430.1734765866222, 1427.6877125092283, 1425.2084235108246, 1422.7355871219836, 1420.2691809706578, 1417.8091827816754, 1415.3555703762336, 1412.908321671404, 1410.4674146796324, 1408.0328275082447, 1405.6045383589574, 1403.18252552739, 1400.7667674025772, 1398.3572424664906, 1395.9539292935565, 1393.5568065501816, 1391.1658529942788, 1388.7810474747962, 1386.4023689312492, 1384.0297963932571, 1381.663308980079, 1379.3028859001558, 1376.9485064506532, 1374.600150017007, 1372.2577960724718, 1369.9214241776738, 1367.591013980164, 1365.266545213975, 1362.9479976991804, 1360.6353513414574, 1358.3285861316497, 1356.0276821453367, 1353.7326195424032, 1351.4433785666095, 1349.1599395451685, 1346.8822828883228, 1344.6103890889224, 1342.3442387220102, 1340.0838124444044, 1337.829090994287, 1335.580055190793, 1333.3366859336013, 1331.0989642025315, 1328.86687105714, 1326.6403876363177, 1324.419495157893, 1322.204174918236, 1319.994408291863, 1317.7901767310464, 1315.5914617654257, 1313.3982450016197, 1311.2105081228415, 1309.0282328885185, 1306.8514011339082, 1304.6799947697239, 1302.5139957817564, 1300.3533862305026, 1298.198148250792, 1296.0482640514188, 1293.9037159147729, 1291.7644861964773, 1289.6305573250243, 1287.5019118014131, 1285.3785321987937, 1283.260401162108, 1281.147501407736, 1279.0398157231434, 1276.9373269665314, 1274.840018066487, 1272.7478720216372, 1270.6608719003052, 1268.579000840166, 1266.502242047907, 1264.4305787988894, 1262.3639944368115, 1260.3024723733731, 1258.245996087944, 1256.1945491272304, 1254.148115104949, 1252.1066777014985, 1250.0702206636336, 1248.0387278041417, 1246.0121830015223, 1243.9905701996652, 1241.973873407535, 1239.9620766988526, 1237.955164211782, 1235.9531201486172, 1233.9559287754719, 1231.9635744219693, 1229.976041480935, 1227.993314408093, 1226.0153777217595, 1224.0422160025416, 1222.0738138930378, 1220.1101560975364, 1218.151227381722, 1216.1970125723774, 1214.2474965570902, 1212.3026642839616, 1210.3625007613152, 1208.4269910574076, 1206.4961203001424, 1204.5698736767833, 1202.6482364336707, 1200.7311938759387, 1198.8187313672352, 1196.9108343294404, 1195.007488242392, 1193.1086786436058, 1191.2143911280034, 1189.324611347638, 1187.4393250114229, 1185.5585178848598, 1183.6821757897735, 1181.8102846040415, 1179.9428302613294, 1178.0797987508272, 1176.2211761169867, 1174.3669484592574, 1172.5171019318304, 1170.6716227433776, 1168.830497156796, 1166.9937114889499, 1165.1612521104196, 1163.3331054452458, 1161.5092579706795, 1159.689696216933, 1157.874406766929, 1156.0633762560549, 1154.2565913719154, 1152.454038854089, 1150.655705493885, 1148.8615781341002, 1147.071643668779, 1145.285889042974, 1143.504301252509, 1141.7268673437388, 1139.9535744133184, 1138.1844096079658, 1136.4193601242293, 1134.6584132082571, 1132.9015561555666, 1131.1487763108132, 1129.4000610675655, 1127.6553978680768, 1125.91477420306, 1124.1781776114635, 1122.4455956802483, 1120.717016044165, 1118.992426385535, 1117.27181443403, 1115.5551679664543, 1113.8424748065265, 1112.1337228246657, 1110.4288999377738, 1108.7279941090253, 1107.030993347652, 1105.337885708733, 1103.6486592929846, 1101.9633022465512, 1100.2818027607955, 1098.6041490720952, 1096.9303294616338, 1095.2603322551984, 1093.5941458229745, 1091.9317585793447, 1090.2731589826863, 1088.6183355351716, 1086.9672767825687, 1085.319971314043, 1083.67640776196, 1082.03657480169, 1080.4004611514108, 1078.7680555719169, 1077.1393468664235, 1075.5143238803767, 1073.8929755012614, 1072.2752906584105, 1070.6612583228186, 1069.0508675069511, 1067.444107264559, 1065.8409666904922, 1064.241434920515, 1062.6455011311207, 1061.0531545393499, 1059.4643844026086, 1057.8791800184854, 1056.2975307245727, 1054.7194258982872, 1053.1448549566896, 1051.5738073563111, 1050.006272592973, 1048.442240201613, 1046.8816997561112, 1045.3246408691143, 1043.7710531918642, 1042.2209264140258, 1040.674250263516, 1039.1310145063326, 1037.591208946387, 1036.054823425334, 1034.521847822404, 1032.9922720542381, 1031.4660860747215, 1029.9432798748178, 1028.4238434824053, 1026.9077669621151, 1025.395040415166, 1023.8856539792052, 1022.379597828147, 1020.876862172012, 1019.3774372567693, 1017.8813133641776, 1016.3884808116267, 1014.8989299519828, 1013.4126511734318, 1011.9296348993234, 1010.4498715880183, 1008.9733517327338, 1007.5000658613907, 1006.0300045364628, 1004.5631583548244, 1003.099517947601, 1001.6390739800189, 1000.1818171512568, 998.727738194297, 997.2768278757792, 995.8290769958534, 994.3844763880338, 992.9430169190541, 991.5046894887231, 990.0694850297801, 988.6373945077539, 987.208408920819, 985.782519299655, 984.3597167073053, 982.9399922390377, 981.523337022204, 980.1097422161026, 978.69919901184, 977.291698632194, 975.8872323314757, 974.4857913953961, 973.0873671409281, 971.6919509161744, 970.2995341002324, 968.9101081030617, 967.5236643653508, 966.1401943583863, 964.7596895839205, 963.3821415740422, 962.007541891046, 960.6358821273035, 959.2671539051344, 957.9013488766793, 956.5384587237706, 955.1784751578085, 953.8213899196329, 952.4671947793988, 951.1158815364515, 949.7674420192029, 948.4218680850059, 947.0791516200348, 945.7392845391602, 944.4022587858284, 943.0680663319406, 941.7366991777319, 940.4081493516508 ] }, { "name": "Profile Drag", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 1706.666666666667, 1714.83856468331, 1723.0299804291153, 1731.2409139040813, 1739.4713651082088, 1747.7213340414983, 1755.9908207039484, 1764.2798250955602, 1772.5883472163337, 1780.9163870662683, 1789.2639446453643, 1797.6310199536222, 1806.017612991041, 1814.4237237576212, 1822.8493522533633, 1831.2944984782664, 1839.7591624323309, 1848.2433441155572, 1856.7470435279445, 1865.2702606694932, 1873.8129955402037, 1882.3752481400754, 1890.9570184691083, 1899.558306527303, 1908.179112314659, 1916.8194358311762, 1925.4792770768554, 1934.1586360516956, 1942.857512755697, 1951.5759071888604, 1960.3138193511845, 1969.0712492426703, 1977.848196863318, 1986.6446622131264, 1995.4606452920964, 2004.2961461002283, 2013.1511646375207, 2022.0257009039753, 2030.9197548995915, 2039.833326624369, 2048.766416078307, 2057.719023261407, 2066.691148173668, 2075.6827908150913, 2084.693951185676, 2093.7246292854215, 2102.7748251143285, 2111.8445386723974, 2120.9337699596263, 2130.042518976018, 2139.170785721571, 2148.318570196285, 2157.4858724001606, 2166.6726923331985, 2175.8790299953957, 2185.104885386756, 2194.350258507278, 2203.615149356961, 2212.8995579358043, 2222.2034842438097, 2231.526928280977, 2240.869890047305, 2250.2323695427954, 2259.614366767447, 2269.0158817212587, 2278.436914404233, 2287.877464816368, 2297.337532957665, 2306.817118828124, 2316.316222427744, 2325.834843756524, 2335.372982814467, 2344.9306396015704, 2354.507814117836, 2364.1045063632628, 2373.7207163378516, 2383.3564440416003, 2393.011689474512, 2402.6864526365835, 2412.380733527818, 2422.0945321482136, 2431.8278484977704, 2441.580682576488, 2451.353034384368, 2461.144903921408, 2470.9562911876105, 2480.7871961829746, 2490.6376189075004, 2500.5075593611864, 2510.3970175440345, 2520.3059934560433, 2530.2344870972147, 2540.1824984675472, 2550.150027567041, 2560.137074395696, 2570.1436389535124, 2580.16972124049, 2590.2153212566295, 2600.280439001931, 2610.3650744763922, 2620.469227680016, 2630.5928986128015, 2640.736087274747, 2650.8987936658555, 2661.0810177861254, 2671.282759635555, 2681.504019214148, 2691.744796521901, 2702.0050915588154, 2712.284904324892, 2722.58423482013, 2732.903083044529, 2743.2414489980897, 2753.599332680812, 2763.9767340926946, 2774.3736532337402, 2784.7900901039466, 2795.2260447033145, 2805.681517031843, 2816.156507089534, 2826.651014876385, 2837.1650403923986, 2847.698583637574, 2858.2516446119103, 2868.8242233154074, 2879.416319748067, 2890.027933909886, 2900.6590658008686, 2911.3097154210122, 2921.9798827703175, 2932.6695678487827, 2943.3787706564103, 2954.1074911931987, 2964.855729459149, 2975.6234854542618, 2986.410759178535, 2997.217550631969, 3008.043859814565, 3018.889686726322, 3029.7550313672414, 3040.639893737322, 3051.544273836564, 3062.4681716649666, 3073.411587222531, 3084.3745205092564, 3095.356971525144, 3106.358940270193, 3117.380426744404, 3128.4214309477743, 3139.4819528803077, 3150.5619925420015, 3161.6615499328577, 3172.780625052875, 3183.9192179020542, 3195.077328480394, 3206.254956787896, 3217.452102824558, 3228.668766590383, 3239.9049480853687, 3251.160647309516, 3262.435864262824, 3273.7305989452943, 3285.0448513569254, 3296.378621497718, 3307.731909367673, 3319.1047149667893, 3330.4970382950655, 3341.9088793525043, 3353.3402381391033, 3364.791114654865, 3376.261508899788, 3387.7514208738726, 3399.2608505771177, 3410.789798009525, 3422.3382631710924, 3433.9062460618225, 3445.4937466817146, 3457.1007650307674, 3468.7273011089806, 3480.373354916356, 3492.0389264528926, 3503.7240157185915, 3515.4286227134517, 3527.1527474374734, 3538.896389890655, 3550.659550072999, 3562.442227984504, 3574.244423625171, 3586.066136995, 3597.90736809399, 3609.76811692214, 3621.648383479453, 3633.5481677659263, 3645.4674697815617, 3657.406289526359, 3669.3646270003164, 3681.3424822034362, 3693.3398551357177, 3705.356745797159, 3717.3931541877637, 3729.449080307529, 3741.524524156455, 3753.619485734543, 3765.7339650417935, 3777.867962078203, 3790.021476843776, 3802.1945093385107, 3814.387059562405, 3826.5991275154615, 3838.83071319768, 3851.0818166090585, 3863.3524377496, 3875.642576619303, 3887.9522332181655, 3900.281407546191, 3912.6300996033774, 3924.998309389725, 3937.386036905234, 3949.7932821499053, 3962.220045123737, 3974.666325826731, 3987.1321242588865, 3999.6174404202015, 4012.12227431068, 4024.6466259303193, 4037.1904952791197, 4049.753882357082, 4062.3367871642045, 4074.9392097004898, 4087.5611499659367, 4100.202607960545, 4112.863583684314, 4125.544077137244, 4138.244088319335, 4150.963617230589, 4163.702663871005, 4176.4612282405815, 4189.239310339319, 4202.036910167218, 4214.854027724276, 4227.6906630104995, 4240.546816025882, 4253.422486770428, 4266.317675244135, 4279.232381447001, 4292.166605379029, 4305.12034704022, 4318.093606430572, 4331.086383550087, 4344.098678398761, 4357.130490976596, 4370.181821283592, 4383.252669319752, 4396.343035085073, 4409.452918579555, 4422.5823198031985, 4435.731238756002, 4448.899675437967, 4462.087629849095, 4475.295101989384, 4488.522091858836, 4501.768599457448, 4515.034624785219, 4528.320167842153, 4541.625228628249, 4554.949807143506, 4568.293903387927, 4581.6575173615065, 4595.040649064247, 4608.4432984961495, 4621.865465657214, 4635.307150547441, 4648.768353166829, 4662.249073515378, 4675.749311593086, 4689.269067399957, 4702.80834093599, 4716.367132201185, 4729.945441195541, 4743.543267919059, 4757.1606123717365, 4770.797474553575, 4784.4538544645775, 4798.12975210474, 4811.825167474066, 4825.540100572551, 4839.274551400197, 4853.028519957004, 4866.802006242976, 4880.595010258107, 4894.4075320024, 4908.239571475855, 4922.091128678469, 4935.9622036102455, 4949.852796271184, 4963.762906661284, 4977.692534780546, 4991.64168062897, 5005.610344206552, 5019.598525513296, 5033.606224549204, 5047.633441314273, 5061.680175808504, 5075.7464280318945, 5089.832197984446, 5103.937485666159, 5118.062291077035, 5132.2066142170725, 5146.370455086271, 5160.553813684632, 5174.756690012151, 5188.979084068833, 5203.220995854676, 5217.482425369683, 5231.76337261385, 5246.0638375871795, 5260.383820289668, 5274.723320721317, 5289.08233888213, 5303.460874772104, 5317.858928391241, 5332.276499739537, 5346.713588816994, 5361.170195623612, 5375.646320159394, 5390.141962424337, 5404.657122418442, 5419.191800141707, 5433.745995594131, 5448.319708775719, 5462.912939686469, 5477.52568832638, 5492.157954695454, 5506.809738793688, 5521.481040621081, 5536.1718601776365, 5550.882197463355, 5565.612052478235, 5580.361425222276, 5595.130315695478, 5609.918723897841, 5624.726649829365, 5639.554093490052, 5654.401054879901, 5669.26753399891, 5684.153530847081, 5699.059045424412, 5713.984077730904, 5728.92862776656, 5743.892695531376, 5758.876281025355, 5773.879384248495, 5788.902005200794, 5803.944143882254, 5819.005800292878, 5834.086974432664, 5849.187666301611, 5864.307875899718, 5879.447603226986, 5894.606848283415, 5909.785611069008, 5924.983891583763, 5940.201689827677, 5955.439005800754, 5970.695839502991, 5985.972190934389, 6001.26806009495, 6016.583446984671, 6031.9183516035555, 6047.2727739516, 6062.646714028805, 6078.040171835172, 6093.4531473707, 6108.885640635392, 6124.337651629244, 6139.8091803522575, 6155.30022680443, 6170.810790985766, 6186.340872896264, 6201.890472535923, 6217.459589904744, 6233.048225002725, 6248.656377829868, 6264.284048386172, 6279.931236671638, 6295.597942686265, 6311.284166430055, 6326.989907903004, 6342.715167105115, 6358.459944036388, 6374.224238696822, 6390.008051086419, 6405.811381205176, 6421.634229053094, 6437.476594630174, 6453.338477936415, 6469.219878971818, 6485.120797736383, 6501.041234230109, 6516.9811884529945, 6532.940660405045, 6548.919650086254, 6564.918157496625, 6580.936182636158, 6596.973725504853, 6613.030786102708, 6629.107364429725, 6645.203460485903, 6661.319074271243, 6677.454205785744, 6693.608855029407, 6709.783022002231, 6725.976706704217, 6742.1899091353625, 6758.422629295671, 6774.674867185142, 6790.946622803774, 6807.237896151564, 6823.548687228519, 6839.878996034634, 6856.228822569911, 6872.598166834349, 6888.98702882795, 6905.39540855071, 6921.823306002632, 6938.270721183716, 6954.737654093962, 6971.224104733369, 6987.730073101938, 7004.255559199666, 7020.800563026558, 7037.365084582609, 7053.949123867823, 7070.552680882199, 7087.175755625736, 7103.8183480984335, 7120.480458300293, 7137.162086231313, 7153.863231891496, 7170.583895280841, 7187.324076399346, 7204.0837752470115, 7220.86299182384, 7237.661726129828, 7254.47997816498, 7271.317747929293, 7288.175035422766, 7305.0518406454, 7321.948163597198, 7338.864004278154, 7355.799362688274, 7372.754238827555, 7389.728632695998, 7406.7225442936015, 7423.735973620364, 7440.768920676292, 7457.82138546138, 7474.89336797563, 7491.98486821904, 7509.095886191613, 7526.226421893344, 7543.376475324239, 7560.546046484296, 7577.735135373515, 7594.943741991895, 7612.171866339436, 7629.419508416135, 7646.686668221999, 7663.973345757025, 7681.279541021211, 7698.60525401456, 7715.950484737069, 7733.315233188737, 7750.699499369569, 7768.103283279564, 7785.526584918718, 7802.969404287035, 7820.431741384514, 7837.9135962111495, 7855.414968766951, 7872.935859051912, 7890.476267066036, 7908.036192809322, 7925.615636281768, 7943.214597483372, 7960.833076414143, 7978.4710730740735, 7996.128587463166, 8013.80561958142, 8031.502169428833, 8049.218237005407, 8066.953822311146, 8084.708925346044, 8102.483546110105, 8120.2776846033275, 8138.091340825712, 8155.924514777253, 8173.777206457959, 8191.649415867828, 8209.541143006856, 8227.452387875048, 8245.3831504724, 8263.333430798908, 8281.303228854584, 8299.29254463942, 8317.30137815342, 8335.329729396579, 8353.377598368897, 8371.444985070379, 8389.53188950102, 8407.638311660825, 8425.764251549792, 8443.90970916792, 8462.07468451521, 8480.259177591655, 8498.463188397269, 8516.686716932041, 8534.929763195976, 8553.192327189072, 8571.47440891133, 8589.776008362745, 8608.097125543327, 8626.437760453067, 8644.797913091972, 8663.177583460036, 8681.576771557262, 8699.995477383645, 8718.433700939195, 8736.891442223905, 8755.368701237776, 8773.865477980811, 8792.381772453005, 8810.917584654357, 8829.472914584876, 8848.047762244554, 8866.642127633393, 8885.256010751395, 8903.889411598559, 8922.54233017488, 8941.214766480365, 8959.906720515011, 8978.618192278822, 8997.349181771793, 9016.099688993923, 9034.869713945212, 9053.659256625668, 9072.468317035284, 9091.296895174062, 9110.144991042, 9129.0126046391, 9147.899735965357, 9166.80638502078, 9185.732551805364, 9204.67823631911, 9223.643438562018, 9242.628158534086, 9261.632396235313, 9280.656151665704, 9299.699424825258, 9318.762215713972, 9337.844524331847, 9356.946350678885, 9376.067694755078, 9395.20855656044, 9414.368936094961, 9433.548833358644, 9452.748248351489, 9471.967181073493, 9491.205631524657, 9510.463599704985, 9529.741085614476, 9549.038089253127, 9568.35461062094, 9587.690649717913, 9607.046206544046, 9626.421281099341, 9645.8158733838, 9665.22998339742, 9684.663611140202, 9704.116756612144, 9723.589419813245, 9743.08160074351, 9762.593299402937, 9782.124515791525, 9801.675249909276, 9821.245501756186, 9840.835271332255, 9860.44455863749, 9880.073363671885, 9899.721686435441, 9919.389526928158, 9939.07688515004, 9958.783761101076, 9978.51015478128, 9998.256066190643, 10018.021495329167, 10037.806442196856, 10057.610906793703, 10077.43488911971, 10097.278389174879, 10117.141406959212, 10137.023942472706, 10156.92599571536, 10176.847566687176, 10196.788655388153, 10216.749261818291, 10236.729385977593, 10256.729027866055, 10276.74818748368, 10296.786864830465, 10316.845059906405, 10336.922772711514, 10357.020003245783, 10377.136751509215, 10397.273017501808, 10417.428801223561, 10437.604102674473, 10457.798921854548, 10478.013258763785, 10498.247113402185, 10518.500485769746, 10538.773375866469, 10559.06578369235, 10579.377709247394, 10599.7091525316, 10620.060113544967, 10640.430592287497, 10660.820588759187, 10681.230102960035, 10701.65913489005, 10722.107684549224, 10742.57575193756, 10763.063337055057, 10783.570439901716, 10804.097060477534, 10824.643198782516, 10845.20885481666, 10865.794028579963, 10886.398720072431, 10907.022929294058, 10927.666656244843, 10948.329900924793, 10969.012663333906, 10989.714943472178, 11010.436741339612, 11031.178056936209, 11051.938890261963, 11072.719241316883, 11093.519110100964, 11114.338496614204, 11135.177400856608, 11156.035822828173, 11176.913762528895, 11197.811219958781, 11218.72819511783, 11239.664688006042, 11260.620698623414, 11281.596226969947, 11302.591273045637, 11323.605836850493, 11344.63991838451, 11365.693517647689, 11386.76663464003, 11407.85926936153, 11428.97142181219, 11450.103091992014, 11471.254279901, 11492.424985539148, 11513.615208906456, 11534.824950002927, 11556.054208828555, 11577.302985383347, 11598.571279667301, 11619.859091680417, 11641.166421422695, 11662.493268894134, 11683.83963409473, 11705.205517024491, 11726.590917683414, 11747.995836071499, 11769.420272188745, 11790.864226035152, 11812.327697610715, 11833.810686915445, 11855.313193949338, 11876.83521871239, 11898.376761204603, 11919.93782142598, 11941.518399376511, 11963.118495056211, 11984.738108465071, 12006.377239603093, 12028.035888470275, 12049.714055066619, 12071.41173939212, 12093.128941446786, 12114.865661230617, 12136.621898743606, 12158.397653985758, 12180.19292695707, 12202.00771765754, 12223.842026087177, 12245.695852245974, 12267.56919613393, 12289.46205775105, 12311.37443709733, 12333.30633417277, 12355.257748977376, 12377.22868151114, 12399.219131774065, 12421.229099766155, 12443.258585487405, 12465.30758893781, 12487.376110117384, 12509.464149026118, 12531.571705664013, 12553.698780031069, 12575.845372127287, 12598.011481952664, 12620.197109507204, 12642.402254790908, 12664.626917803771, 12686.871098545796, 12709.134797016983, 12731.418013217326, 12753.720747146835, 12776.042998805506, 12798.38476819334, 12820.746055310334, 12843.126860156488, 12865.527182731801, 12887.947023036279, 12910.386381069917, 12932.845256832717, 12955.32365032468, 12977.821561545805, 13000.338990496084, 13022.875937175531, 13045.43240158414, 13068.00838372191, 13090.603883588841, 13113.218901184933, 13135.853436510182, 13158.507489564596, 13181.181060348174, 13203.874148860912, 13226.58675510281, 13249.318879073871, 13272.070520774088, 13294.841680203472, 13317.632357362018, 13340.442552249724, 13363.272264866591, 13386.121495212621, 13408.990243287806, 13431.878509092157, 13454.786292625673, 13477.713593888346, 13500.660412880183, 13523.62674960118, 13546.612604051335, 13569.617976230656, 13592.642866139138, 13615.68727377678, 13638.751199143586, 13661.834642239553, 13684.937603064676, 13708.060081618965, 13731.202077902415, 13754.363591915027, 13777.5446236568, 13800.74517312773, 13823.965240327827, 13847.204825257086, 13870.463927915504, 13893.742548303084, 13917.040686419825, 13940.358342265725, 13963.695515840789, 13987.052207145016, 14010.428416178403, 14033.824142940952, 14057.239387432663, 14080.674149653529, 14104.128429603563, 14127.602227282758, 14151.095542691113, 14174.60837582863, 14198.140726695308, 14221.692595291144, 14245.263981616146, 14268.85488567031, 14292.465307453635, 14316.095246966119, 14339.744704207767, 14363.413679178571, 14387.102171878541, 14410.810182307672, 14434.537710465966, 14458.28475635342, 14482.051319970036, 14505.837401315808, 14529.643000390746, 14553.468117194847, 14577.31275172811, 14601.176903990532, 14625.060573982115, 14648.963761702857, 14672.886467152764, 14696.828690331831, 14720.790431240062, 14744.771689877452, 14768.772466244007, 14792.792760339717, 14816.832572164592, 14840.891901718627, 14864.970749001826, 14889.069114014186, 14913.186996755709, 14937.324397226388, 14961.48131542623, 14985.657751355235, 15009.853705013402, 15034.069176400732, 15058.304165517222, 15082.558672362868, 15106.83269693768, 15131.126239241656, 15155.439299274789, 15179.771877037088, 15204.123972528545, 15228.495585749159, 15252.886716698942, 15277.297365377884, 15301.727531785988, 15326.177215923253, 15350.64641778968, 15375.135137385263, 15399.643374710013, 15424.171129763925, 15448.718402546996, 15473.28519305923, 15497.871501300626, 15522.477327271177, 15547.102670970895, 15571.747532399775, 15596.411911557816, 15621.09580844502, 15645.799223061384, 15670.522155406903, 15695.26460548159, 15720.026573285439, 15744.808058818448, 15769.609062080619, 15794.429583071951, 15819.269621792439, 15844.129178242096, 15869.008252420912, 15893.906844328889, 15918.82495396603, 15943.76258133233, 15968.719726427787, 15993.69638925241, 16018.692569806195, 16043.708268089142, 16068.74348410125, 16093.798217842517, 16118.872469312944, 16143.966238512536, 16169.07952544129, 16194.212330099206, 16219.364652486283, 16244.53649260252, 16269.727850447915, 16294.938726022478, 16320.169119326198, 16345.419030359082, 16370.688459121127, 16395.97740561233, 16421.285869832696, 16446.613851782226, 16471.961351460912, 16497.328368868766, 16522.71490400578, 16548.120956871957, 16573.546527467286, 16598.991615791783, 16624.456221845445, 16649.940345628263, 16675.443987140243, 16700.96714638139, 16726.509823351687, 16752.072018051153, 16777.653730479782, 16803.254960637572, 16828.87570852452, 16854.515974140635, 16880.175757485904, 16905.855058560337, 16931.55387736393, 16957.27221389669, 16983.010068158612, 17008.767440149688, 17034.544329869925, 17060.34073731933, 17086.156662497895, 17111.992105405618, 17137.847066042505, 17163.721544408552, 17189.61554050376, 17215.529054328133, 17241.462085881667, 17267.41463516436, 17293.386702176216, 17319.37828691723, 17345.38938938741, 17371.42000958675, 17397.470147515247, 17423.539803172913, 17449.62897655974, 17475.737667675716, 17501.865876520867, 17528.013603095176, 17554.180847398646, 17580.367609431272, 17606.573889193067, 17632.799686684015, 17659.045001904135, 17685.30983485341, 17711.59418553185, 17737.898053939447, 17764.22144007621, 17790.564343942126, 17816.926765537213, 17843.308704861458, 17869.710161914863, 17896.131136697433, 17922.57162920916, 17949.031639450048, 17975.511167420103, 18002.010213119316, 18028.52877654769, 18055.06685770523, 18081.624456591926, 18108.20157320778, 18134.798207552805, 18161.414359626986, 18188.05002943033, 18214.705216962833, 18241.379922224503, 18268.074145215327, 18294.787885935315, 18321.521144384467, 18348.27392056278, 18375.046214470254, 18401.83802610689, 18428.64935547268, 18455.48020256764, 18482.33056739176, 18509.20044994504, 18536.089850227483, 18562.998768239086, 18589.927203979845, 18616.875157449773, 18643.84262864886, 18670.82961757711, 18697.836124234524, 18724.862148621094, 18751.907690736825, 18778.972750581717, 18806.057328155777, 18833.16142345899, 18860.285036491372, 18887.42816725291, 18914.59081574361, 18941.772981963473, 18968.9746659125, 18996.195867590686, 19023.436586998032, 19050.696824134542, 19077.97657900021, 19105.27585159504, 19132.594641919037, 19159.93294997219, 19187.290775754507, 19214.668119265985, 19242.064980506617, 19269.48135947642, 19296.917256175384, 19324.372670603505, 19351.84760276079, 19379.342052647236, 19406.85602026284, 19434.389505607607, 19461.94250868154, 19489.51502948463, 19517.107068016885, 19544.7186242783, 19572.34969826887, 19600.00028998861 ] }, { "name": "Total Drag", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 12506.666666666668, 12463.37220487699, 12420.464273133397, 12377.939390105425, 12335.794115643046, 12294.025050193512, 12252.628834227795, 12211.602147676478, 12170.941709374867, 12130.64427651723, 12090.706644119902, 12051.125644493166, 12011.898146721716, 11973.021056153519, 11934.491313896984, 11896.305896326221, 11858.46181459426, 11820.956114154125, 11783.785874287552, 11746.948207641255, 11710.440259770601, 11674.259208690539, 11638.402264433655, 11602.86666861525, 11567.649694005297, 11532.748644107109, 11498.160852742698, 11463.883683644617, 11429.914530054175, 11396.250814325987, 11362.889987538654, 11329.829529111508, 11297.06694642733, 11264.599774460887, 11232.425575413241, 11200.541938351671, 11168.946478855163, 11137.63683866534, 11106.610685342719, 11075.86571192828, 11045.399636610124, 11015.21020239527, 10985.295176786425, 10955.652351463623, 10926.279541970716, 10897.17458740659, 10868.335350121019, 10839.759715415099, 10811.445591246185, 10783.390907937228, 10755.593617890458, 10728.051695305347, 10700.76313590074, 10673.725956641138, 10646.938195467019, 10620.39791102914, 10594.103182426772, 10568.052108949776, 10542.24280982447, 10516.673423963213, 10491.34210971767, 10466.247044635651, 10441.386425221515, 10416.758466700041, 10392.361402783732, 10368.193485443468, 10344.252984682513, 10320.538188313722, 10297.047401740003, 10273.778947737903, 10250.731166244297, 10227.902414146134, 10205.291065073176, 10182.895509193686, 10160.71415301303, 10138.745419175124, 10116.98774626669, 10095.43958862428, 10074.099416144029, 10052.965714094054, 10032.03698292953, 10011.311738110322, 9990.788509921174, 9970.465843294412, 9950.342297635125, 9930.416446648745, 9910.686878171062, 9891.15219400055, 9871.811009733035, 9852.661954598632, 9833.70367130094, 9814.934815858414, 9796.354057447954, 9777.960078250595, 9759.751573299338, 9741.727250329013, 9723.885829628234, 9706.226043893315, 9688.746638084205, 9671.446369282346, 9654.324006550452, 9637.378330794196, 9620.608134625727, 9604.01222222904, 9587.589409227145, 9571.338522551006, 9555.258400310231, 9539.347891665484, 9523.605856702594, 9508.031166308334, 9492.62270204784, 9477.37935604366, 9462.300030856386, 9447.383639366864, 9432.629104659954, 9418.035359909814, 9403.601348266675, 9389.326022745117, 9375.20834611378, 9361.24729078652, 9347.441838714987, 9333.790981282582, 9320.2937191998, 9306.949062400916, 9293.756029942004, 9280.713649900277, 9267.820959274715, 9255.077003887965, 9242.480838289506, 9230.031525660035, 9217.728137717098, 9205.5697546219, 9193.555464887311, 9181.68436528703, 9169.95556076592, 9158.368164351443, 9146.921297066252, 9135.614087841848, 9124.44567343335, 9113.415198335319, 9102.521814698635, 9091.764682248438, 9081.142968203052, 9070.65584719396, 9060.302501186754, 9050.082119403061, 9039.993898243458, 9030.037041211323, 9020.210758837628, 9010.514268606672, 9000.946794882715, 8991.507568837516, 8982.195828378768, 8973.0108180794, 8963.951789107743, 8955.017999158561, 8946.208712384898, 8937.523199330788, 8928.960736864743, 8920.520608114075, 8912.202102400006, 8904.004515173552, 8895.927147952192, 8887.969308257292, 8880.130309552282, 8872.40947118158, 8864.806118310233, 8857.3195818643, 8849.949198471928, 8842.694310405135, 8835.5542655223, 8828.5284172113, 8821.616124333374, 8814.816751167582, 8808.129667356008, 8801.554247849512, 8795.089872854194, 8788.735927778464, 8782.491803180717, 8776.356894717643, 8770.330603093127, 8764.412334007759, 8758.601498108916, 8752.89751094144, 8747.299792898879, 8741.807769175293, 8736.420869717633, 8731.138529178641, 8725.960186870328, 8720.885286717963, 8715.913277214597, 8711.043611376119, 8706.275746696812, 8701.609145105427, 8697.043272921765, 8692.577600813729, 8688.2116037549, 8683.944760982567, 8679.776555956247, 8675.706476316675, 8671.73401384525, 8667.85866442394, 8664.079927995663, 8660.397308525071, 8656.81031395981, 8653.318456192203, 8649.921251021362, 8646.618218115716, 8643.408880975985, 8640.292766898523, 8637.269406939115, 8634.338335877143, 8631.499092180167, 8628.751217968895, 8626.09425898253, 8623.527764544526, 8621.051287528686, 8618.664384325662, 8616.366614809813, 8614.157542306428, 8612.036733559296, 8610.00375869866, 8608.05819120949, 8606.199607900118, 8604.42758887122, 8602.741717485113, 8601.141580335412, 8599.626767216998, 8598.19687109632, 8596.851488082006, 8595.590217395813, 8594.412661343868, 8593.318425288227, 8592.307117618748, 8591.378349725243, 8590.531735969955, 8589.766893660311, 8589.083443021978, 8588.481007172191, 8587.959212093374, 8587.517686607052, 8587.15606234802, 8586.873973738795, 8586.67105796434, 8586.546954947054, 8586.501307322018, 8586.533760412518, 8586.643962205811, 8586.831563329148, 8587.09621702605, 8587.437579132842, 8587.855308055416, 8588.349064746235, 8588.918512681608, 8589.563317839158, 8590.283148675551, 8591.077676104458, 8591.946573474723, 8592.889516548788, 8593.906183481307, 8594.99625479801, 8596.159413374766, 8597.39534441687, 8598.703735438537, 8600.08427624262, 8601.536658900508, 8603.060577732262, 8604.655729286927, 8606.321812323069, 8608.058527789482, 8609.865578806122, 8611.742670645206, 8613.689510712522, 8615.705808528917, 8617.791275711985, 8619.945625957927, 8622.16857502359, 8624.45984070871, 8626.819142838309, 8629.246203245275, 8631.740745753132, 8634.302496158954, 8636.931182216484, 8639.626533619381, 8642.388281984679, 8645.216160836364, 8648.10990558916, 8651.069253532438, 8654.093943814307, 8657.18371742585, 8660.338317185526, 8663.557487723716, 8666.84097546743, 8670.18852862516, 8673.599897171876, 8677.074832834183, 8680.613089075614, 8684.214421082064, 8687.878585747374, 8691.605341659051, 8695.394449084135, 8699.245669955184, 8703.158767856421, 8707.133508009993, 8711.169657262377, 8715.266984070915, 8719.425258490472, 8723.64425216023, 8727.923738290603, 8732.263491650294, 8736.66328855345, 8741.122906846958, 8745.642125897872, 8750.220726580925, 8754.858491266199, 8759.555203806893, 8764.310649527202, 8769.124615210338, 8773.996889086633, 8778.927260821769, 8783.915521505127, 8788.961463638228, 8794.06488112331, 8799.22556925198, 8804.443324693999, 8809.717945486163, 8815.049231021285, 8820.436982037285, 8825.881000606383, 8831.381090124396, 8836.937055300119, 8842.548702144828, 8848.215837961865, 8853.938271336323, 8859.715812124832, 8865.548271445437, 8871.435461667568, 8877.377196402103, 8883.373290491527, 8889.423560000172, 8895.527822204567, 8901.685895583852, 8907.897599810303, 8914.162755739922, 8920.481185403132, 8926.852711995549, 8933.27715986884, 8939.754354521661, 8946.28412259069, 8952.866291841714, 8959.500691160838, 8966.187150545737, 8972.925501097003, 8979.715575009579, 8986.557205564255, 8993.450227119247, 9000.394475101848, 9007.389786000169, 9014.435997354938, 9021.532947751379, 9028.680476811165, 9035.87842518444, 9043.12663454192, 9050.424947567053, 9057.77320794826, 9065.171260371235, 9072.618950511329, 9080.116125025987, 9087.662631547257, 9095.258318674363, 9102.903035966357, 9110.59663393482, 9118.33896403663, 9126.12987866681, 9133.969231151412, 9141.85687574049, 9149.792667601118, 9157.776462810481, 9165.808118349016, 9173.887492093614, 9182.014442810896, 9190.18883015053, 9198.410514638614, 9206.67935767112, 9214.995221507395, 9223.357969263703, 9231.767464906849, 9240.223573247833, 9248.726159935582, 9257.275091450727, 9265.87023509941, 9274.5114590072, 9283.198632112999, 9291.931624163046, 9300.710305704955, 9309.534548081803, 9318.404223426265, 9327.319204654825, 9336.279365461995, 9345.28458031462, 9354.334724446217, 9363.429673851355, 9372.569305280105, 9381.753496232504, 9390.982124953109, 9400.255070425545, 9409.572212367157, 9418.93343122366, 9428.338608163858, 9437.787625074403, 9447.280364554597, 9456.816709911234, 9466.396545153499, 9476.01975498789, 9485.68622481321, 9495.395840715559, 9505.148489463418, 9514.944058502733, 9524.782435952076, 9534.663510597802, 9544.587171889292, 9554.553309934203, 9564.561815493778, 9574.612579978186, 9584.705495441895, 9594.840454579098, 9605.017350719163, 9615.23607782213, 9625.49653047424, 9635.798603883506, 9646.142193875314, 9656.527196888059, 9666.953509968833, 9677.42103076913, 9687.929657540592, 9698.47928913079, 9709.069824979048, 9719.701165112285, 9730.373210140904, 9741.085861254714, 9751.839020218873, 9762.632589369874, 9773.466471611575, 9784.340570411223, 9795.254789795568, 9806.209034346946, 9817.203209199442, 9828.237220035062, 9839.310973079933, 9850.424375100554, 9861.577333400051, 9872.76975581448, 9884.001550709152, 9895.272626974998, 9906.582894024941, 9917.932261790333, 9929.320640717371, 9940.747941763591, 9952.21407639436, 9963.718956579407, 9975.262494789373, 9986.844603992407, 9998.465197650767, 10010.124189717451, 10021.82149463288, 10033.557027321573, 10045.330703188865, 10057.142438117668, 10068.99214846521, 10080.87975105985, 10092.805163197896, 10104.768302640432, 10116.769087610211, 10128.807436788538, 10140.88326931218, 10152.996504770315, 10165.147063201508, 10177.33486509068, 10189.559831366132, 10201.821883396598, 10214.12094298827, 10226.456932381905, 10238.82977424993, 10251.239391693558, 10263.685708239937, 10276.168647839346, 10288.688134862357, 10301.24409409707, 10313.836450746345, 10326.465130425058, 10339.130059157387, 10351.83116337411, 10364.568369909915, 10377.341606000762, 10390.150799281228, 10402.995877781897, 10415.87676992676, 10428.793404530645, 10441.745710796644, 10454.733618313585, 10467.757057053515, 10480.815957369188, 10493.910249991593, 10507.039866027499, 10520.20473695699, 10533.404794631062, 10546.6399712692, 10559.910199457, 10573.215412143794, 10586.555542640299, 10599.930524616284, 10613.340292098246, 10626.784779467118, 10640.263921455982, 10653.777653147798, 10667.32590997318, 10680.908627708131, 10694.52574247185, 10708.177190724522, 10721.862909265154, 10735.58283522938, 10749.336906087348, 10763.12505964155, 10776.947234024734, 10790.80336769778, 10804.693399447631, 10818.617268385204, 10832.574913943363, 10846.56627587484, 10860.591294250244, 10874.649909456035, 10888.74206219252, 10902.86769347189, 10917.026744616258, 10931.219157255673, 10945.444873326222, 10959.703835068081, 10973.995985023623, 10988.3212660355, 11002.679621244793, 11017.070994089116, 11031.49532830078, 11045.95256790494, 11060.442657217776, 11074.965540844678, 11089.52116367845, 11104.109470897505, 11118.73040796411, 11133.383920622613, 11148.069954897703, 11162.788457092656, 11177.539373787644, 11192.322651837982, 11207.138238372461, 11221.986080791647, 11236.866126766206, 11251.778324235249, 11266.722621404679, 11281.698966745544, 11296.707308992416, 11311.747597141777, 11326.819780450414, 11341.923808433818, 11357.059630864627, 11372.227197771024, 11387.426459435195, 11402.657366391784, 11417.91986942635, 11433.213919573845, 11448.539468117095, 11463.896466585302, 11479.28486675254, 11494.704620636283, 11510.155680495925, 11525.63799883132, 11541.151528381337, 11556.696222122406, 11572.272033267089, 11587.87891526267, 11603.51682178973, 11619.185706760747, 11634.885524318719, 11650.616228835763, 11666.377774911747, 11682.170117372938, 11697.993211270634, 11713.84701187983, 11729.731474697888, 11745.646555443189, 11761.592210053843, 11777.568394686368, 11793.575065714396, 11809.612179727379, 11825.679693529322, 11841.777564137497, 11857.905748781188, 11874.064204900438, 11890.252890144797, 11906.471762372094, 11922.72077964721, 11938.999900240851, 11955.30908262834, 11971.648285488413, 11988.017467702024, 12004.416588351167, 12020.84560671769, 12037.304482282121, 12053.793174722516, 12070.311643913294, 12086.8598499241, 12103.437753018656, 12120.045313653653, 12136.68249247759, 12153.349250329693, 12170.045548238788, 12186.771347422207, 12203.526609284692, 12220.311295417316, 12237.125367596394, 12253.968787782425, 12270.84151811901, 12287.743520931817, 12304.674758727506, 12321.635194192719, 12338.624790193013, 12355.643509771848, 12372.691316149563, 12389.768172722355, 12406.874043061282, 12424.008890911256, 12441.172680190044, 12458.36537498728, 12475.586939563493, 12492.837338349127, 12510.116535943569, 12527.424497114189, 12544.761186795387, 12562.126570087641, 12579.520612256569, 12596.943278731977, 12614.394535106947, 12631.87434713691, 12649.38268073872, 12666.91950198973, 12684.484777126921, 12702.07847254597, 12719.700554800365, 12737.35099060053, 12755.02974681291, 12772.736790459132, 12790.472088715112, 12808.235608910189, 12826.027318526269, 12843.84718519698, 12861.695176706817, 12879.571260990286, 12897.47540613108, 12915.40758036125, 12933.367752060369, 12951.35588975472, 12969.371962116467, 12987.415937962855, 13005.487786255402, 13023.587476099094, 13041.714976741598, 13059.870257572471, 13078.053288122364, 13096.264038062256, 13114.50247720267, 13132.768575492912, 13151.06230302029, 13169.383630009379, 13187.732526821244, 13206.108963952702, 13224.512912035565, 13242.944341835911, 13261.403224253345, 13279.889530320268, 13298.403231201148, 13316.944298191795, 13335.51270271865, 13354.108416338073, 13372.731410735627, 13391.381657725391, 13410.059129249237, 13428.763797376148, 13447.495634301535, 13466.254612346536, 13485.04070395734, 13503.853881704523, 13522.694118282348, 13541.56138650812, 13560.455659321506, 13579.376909783889, 13598.325111077691, 13617.300236505751, 13636.30225949065, 13655.33115357407, 13674.386892416172, 13693.469449794939, 13712.578799605557, 13731.714915859791, 13750.877772685342, 13770.067344325242, 13789.283605137236, 13808.526529593166, 13827.79609227836, 13847.092267891041, 13866.415031241704, 13885.764357252532, 13905.140220956811, 13924.542597498317, 13943.97146213074, 13963.426790217123, 13982.908557229244, 14002.416738747064, 14021.951310458153, 14041.512248157118, 14061.099527745038, 14080.713125228905, 14100.35301672107, 14120.019178438668, 14139.711586703095, 14159.43021793944, 14179.175048675947, 14198.946055543483, 14218.743215274979, 14238.566504704917, 14258.415900768781, 14278.291380502542, 14298.192921042126, 14318.1204996229, 14338.074093579145, 14358.053680343543, 14378.059237446665, 14398.090742516462, 14418.14817327776, 14438.231507551765, 14458.340723255544, 14478.475798401541, 14498.636711097086, 14518.82343954389, 14539.035962037573, 14559.274256967174, 14579.538302814664, 14599.828078154469, 14620.14356165299, 14640.484732068151, 14660.851568248885, 14681.24404913472, 14701.662153755275, 14722.105861229804, 14742.575150766746, 14763.070001663275, 14783.590393304814, 14804.13630516463, 14824.707716803347, 14845.30460786851, 14865.926958094158, 14886.574747300361, 14907.247955392793, 14927.946562362305, 14948.670548284475, 14969.419893319184, 14990.194577710196, 15010.994581784722, 15031.819885952998, 15052.670470707888, 15073.546316624426, 15094.447404359431, 15115.373714651087, 15136.325228318523, 15157.301926261429, 15178.303789459616, 15199.330798972644, 15220.382935939402, 15241.460181577717, 15262.56251718396, 15283.689924132652, 15304.842383876063, 15326.019877943829, 15347.222387942571, 15368.449895555505, 15389.702382542047, 15410.979830737471, 15432.282222052481, 15453.609538472869, 15474.961762059133, 15496.338874946101, 15517.740859342563, 15539.16769753092, 15560.619371866786, 15582.09586477866, 15603.597158767532, 15625.123236406562, 15646.67408034068, 15668.249673286278, 15689.849998030815, 15711.475037432498, 15733.124774419906, 15754.799191991673, 15776.498273216113, 15798.222001230912, 15819.970359242754, 15841.743330526999, 15863.540898427344, 15885.363046355487, 15907.2097577908, 15929.081016279995, 15950.97680543678, 15972.89710894156, 15994.841910541087, 16016.811194048149, 16038.804943341238, 16060.823142364257, 16082.865775126162, 16104.932825700678, 16127.024278225968, 16149.140116904326, 16171.280326001859, 16193.444889848199, 16215.63379283617, 16237.847019421495, 16260.084554122492, 16282.346381519763, 16304.632486255905, 16326.942853035216, 16349.277466623378, 16371.636311847167, 16394.01937359418, 16416.426636812506, 16438.858086510474, 16461.31370775635, 16483.793485678027, 16506.29740546277, 16528.825452356923, 16551.37761166562, 16573.9538687525, 16596.554209039452, 16619.178618006317, 16641.8270811906, 16664.499584187233, 16687.196112648264, 16709.9166522826, 16732.661188855756, 16755.42970818955, 16778.222196161856, 16801.038638706348, 16823.879021812212, 16846.74333152389, 16869.631553940846, 16892.543675217268, 16915.479681561825, 16938.439559237413, 16961.4232945609, 16984.430873902857, 17007.462283687342, 17030.51751039159, 17053.596540545823, 17076.69936073296, 17099.825957588386, 17122.9763177997, 17146.1504281065, 17169.34827530008, 17192.569846223243, 17215.815127770027, 17239.08410688549, 17262.376770565454, 17285.693105856273, 17309.03309985461, 17332.396739707172, 17355.78401261051, 17379.19490581078, 17402.629406603482, 17426.087502333292, 17449.569180393763, 17473.07442822716, 17496.60323332419, 17520.155583223794, 17543.731465512945, 17567.33086782639, 17590.953777846447, 17614.600183302795, 17638.270071972234, 17661.963431678483, 17685.680250291953, 17709.42051572956, 17733.18421595447, 17756.971338975916, 17780.781872848976, 17804.615805674373, 17828.473125598237, 17852.35382081195, 17876.25787955188, 17900.185290099205, 17924.13604077972, 17948.11011996361, 17972.107516065247, 17996.128217543024, 18020.172212899102, 18044.239490679258, 18068.330039472654, 18092.443847911647, 18116.580904671613, 18140.74119847074, 18164.92471806981, 18189.131452272042, 18213.36138992288, 18237.614519909814, 18261.89083116217, 18286.190312650953, 18310.512953388617, 18334.85874242892, 18359.227668866708, 18383.619721837742, 18408.034890518527, 18432.4731641261, 18456.934531917854, 18481.418983191397, 18505.92650728431, 18530.457093574005, 18555.010731477556, 18579.587410451488, 18604.18711999162, 18628.809849632886, 18653.45558894918, 18678.12432755313, 18702.816055096, 18727.530761267437, 18752.268435795366, 18777.02906844578, 18801.812649022595, 18826.61916736746, 18851.44861335962, 18876.300976915696, 18901.176247989584, 18926.07441657225, 18950.995472691564, 18975.939406412162, 19000.90620783527, 19025.895867098523, 19050.90837437584, 19075.943719877243, 19101.001893848694, 19126.08288657196, 19151.186688364432, 19176.313289578968, 19201.462680603763, 19226.634851862156, 19251.82979381252, 19277.04749694806, 19302.287951796705, 19327.55114892093, 19352.837078917604, 19378.145732417855, 19403.477100086908, 19428.831172623937, 19454.20794076194, 19479.60739526754, 19505.029526940896, 19530.474326615516, 19555.94178515814, 19581.43189346857, 19606.944642479553, 19632.480023156615, 19658.03802649793, 19683.618643534177, 19709.2218653284, 19734.847682975862, 19760.496087603922, 19786.16707037188, 19811.86062247083, 19837.576735123566, 19863.315399584386, 19889.076607139006, 19914.8603491044, 19940.666616828676, 19966.495401690918, 19992.346695101092, 20018.220488499894, 20044.116773358597, 20070.03554117896, 20095.97678349308, 20121.940491863235, 20147.92665788181, 20173.93527317112, 20199.966329383296, 20226.01981820019, 20252.095731333193, 20278.19406052314, 20304.314797540188, 20330.457934183687, 20356.62346228204, 20382.811373692613, 20409.021660301572, 20435.25431402379, 20461.509326802712, 20487.78669061024, 20514.0863974466, 20540.40843934026 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "Minimum Drag", "textposition": "top center", "type": "scatter", "x": [ 93.60414317185844 ], "y": [ 8586.501033599194 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Variation of Profile, Induced, and Total Drag - CD0 = 0.016, K=0.045, altitude=0km, S=50m^2, W=160.0" }, "xaxis": { "range": [ 0, 200 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 20000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "alt=0; # Altitude\n", "\n", "mosphere = Atmosphere(alt*1000)\n", "rho = mosphere.density\n", "\n", "# Determine stall speed\n", "Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", "# Determine A and B\n", "A = CD0 * 0.5 * rho * S\n", "B = K * W ** 2 / 0.5 / rho / S\n", "\n", "# Flight speed vector\n", "Vs = np.linspace(Vstall[0], 200, 1000)\n", "\n", "\n", "# Define drags\n", "Dind = B * Vs**-2\n", "Dprof = A * Vs**2\n", "D = Dind + Dprof\n", "\n", "# Get minimum drag\n", "Vmd = (B/A)**.25\n", "md = A * Vmd**2 + B * Vmd**-2\n", "\n", "fig = go.Figure()\n", "fig.add_trace(go.Scatter(x=Vs, y=Dind, name=\"Induced Drag\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=Dprof, name=\"Profile Drag\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=D, name=\"Total Drag\"))\n", "fig.add_trace(go.Scatter(x=Vmd, y=md, mode=\"markers+text\", text=\"Minimum Drag\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "\n", "\n", "fig.update_layout(\n", " title=f\"Variation of Profile, Induced, and Total Drag - CD0 = {CD0}, K={K}, altitude={alt}km, S={S}m^2, W={W/1e3}\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "fig.update_xaxes(range=[0, 200])\n", "fig.update_yaxes(range=[0, 20e3])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Variation of drag with altitude\n", "\n", "With the drag equation presented in dimensional form the effect of altitude on drag may be determined. Since $A$ and $B$ are directly and inversely proportional to density, it can be expected that they will be inversely, and directly proportional to altitude, respectively.\n", "\n", "That is - for an increase in altitude, $A$ (profile drag) will decrease whilst $B$ (induced drag) will increase.\n", "\n", "```{admonition} Think: does that make sense?\n", ":class: dropdown\n", "\n", "Whenever you derive a relationship between physical parameters, you should see if the answer is intuitively correct.\n", "\n", "Profile drag is fundamentally a *viscous* effect, so it makes sense that for fewer air particles in a given volume, the profile drag would decrease.\n", "\n", "Induced drag is proportional to the amount of circulation. For a reduction in density, a larger amount of circulation is required to effect the same dimensional value of lift. Hence, induced drag will increase.\n", "```\n", "\n", "It has been shown above that $V_{md}\\propto\\frac{1}{\\sqrt{\\rho}}$ (see {ref}`minimum-drag-speed`), so these cancel with the density terms in the $A$ and $B$ expressions - accordingly, **the minimum drag remains constant with altitude** whilst the minimum drag speed increases. See:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "scrolled": false, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Total Drag: 0km", "type": "scatter", "x": [ 59.01688864847802, 59.29815302420527, 59.579417399932524, 59.86068177565977, 60.14194615138702, 60.42321052711427, 60.70447490284152, 60.985739278568765, 61.26700365429602, 61.548268030023266, 61.82953240575051, 62.11079678147777, 62.39206115720501, 62.67332553293226, 62.954589908659514, 63.23585428438676, 63.51711866011401, 63.79838303584126, 64.07964741156852, 64.36091178729576, 64.64217616302301, 64.92344053875026, 65.2047049144775, 65.48596929020475, 65.767233665932, 66.04849804165926, 66.3297624173865, 66.61102679311375, 66.892291168841, 67.17355554456825, 67.4548199202955, 67.73608429602275, 68.01734867175, 68.29861304747725, 68.5798774232045, 68.86114179893174, 69.14240617465899, 69.42367055038625, 69.7049349261135, 69.98619930184074, 70.26746367756799, 70.54872805329524, 70.8299924290225, 71.11125680474974, 71.39252118047699, 71.67378555620424, 71.95504993193148, 72.23631430765873, 72.51757868338598, 72.79884305911324, 73.08010743484049, 73.36137181056773, 73.64263618629498, 73.92390056202223, 74.20516493774949, 74.48642931347673, 74.76769368920398, 75.04895806493123, 75.33022244065847, 75.61148681638574, 75.89275119211297, 76.17401556784023, 76.45527994356748, 76.73654431929472, 77.01780869502197, 77.29907307074922, 77.58033744647648, 77.86160182220372, 78.14286619793097, 78.42413057365822, 78.70539494938546, 78.98665932511273, 79.26792370083996, 79.54918807656722, 79.83045245229447, 80.11171682802171, 80.39298120374896, 80.6742455794762, 80.95550995520347, 81.23677433093071, 81.51803870665796, 81.79930308238521, 82.08056745811245, 82.36183183383972, 82.64309620956695, 82.92436058529421, 83.20562496102146, 83.4868893367487, 83.76815371247595, 84.0494180882032, 84.33068246393046, 84.6119468396577, 84.89321121538495, 85.1744755911122, 85.45573996683945, 85.7370043425667, 86.01826871829394, 86.2995330940212, 86.58079746974845, 86.8620618454757, 87.14332622120294, 87.42459059693019, 87.70585497265745, 87.9871193483847, 88.26838372411194, 88.54964809983919, 88.83091247556644, 89.1121768512937, 89.39344122702094, 89.67470560274819, 89.95596997847544, 90.23723435420268, 90.51849872992993, 90.79976310565718, 91.08102748138444, 91.36229185711169, 91.64355623283893, 91.92482060856618, 92.20608498429343, 92.48734936002069, 92.76861373574792, 93.04987811147518, 93.33114248720243, 93.61240686292967, 93.89367123865694, 94.17493561438417, 94.45619999011143, 94.73746436583868, 95.01872874156592, 95.29999311729317, 95.58125749302042, 95.86252186874768, 96.14378624447491, 96.42505062020217, 96.70631499592942, 96.98757937165666, 97.26884374738393, 97.55010812311116, 97.83137249883842, 98.11263687456567, 98.39390125029291, 98.67516562602016, 98.9564300017474, 99.23769437747467, 99.5189587532019, 99.80022312892916, 100.08148750465641, 100.36275188038366, 100.64401625611092, 100.92528063183815, 101.20654500756541, 101.48780938329266, 101.7690737590199, 102.05033813474715, 102.3316025104744, 102.61286688620166, 102.89413126192889, 103.17539563765615, 103.4566600133834, 103.73792438911065, 104.0191887648379, 104.30045314056514, 104.5817175162924, 104.86298189201965, 105.1442462677469, 105.42551064347414, 105.70677501920139, 105.98803939492865, 106.26930377065588, 106.55056814638314, 106.83183252211039, 107.11309689783764, 107.3943612735649, 107.67562564929213, 107.95689002501939, 108.23815440074664, 108.51941877647388, 108.80068315220113, 109.08194752792838, 109.36321190365564, 109.64447627938287, 109.92574065511013, 110.20700503083738, 110.48826940656463, 110.76953378229189, 111.05079815801912, 111.33206253374638, 111.61332690947363, 111.89459128520087, 112.17585566092812, 112.45712003665537, 112.73838441238263, 113.01964878810986, 113.30091316383712, 113.58217753956437, 113.86344191529162, 114.14470629101888, 114.42597066674611, 114.70723504247337, 114.98849941820062, 115.26976379392786, 115.55102816965513, 115.83229254538236, 116.11355692110962, 116.39482129683687, 116.67608567256411, 116.95735004829136, 117.2386144240186, 117.51987879974587, 117.8011431754731, 118.08240755120036, 118.36367192692761, 118.64493630265486, 118.92620067838212, 119.20746505410935, 119.48872942983661, 119.76999380556386, 120.0512581812911, 120.33252255701835, 120.6137869327456, 120.89505130847286, 121.17631568420009, 121.45758005992735, 121.7388444356546, 122.02010881138185, 122.3013731871091, 122.58263756283634, 122.8639019385636, 123.14516631429083, 123.4264306900181, 123.70769506574536, 123.98895944147259, 124.27022381719985, 124.55148819292708, 124.83275256865434, 125.11401694438158, 125.39528132010884, 125.6765456958361, 125.95781007156333, 126.23907444729059, 126.52033882301782, 126.80160319874508, 127.08286757447235, 127.36413195019958, 127.64539632592684, 127.92666070165407, 128.20792507738133, 128.48918945310857, 128.77045382883583, 129.0517182045631, 129.33298258029032, 129.61424695601758, 129.8955113317448, 130.17677570747207, 130.45804008319934, 130.73930445892657, 131.02056883465383, 131.30183321038106, 131.58309758610832, 131.86436196183558, 132.14562633756282, 132.42689071329008, 132.7081550890173, 132.98941946474457, 133.2706838404718, 133.55194821619907, 133.83321259192633, 134.11447696765356, 134.39574134338082, 134.67700571910805, 134.9582700948353, 135.23953447056257, 135.5207988462898, 135.80206322201707, 136.0833275977443, 136.36459197347156, 136.6458563491988, 136.92712072492606, 137.20838510065332, 137.48964947638055, 137.7709138521078, 138.05217822783504, 138.3334426035623, 138.61470697928956, 138.8959713550168, 139.17723573074406, 139.4585001064713, 139.73976448219855, 140.02102885792578, 140.30229323365305, 140.5835576093803, 140.86482198510754, 141.1460863608348, 141.42735073656203, 141.7086151122893, 141.98987948801656, 142.2711438637438, 142.55240823947105, 142.83367261519828, 143.11493699092554, 143.39620136665278, 143.67746574238004, 143.9587301181073, 144.23999449383453, 144.5212588695618, 144.80252324528902, 145.08378762101628, 145.36505199674355, 145.64631637247078, 145.92758074819804, 146.20884512392527, 146.49010949965253, 146.77137387537977, 147.05263825110703, 147.3339026268343, 147.61516700256152, 147.89643137828878, 148.177695754016, 148.45896012974328, 148.74022450547054, 149.02148888119777, 149.30275325692503, 149.58401763265226, 149.86528200837952, 150.14654638410676, 150.42781075983402, 150.70907513556128, 150.9903395112885, 151.27160388701577, 151.552868262743, 151.83413263847027, 152.11539701419753, 152.39666138992476, 152.67792576565202, 152.95919014137925, 153.2404545171065, 153.52171889283375, 153.802983268561, 154.08424764428827, 154.3655120200155, 154.64677639574276, 154.92804077147, 155.20930514719726, 155.49056952292452, 155.77183389865175, 156.053098274379, 156.33436265010624, 156.6156270258335, 156.89689140156074, 157.178155777288, 157.45942015301526, 157.7406845287425, 158.02194890446975, 158.30321328019699, 158.58447765592425, 158.8657420316515, 159.14700640737874, 159.428270783106, 159.70953515883323, 159.9907995345605, 160.27206391028773, 160.553328286015, 160.83459266174225, 161.11585703746948, 161.39712141319674, 161.67838578892398, 161.95965016465124, 162.2409145403785, 162.52217891610573, 162.803443291833, 163.08470766756022, 163.36597204328748, 163.64723641901472, 163.92850079474198, 164.20976517046924, 164.49102954619647, 164.77229392192373, 165.05355829765097, 165.33482267337823, 165.6160870491055, 165.89735142483272, 166.17861580055998, 166.45988017628721, 166.74114455201448, 167.0224089277417, 167.30367330346897, 167.58493767919623, 167.86620205492346, 168.14746643065072, 168.42873080637796, 168.70999518210522, 168.99125955783248, 169.2725239335597, 169.55378830928697, 169.8350526850142, 170.11631706074147, 170.39758143646873, 170.67884581219596, 170.96011018792322, 171.24137456365045, 171.5226389393777, 171.80390331510495, 172.0851676908322, 172.36643206655947, 172.6476964422867, 172.92896081801396, 173.2102251937412, 173.49148956946846, 173.77275394519572, 174.05401832092295, 174.3352826966502, 174.61654707237744, 174.8978114481047, 175.17907582383194, 175.4603401995592, 175.74160457528646, 176.0228689510137, 176.30413332674095, 176.58539770246819, 176.86666207819545, 177.1479264539227, 177.42919082964994, 177.7104552053772, 177.99171958110443, 178.2729839568317, 178.55424833255893, 178.8355127082862, 179.11677708401345, 179.39804145974068, 179.67930583546794, 179.96057021119518, 180.24183458692244, 180.5230989626497, 180.80436333837693, 181.0856277141042, 181.36689208983142, 181.64815646555869, 181.92942084128592, 182.21068521701318, 182.49194959274044, 182.77321396846767, 183.05447834419493, 183.33574271992217, 183.61700709564943, 183.8982714713767, 184.17953584710392, 184.46080022283118, 184.74206459855841, 185.02332897428568, 185.3045933500129, 185.58585772574017, 185.86712210146743, 186.14838647719466, 186.42965085292192, 186.71091522864916, 186.99217960437642, 187.27344398010365, 187.5547083558309, 187.83597273155814, 188.1172371072854, 188.39850148301267, 188.6797658587399, 188.96103023446716, 189.2422946101944, 189.52355898592165, 189.80482336164891, 190.08608773737615, 190.3673521131034, 190.64861648883064, 190.9298808645579, 191.21114524028513, 191.4924096160124, 191.77367399173966, 192.0549383674669, 192.33620274319415, 192.61746711892138, 192.89873149464864, 193.1799958703759, 193.46126024610314, 193.7425246218304, 194.02378899755763, 194.3050533732849, 194.58631774901212, 194.86758212473939, 195.14884650046665, 195.43011087619388, 195.71137525192114, 195.99263962764837, 196.27390400337563, 196.5551683791029, 196.83643275483013, 197.1176971305574, 197.39896150628462, 197.68022588201188, 197.96149025773911, 198.24275463346638, 198.52401900919364, 198.80528338492087, 199.08654776064813, 199.36781213637536, 199.64907651210262, 199.93034088782989, 200.21160526355712, 200.49286963928438, 200.7741340150116, 201.05539839073887, 201.3366627664661, 201.61792714219337, 201.89919151792063, 202.18045589364786, 202.46172026937512, 202.74298464510235, 203.02424902082961, 203.30551339655688, 203.5867777722841, 203.86804214801137, 204.1493065237386, 204.43057089946586, 204.71183527519312, 204.99309965092036, 205.27436402664762, 205.55562840237485, 205.8368927781021, 206.11815715382934, 206.3994215295566, 206.68068590528387, 206.9619502810111, 207.24321465673836, 207.5244790324656, 207.80574340819285, 208.08700778392011, 208.36827215964735, 208.6495365353746, 208.93080091110184, 209.2120652868291, 209.49332966255633, 209.7745940382836, 210.05585841401086, 210.3371227897381, 210.61838716546535, 210.89965154119258, 211.18091591691984, 211.4621802926471, 211.74344466837434, 212.0247090441016, 212.30597341982883, 212.5872377955561, 212.86850217128332, 213.14976654701059, 213.43103092273785, 213.71229529846508, 213.99355967419234, 214.27482404991957, 214.55608842564683, 214.8373528013741, 215.11861717710133, 215.3998815528286, 215.68114592855582, 215.96241030428308, 216.24367468001032, 216.52493905573758, 216.80620343146484, 217.08746780719207, 217.36873218291933, 217.64999655864656, 217.93126093437382, 218.21252531010109, 218.49378968582832, 218.77505406155558, 219.0563184372828, 219.33758281301007, 219.6188471887373, 219.90011156446457, 220.18137594019183, 220.46264031591906, 220.74390469164632, 221.02516906737355, 221.30643344310081, 221.58769781882808, 221.8689621945553, 222.15022657028257, 222.4314909460098, 222.71275532173706, 222.9940196974643, 223.27528407319156, 223.55654844891882, 223.83781282464605, 224.1190772003733, 224.40034157610054, 224.6816059518278, 224.96287032755507, 225.2441347032823, 225.52539907900956, 225.8066634547368, 226.08792783046405, 226.3691922061913, 226.65045658191855, 226.9317209576458, 227.21298533337304, 227.4942497091003, 227.77551408482753, 228.0567784605548, 228.33804283628206, 228.6193072120093, 228.90057158773655, 229.18183596346378, 229.46310033919104, 229.74436471491828, 230.02562909064554, 230.3068934663728, 230.58815784210003, 230.8694222178273, 231.15068659355452, 231.4319509692818, 231.71321534500905, 231.99447972073628, 232.27574409646354, 232.55700847219077, 232.83827284791803, 233.11953722364527, 233.40080159937253, 233.6820659750998, 233.96333035082702, 234.24459472655428, 234.52585910228152, 234.80712347800878, 235.08838785373604, 235.36965222946327, 235.65091660519053, 235.93218098091776, 236.21344535664502, 236.49470973237226, 236.77597410809952, 237.05723848382678, 237.338502859554, 237.61976723528127, 237.9010316110085, 238.18229598673577, 238.46356036246303, 238.74482473819026, 239.02608911391752, 239.30735348964475, 239.58861786537202, 239.86988224109928, 240.1511466168265, 240.43241099255377, 240.713675368281, 240.99493974400826, 241.2762041197355, 241.55746849546276, 241.83873287119002, 242.11999724691725, 242.4012616226445, 242.68252599837174, 242.963790374099, 243.24505474982627, 243.5263191255535, 243.80758350128076, 244.088847877008, 244.37011225273525, 244.6513766284625, 244.93264100418975, 245.213905379917, 245.49516975564424, 245.7764341313715, 246.05769850709873, 246.338962882826, 246.62022725855326, 246.9014916342805, 247.18275601000775, 247.46402038573498, 247.74528476146224, 248.02654913718948, 248.30781351291674, 248.589077888644, 248.87034226437123, 249.1516066400985, 249.43287101582573, 249.714135391553, 249.99539976728025, 250.27666414300748, 250.55792851873474, 250.83919289446197, 251.12045727018923, 251.40172164591647, 251.68298602164373, 251.964250397371, 252.24551477309822, 252.52677914882548, 252.80804352455272, 253.08930790027998, 253.37057227600724, 253.65183665173447, 253.93310102746173, 254.21436540318896, 254.49562977891622, 254.77689415464346, 255.05815853037072, 255.33942290609798, 255.6206872818252, 255.90195165755247, 256.18321603327973, 256.46448040900697, 256.74574478473426, 257.0270091604615, 257.3082735361887, 257.58953791191595, 257.87080228764324, 258.1520666633705, 258.4333310390977, 258.714595414825, 258.99585979055223, 259.27712416627946, 259.5583885420067, 259.839652917734, 260.1209172934612, 260.40218166918845, 260.68344604491574, 260.964710420643, 261.2459747963702, 261.52723917209744, 261.8085035478247, 262.08976792355196, 262.3710322992792, 262.6522966750065, 262.9335610507337, 263.21482542646095, 263.49608980218824, 263.77735417791547, 264.0586185536427, 264.33988292936994, 264.6211473050972, 264.90241168082446, 265.1836760565517, 265.464940432279, 265.7462048080062, 266.02746918373344, 266.3087335594607, 266.58999793518797, 266.8712623109152, 267.15252668664243, 267.4337910623697, 267.71505543809695, 267.9963198138242, 268.2775841895514, 268.5588485652787, 268.84011294100594, 269.1213773167332, 269.40264169246046, 269.6839060681877, 269.96517044391493, 270.2464348196422, 270.52769919536945, 270.8089635710967, 271.0902279468239, 271.3714923225512, 271.65275669827844, 271.93402107400567, 272.21528544973296, 272.4965498254602, 272.7778142011874, 273.05907857691466, 273.34034295264195, 273.6216073283692, 273.9028717040964, 274.1841360798237, 274.46540045555093, 274.74666483127817, 275.0279292070054, 275.3091935827327, 275.5904579584599, 275.87172233418715, 276.15298670991444, 276.4342510856417, 276.7155154613689, 276.9967798370962, 277.27804421282343, 277.55930858855066, 277.8405729642779, 278.1218373400052, 278.4031017157324, 278.68436609145965, 278.96563046718694, 279.2468948429142, 279.5281592186414, 279.80942359436864, 280.0906879700959, 280.37195234582316, 280.6532167215504, 280.9344810972777, 281.2157454730049, 281.49700984873215, 281.77827422445944, 282.05953860018667, 282.3408029759139, 282.62206735164114, 282.9033317273684, 283.18459610309566, 283.4658604788229, 283.7471248545502, 284.0283892302774, 284.30965360600464, 284.5909179817319, 284.87218235745917, 285.1534467331864, 285.43471110891363, 285.7159754846409, 285.99723986036815, 286.2785042360954, 286.5597686118226, 286.8410329875499, 287.12229736327714, 287.4035617390044, 287.68482611473166, 287.9660904904589, 288.24735486618613, 288.5286192419134, 288.80988361764065, 289.0911479933679, 289.3724123690951, 289.6536767448224, 289.93494112054964, 290.21620549627687, 290.49746987200416, 290.7787342477314, 291.0599986234586, 291.34126299918586, 291.62252737491315, 291.9037917506404, 292.1850561263676, 292.4663205020949, 292.74758487782213, 293.02884925354937, 293.3101136292766, 293.5913780050039, 293.8726423807311, 294.15390675645835, 294.43517113218564, 294.7164355079129, 294.9976998836401, 295.2789642593674, 295.56022863509463, 295.84149301082186, 296.1227573865491, 296.4040217622764, 296.6852861380036, 296.96655051373085, 297.24781488945814, 297.5290792651854, 297.8103436409126, 298.09160801663984, 298.3728723923671, 298.65413676809436, 298.9354011438216, 299.2166655195489, 299.4979298952761, 299.77919427100335, 300.0604586467306, 300.34172302245787, 300.6229873981851, 300.90425177391234, 301.1855161496396, 301.46678052536686, 301.7480449010941, 302.0293092768214, 302.3105736525486, 302.59183802827584, 302.8731024040031, 303.15436677973037, 303.4356311554576, 303.71689553118483, 303.9981599069121, 304.27942428263935, 304.5606886583666, 304.8419530340938, 305.1232174098211, 305.40448178554834, 305.6857461612756, 305.96701053700286, 306.2482749127301, 306.52953928845733, 306.81080366418456, 307.09206803991185, 307.3733324156391, 307.6545967913663, 307.9358611670936, 308.21712554282084, 308.49838991854807, 308.77965429427536, 309.0609186700026, 309.3421830457298, 309.62344742145706, 309.90471179718435, 310.1859761729116, 310.4672405486388, 310.7485049243661, 311.02976930009334, 311.31103367582057, 311.5922980515478, 311.8735624272751, 312.1548268030023, 312.43609117872955, 312.71735555445684, 312.9986199301841, 313.2798843059113, 313.5611486816386, 313.84241305736583, 314.12367743309306, 314.4049418088203, 314.6862061845476, 314.9674705602748, 315.24873493600205, 315.5299993117293, 315.8112636874566, 316.0925280631838, 316.37379243891104, 316.6550568146383, 316.93632119036556, 317.2175855660928, 317.49884994182, 317.7801143175473, 318.06137869327455, 318.3426430690018, 318.62390744472907, 318.9051718204563, 319.18643619618354, 319.46770057191077, 319.74896494763806, 320.0302293233653, 320.3114936990925, 320.5927580748198, 320.87402245054705, 321.1552868262743, 321.4365512020015, 321.7178155777288, 321.99907995345603, 322.28034432918327, 322.56160870491055, 322.8428730806378, 323.124137456365, 323.40540183209225, 323.68666620781954, 323.9679305835468, 324.249194959274, 324.5304593350013, 324.81172371072853, 325.09298808645576, 325.37425246218305, 325.6555168379103, 325.9367812136375, 326.21804558936475, 326.49930996509204, 326.78057434081927, 327.0618387165465, 327.3431030922738, 327.624367468001, 327.90563184372826, 328.1868962194555, 328.4681605951828, 328.74942497091, 329.03068934663725, 329.31195372236454, 329.59321809809177, 329.874482473819, 330.15574684954623, 330.4370112252735, 330.71827560100076, 330.999539976728, 331.2808043524553, 331.5620687281825, 331.84333310390974, 332.12459747963703, 332.40586185536426, 332.6871262310915, 332.96839060681873, 333.249654982546, 333.53091935827325, 333.8121837340005, 334.0934481097278, 334.374712485455, 334.65597686118224, 334.9372412369095, 335.21850561263676, 335.499769988364, 335.7810343640912, 336.0622987398185, 336.34356311554575, 336.624827491273, 336.9060918670002, 337.1873562427275, 337.46862061845474, 337.74988499418197, 338.03114936990926, 338.3124137456365, 338.5936781213637, 338.874942497091, 339.15620687281825, 339.4374712485455, 339.7187356242727, 340 ], "y": [ 12506.666666666668, 12420.762150876155, 12336.379300565146, 12253.491037604961, 12172.070915560964, 12092.093102090877, 12013.5323619127, 11936.36404032115, 11860.56404723265, 11786.108841739493, 11712.975417154732, 11641.141286530057, 11570.584468629662, 11501.283474343685, 11433.217293525668, 11366.365382238875, 11300.70765039708, 11236.224449785912, 11172.89656245144, 11110.705189443188, 11049.631939899238, 10989.658820461646, 10930.768225010743, 10872.942924707437, 10816.16605833294, 10760.421122915877, 10705.691964637013, 10651.962770002203, 10599.21805727466, 10547.44266815778, 10496.621759720218, 10446.740796555207, 10397.785543166334, 10349.742056572382, 10302.596679124043, 10256.336031525563, 10210.947006054736, 10166.416759974734, 10122.73270913172, 10079.882521732117, 10037.854112293968, 9996.63563576671, 9956.2154818141, 9916.582269255108, 9877.724840657793, 9839.632257081437, 9802.29379296222, 9765.698931138042, 9729.837358008153, 9694.698958823428, 9660.273813103293, 9626.552190175418, 9593.524544834405, 9561.181513115906, 9529.513908182631, 9498.512716318923, 9468.16909303056, 9438.474359246724, 9409.41999762104, 9380.997648928742, 9353.199108557152, 9326.016323086664, 9299.441386959663, 9273.46653923471, 9248.084160423568, 9223.286769408638, 9199.067020438497, 9175.417700199245, 9152.33172495953, 9129.802137787112, 9107.82210583492, 9086.38491769467, 9065.483980816043, 9045.112818989674, 9025.265069892099, 9005.934482690893, 8987.11491570842, 8968.800334142441, 8950.984807842098, 8933.662509137688, 8916.827710722762, 8900.474783587133, 8884.598194999344, 8869.19250653731, 8854.252372165807, 8839.772536359475, 8825.747832270225, 8812.173179937752, 8799.043584542047, 8786.354134696774, 8774.10000078242, 8762.276433318184, 8750.878761371536, 8739.902391004503, 8729.34280375568, 8719.195555157039, 8709.456273284646, 8700.120657342373, 8691.184476277775, 8682.643567429275, 8674.493835203884, 8666.731249784634, 8659.351845866986, 8652.351721423478, 8645.727036495859, 8639.474012014065, 8633.58892864131, 8628.06812564466, 8622.907999790448, 8618.105004263889, 8613.655647612315, 8609.556492711436, 8605.804155754027, 8602.395305260545, 8599.326661111063, 8596.594993598064, 8594.197122499534, 8592.129916171883, 8590.390290662212, 8588.97520883943, 8587.881679543807, 8587.106756754489, 8586.647538774518, 8586.501167433016, 8586.664827304041, 8587.135744941752, 8587.911188131497, 8588.988465156452, 8590.364924079415, 8592.037952039422, 8594.004974562842, 8596.263454888589, 8598.810893307118, 8601.644826512937, 8604.762826970245, 8608.162502291447, 8611.841494628221, 8615.797480074874, 8620.028168083663, 8624.531300891853, 8629.304652960218, 8634.346030422723, 8639.65327054714, 8645.224241206364, 8651.056840360157, 8657.148995547112, 8663.498663386581, 8670.10382909039, 8676.96250598407, 8684.072735037405, 8691.432584404138, 8699.040148970556, 8706.893549912813, 8714.990934262783, 8723.330474482256, 8731.910368045272, 8740.72883702847, 8749.784127709216, 8759.074510171376, 8768.598277918576, 8778.353747494742, 8788.339258111822, 8798.553171284497, 8808.993870471719, 8819.659760725008, 8830.549268343242, 8841.660840533918, 8852.992945080667, 8864.544070016942, 8876.312723305713, 8888.297432525065, 8900.49674455956, 8912.909225297255, 8925.533459332266, 8938.368049672714, 8951.411617454012, 8964.662801657332, 8978.120258833158, 8991.782662829828, 9005.648704526957, 9019.717091573624, 9033.986548131277, 9048.455814621188, 9063.123647476426, 9077.98881889823, 9093.050116616672, 9108.306343655595, 9123.756318101643, 9139.398872877377, 9155.232855518365, 9171.257127954164, 9187.470566293126, 9203.872060610942, 9220.46051474287, 9237.234846079547, 9254.193985366326, 9271.336876506086, 9288.662476365404, 9306.16975458409, 9323.85769338793, 9341.725287404659, 9359.771543483064, 9377.995480515134, 9396.396129261244, 9414.97253217829, 9433.723743250706, 9452.648827824345, 9471.746862443128, 9491.016934688429, 9510.458143021144, 9530.069596626407, 9549.850415260842, 9569.799729102404, 9589.916678602653, 9610.200414341485, 9630.650096884274, 9651.264896641314, 9672.04399372961, 9692.986577836895, 9714.091848087879, 9735.359012912677, 9756.787289917349, 9778.375905756579, 9800.12409600836, 9822.031105050737, 9844.096185940518, 9866.318600293926, 9888.697618169172, 9911.232517950895, 9933.922586236451, 9956.767117723994, 9979.765415102347, 10002.916788942632, 10026.220557591556, 10049.676047066441, 10073.282590951861, 10097.039530297929, 10120.946213520147, 10145.001996300834, 10169.20624149212, 10193.558319020374, 10218.057605792193, 10242.703485601794, 10267.495349039857, 10292.432593403773, 10317.514622609264, 10342.740847103363, 10368.110683778721, 10393.62355588924, 10419.278892966964, 10445.076130740252, 10471.014711053202, 10497.094081786261, 10523.313696778077, 10549.673015748493, 10576.171504222712, 10602.808633456623, 10629.5838803632, 10656.496727440044, 10683.546662697981, 10710.733179590721, 10738.055776945597, 10765.513958895264, 10793.107234810494, 10820.835119233865, 10848.69713181453, 10876.692797243853, 10904.821645192045, 10933.083210245719, 10961.477031846325, 10990.002654229535, 11018.659626365457, 11047.447501899745, 11076.365839095579, 11105.414200776424, 11134.592154269685, 11163.899271351123, 11193.335128190094, 11222.899305295561, 11252.591387462882, 11282.41096372137, 11312.357627282576, 11342.43097548932, 11372.630609765461, 11402.95613556634, 11433.407162329971, 11463.983303428868, 11494.684176122597, 11525.509401510972, 11556.458604487909, 11587.531413695919, 11618.727461481249, 11650.046383849647, 11681.48782042274, 11713.051414395008, 11744.736812491363, 11776.543664925313, 11808.471625357717, 11840.52035085607, 11872.689501854402, 11904.978742113659, 11937.387738682708, 11969.916161859801, 12002.563685154593, 12035.329985250712, 12068.214741968759, 12101.217638229893, 12134.338360019847, 12167.576596353458, 12200.93203923969, 12234.404383647066, 12267.993327469663, 12301.698571493449, 12335.519819363171, 12369.45677754961, 12403.509155317333, 12437.676664692814, 12471.959020433034, 12506.355939994462, 12540.86714350245, 12575.492353721042, 12610.231296023188, 12645.083698361319, 12680.049291238345, 12715.127807679002, 12750.3189832016, 12785.622555790109, 12821.038265866642, 12856.565856264288, 12892.205072200251, 12927.955661249438, 12963.817373318261, 12999.789960618884, 13035.873177643754, 13072.066781140453, 13108.370530086908, 13144.78418566686, 13181.307511245726, 13217.940272346701, 13254.682236627188, 13291.533173855543, 13328.492855888093, 13365.56105664646, 13402.73755209516, 13440.022120219486, 13477.414541003698, 13514.914596409428, 13552.522070354444, 13590.236748691554, 13628.058419187935, 13665.98687150456, 13704.021897175995, 13742.163289590411, 13780.410843969805, 13818.764357350556, 13857.223628564112, 13895.788458218012, 13934.458648677095, 13973.234004044927, 14012.114330145509, 14051.099434505144, 14090.189126334591, 14129.383216511385, 14168.68151756239, 14208.0838436466, 14247.59001053808, 14287.199835609179, 14326.913137813899, 14366.7297376715, 14406.649457250289, 14446.672120151592, 14486.797551493946, 14527.025577897453, 14567.356027468357, 14607.78872978375, 14648.32351587652, 14688.96021822046, 14729.698670715516, 14770.538708673277, 14811.480168802587, 14852.522889195327, 14893.666709312425, 14934.911469969942, 14976.257013325408, 15017.703182864236, 15059.249823386388, 15100.896780993107, 15142.643903073866, 15184.491038293454, 15226.438036579188, 15268.484749108324, 15310.631028295553, 15352.876727780693, 15395.221702416515, 15437.665808256674, 15480.208902543827, 15522.850843697863, 15565.591491304249, 15608.430706102585, 15651.36834997518, 15694.404285935874, 15737.538378118883, 15780.770491767858, 15824.100493225005, 15867.528249920371, 15911.053630361243, 15954.676504121637, 15998.396741831955, 16042.214215168719, 16086.128796844434, 16130.140360597592, 16174.248781182725, 16218.453934360654, 16262.755696888757, 16307.153946511433, 16351.648561950602, 16396.23942289635, 16440.926409997686, 16485.709404853347, 16530.588290002786, 16575.56294891719, 16620.63326599063, 16665.79912653131, 16711.060416752898, 16756.41702376598, 16801.86883556956, 16847.41574104271, 16893.057629936273, 16938.794392864656, 16984.625921297767, 17030.552107552943, 17076.57284478707, 17122.68802698871, 17168.897548970355, 17215.201306360763, 17261.599195597344, 17308.091113918694, 17354.676959357115, 17401.356630731327, 17448.13002763916, 17494.997050450376, 17541.95760029956, 17589.011579079095, 17636.15888943219, 17683.399434746003, 17730.733119144814, 17778.159847483308, 17825.679525339896, 17873.292059010124, 17920.997355500127, 17968.79532252022, 18016.685868478453, 18064.668902474317, 18112.744334292507, 18160.91207439669, 18209.17203392343, 18257.52412467609, 18305.96825911886, 18354.50435037081, 18403.13231220004, 18451.852059017838, 18500.663505872963, 18549.566568445938, 18598.56116304343, 18647.647206592672, 18696.824616635964, 18746.09331132517, 18795.453209416395, 18844.904230264572, 18894.446293818208, 18944.079320614142, 18993.803231772352, 19043.617948990857, 19093.523394540593, 19143.519491260446, 19193.60616255223, 19243.78333237582, 19294.050925244213, 19344.40886621876, 19394.857080904374, 19445.395495444798, 19496.02403651796, 19546.742631331294, 19597.5512076172, 19648.449693628496, 19699.438018133893, 19750.516110413628, 19801.683900254975, 19852.94131794795, 19904.288294280963, 19955.72476053657, 20007.25064848724, 20058.865890391146, 20110.570418988074, 20162.364167495252, 20214.24706960336, 20266.21905947244, 20318.280071727968, 20370.43004145689, 20422.668904203707, 20474.99659596664, 20527.413053193766, 20579.918212779263, 20632.51201205964, 20685.19438881001, 20737.965281240453, 20790.824627992326, 20843.772368134683, 20896.808441160683, 20949.93278698407, 21003.145345935678, 21056.446058759924, 21109.834866611418, 21163.31171105152, 21216.876534045, 21270.529277956688, 21324.269885548165, 21378.098299974514, 21432.014464781034, 21486.018323900076, 21540.109821647842, 21594.288902721226, 21648.555512194725, 21702.90959551731, 21757.35109850941, 21811.879967359833, 21866.49614862281, 21921.199589214986, 21975.990236412497, 22030.868037848053, 22085.83294150803, 22140.884895729603, 22196.02384919797, 22251.249750943447, 22306.562550338782, 22361.96219709631, 22417.44864126531, 22473.02183322923, 22528.681723703034, 22584.428263730562, 22640.261404681874, 22696.18109825066, 22752.187296451662, 22808.279951618097, 22864.459016399152, 22920.724443757445, 22977.076186966577, 23033.5141996086, 23090.038435571674, 23146.648849047564, 23203.345394529268, 23260.128026808678, 23316.99670097417, 23373.951372408334, 23430.991996785604, 23488.11853007001, 23545.330928512918, 23602.629148650733, 23660.013147302736, 23717.482881568816, 23775.038308827352, 23832.679386732987, 23890.406073214497, 23948.2183264727, 24006.11610497829, 24064.09936746981, 24122.16807295153, 24180.32218069141, 24238.561650219097, 24296.886441323866, 24355.296514052672, 24413.791828708097, 24472.37234584649, 24531.03802627593, 24589.78883105436, 24648.62472148766, 24707.54565912773, 24766.551605770674, 24825.642523454873, 24884.81837445919, 24944.07912130114, 25003.424726735047, 25062.855153750304, 25122.37036556953, 25181.970325646882, 25241.654997666246, 25301.424345539534, 25361.278333404975, 25421.21692562538, 25481.240086786514, 25541.347781695367, 25601.539975378513, 25661.81663308051, 25722.177720262196, 25782.62320259916, 25843.153045980045, 25903.767216505083, 25964.465680484405, 26025.248404436545, 26086.11535508691, 26147.06649936618, 26208.101804408885, 26269.221237551796, 26330.424766332508, 26391.712358487945, 26453.083981952863, 26514.539604858437, 26576.079195530783, 26637.702722489565, 26699.410154446534, 26761.201460304157, 26823.076609154225, 26885.03557027644, 26947.078313137084, 27009.204807387636, 27071.41502286341, 27133.70892958229, 27196.08649774332, 27258.54769772545, 27321.092500086193, 27383.720875560382, 27446.432795058852, 27509.22822966718, 27572.10715064444, 27635.069529421933, 27698.11533760199, 27761.24454695669, 27824.457129426664, 27887.753057119946, 27951.13230231066, 28014.594837437966, 28078.140635104766, 28141.76966807662, 28205.481909280545, 28269.277331803874, 28333.15590889315, 28397.11761395294, 28461.16242054478, 28525.290302386016, 28589.501233348707, 28653.795187458578, 28718.172138893875, 28782.63206198435, 28847.174931210142, 28911.800721200758, 28976.509406734025, 29041.300962735015, 29106.17536427506, 29171.13258657069, 29236.172604982658, 29301.295395014902, 29366.500932313553, 29431.789192665972, 29497.160151999724, 29562.61378638166, 29628.150072016884, 29693.768985247858, 29759.47050255342, 29825.254600547836, 29891.121255979902, 29957.070445731963, 30023.10214681904, 30089.2163363879, 30155.412991716126, 30221.692090211276, 30288.053609409933, 30354.49752697687, 30421.023820704137, 30487.632468510194, 30554.3234484391, 30621.09673865957, 30687.952317464205, 30754.890163268614, 30821.910254610575, 30889.012570149214, 30956.19708866418, 31023.463789054847, 31090.81265033946, 31158.243651654404, 31225.75677225332, 31293.351991506377, 31361.029288899485, 31428.788644033462, 31496.630036623348, 31564.553446497557, 31632.55885359717, 31700.646237975154, 31768.815579795617, 31837.0668593331, 31905.400056971772, 31973.815153204774, 32042.312128633443, 32110.890963966598, 32179.551640019865, 32248.294137714907, 32317.11843807878, 32386.0245222432, 32455.012371443856, 32524.081967019734, 32593.233290412412, 32662.466323165438, 32731.781046923585, 32801.17744343222, 32870.655494536695, 32940.215182181564, 33009.85648841008, 33079.57939536343, 33149.383885280185, 33219.26994049557, 33289.23754344092, 33359.28667664303, 33429.41732272347, 33499.62946439806, 33569.923084476206, 33640.29816586033, 33710.75469154518, 33781.29264461734, 33851.9120082546, 33922.6127657253, 33993.394900387844, 34064.258395690056, 34135.20323516866, 34206.229402448604, 34277.33688124261, 34348.525655350575, 34419.79570865894, 34491.14702514021, 34562.57958885245, 34634.093383938576, 34705.68839462598, 34777.36460522588, 34849.122000132884, 34920.96056382432, 34992.88028085986, 35064.88113588092, 35136.96311361009, 35209.12619885077, 35281.370376486484, 35353.69563148054, 35426.101948875366, 35498.58931379212, 35571.15771143019, 35643.807127066604, 35716.53754605565, 35789.348953828376, 35862.241335892024, 35935.21467782964, 36008.268965299554, 36081.40418403496, 36154.62031984335, 36227.91735860615, 36301.29528627823, 36374.7540888874, 36448.293752534, 36521.914263390456, 36595.615607700805, 36669.39777178025, 36743.26074201475, 36817.20450486054, 36891.229046843735, 36965.334354559855, 37039.520414673454, 37113.78721391765, 37188.13473909367, 37262.56297707054, 37337.07191478458, 37411.66153923898, 37486.33183750345, 37561.08279671379, 37635.914404071475, 37710.82664684322, 37785.81951236067, 37860.892988019936, 37936.047061281184, 38011.28171966832, 38086.59695076855, 38161.99274223198, 38237.46908177128, 38313.025957161284, 38388.66335623862, 38464.38126690128, 38540.17967710832, 38616.05857487952, 38692.017948294866, 38768.05778549436, 38844.17807467757, 38920.378804103246, 38996.65996208904, 39073.02153701108, 39149.46351730371, 39225.98589145901, 39302.58864802656, 39379.271775613095, 39456.03526288205, 39532.87909855335, 39609.80327140302, 39686.80777026285, 39763.892584020025, 39841.05770161689, 39918.30311205055, 39995.62880437254, 40073.03476768854, 40150.52099115806, 40228.08746399408, 40305.73417546272, 40383.46111488302, 40461.26827162653, 40539.155635117044, 40617.12319483029, 40695.1709402936, 40773.298861085685, 40851.50694683618, 40929.795187225514, 41008.16357198453, 41086.61209089416, 41165.14073378519, 41243.74949053797, 41322.438351082055, 41401.207305396005, 41480.05634350705, 41558.98545549083, 41637.994631471025, 41717.083861619256, 41796.25313615465, 41875.50244534359, 41954.8317794995, 42034.24112898255, 42113.73048419935, 42193.2998356027, 42272.94917369136, 42352.67848900975, 42432.487772147644, 42512.37701374001, 42592.34620446668, 42672.39533505212, 42752.52439626512, 42832.73337891864, 42913.022273869465, 42993.39107201798, 43073.83976430796, 43154.36834172628, 43234.97679530266, 43315.66511610946, 43396.433295261435, 43477.28132391545, 43558.20919327027, 43639.21689456632, 43720.30441908547, 43801.47175815075, 43882.71890312615, 43964.0458454164, 44045.45257646674, 44126.939087762585, 44208.505370829494, 44290.1514172328, 44371.87721857739, 44453.682766507554, 44535.5680527067, 44617.533068897195, 44699.577806840076, 44781.70225833488, 44863.90641521942, 44946.19026936955, 45028.553812699, 45110.997037159126, 45193.51993473867, 45276.12249746364, 45358.804717397026, 45441.56658663865, 45524.408097324864, 45607.32924162848, 45690.3300117585, 45773.41039995987, 45856.57039851336, 45939.80999973535, 46023.129195977606, 46106.52797962705, 46190.00634310568, 46273.5642788703, 46357.20177941228, 46440.91883725747, 46524.71544496597, 46608.59159513193, 46692.547280383325, 46776.582493381866, 46860.697226822755, 46944.891473434465, 47029.16522597864, 47113.518477249905, 47197.95122007558, 47282.46344731563, 47367.05515186242, 47451.72632664059, 47536.47696460677, 47621.30705874954, 47706.216602089204, 47791.20558767754, 47876.27400859777, 47961.42185796429, 48046.64912892255, 48131.95581464884, 48217.34190835015, 48302.80740326406, 48388.352292658434, 48473.9765698314, 48559.68022811115, 48645.463260855686, 48731.3256614528, 48817.2674233198, 48903.288539903464, 48989.389004679724, 49075.568811153666, 49161.827952859305, 49248.166423359435, 49334.58421624544, 49421.081325137246, 49507.65774368303, 49594.313465559215, 49681.04848447017, 49767.86279414818, 49854.75638835328, 49941.729260873006, 50028.781405522386, 50115.912816143755, 50203.123486606506, 50290.41341080711, 50377.78258266885, 50465.23099614176, 50552.75864520241, 50640.365523853834, 50728.05162612535, 50815.81694607241, 50903.66147777652, 50991.58521534506, 51079.588152911165, 51167.67028463355, 51255.83160469642, 51344.07210730936, 51432.39178670711, 51520.79063714954, 51609.26865292145, 51697.825828332476, 51786.462157716895, 51875.17763543361, 51963.972255865934, 52052.846013421455, 52141.79890253198, 52230.8309176534, 52319.94205326546, 52409.13230387177, 52498.4016639996, 52587.75012819982, 52677.17769104668, 52766.68434713779, 52856.27009109397, 52945.93491755908, 53035.67882119997, 53125.501796706325, 53215.40383879058, 53305.384942187724, 53395.445101655285, 53485.58431197318, 53575.80256794353, 53666.09986439068, 53756.47619616093, 53846.93155812262, 53937.46594516575, 54028.079352202156, 54118.771774165216, 54209.543206009745, 54300.39364271199, 54391.32307926948, 54482.33151070079, 54573.41893204566, 54664.58533836471, 54755.83072473943, 54847.15508627199, 54938.55841808523, 55030.04071532252, 55121.60197314758, 55213.242186744515, 55304.96135131762, 55396.759462091315, 55488.63651430997, 55580.59250323792, 55672.62742415933, 55764.74127237798, 55856.93404321737, 55949.20573202044, 56041.55633414959, 56133.985844986484, 56226.49425993207, 56319.0815744064, 56411.747783848514, 56504.49288371645, 56597.31686948706, 56690.21973665592, 56783.201480737305, 56876.26209726402, 56969.40158178737 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "94 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 93.60414317185844 ], "y": [ 8586.501033599194 ] }, { "name": "Total Drag: 5km", "type": "scatter", "x": [ 76.11653856047897, 76.38068616952754, 76.64483377857611, 76.90898138762468, 77.17312899667326, 77.43727660572182, 77.70142421477038, 77.96557182381896, 78.22971943286753, 78.4938670419161, 78.75801465096467, 79.02216226001323, 79.28630986906181, 79.55045747811037, 79.81460508715895, 80.07875269620752, 80.34290030525608, 80.60704791430466, 80.87119552335322, 81.1353431324018, 81.39949074145036, 81.66363835049893, 81.9277859595475, 82.19193356859607, 82.45608117764465, 82.72022878669321, 82.98437639574178, 83.24852400479035, 83.51267161383892, 83.7768192228875, 84.04096683193606, 84.30511444098462, 84.5692620500332, 84.83340965908177, 85.09755726813034, 85.36170487717891, 85.62585248622747, 85.89000009527605, 86.15414770432461, 86.41829531337319, 86.68244292242176, 86.94659053147032, 87.2107381405189, 87.47488574956746, 87.73903335861604, 88.0031809676646, 88.26732857671317, 88.53147618576175, 88.79562379481031, 89.05977140385889, 89.32391901290745, 89.58806662195602, 89.8522142310046, 90.11636184005316, 90.38050944910174, 90.6446570581503, 90.90880466719886, 91.17295227624744, 91.437099885296, 91.70124749434459, 91.96539510339315, 92.22954271244171, 92.49369032149029, 92.75783793053886, 93.02198553958743, 93.286133148636, 93.55028075768456, 93.81442836673314, 94.0785759757817, 94.34272358483028, 94.60687119387885, 94.87101880292741, 95.13516641197599, 95.39931402102455, 95.66346163007313, 95.9276092391217, 96.19175684817026, 96.45590445721884, 96.72005206626741, 96.98419967531598, 97.24834728436454, 97.5124948934131, 97.77664250246168, 98.04079011151026, 98.30493772055883, 98.56908532960739, 98.83323293865595, 99.09738054770453, 99.36152815675311, 99.62567576580167, 99.88982337485024, 100.1539709838988, 100.41811859294738, 100.68226620199596, 100.94641381104452, 101.21056142009309, 101.47470902914165, 101.73885663819023, 102.0030042472388, 102.26715185628737, 102.53129946533593, 102.79544707438451, 103.05959468343308, 103.32374229248165, 103.58788990153022, 103.85203751057878, 104.11618511962736, 104.38033272867592, 104.6444803377245, 104.90862794677307, 105.17277555582163, 105.43692316487021, 105.70107077391877, 105.96521838296735, 106.22936599201591, 106.49351360106448, 106.75766121011306, 107.02180881916162, 107.2859564282102, 107.55010403725876, 107.81425164630733, 108.0783992553559, 108.34254686440447, 108.60669447345305, 108.87084208250161, 109.13498969155017, 109.39913730059874, 109.66328490964732, 109.9274325186959, 110.19158012774446, 110.45572773679302, 110.71987534584159, 110.98402295489016, 111.24817056393874, 111.5123181729873, 111.77646578203587, 112.04061339108443, 112.30476100013301, 112.56890860918159, 112.83305621823015, 113.09720382727872, 113.36135143632728, 113.62549904537586, 113.88964665442444, 114.153794263473, 114.41794187252157, 114.68208948157013, 114.94623709061871, 115.21038469966729, 115.47453230871585, 115.73867991776441, 116.002827526813, 116.26697513586156, 116.53112274491014, 116.7952703539587, 117.05941796300726, 117.32356557205584, 117.5877131811044, 117.85186079015298, 118.11600839920155, 118.38015600825011, 118.64430361729869, 118.90845122634725, 119.17259883539583, 119.4367464444444, 119.70089405349296, 119.96504166254154, 120.2291892715901, 120.49333688063868, 120.75748448968724, 121.02163209873581, 121.28577970778439, 121.54992731683295, 121.81407492588153, 122.07822253493009, 122.34237014397866, 122.60651775302723, 122.8706653620758, 123.13481297112438, 123.39896058017294, 123.6631081892215, 123.92725579827008, 124.19140340731865, 124.45555101636722, 124.71969862541579, 124.98384623446435, 125.24799384351293, 125.5121414525615, 125.77628906161007, 126.04043667065864, 126.3045842797072, 126.56873188875578, 126.83287949780434, 127.09702710685292, 127.36117471590148, 127.62532232495005, 127.88946993399863, 128.1536175430472, 128.41776515209577, 128.68191276114433, 128.9460603701929, 129.2102079792415, 129.47435558829005, 129.73850319733862, 130.00265080638718, 130.26679841543574, 130.5309460244843, 130.7950936335329, 131.05924124258146, 131.32338885163003, 131.5875364606786, 131.85168406972718, 132.11583167877575, 132.3799792878243, 132.64412689687288, 132.90827450592144, 133.17242211497, 133.4365697240186, 133.70071733306716, 133.96486494211572, 134.2290125511643, 134.49316016021288, 134.75730776926144, 135.02145537831, 135.28560298735857, 135.54975059640714, 135.8138982054557, 136.0780458145043, 136.34219342355286, 136.60634103260142, 136.87048864164998, 137.13463625069858, 137.39878385974714, 137.6629314687957, 137.92707907784427, 138.19122668689283, 138.4553742959414, 138.71952190499, 138.98366951403855, 139.24781712308712, 139.51196473213568, 139.77611234118427, 140.04025995023284, 140.3044075592814, 140.56855516832996, 140.83270277737853, 141.0968503864271, 141.36099799547566, 141.62514560452425, 141.8892932135728, 142.1534408226214, 142.41758843166997, 142.68173604071853, 142.9458836497671, 143.21003125881566, 143.47417886786423, 143.7383264769128, 144.00247408596135, 144.26662169500995, 144.5307693040585, 144.7949169131071, 145.05906452215567, 145.32321213120423, 145.5873597402528, 145.85150734930136, 146.11565495834992, 146.37980256739849, 146.64395017644705, 146.90809778549564, 147.1722453945442, 147.4363930035928, 147.70054061264136, 147.96468822168993, 148.2288358307385, 148.49298343978705, 148.75713104883562, 149.02127865788418, 149.28542626693275, 149.54957387598134, 149.8137214850299, 150.0778690940785, 150.34201670312706, 150.60616431217562, 150.8703119212242, 151.13445953027275, 151.3986071393213, 151.66275474836988, 151.92690235741844, 152.19104996646703, 152.4551975755156, 152.7193451845642, 152.98349279361275, 153.24764040266132, 153.51178801170988, 153.77593562075845, 154.040083229807, 154.30423083885557, 154.56837844790414, 154.83252605695273, 155.0966736660013, 155.3608212750499, 155.62496888409845, 155.88911649314701, 156.15326410219558, 156.41741171124414, 156.6815593202927, 156.94570692934127, 157.20985453838986, 157.47400214743843, 157.738149756487, 158.00229736553558, 158.26644497458415, 158.5305925836327, 158.79474019268127, 159.05888780172984, 159.3230354107784, 159.58718301982697, 159.85133062887556, 160.11547823792412, 160.3796258469727, 160.64377345602128, 160.90792106506984, 161.1720686741184, 161.43621628316697, 161.70036389221553, 161.9645115012641, 162.22865911031266, 162.49280671936125, 162.75695432840982, 163.02110193745838, 163.28524954650698, 163.54939715555554, 163.8135447646041, 164.07769237365267, 164.34183998270123, 164.6059875917498, 164.87013520079836, 165.13428280984695, 165.39843041889552, 165.66257802794408, 165.92672563699267, 166.19087324604124, 166.4550208550898, 166.71916846413836, 166.98331607318693, 167.2474636822355, 167.51161129128405, 167.77575890033265, 168.0399065093812, 168.30405411842978, 168.56820172747837, 168.83234933652693, 169.0964969455755, 169.36064455462406, 169.62479216367262, 169.8889397727212, 170.15308738176975, 170.41723499081834, 170.6813825998669, 170.94553020891547, 171.20967781796406, 171.47382542701263, 171.7379730360612, 172.00212064510976, 172.26626825415832, 172.53041586320688, 172.79456347225545, 173.05871108130404, 173.3228586903526, 173.58700629940117, 173.85115390844976, 174.11530151749832, 174.3794491265469, 174.64359673559545, 174.90774434464402, 175.17189195369258, 175.43603956274114, 175.70018717178974, 175.9643347808383, 176.22848238988686, 176.49262999893546, 176.75677760798402, 177.02092521703258, 177.28507282608115, 177.5492204351297, 177.81336804417828, 178.07751565322684, 178.34166326227543, 178.605810871324, 178.8699584803726, 179.13410608942115, 179.39825369846972, 179.66240130751828, 179.92654891656684, 180.1906965256154, 180.45484413466397, 180.71899174371254, 180.98313935276113, 181.2472869618097, 181.51143457085828, 181.77558217990685, 182.0397297889554, 182.30387739800398, 182.56802500705254, 182.8321726161011, 183.09632022514967, 183.36046783419823, 183.62461544324682, 183.8887630522954, 184.15291066134398, 184.41705827039254, 184.6812058794411, 184.94535348848967, 185.20950109753824, 185.4736487065868, 185.73779631563536, 186.00194392468393, 186.26609153373252, 186.53023914278108, 186.79438675182968, 187.05853436087824, 187.3226819699268, 187.58682957897537, 187.85097718802393, 188.1151247970725, 188.37927240612106, 188.64342001516962, 188.90756762421822, 189.17171523326678, 189.43586284231537, 189.70001045136394, 189.9641580604125, 190.22830566946107, 190.49245327850963, 190.7566008875582, 191.02074849660676, 191.28489610565532, 191.5490437147039, 191.81319132375248, 192.07733893280107, 192.34148654184963, 192.6056341508982, 192.86978175994676, 193.13392936899533, 193.3980769780439, 193.66222458709245, 193.92637219614102, 194.1905198051896, 194.45466741423817, 194.71881502328677, 194.98296263233533, 195.2471102413839, 195.51125785043246, 195.77540545948102, 196.03955306852959, 196.30370067757815, 196.5678482866267, 196.8319958956753, 197.09614350472387, 197.36029111377246, 197.62443872282103, 197.8885863318696, 198.15273394091815, 198.41688154996672, 198.68102915901528, 198.94517676806385, 199.2093243771124, 199.473471986161, 199.73761959520957, 200.00176720425816, 200.26591481330672, 200.5300624223553, 200.79421003140385, 201.0583576404524, 201.32250524950098, 201.58665285854954, 201.85080046759813, 202.1149480766467, 202.37909568569526, 202.64324329474385, 202.90739090379242, 203.17153851284098, 203.43568612188955, 203.6998337309381, 203.96398133998667, 204.22812894903527, 204.49227655808383, 204.7564241671324, 205.02057177618096, 205.28471938522952, 205.54886699427811, 205.81301460332668, 206.07716221237524, 206.3413098214238, 206.60545743047237, 206.86960503952096, 207.13375264856953, 207.3979002576181, 207.66204786666665, 207.92619547571522, 208.1903430847638, 208.45449069381237, 208.71863830286094, 208.9827859119095, 209.24693352095807, 209.51108113000666, 209.77522873905522, 210.0393763481038, 210.30352395715235, 210.56767156620091, 210.8318191752495, 211.09596678429807, 211.36011439334663, 211.6242620023952, 211.88840961144376, 212.15255722049235, 212.41670482954092, 212.68085243858948, 212.94500004763805, 213.2091476566866, 213.4732952657352, 213.73744287478377, 214.00159048383233, 214.2657380928809, 214.52988570192946, 214.79403331097805, 215.05818092002662, 215.32232852907518, 215.58647613812374, 215.8506237471723, 216.1147713562209, 216.37891896526946, 216.64306657431803, 216.9072141833666, 217.17136179241515, 217.43550940146375, 217.6996570105123, 217.96380461956088, 218.22795222860944, 218.492099837658, 218.7562474467066, 219.02039505575516, 219.28454266480372, 219.5486902738523, 219.81283788290085, 220.07698549194944, 220.341133100998, 220.60528071004657, 220.86942831909514, 221.1335759281437, 221.3977235371923, 221.66187114624086, 221.92601875528942, 222.19016636433798, 222.45431397338655, 222.71846158243514, 222.9826091914837, 223.24675680053227, 223.51090440958083, 223.7750520186294, 224.039199627678, 224.30334723672655, 224.56749484577512, 224.83164245482368, 225.09579006387224, 225.35993767292084, 225.6240852819694, 225.88823289101796, 226.15238050006653, 226.4165281091151, 226.68067571816368, 226.94482332721225, 227.2089709362608, 227.47311854530938, 227.73726615435794, 228.00141376340653, 228.2655613724551, 228.52970898150366, 228.79385659055222, 229.0580041996008, 229.32215180864938, 229.58629941769794, 229.8504470267465, 230.11459463579507, 230.37874224484364, 230.64288985389223, 230.9070374629408, 231.17118507198936, 231.43533268103792, 231.69948029008648, 231.96362789913508, 232.22777550818364, 232.4919231172322, 232.75607072628077, 233.02021833532933, 233.28436594437792, 233.5485135534265, 233.81266116247505, 234.07680877152362, 234.3409563805722, 234.60510398962077, 234.86925159866934, 235.1333992077179, 235.39754681676646, 235.66169442581506, 235.92584203486362, 236.18998964391218, 236.45413725296075, 236.7182848620093, 236.9824324710579, 237.24658008010647, 237.51072768915503, 237.7748752982036, 238.03902290725216, 238.30317051630075, 238.56731812534932, 238.83146573439788, 239.09561334344644, 239.359760952495, 239.6239085615436, 239.88805617059217, 240.15220377964073, 240.4163513886893, 240.68049899773786, 240.94464660678645, 241.208794215835, 241.47294182488358, 241.73708943393214, 242.0012370429807, 242.2653846520293, 242.52953226107786, 242.79367987012643, 243.057827479175, 243.32197508822355, 243.58612269727215, 243.8502703063207, 244.11441791536927, 244.37856552441784, 244.6427131334664, 244.906860742515, 245.17100835156356, 245.43515596061212, 245.69930356966069, 245.96345117870925, 246.22759878775784, 246.4917463968064, 246.75589400585497, 247.02004161490353, 247.2841892239521, 247.5483368330007, 247.81248444204925, 248.07663205109782, 248.34077966014638, 248.60492726919495, 248.86907487824354, 249.1332224872921, 249.39737009634067, 249.66151770538923, 249.9256653144378, 250.1898129234864, 250.45396053253495, 250.7181081415835, 250.98225575063208, 251.24640335968064, 251.51055096872923, 251.7746985777778, 252.03884618682636, 252.30299379587493, 252.5671414049235, 252.83128901397208, 253.09543662302065, 253.3595842320692, 253.62373184111777, 253.88787945016634, 254.15202705921493, 254.4161746682635, 254.68032227731206, 254.94446988636062, 255.2086174954092, 255.47276510445778, 255.73691271350634, 256.0010603225549, 256.26520793160347, 256.52935554065203, 256.79350314970065, 257.0576507587492, 257.3217983677978, 257.58594597684635, 257.8500935858949, 258.1142411949435, 258.37838880399204, 258.6425364130406, 258.90668402208917, 259.17083163113773, 259.4349792401863, 259.69912684923486, 259.9632744582834, 260.227422067332, 260.49156967638055, 260.75571728542917, 261.01986489447773, 261.2840125035263, 261.54816011257486, 261.8123077216234, 262.07645533067205, 262.3406029397206, 262.6047505487692, 262.86889815781774, 263.1330457668663, 263.39719337591487, 263.66134098496343, 263.925488594012, 264.18963620306056, 264.4537838121091, 264.7179314211577, 264.98207903020625, 265.2462266392548, 265.5103742483034, 265.77452185735194, 266.03866946640056, 266.3028170754491, 266.5669646844977, 266.83111229354625, 267.0952599025948, 267.35940751164344, 267.623555120692, 267.88770272974057, 268.15185033878913, 268.4159979478377, 268.68014555688626, 268.9442931659348, 269.2084407749834, 269.47258838403195, 269.7367359930805, 270.0008836021291, 270.26503121117764, 270.5291788202262, 270.79332642927477, 271.05747403832333, 271.32162164737196, 271.5857692564205, 271.8499168654691, 272.11406447451765, 272.3782120835662, 272.64235969261483, 272.9065073016634, 273.17065491071196, 273.4348025197605, 273.6989501288091, 273.96309773785765, 274.2272453469062, 274.4913929559548, 274.75554056500334, 275.0196881740519, 275.28383578310047, 275.54798339214904, 275.8121310011976, 276.07627861024616, 276.3404262192947, 276.60457382834335, 276.8687214373919, 277.1328690464405, 277.39701665548904, 277.6611642645376, 277.9253118735862, 278.1894594826348, 278.45360709168335, 278.7177547007319, 278.9819023097805, 279.24604991882904, 279.5101975278776, 279.7743451369262, 280.03849274597474, 280.3026403550233, 280.56678796407186, 280.8309355731204, 281.095083182169, 281.35923079121756, 281.6233784002662, 281.88752600931474, 282.1516736183633, 282.41582122741187, 282.67996883646043, 282.94411644550905, 283.2082640545576, 283.4724116636062, 283.73655927265474, 284.0007068817033, 284.2648544907519, 284.52900209980044, 284.793149708849, 285.05729731789756, 285.3214449269461, 285.5855925359947, 285.84974014504326, 286.1138877540918, 286.3780353631404, 286.64218297218895, 286.90633058123757, 287.17047819028613, 287.4346257993347, 287.69877340838326, 287.9629210174318, 288.22706862648045, 288.491216235529, 288.7553638445776, 289.01951145362614, 289.2836590626747, 289.54780667172327, 289.81195428077183, 290.0761018898204, 290.34024949886896, 290.6043971079175, 290.8685447169661, 291.13269232601465, 291.3968399350632, 291.6609875441118, 291.92513515316034, 292.18928276220896, 292.4534303712575, 292.7175779803061, 292.98172558935465, 293.2458731984032, 293.51002080745184, 293.7741684165004, 294.03831602554897, 294.30246363459753, 294.5666112436461, 294.83075885269466, 295.0949064617432, 295.3590540707918, 295.62320167984035, 295.8873492888889, 296.1514968979375, 296.41564450698604, 296.6797921160346, 296.94393972508317, 297.20808733413173, 297.47223494318035, 297.7363825522289, 298.0005301612775, 298.26467777032605, 298.5288253793746, 298.79297298842323, 299.0571205974718, 299.32126820652036, 299.5854158155689, 299.8495634246175, 300.11371103366605, 300.3778586427146, 300.6420062517632, 300.90615386081174, 301.1703014698603, 301.43444907890887, 301.69859668795743, 301.962744297006, 302.22689190605456, 302.4910395151031, 302.75518712415175, 303.0193347332003, 303.2834823422489, 303.54762995129744, 303.811777560346, 304.0759251693946, 304.3400727784432, 304.60422038749175, 304.8683679965403, 305.1325156055889, 305.39666321463744, 305.660810823686, 305.92495843273457, 306.18910604178313, 306.4532536508317, 306.71740125988026, 306.9815488689288, 307.2456964779774, 307.50984408702595, 307.7739916960745, 308.03813930512314, 308.3022869141717, 308.56643452322027, 308.83058213226883, 309.0947297413174, 309.358877350366, 309.6230249594146, 309.88717256846314, 310.1513201775117, 310.41546778656027, 310.67961539560883, 310.9437630046574, 311.20791061370596, 311.4720582227545, 311.7362058318031, 312.00035344085165, 312.2645010499002, 312.5286486589488, 312.79279626799735, 313.0569438770459, 313.32109148609453, 313.5852390951431, 313.84938670419166, 314.1135343132402, 314.3776819222888, 314.6418295313374, 314.90597714038597, 315.17012474943454, 315.4342723584831, 315.69841996753166, 315.9625675765802, 316.2267151856288, 316.49086279467735, 316.7550104037259, 317.0191580127745, 317.28330562182305, 317.5474532308716, 317.8116008399202, 318.07574844896874, 318.3398960580173, 318.6040436670659, 318.8681912761145, 319.13233888516305, 319.3964864942116, 319.6606341032602, 319.9247817123088, 320.18892932135736, 320.4530769304059, 320.7172245394545, 320.98137214850306, 321.2455197575516, 321.5096673666002, 321.77381497564875, 322.0379625846973, 322.3021101937459, 322.56625780279444, 322.830405411843, 323.09455302089157, 323.35870062994013, 323.6228482389887, 323.8869958480373, 324.1511434570859, 324.41529106613444, 324.679438675183, 324.9435862842316, 325.2077338932802, 325.47188150232876, 325.7360291113773, 326.0001767204259, 326.26432432947445, 326.528471938523, 326.7926195475716, 327.05676715662014, 327.3209147656687, 327.58506237471727, 327.84920998376583, 328.1133575928144, 328.37750520186296, 328.6416528109115, 328.90580041996014, 329.1699480290087, 329.4340956380573, 329.69824324710584, 329.9623908561544, 330.226538465203, 330.4906860742516, 330.75483368330015, 331.0189812923487, 331.2831289013973, 331.54727651044584, 331.8114241194944, 332.07557172854297, 332.33971933759153, 332.6038669466401, 332.86801455568866, 333.1321621647372, 333.3963097737858, 333.66045738283435, 333.9246049918829, 334.1887526009315, 334.45290020998004, 334.7170478190286, 334.9811954280773, 335.24534303712585, 335.5094906461744, 335.773638255223, 336.03778586427154, 336.3019334733201, 336.56608108236867, 336.83022869141723, 337.0943763004658, 337.35852390951436, 337.6226715185629, 337.8868191276115, 338.15096673666005, 338.4151143457086, 338.6792619547572, 338.94340956380574, 339.2075571728543, 339.4717047819029, 339.73585239095144, 340 ], "y": [ 12506.666666666664, 12443.96233479539, 12382.068773216779, 12320.975426324632, 12260.671918851287, 12201.148052183022, 12142.393800762946, 12084.399308579075, 12027.154885735275, 11970.651005102824, 11914.878299050488, 11859.827556250952, 11805.489718561606, 11751.855877977758, 11698.917273656218, 11646.665289007615, 11595.091448855406, 11544.187416660037, 11493.944991806422, 11444.356106953126, 11395.41282544172, 11347.107338764623, 11299.43196409008, 11252.379141842664, 11205.941433337986, 11160.111518470168, 11114.882193450781, 11070.246368597904, 11026.197066174083, 10982.727418271897, 10939.830664746007, 10897.500151190465, 10855.729326960185, 10814.51174323549, 10773.841051128606, 10733.710999831153, 10694.115434801548, 10655.04829599137, 10616.503616109767, 10578.475518924883, 10540.95821760152, 10503.946013074057, 10467.433292453834, 10431.41452747015, 10395.884272944046, 10360.837165294144, 10326.267921073697, 10292.171335538165, 10258.542281242608, 10225.375706668086, 10192.666634876521, 10160.41016219323, 10128.601456916558, 10097.235758053943, 10066.30837408379, 10035.81468174258, 10005.750124836595, 9976.110213077727, 9946.890520942781, 9918.086686555742, 9889.694410592501, 9861.709455207492, 9834.127642981755, 9806.944855891954, 9780.15703429983, 9753.760175961701, 9727.750335057463, 9702.123621238727, 9676.87619869565, 9652.004285241994, 9627.504151418074, 9603.372119611147, 9579.60456319289, 9556.197905673545, 9533.14861987242, 9510.45322710434, 9488.108296381723, 9466.110443631911, 9444.456330929483, 9423.142665743142, 9402.166200196923, 9381.523730345394, 9361.212095462532, 9341.228177343999, 9321.568899622538, 9302.23122709616, 9283.212165068911, 9264.50875870393, 9246.118092388488, 9228.037289110849, 9210.263509848604, 9192.79395296832, 9175.625853636204, 9158.75648323958, 9142.183148818971, 9125.903192510497, 9109.913990998475, 9094.212954977913, 9078.79752862675, 9063.665189087638, 9048.813445959026, 9034.239840795417, 9019.941946616567, 9005.917367425458, 8992.163737734854, 8978.678722102293, 8965.460014673316, 8952.505338732775, 8939.812446264077, 8927.379117516153, 8915.203160578065, 8903.282410961046, 8891.614731187849, 8880.19801038924, 8869.030163907522, 8858.109132906926, 8847.432883990743, 8836.999408825064, 8826.806723768994, 8816.852869511215, 8807.135910712777, 8797.653935656, 8788.40505589934, 8779.38740593815, 8770.59914287117, 8762.038446072678, 8753.703516870173, 8745.592578227483, 8737.70387443319, 8730.035670794292, 8722.58625333498, 8715.35392850043, 8708.33702286554, 8701.533882848496, 8694.942874429076, 8688.562382871612, 8682.39081245253, 8676.426586192343, 8670.668145592079, 8665.11395037399, 8659.762478226505, 8654.612224553355, 8649.661702226742, 8644.909441344556, 8640.353988991468, 8635.993909003924, 8631.827781738899, 8627.854203846375, 8624.071788045458, 8620.479162904094, 8617.074972622278, 8613.85787681873, 8610.826550320957, 8607.979682958628, 8605.315979360246, 8602.834158753001, 8600.532954765782, 8598.411115235289, 8596.467402015174, 8594.70059078818, 8593.109470881194, 8591.692845083195, 8590.449529466012, 8589.378353207881, 8588.478158419719, 8587.74779997407, 8587.186145336706, 8586.792074400797, 8586.564479323626, 8586.502264365816, 8586.60434573298, 8586.869651419827, 8587.297121056588, 8587.88570575781, 8588.634367973413, 8589.542081342006, 8590.607830546416, 8591.830611171383, 8593.20942956338, 8594.743302692561, 8596.431258016735, 8598.272333347391, 8600.265576717713, 8602.410046252537, 8604.70481004026, 8607.148946006626, 8609.741541790363, 8612.481694620683, 8615.368511196546, 8618.401107567712, 8621.578609017532, 8624.900149947449, 8628.364873763165, 8631.971932762492, 8635.7204880248, 8639.60970930209, 8643.638774911618, 8647.806871630088, 8652.113194589343, 8656.556947173576, 8661.137340918001, 8665.853595408977, 8670.704938185552, 8675.690604642412, 8680.809837934217, 8686.06188888127, 8691.44601587655, 8696.96148479404, 8702.607568898351, 8708.383548755613, 8714.288712145633, 8720.322353975262, 8726.48377619298, 8732.772287704689, 8739.187204290656, 8745.727848523626, 8752.393549688059, 8759.183643700493, 8766.097473031008, 8773.134386625774, 8780.293739830642, 8787.57489431583, 8794.977218001595, 8802.500084984946, 8810.142875467365, 8817.904975683485, 8825.785777830763, 8833.784680000099, 8841.901086107395, 8850.134405826033, 8858.484054520286, 8866.949453179594, 8875.53002835375, 8884.225212088946, 8893.034441864675, 8901.957160531472, 8910.9928162495, 8920.14086242794, 8929.400757665184, 8938.771965689844, 8948.25395530252, 8957.84620031834, 8967.54817951026, 8977.359376553133, 8987.279279968465, 8997.307383069945, 9007.443183909656, 9017.686185225006, 9028.035894386338, 9038.49182334523, 9049.053488583475, 9059.720411062704, 9070.492116174672, 9081.368133692184, 9092.347997720668, 9103.43124665034, 9114.617423109015, 9125.906073915507, 9137.29675003363, 9148.789006526787, 9160.382402513142, 9172.076501121344, 9183.87086944685, 9195.765078508766, 9207.758703207257, 9219.85132228148, 9232.042518268065, 9244.331877460103, 9256.718989866666, 9269.203449172812, 9281.784852700117, 9294.462801367683, 9307.236899653639, 9320.106755557124, 9333.071980560739, 9346.13218959346, 9359.287000994029, 9372.536036474781, 9385.87892108592, 9399.315283180236, 9412.844754378277, 9426.466969533907, 9440.181566700328, 9453.988187096491, 9467.886475073936, 9481.876078084015, 9495.95664664554, 9510.127834312803, 9524.389297644, 9538.740696170014, 9553.18169236362, 9567.711951608999, 9582.33114217169, 9597.038935168839, 9611.835004539851, 9626.719027017369, 9641.690682098611, 9656.749652017055, 9671.895621714444, 9687.128278813128, 9702.44731358877, 9717.852418943312, 9733.343290378321, 9748.919625968627, 9764.581126336252, 9780.327494624682, 9796.158436473426, 9812.073659992868, 9828.072875739417, 9844.155796690962, 9860.322138222595, 9876.571618082628, 9892.90395636888, 9909.318875505263, 9925.81610021861, 9942.395357515785, 9959.056376661067, 9975.798889153779, 9992.622628706189, 10009.527331221656, 10026.512734773032, 10043.578579581306, 10060.724607994509, 10077.950564466839, 10095.256195538035, 10112.641249812994, 10130.105477941599, 10147.648632598808, 10165.270468464927, 10182.970742206147, 10200.749212455285, 10218.60563979272, 10236.5397867276, 10254.551417679198, 10272.640298958517, 10290.806198750086, 10309.048887093975, 10327.368135867991, 10345.763718770077, 10364.235411300924, 10382.782990746771, 10401.406236162366, 10420.104928354167, 10438.87884986369, 10457.727784951048, 10476.651519578698, 10495.649841395327, 10514.722539719949, 10533.86940552615, 10553.090231426533, 10572.38481165732, 10591.752942063107, 10611.19442008182, 10630.709044729801, 10650.296616587082, 10669.956937782805, 10689.6898119808, 10709.49504436533, 10729.37244162698, 10749.321811948706, 10769.34296499203, 10789.43571188337, 10809.599865200562, 10829.835238959462, 10850.141648600753, 10870.518910976858, 10890.966844338993, 10911.485268324375, 10932.074003943551, 10952.73287356789, 10973.461700917149, 10994.260311047245, 11015.128530338097, 11036.066186481636, 11057.073108469907, 11078.149126583337, 11099.294072379087, 11120.50777867955, 11141.79007956096, 11163.140810342138, 11184.559807573329, 11206.046909025157, 11227.601953677746, 11249.224781709876, 11270.915234488308, 11292.673154557207, 11314.498385627661, 11336.390772567325, 11358.350161390163, 11380.3763992463, 11402.46933441197, 11424.628816279592, 11446.854695347914, 11469.146823212286, 11491.505052555009, 11513.929237135808, 11536.419231782387, 11558.974892381082, 11581.596075867608, 11604.282640217905, 11627.03444443908, 11649.851348560427, 11672.733213624555, 11695.679901678595, 11718.691275765494, 11741.767199915406, 11764.907539137164, 11788.11215940985, 11811.380927674403, 11834.713711825401, 11858.110380702823, 11881.570804083964, 11905.094852675413, 11928.682398105087, 11952.33331291439, 11976.047470550397, 11999.824745358157, 12023.665012573065, 12047.568148313278, 12071.534029572254, 12095.562534211334, 12119.6535409524, 12143.80692937061, 12168.022579887212, 12192.30037376241, 12216.640193088315, 12241.041920781967, 12265.505440578412, 12290.030637023847, 12314.617395468853, 12339.265602061667, 12363.975143741545, 12388.74590823216, 12413.5777840351, 12438.470660423378, 12463.424427435077, 12488.438975866979, 12513.514197268316, 12538.649983934543, 12563.846228901191, 12589.102825937769, 12614.419669541738, 12639.79665493252, 12665.233678045588, 12690.7306355266, 12716.287424725582, 12741.903943691192, 12767.580091165004, 12793.315766575875, 12819.110870034361, 12844.965302327153, 12870.878964911626, 12896.851759910389, 12922.883590105897, 12948.974358935142, 12975.123970484334, 13001.332329483717, 13027.599341302357, 13053.924911943008, 13080.308948037036, 13106.751356839388, 13133.252046223579, 13159.81092467677, 13186.42790129486, 13213.10288577763, 13239.835788423936, 13266.626520126958, 13293.474992369473, 13320.38111721916, 13347.344807324014, 13374.365975907705, 13401.444536765075, 13428.580404257602, 13455.77349330895, 13483.023719400544, 13510.33099856719, 13537.695247392727, 13565.116383005728, 13592.594323075238, 13620.128985806548, 13647.72028993701, 13675.36815473189, 13703.072499980251, 13730.83324599089, 13758.650313588307, 13786.523624108679, 13814.453099395925, 13842.438661797767, 13870.480234161834, 13898.577739831819, 13926.731102643644, 13954.94024692166, 13983.205097474938, 14011.525579593494, 14039.901619044635, 14068.3331420693, 14096.820075378426, 14125.362346149375, 14153.959882022367, 14182.612611096953, 14211.320461928532, 14240.083363524864, 14268.901245342662, 14297.774037284184, 14326.701669693844, 14355.684073354892, 14384.721179486081, 14413.812919738397, 14442.959226191797, 14472.160031351985, 14501.41526814721, 14530.724869925101, 14560.088770449516, 14589.50690389744, 14618.97920485588, 14648.505608318817, 14678.086049684161, 14707.720464750762, 14737.4087897154, 14767.150961169851, 14796.94691609795, 14826.796591872677, 14856.699926253286, 14886.656857382452, 14916.667323783431, 14946.73126435727, 14976.848618379989, 15007.019325499863, 15037.243325734675, 15067.520559468987, 15097.850967451479, 15128.234490792249, 15158.671070960208, 15189.160649780442, 15219.703169431608, 15250.298572443378, 15280.946801693852, 15311.647800407058, 15342.401512150442, 15373.207880832346, 15404.066850699579, 15434.978366334928, 15465.942372654772, 15496.958814906653, 15528.027638666888, 15559.148789838213, 15590.322214647429, 15621.547859643082, 15652.825671693145, 15684.155597982744, 15715.537586011878, 15746.971583593173, 15778.457538849649, 15809.995400212509, 15841.585116418948, 15873.226636509973, 15904.919909828239, 15936.664886015915, 15968.461515012565, 16000.309747053043, 16032.209532665402, 16064.160822668802, 16096.163568171507, 16128.217720568797, 16160.323231540986, 16192.480053051398, 16224.688137344372, 16256.947436943323, 16289.257904648759, 16321.619493536356, 16354.032156955036, 16386.49584852504, 16419.010522136068, 16451.57613194538, 16484.192632375944, 16516.85997811459, 16549.578124110165, 16582.34702557174, 16615.1666379668, 16648.036917019446, 16680.957818708634, 16713.929299266412, 16746.951315176182, 16780.02382317096, 16813.146780231666, 16846.320143585424, 16879.543870703867, 16912.817919301462, 16946.14224733385, 16979.516812996204, 17012.941574721586, 17046.416491179312, 17079.941521273373, 17113.516624140808, 17147.141759150138, 17180.816885899792, 17214.541964216533, 17248.316954153932, 17282.14181599082, 17316.016510229776, 17349.94099759559, 17383.91523903381, 17417.93919570921, 17452.012829004332, 17486.136100518044, 17520.30897206404, 17554.531405669448, 17588.80336357337, 17623.124808225468, 17657.495702284577, 17691.916008617263, 17726.385690296498, 17760.904710600236, 17795.473033010076, 17830.090621209896, 17864.757439084504, 17899.473450718328, 17934.238620394073, 17969.052912591418, 18003.916291985715, 18038.828723446684, 18073.790172037145, 18108.800603011754, 18143.85998181571, 18178.96827408353, 18214.12544563779, 18249.331462487906, 18284.586290828887, 18319.889897040157, 18355.242247684302, 18390.643309505915, 18426.09304943038, 18461.591434562713, 18497.138432186388, 18532.734009762164, 18568.378134926956, 18604.07077549266, 18639.811899445056, 18675.601474942654, 18711.4394703156, 18747.325854064522, 18783.2605948595, 18819.243661538916, 18855.275023108385, 18891.354648739696, 18927.48250776972, 18963.658569699364, 18999.882804192526, 19036.155181075028, 19072.475670333613, 19108.844242114865, 19145.260866724253, 19181.725514625065, 19218.238156437437, 19254.798762937327, 19291.407305055538, 19328.06375387674, 19364.76808063849, 19401.520256730248, 19438.320253692447, 19475.16804321549, 19512.063597138862, 19549.006887450134, 19585.997886284076, 19623.036565921688, 19660.122898789312, 19697.256857457694, 19734.438414641103, 19771.667543196414, 19808.94421612222, 19846.268406557923, 19883.640087782904, 19921.059233215594, 19958.525816412646, 19996.03981106805, 20033.60119101229, 20071.209930211488, 20108.86600276657, 20146.569382912414, 20184.320045017048, 20222.117963580775, 20259.963113235415, 20297.85546874345, 20335.79500499724, 20373.7816970182, 20411.81551995601, 20449.896449087857, 20488.024459817607, 20526.199527675046, 20564.421628315115, 20602.69073751714, 20641.006831184048, 20679.36988534163, 20717.779876137804, 20756.23677984184, 20794.74057284363, 20833.291231652966, 20871.888732898784, 20910.53305332848, 20949.22416980715, 20987.962059316877, 21026.746698956063, 21065.578065938687, 21104.456137593614, 21143.380891363908, 21182.352304806125, 21221.370355589654, 21260.435021496025, 21299.54628041822, 21338.704110360024, 21377.90848943535, 21417.15939586758, 21456.456807988903, 21495.800704239675, 21535.191063167746, 21574.627863427864, 21614.111083780983, 21653.640703093668, 21693.216700337452, 21732.83905458821, 21772.50774502552, 21812.222750932102, 21851.98405169314, 21891.79162679572, 21931.645455828213, 21971.545518479652, 22011.491794539175, 22051.484263895414, 22091.52290653591, 22131.607702546527, 22171.73863211088, 22211.915675509747, 22252.138813120517, 22292.408025416607, 22332.723292966904, 22373.0845964352, 22413.49191657965, 22453.945234252205, 22494.444530398076, 22534.989786055186, 22575.580982353607, 22616.21810051506, 22656.901121852366, 22697.63002776891, 22738.404799758122, 22779.22541940294, 22820.09186837531, 22861.004128435678, 22901.96218143243, 22942.966009301454, 22984.015594065564, 23025.110917834056, 23066.251962802162, 23107.438711250605, 23148.671145545042, 23189.949248135657, 23231.273001556594, 23272.642388425535, 23314.05739144319, 23355.517993392845, 23397.024177139847, 23438.57592563118, 23480.17322189499, 23521.8160490401, 23563.504390255577, 23605.23822881024, 23647.017548052252, 23688.842331408632, 23730.71256238483, 23772.628224564258, 23814.589301607877, 23856.595777253744, 23898.647635316556, 23940.744859687267, 23982.887434332595, 24025.075343294648, 24067.30857069048, 24109.587100711644, 24151.91091762382, 24194.28000576636, 24236.694349551886, 24279.153933465892, 24321.658742066324, 24364.20875998318, 24406.803971918074, 24449.444362643888, 24492.129917004364, 24534.860619913656, 24577.636456356016, 24620.457411385338, 24663.323470124804, 24706.23461776649, 24749.190839571005, 24792.192120867057, 24835.238447051142, 24878.32980358711, 24921.466176005837, 24964.647549904832, 25007.873910947877, 25051.145244864638, 25094.461537450345, 25137.8227745654, 25181.22894213503, 25224.680026148926, 25268.176012660868, 25311.716887788432, 25355.302637712583, 25398.933248677342, 25442.60870698947, 25486.32899901809, 25530.09411119435, 25573.904030011116, 25617.758742022594, 25661.658233844017, 25705.602492151324, 25749.591503680796, 25793.625255228784, 25837.703733651306, 25881.826925863807, 25925.99481884075, 25970.207399615385, 26014.464655279364, 26058.76657298246, 26103.11313993225, 26147.50434339378, 26191.940170689268, 26236.42060919783, 26280.94564635512, 26325.515269653068, 26370.129466639537, 26414.788224918062, 26459.49153214754, 26504.239376041918, 26549.03174436992, 26593.86862495474, 26638.75000567375, 26683.675874458233, 26728.64621929306, 26773.66102821645, 26818.720289319623, 26863.823990746576, 26908.972120693797, 26954.164667409943, 26999.40161919562, 27044.682964403044, 27090.008691435833, 27135.378788748698, 27180.79324484718, 27226.25204828738, 27271.7551876757, 27317.302651668564, 27362.894428972173, 27408.530508342228, 27454.210878583683, 27499.93552855046, 27545.704447145232, 27591.517623319138, 27637.375046071535, 27683.276704449763, 27729.222587548844, 27775.2126845113, 27821.24698452687, 27867.32547683226, 27913.448150710912, 27959.614995492742, 28005.826000553916, 28052.08115531661, 28098.38044924876, 28144.723871863836, 28191.111412720595, 28237.54306142285, 28284.01880761924, 28330.538641002993, 28377.10255131171, 28423.710528327112, 28470.36256187484, 28517.058641824202, 28563.798758087964, 28610.582900622136, 28657.41105942571, 28704.283224540486, 28751.19938605083, 28798.15953408346, 28845.163658807232, 28892.211750432904, 28939.30379921294, 28986.439795441314, 29033.61972945327, 29080.843591625104, 29128.111372373998, 29175.42306215777, 29222.778651474684, 29270.178130863253, 29317.621490901995, 29365.108722209305, 29412.639815443166, 29460.21476130102, 29507.83355051952, 29555.49617387437, 29603.202622180066, 29650.95288628979, 29698.746957095143, 29746.58482552598, 29794.466482550233, 29842.391919173642, 29890.361126439675, 29938.374095429273, 29986.43081726067, 30034.531283089214, 30082.675484107167, 30130.863411543556, 30179.095056663933, 30227.370410770247, 30275.689465200623, 30324.05221132921, 30372.458640565983, 30420.908744356566, 30469.40251418207, 30517.939941558903, 30566.52101803858, 30615.14573520759, 30663.814084687172, 30712.526058133197, 30761.281647235966, 30810.080843720018, 30858.923639343993, 30907.810025900475, 30956.739995215787, 31005.71353914985, 31054.730649596, 31103.791318480853, 31152.8955377641, 31202.043299438392, 31251.234595529117, 31300.469418094304, 31349.747759224432, 31399.069611042254, 31448.43496570267, 31497.84381539257, 31547.29615233063, 31596.79196876723, 31646.331256984227, 31695.914009294884, 31745.540218043603, 31795.2098756059, 31844.922974388148, 31894.679506827502, 31944.479465391712, 31994.32284257897, 32044.209630917794, 32094.139822966838, 32144.113411314793, 32194.130388580197, 32244.190747411336, 32294.294480486053, 32344.44158051164, 32394.63204022469, 32444.865852390958, 32495.14300980517, 32545.46350529098, 32595.82733170074, 32646.23448191543, 32696.684948844486, 32747.17872542564, 32797.71580462484, 32848.29617943608, 32898.91984288128, 32949.58678801014, 33000.29700790002, 33051.05049565579, 33101.84724440973, 33152.68724732135, 33203.570497577326, 33254.49698839131, 33305.46671300384, 33356.4796646822, 33407.53583672028, 33458.63522243847, 33509.77781518353, 33560.96360832847, 33612.19259527241, 33663.46476944044, 33714.780124283556, 33766.13865327849, 33817.540349927614, 33868.98520775879, 33920.47322032529, 33972.004381205625, 34023.57868400347, 34075.19612234755, 34126.85668989148, 34178.56038031367, 34230.30718731723, 34282.097104629815, 34333.93012600355, 34385.80624521489, 34437.725456064494, 34489.687752377155, 34541.693128001665, 34593.74157681067 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "121 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 120.72516081962408 ], "y": [ 8586.501033599194 ] }, { "name": "Total Drag: 15km", "type": "scatter", "x": [ 148.01323613679648, 148.2054150796025, 148.3975940224085, 148.5897729652145, 148.78195190802052, 148.97413085082653, 149.16630979363254, 149.35848873643855, 149.55066767924455, 149.74284662205056, 149.93502556485657, 150.12720450766258, 150.3193834504686, 150.5115623932746, 150.7037413360806, 150.89592027888662, 151.08809922169263, 151.28027816449864, 151.47245710730465, 151.66463605011066, 151.85681499291667, 152.04899393572268, 152.2411728785287, 152.4333518213347, 152.6255307641407, 152.81770970694672, 153.00988864975272, 153.20206759255873, 153.39424653536474, 153.58642547817075, 153.77860442097676, 153.97078336378277, 154.16296230658878, 154.3551412493948, 154.5473201922008, 154.7394991350068, 154.93167807781282, 155.12385702061883, 155.31603596342484, 155.50821490623085, 155.70039384903686, 155.89257279184287, 156.08475173464888, 156.27693067745489, 156.4691096202609, 156.6612885630669, 156.8534675058729, 157.04564644867892, 157.23782539148493, 157.43000433429094, 157.62218327709695, 157.81436221990296, 158.00654116270897, 158.19872010551498, 158.390899048321, 158.583077991127, 158.775256933933, 158.96743587673902, 159.15961481954503, 159.35179376235104, 159.54397270515705, 159.73615164796306, 159.92833059076906, 160.12050953357507, 160.31268847638108, 160.5048674191871, 160.6970463619931, 160.8892253047991, 161.08140424760512, 161.27358319041113, 161.46576213321714, 161.65794107602315, 161.85012001882916, 162.04229896163517, 162.23447790444118, 162.4266568472472, 162.6188357900532, 162.8110147328592, 163.00319367566522, 163.19537261847123, 163.38755156127723, 163.57973050408324, 163.77190944688925, 163.96408838969526, 164.15626733250127, 164.34844627530728, 164.5406252181133, 164.7328041609193, 164.9249831037253, 165.11716204653132, 165.30934098933733, 165.50151993214334, 165.69369887494935, 165.88587781775536, 166.07805676056137, 166.27023570336738, 166.4624146461734, 166.6545935889794, 166.8467725317854, 167.0389514745914, 167.23113041739742, 167.42330936020343, 167.61548830300944, 167.80766724581545, 167.99984618862146, 168.19202513142747, 168.38420407423348, 168.5763830170395, 168.7685619598455, 168.9607409026515, 169.15291984545752, 169.34509878826353, 169.53727773106954, 169.72945667387555, 169.92163561668156, 170.11381455948757, 170.30599350229357, 170.49817244509958, 170.6903513879056, 170.8825303307116, 171.0747092735176, 171.26688821632362, 171.45906715912963, 171.65124610193564, 171.84342504474165, 172.03560398754766, 172.22778293035367, 172.41996187315968, 172.6121408159657, 172.8043197587717, 172.9964987015777, 173.18867764438372, 173.38085658718973, 173.57303552999574, 173.76521447280174, 173.95739341560775, 174.14957235841376, 174.34175130121977, 174.53393024402578, 174.7261091868318, 174.9182881296378, 175.1104670724438, 175.30264601524982, 175.49482495805583, 175.68700390086184, 175.87918284366785, 176.07136178647386, 176.26354072927987, 176.45571967208588, 176.6478986148919, 176.8400775576979, 177.03225650050393, 177.22443544330991, 177.41661438611595, 177.60879332892193, 177.80097227172797, 177.99315121453395, 178.18533015734, 178.37750910014597, 178.569688042952, 178.761866985758, 178.95404592856403, 179.14622487137, 179.33840381417605, 179.53058275698203, 179.72276169978807, 179.91494064259405, 180.10711958540008, 180.29929852820607, 180.4914774710121, 180.68365641381808, 180.87583535662412, 181.0680142994301, 181.26019324223614, 181.45237218504212, 181.64455112784816, 181.83673007065414, 182.02890901346018, 182.22108795626616, 182.4132668990722, 182.60544584187818, 182.79762478468422, 182.9898037274902, 183.18198267029624, 183.37416161310222, 183.56634055590825, 183.75851949871424, 183.95069844152027, 184.14287738432625, 184.3350563271323, 184.52723526993827, 184.7194142127443, 184.9115931555503, 185.10377209835633, 185.2959510411623, 185.48812998396835, 185.68030892677433, 185.87248786958037, 186.06466681238635, 186.2568457551924, 186.44902469799837, 186.6412036408044, 186.8333825836104, 187.02556152641642, 187.2177404692224, 187.40991941202844, 187.60209835483442, 187.79427729764046, 187.98645624044644, 188.17863518325248, 188.37081412605846, 188.5629930688645, 188.75517201167048, 188.94735095447652, 189.13952989728253, 189.33170884008854, 189.52388778289455, 189.71606672570056, 189.90824566850657, 190.10042461131258, 190.29260355411859, 190.4847824969246, 190.6769614397306, 190.8691403825366, 191.06131932534262, 191.25349826814863, 191.44567721095464, 191.63785615376065, 191.83003509656666, 192.02221403937267, 192.21439298217868, 192.4065719249847, 192.5987508677907, 192.7909298105967, 192.98310875340272, 193.17528769620873, 193.36746663901474, 193.55964558182075, 193.75182452462676, 193.94400346743276, 194.13618241023877, 194.32836135304478, 194.5205402958508, 194.7127192386568, 194.9048981814628, 195.09707712426882, 195.28925606707483, 195.48143500988084, 195.67361395268685, 195.86579289549286, 196.05797183829887, 196.25015078110488, 196.4423297239109, 196.6345086667169, 196.8266876095229, 197.01886655232892, 197.21104549513493, 197.40322443794093, 197.59540338074694, 197.78758232355295, 197.97976126635896, 198.17194020916497, 198.36411915197098, 198.556298094777, 198.748477037583, 198.940655980389, 199.13283492319502, 199.32501386600103, 199.51719280880704, 199.70937175161305, 199.90155069441906, 200.09372963722507, 200.28590858003108, 200.4780875228371, 200.6702664656431, 200.8624454084491, 201.05462435125511, 201.24680329406112, 201.43898223686713, 201.63116117967314, 201.82334012247915, 202.01551906528516, 202.20769800809117, 202.39987695089718, 202.5920558937032, 202.7842348365092, 202.9764137793152, 203.16859272212122, 203.36077166492723, 203.55295060773324, 203.74512955053925, 203.93730849334526, 204.12948743615127, 204.32166637895727, 204.51384532176328, 204.7060242645693, 204.8982032073753, 205.0903821501813, 205.28256109298732, 205.47474003579333, 205.66691897859934, 205.85909792140535, 206.05127686421136, 206.24345580701737, 206.43563474982338, 206.6278136926294, 206.8199926354354, 207.0121715782414, 207.20435052104742, 207.39652946385343, 207.58870840665944, 207.78088734946544, 207.97306629227145, 208.16524523507746, 208.35742417788347, 208.54960312068948, 208.7417820634955, 208.9339610063015, 209.1261399491075, 209.31831889191352, 209.51049783471953, 209.70267677752554, 209.89485572033155, 210.08703466313756, 210.27921360594357, 210.47139254874958, 210.6635714915556, 210.8557504343616, 211.0479293771676, 211.24010831997361, 211.43228726277962, 211.62446620558563, 211.81664514839164, 212.00882409119765, 212.20100303400366, 212.39318197680967, 212.58536091961568, 212.7775398624217, 212.9697188052277, 213.1618977480337, 213.35407669083972, 213.54625563364573, 213.73843457645174, 213.93061351925775, 214.12279246206376, 214.31497140486977, 214.50715034767578, 214.69932929048178, 214.8915082332878, 215.0836871760938, 215.2758661188998, 215.46804506170582, 215.66022400451183, 215.85240294731784, 216.04458189012385, 216.23676083292986, 216.42893977573587, 216.62111871854188, 216.8132976613479, 217.0054766041539, 217.1976555469599, 217.38983448976592, 217.58201343257193, 217.77419237537794, 217.96637131818395, 218.15855026098995, 218.35072920379596, 218.54290814660197, 218.73508708940798, 218.927266032214, 219.11944497502, 219.311623917826, 219.50380286063202, 219.69598180343803, 219.88816074624404, 220.08033968905005, 220.27251863185606, 220.46469757466207, 220.65687651746808, 220.8490554602741, 221.0412344030801, 221.2334133458861, 221.42559228869212, 221.61777123149812, 221.80995017430413, 222.00212911711014, 222.19430805991615, 222.38648700272216, 222.57866594552817, 222.77084488833418, 222.9630238311402, 223.1552027739462, 223.3473817167522, 223.53956065955822, 223.73173960236423, 223.92391854517024, 224.11609748797625, 224.30827643078226, 224.50045537358827, 224.69263431639428, 224.88481325920029, 225.0769922020063, 225.2691711448123, 225.4613500876183, 225.65352903042432, 225.84570797323033, 226.03788691603634, 226.23006585884235, 226.42224480164836, 226.61442374445437, 226.80660268726038, 226.9987816300664, 227.1909605728724, 227.3831395156784, 227.57531845848442, 227.76749740129043, 227.95967634409644, 228.15185528690245, 228.34403422970846, 228.53621317251446, 228.72839211532047, 228.92057105812648, 229.1127500009325, 229.3049289437385, 229.4971078865445, 229.68928682935052, 229.88146577215653, 230.07364471496254, 230.26582365776858, 230.45800260057456, 230.6501815433806, 230.84236048618658, 231.03453942899262, 231.2267183717986, 231.41889731460464, 231.61107625741062, 231.80325520021665, 231.99543414302263, 232.18761308582867, 232.37979202863465, 232.5719709714407, 232.76414991424667, 232.9563288570527, 233.1485077998587, 233.34068674266473, 233.5328656854707, 233.72504462827675, 233.91722357108273, 234.10940251388877, 234.30158145669475, 234.4937603995008, 234.68593934230677, 234.8781182851128, 235.0702972279188, 235.26247617072482, 235.4546551135308, 235.64683405633684, 235.83901299914282, 236.03119194194886, 236.22337088475484, 236.41554982756088, 236.60772877036686, 236.7999077131729, 236.99208665597888, 237.18426559878492, 237.3764445415909, 237.56862348439694, 237.76080242720292, 237.95298137000896, 238.14516031281494, 238.33733925562098, 238.52951819842696, 238.721697141233, 238.91387608403898, 239.106055026845, 239.298233969651, 239.49041291245703, 239.682591855263, 239.87477079806905, 240.06694974087503, 240.25912868368107, 240.45130762648705, 240.6434865692931, 240.83566551209907, 241.0278444549051, 241.2200233977111, 241.41220234051713, 241.6043812833231, 241.79656022612915, 241.98873916893513, 242.18091811174116, 242.37309705454715, 242.56527599735318, 242.75745494015916, 242.9496338829652, 243.14181282577118, 243.33399176857722, 243.5261707113832, 243.71834965418924, 243.91052859699522, 244.10270753980126, 244.29488648260724, 244.48706542541328, 244.67924436821926, 244.8714233110253, 245.06360225383128, 245.25578119663732, 245.4479601394433, 245.64013908224933, 245.83231802505532, 246.02449696786135, 246.21667591066733, 246.40885485347337, 246.60103379627935, 246.7932127390854, 246.98539168189137, 247.1775706246974, 247.3697495675034, 247.56192851030943, 247.7541074531154, 247.94628639592145, 248.13846533872743, 248.33064428153347, 248.52282322433945, 248.71500216714549, 248.90718110995147, 249.0993600527575, 249.29153899556349, 249.48371793836952, 249.6758968811755, 249.86807582398154, 250.06025476678752, 250.25243370959356, 250.44461265239954, 250.63679159520558, 250.82897053801156, 251.0211494808176, 251.21332842362358, 251.40550736642962, 251.5976863092356, 251.78986525204164, 251.98204419484762, 252.17422313765366, 252.36640208045964, 252.55858102326567, 252.75075996607166, 252.9429389088777, 253.13511785168367, 253.3272967944897, 253.5194757372957, 253.71165468010173, 253.9038336229077, 254.09601256571375, 254.28819150851973, 254.48037045132577, 254.67254939413175, 254.8647283369378, 255.05690727974377, 255.2490862225498, 255.4412651653558, 255.63344410816183, 255.8256230509678, 256.01780199377384, 256.2099809365798, 256.40215987938586, 256.59433882219184, 256.7865177649979, 256.97869670780386, 257.1708756506099, 257.3630545934159, 257.5552335362219, 257.7474124790279, 257.93959142183394, 258.1317703646399, 258.32394930744596, 258.51612825025194, 258.708307193058, 258.90048613586396, 259.09266507867, 259.284844021476, 259.477022964282, 259.669201907088, 259.86138084989403, 260.0535597927, 260.24573873550605, 260.43791767831203, 260.63009662111807, 260.82227556392405, 261.0144545067301, 261.20663344953607, 261.3988123923421, 261.5909913351481, 261.7831702779541, 261.9753492207601, 262.16752816356615, 262.3597071063721, 262.55188604917817, 262.74406499198415, 262.9362439347902, 263.1284228775962, 263.3206018204022, 263.5127807632082, 263.7049597060142, 263.89713864882026, 264.08931759162624, 264.2814965344322, 264.47367547723826, 264.6658544200443, 264.8580333628503, 265.05021230565626, 265.2423912484623, 265.43457019126834, 265.6267491340743, 265.8189280768803, 266.01110701968634, 266.2032859624924, 266.39546490529835, 266.58764384810434, 266.7798227909104, 266.9720017337164, 267.1641806765224, 267.3563596193284, 267.5485385621344, 267.74071750494045, 267.93289644774643, 268.1250753905524, 268.31725433335845, 268.5094332761645, 268.70161221897047, 268.89379116177645, 269.0859701045825, 269.2781490473885, 269.4703279901945, 269.6625069330005, 269.8546858758065, 270.04686481861256, 270.23904376141854, 270.4312227042245, 270.62340164703056, 270.8155805898366, 271.0077595326426, 271.19993847544856, 271.3921174182546, 271.58429636106064, 271.7764753038666, 271.9686542466726, 272.16083318947864, 272.3530121322847, 272.54519107509066, 272.73737001789664, 272.9295489607027, 273.1217279035087, 273.3139068463147, 273.5060857891207, 273.6982647319267, 273.89044367473275, 274.08262261753873, 274.2748015603447, 274.46698050315075, 274.6591594459568, 274.85133838876277, 275.04351733156875, 275.2356962743748, 275.4278752171808, 275.6200541599868, 275.8122331027928, 276.0044120455988, 276.19659098840486, 276.38876993121085, 276.5809488740168, 276.77312781682286, 276.9653067596289, 277.1574857024349, 277.34966464524086, 277.5418435880469, 277.73402253085294, 277.9262014736589, 278.1183804164649, 278.31055935927094, 278.502738302077, 278.69491724488296, 278.88709618768894, 279.079275130495, 279.271454073301, 279.463633016107, 279.655811958913, 279.847990901719, 280.04016984452505, 280.23234878733103, 280.424527730137, 280.61670667294305, 280.8088856157491, 281.0010645585551, 281.19324350136105, 281.3854224441671, 281.57760138697313, 281.7697803297791, 281.9619592725851, 282.15413821539113, 282.34631715819717, 282.53849610100315, 282.73067504380913, 282.92285398661517, 283.1150329294212, 283.3072118722272, 283.49939081503317, 283.6915697578392, 283.88374870064524, 284.0759276434512, 284.2681065862572, 284.46028552906324, 284.6524644718693, 284.84464341467526, 285.03682235748124, 285.2290013002873, 285.4211802430933, 285.6133591858993, 285.8055381287053, 285.9977170715113, 286.18989601431736, 286.38207495712334, 286.5742538999293, 286.76643284273536, 286.9586117855414, 287.1507907283474, 287.34296967115336, 287.5351486139594, 287.72732755676543, 287.9195064995714, 288.1116854423774, 288.30386438518343, 288.49604332798947, 288.68822227079545, 288.88040121360143, 289.07258015640747, 289.2647590992135, 289.4569380420195, 289.64911698482547, 289.8412959276315, 290.03347487043754, 290.2256538132435, 290.4178327560495, 290.61001169885554, 290.8021906416616, 290.99436958446756, 291.18654852727354, 291.3787274700796, 291.5709064128856, 291.7630853556916, 291.9552642984976, 292.1474432413036, 292.33962218410966, 292.53180112691564, 292.7239800697216, 292.91615901252766, 293.1083379553337, 293.3005168981397, 293.49269584094566, 293.6848747837517, 293.87705372655773, 294.0692326693637, 294.2614116121697, 294.45359055497573, 294.64576949778177, 294.83794844058775, 295.03012738339373, 295.22230632619977, 295.4144852690058, 295.6066642118118, 295.79884315461777, 295.9910220974238, 296.18320104022985, 296.3753799830358, 296.5675589258418, 296.75973786864785, 296.9519168114539, 297.14409575425987, 297.33627469706585, 297.5284536398719, 297.7206325826779, 297.9128115254839, 298.1049904682899, 298.2971694110959, 298.48934835390196, 298.68152729670794, 298.8737062395139, 299.06588518231996, 299.258064125126, 299.450243067932, 299.64242201073796, 299.834600953544, 300.02677989635004, 300.218958839156, 300.411137781962, 300.60331672476804, 300.7954956675741, 300.98767461038005, 301.17985355318604, 301.3720324959921, 301.5642114387981, 301.7563903816041, 301.9485693244101, 302.1407482672161, 302.33292721002215, 302.52510615282813, 302.7172850956341, 302.90946403844015, 303.1016429812462, 303.29382192405217, 303.48600086685815, 303.6781798096642, 303.8703587524702, 304.0625376952762, 304.2547166380822, 304.4468955808882, 304.63907452369426, 304.83125346650024, 305.0234324093062, 305.21561135211226, 305.4077902949183, 305.5999692377243, 305.79214818053026, 305.9843271233363, 306.17650606614234, 306.3686850089483, 306.5608639517543, 306.75304289456034, 306.9452218373664, 307.13740078017236, 307.32957972297834, 307.5217586657844, 307.7139376085904, 307.9061165513964, 308.0982954942024, 308.2904744370084, 308.48265337981445, 308.67483232262043, 308.8670112654264, 309.05919020823245, 309.2513691510385, 309.44354809384447, 309.63572703665045, 309.8279059794565, 310.0200849222625, 310.2122638650685, 310.4044428078745, 310.5966217506805, 310.78880069348656, 310.98097963629255, 311.1731585790985, 311.36533752190456, 311.5575164647106, 311.7496954075166, 311.94187435032256, 312.13405329312866, 312.32623223593464, 312.5184111787406, 312.71059012154666, 312.9027690643527, 313.0949480071587, 313.28712694996466, 313.4793058927707, 313.67148483557673, 313.8636637783827, 314.0558427211887, 314.24802166399473, 314.4402006068008, 314.63237954960675, 314.82455849241273, 315.0167374352188, 315.2089163780248, 315.4010953208308, 315.5932742636368, 315.7854532064428, 315.97763214924885, 316.16981109205483, 316.3619900348608, 316.55416897766685, 316.7463479204729, 316.93852686327887, 317.13070580608485, 317.3228847488909, 317.5150636916969, 317.7072426345029, 317.8994215773089, 318.0916005201149, 318.28377946292096, 318.47595840572694, 318.6681373485329, 318.86031629133896, 319.052495234145, 319.244674176951, 319.43685311975696, 319.629032062563, 319.82121100536904, 320.013389948175, 320.205568890981, 320.39774783378704, 320.5899267765931, 320.78210571939906, 320.97428466220504, 321.1664636050111, 321.3586425478171, 321.5508214906231, 321.7430004334291, 321.9351793762351, 322.12735831904115, 322.31953726184713, 322.5117162046531, 322.70389514745915, 322.8960740902652, 323.08825303307117, 323.28043197587715, 323.4726109186832, 323.6647898614892, 323.8569688042952, 324.0491477471012, 324.2413266899072, 324.43350563271326, 324.62568457551924, 324.8178635183252, 325.01004246113126, 325.2022214039373, 325.3944003467433, 325.58657928954926, 325.7787582323553, 325.97093717516134, 326.1631161179673, 326.3552950607733, 326.54747400357934, 326.7396529463854, 326.93183188919136, 327.12401083199734, 327.3161897748034, 327.5083687176094, 327.7005476604154, 327.8927266032214, 328.0849055460274, 328.27708448883345, 328.46926343163943, 328.6614423744454, 328.85362131725145, 329.0458002600575, 329.23797920286347, 329.43015814566945, 329.6223370884755, 329.8145160312815, 330.0066949740875, 330.1988739168935, 330.3910528596995, 330.58323180250557, 330.77541074531155, 330.9675896881175, 331.15976863092357, 331.3519475737296, 331.5441265165356, 331.73630545934157, 331.9284844021476, 332.12066334495364, 332.3128422877596, 332.5050212305656, 332.69720017337164, 332.8893791161777, 333.08155805898366, 333.27373700178964, 333.4659159445957, 333.6580948874017, 333.8502738302077, 334.0424527730137, 334.2346317158197, 334.42681065862575, 334.61898960143174, 334.8111685442377, 335.00334748704375, 335.1955264298498, 335.3877053726558, 335.57988431546175, 335.7720632582678, 335.96424220107383, 336.1564211438798, 336.3486000866858, 336.54077902949183, 336.73295797229787, 336.92513691510385, 337.11731585790983, 337.30949480071587, 337.5016737435219, 337.6938526863279, 337.88603162913387, 338.0782105719399, 338.27038951474594, 338.4625684575519, 338.6547474003579, 338.84692634316394, 339.03910528597, 339.23128422877596, 339.42346317158194, 339.615642114388, 339.807821057194, 340 ], "y": [ 12506.666666666668, 12483.110679171832, 12459.669121682386, 12436.34143233789, 12413.127052904283, 12390.025428745837, 12367.036008797353, 12344.15824553661, 12321.39159495708, 12298.735516540863, 12276.189473231872, 12253.752931409272, 12231.425360861136, 12209.206234758347, 12187.095029628737, 12165.091225331455, 12143.194305031537, 12121.40375517475, 12099.719065462625, 12078.139728827713, 12056.665241409071, 12035.295102527965, 12014.028814663783, 11992.86588343015, 11971.805817551272, 11950.848128838486, 11929.992332167, 11909.237945452847, 11888.584489630051, 11868.031488627978, 11847.578469348882, 11827.224961645676, 11806.970498299845, 11786.814614999614, 11766.756850318257, 11746.79674569262, 11726.933845401803, 11707.16769654608, 11687.497849025931, 11667.923855521323, 11648.445271471111, 11629.061655052672, 11609.772567161655, 11590.577571391972, 11571.476234015894, 11552.46812396437, 11533.552812807491, 11514.729874735112, 11495.998886537665, 11477.359427587127, 11458.81107981813, 11440.353427709259, 11421.9860582645, 11403.708560994839, 11385.520527900022, 11367.42155345048, 11349.411234569381, 11331.489170614856, 11313.654963362385, 11295.908216987282, 11278.248538047399, 11260.675535465907, 11243.18882051427, 11225.788006795337, 11208.472710226586, 11191.24254902351, 11174.097143683119, 11157.036116967629, 11140.059093888227, 11123.165701689022, 11106.355569831088, 11089.628329976691, 11072.983615973579, 11056.421063839467, 11039.940311746614, 11023.541000006537, 11007.222771054849, 10990.98526943623, 10974.82814178951, 10958.751036832891, 10942.753605349266, 10926.835500171688, 10910.996376168936, 10895.235890231206, 10879.553701255933, 10863.949470133693, 10848.42285973427, 10832.973534892788, 10817.601162395997, 10802.305410968638, 10787.085951259935, 10771.942455830203, 10756.87459913755, 10741.882057524694, 10726.964509205884, 10712.12163425393, 10697.353114587338, 10682.658633957546, 10668.037877936265, 10653.490533902917, 10639.01629103218, 10624.614840281632, 10610.285874379497, 10596.029087812472, 10581.844176813678, 10567.73083935069, 10553.68877511366, 10539.717685503552, 10525.81727362045, 10511.98724425198, 10498.227303861799, 10484.537160578198, 10470.916524182787, 10457.365106099269, 10443.882619382302, 10430.468778706445, 10417.12330035521, 10403.845902210174, 10390.63630374019, 10377.494225990693, 10364.419391573074, 10351.411524654139, 10338.470350945652, 10325.595597693982, 10312.786993669786, 10300.044269157814, 10287.367155946773, 10274.755387319281, 10262.208698041872, 10249.726824355135, 10237.309503963861, 10224.956476027317, 10212.667481149574, 10200.44226136992, 10188.28056015333, 10176.182122381031, 10164.146694341127, 10152.174023719295, 10140.263859589566, 10128.415952405161, 10116.6300539894, 10104.905917526698, 10093.243297553607, 10081.641949949939, 10070.10163192996, 10058.622102033638, 10047.203120117965, 10035.844447348358, 10024.545846190105, 10013.307080399882, 10002.127915017341, 9991.00811635676, 9979.947451998753, 9968.945690782039, 9958.002602795292, 9947.11795936902, 9936.29153306754, 9925.523097680994, 9914.812428217427, 9904.15930089492, 9893.563493133817, 9883.024783548939, 9872.542951941943, 9862.117779293658, 9851.749047756552, 9841.436540647182, 9831.180042438773, 9820.97933875378, 9810.834216356583, 9800.744463146153, 9790.709868148855, 9780.730221511232, 9770.8053144929, 9760.934939459452, 9751.11888987545, 9741.356960297437, 9731.648946367028, 9721.994644804035, 9712.393853399652, 9702.846371009671, 9693.351997547794, 9683.910533978928, 9674.521782312588, 9665.185545596316, 9655.901627909157, 9646.66983435519, 9637.489971057095, 9628.36184514976, 9619.28526477397, 9610.260039070092, 9601.285978171858, 9592.362893200141, 9583.490596256828, 9574.66890041869, 9565.897619731337, 9557.17656920318, 9548.505564799478, 9539.884423436373, 9531.312962975042, 9522.791002215807, 9514.318360892365, 9505.894859665998, 9497.520320119873, 9489.19456475334, 9480.91741697631, 9472.688701103647, 9464.508242349613, 9456.375866822336, 9448.291401518352, 9440.25467431714, 9432.265513975744, 9424.323750123382, 9416.42921325615, 9408.58173473171, 9400.781146764055, 9393.027282418294, 9385.319975605466, 9377.659061077418, 9370.04437442169, 9362.475752056449, 9354.953031225468, 9347.476049993122, 9340.044647239427, 9332.658662655123, 9325.317936736781, 9318.022310781937, 9310.771626884287, 9303.565727928888, 9296.404457587405, 9289.28766031339, 9282.215181337599, 9275.186866663329, 9268.202563061799, 9261.26211806756, 9254.365379973937, 9247.512197828495, 9240.702421428557, 9233.935901316725, 9227.212488776457, 9220.532035827662, 9213.894395222324, 9207.299420440164, 9200.746965684335, 9194.236885877119, 9187.769036655704, 9181.343274367933, 9174.959456068127, 9168.617439512916, 9162.317083157104, 9156.05824614955, 9149.840788329104, 9143.664570220542, 9137.529453030555, 9131.435298643735, 9125.38196961862, 9119.369329183746, 9113.397241233732, 9107.465570325387, 9101.57418167386, 9095.722941148786, 9089.911715270493, 9084.140371206211, 9078.408776766304, 9072.716800400553, 9067.064311194437, 9061.45117886546, 9055.87727375948, 9050.342466847087, 9044.84662971999, 9039.389634587431, 9033.971354272626, 9028.59166220923, 9023.250432437824, 9017.94753960242, 9012.682858947013, 9007.456266312109, 9002.267638131332, 8997.116851428016, 8992.003783811835, 8986.928313475442, 8981.890319191156, 8976.889680307633, 8971.92627674661, 8966.999988999612, 8962.110698124734, 8957.258285743404, 8952.44263403719, 8947.663625744633, 8942.921144158074, 8938.215073120526, 8933.54529702256, 8928.911700799206, 8924.314169926889, 8919.752590420361, 8915.22684882968, 8910.73683223718, 8906.282428254504, 8901.8635250196, 8897.480011193784, 8893.131775958795, 8888.818709013893, 8884.54070057294, 8880.29764136154, 8876.089422614172, 8871.915936071346, 8867.777073976791, 8863.672729074637, 8859.602794606635, 8855.567164309396, 8851.56573241163, 8847.598393631417, 8843.665043173503, 8839.76557672658, 8835.899890460634, 8832.067881024263, 8828.269445542035, 8824.504481611872, 8820.772887302423, 8817.074561150479, 8813.409402158395, 8809.777309791525, 8806.178183975677, 8802.611925094592, 8799.078433987424, 8795.577611946246, 8792.109360713574, 8788.67358247989, 8785.270179881216, 8781.899055996655, 8778.560114345992, 8775.253258887285, 8771.978394014477, 8768.735424555027, 8765.52425576755, 8762.344793339482, 8759.196943384744, 8756.080612441434, 8752.995707469534, 8749.942135848618, 8746.919805375586, 8743.928624262418, 8740.968501133922, 8738.039345025514, 8735.141065381002, 8732.273572050393, 8729.436775287708, 8726.630585748804, 8723.854914489228, 8721.109672962059, 8718.394773015794, 8715.71012689222, 8713.055647224312, 8710.431247034145, 8707.836839730813, 8705.272339108371, 8702.737659343773, 8700.232714994841, 8697.757420998236, 8695.311692667443, 8692.895445690774, 8690.508596129366, 8688.151060415228, 8685.82275534925, 8683.523598099271, 8681.253506198127, 8679.012397541726, 8676.800190387135, 8674.61680335067, 8672.462155406003, 8670.336165882289, 8668.238754462283, 8666.169841180497, 8664.129346421334, 8662.117190917274, 8660.13329574703, 8658.177582333748, 8656.249972443202, 8654.350388181996, 8652.478751995794, 8650.634986667535, 8648.8190153157, 8647.030761392532, 8645.270148682332, 8643.537101299698, 8641.83154368784, 8640.153400616853, 8638.502597182029, 8636.87905880217, 8635.282711217915, 8633.713480490074, 8632.17129299797, 8630.656075437799, 8629.167754820988, 8627.706258472583, 8626.271514029611, 8624.863449439496, 8623.48199295845, 8622.127073149895, 8620.798618882876, 8619.496559330499, 8618.220823968377, 8616.971342573068, 8615.74804522055, 8614.55086228468, 8613.379724435676, 8612.234562638601, 8611.115308151875, 8610.021892525756, 8608.954247600874, 8607.91230550674, 8606.895998660293, 8605.90525976443, 8604.940021806553, 8604.00021805714, 8603.085782068294, 8602.196647672336, 8601.332748980372, 8600.494020380895, 8599.680396538382, 8598.891812391903, 8598.128203153728, 8597.38950430797, 8596.6756516092, 8595.986581081099, 8595.322229015095, 8594.682531969036, 8594.067426765838, 8593.476850492165, 8592.910740497107, 8592.369034390871, 8591.851670043468, 8591.358585583428, 8590.889719396495, 8590.44501012436, 8590.024396663377, 8589.627818163299, 8589.255214026012, 8588.906523904294, 8588.58168770056, 8588.280645565628, 8588.003337897486, 8587.749705340068, 8587.51968878204, 8587.313229355585, 8587.130268435209, 8586.97074763653, 8586.834608815108, 8586.721794065248, 8586.632245718827, 8586.565906344138, 8586.522718744702, 8586.502625958143, 8586.50557125502, 8586.531498137683, 8586.580350339154, 8586.652071821984, 8586.746606777127, 8586.863899622847, 8587.003895003576, 8587.166537788835, 8587.351773072121, 8587.559546169836, 8587.78980262017, 8588.04248818206, 8588.317548834084, 8588.614930773418, 8588.934580414763, 8589.276444389294, 8589.640469543609, 8590.026602938695, 8590.434791848882, 8590.86498376081, 8591.317126372416, 8591.791167591904, 8592.287055536735, 8592.804738532623, 8593.344165112521, 8593.90528401564, 8594.488044186444, 8595.092394773677, 8595.718285129373, 8596.365664807881, 8597.034483564908, 8597.724691356543, 8598.436238338307, 8599.169074864187, 8599.92315148571, 8600.698418950979, 8601.494828203748, 8602.31233038249, 8603.150876819467, 8604.010419039805, 8604.890908760584, 8605.792297889926, 8606.714538526085, 8607.657582956548, 8608.621383657135, 8609.605893291116, 8610.611064708319, 8611.636850944244, 8612.683205219193, 8613.7500809374, 8614.837431686152, 8615.945211234943, 8617.0733735346, 8618.221872716445, 8619.390663091437, 8620.579699149332, 8621.788935557839, 8623.018327161793, 8624.267828982325, 8625.53739621603, 8626.826984234152, 8628.136548581762, 8629.466044976953, 8630.81542931003, 8632.184657642705, 8633.573686207299, 8634.982471405947, 8636.410969809815, 8637.859138158301, 8639.326933358268, 8640.814312483257, 8642.321232772712, 8643.847651631222, 8645.39352662775, 8646.958815494869, 8648.54347612801, 8650.147466584713, 8651.770745083864, 8653.413270004978, 8655.07499988742, 8656.755893429709, 8658.455909488755, 8660.175007079153, 8661.913145372435, 8663.670283696374, 8665.446381534246, 8667.241398524133, 8669.055294458205, 8670.888029282018, 8672.739563093804, 8674.609856143794, 8676.498868833498, 8678.40656171503, 8680.332895490421, 8682.277831010933, 8684.24132927637, 8686.223351434424, 8688.223858779982, 8690.242812754468, 8692.280174945174, 8694.3359070846, 8696.409971049794, 8698.502328861701, 8700.612942684505, 8702.741774824992, 8704.888787731892, 8707.053943995246, 8709.237206345773, 8711.438537654221, 8713.657900930753, 8715.895259324312, 8718.150576121985, 8720.423814748405, 8722.714938765115, 8725.023911869961, 8727.35069789648, 8729.695260813292, 8732.057564723487, 8734.437573864045, 8736.835252605204, 8739.250565449898, 8741.683477033142, 8744.133952121454, 8746.60195561226, 8749.087452533318, 8751.590408042139, 8754.110787425401, 8756.648556098384, 8759.20367960439, 8761.77612361418, 8764.365853925414, 8766.972836462075, 8769.597037273923, 8772.238422535927, 8774.89695854772, 8777.572611733045, 8780.265348639203, 8782.975135936515, 8785.701940417775, 8788.44572899771, 8791.20646871245, 8793.984126718975, 8796.778670294614, 8799.590066836485, 8802.418283860992, 8805.263289003287, 8808.125050016763, 8811.003534772519, 8813.89871125886, 8816.810547580779, 8819.739011959442, 8822.684072731692, 8825.64569834953, 8828.623857379622, 8831.618518502799, 8834.629650513558, 8837.657222319565, 8840.701202941167, 8843.7615615109, 8846.838267273004, 8849.931289582928, 8853.04059790687, 8856.166161821273, 8859.307951012364, 8862.465935275664, 8865.640084515539, 8868.8303687447, 8872.036758083765, 8875.259222760764, 8878.4977331107, 8881.752259575082, 8885.022772701454, 8888.30924314295, 8891.611641657848, 8894.929939109095, 8898.264106463883, 8901.614114793181, 8904.979935271305, 8908.361539175468, 8911.75889788534, 8915.17198288261, 8918.600765750554, 8922.0452181736, 8925.505311936884, 8928.981018925839, 8932.472311125755, 8935.979160621362, 8939.501539596402, 8943.0394203332, 8946.592775212262, 8950.16157671185, 8953.74579740756, 8957.34540997192, 8960.960387173973, 8964.590701878871, 8968.23632704747, 8971.897235735913, 8975.573401095247, 8979.264796371011, 8982.971394902832, 8986.693170124037, 8990.430095561258, 8994.182144834036, 8997.94929165443, 9001.731509826624, 9005.528773246553, 9009.3410559015, 9013.168331869729, 9017.010575320091, 9020.867760511654, 9024.739861793314, 9028.626853603433, 9032.528710469453, 9036.445407007526, 9040.376917922156, 9044.32321800581, 9048.28428213856, 9052.260085287728, 9056.250602507507, 9060.255808938611, 9064.275679807904, 9068.310190428052, 9072.35931619717, 9076.423032598443, 9080.501315199803, 9084.594139653564, 9088.701481696076, 9092.82331714737, 9096.959621910812, 9101.110371972776, 9105.275543402282, 9109.45511235066, 9113.649055051214, 9117.85734781888, 9122.079967049896, 9126.316889221462, 9130.568090891404, 9134.83354869785, 9139.1132393589, 9143.407139672287, 9147.715226515065, 9152.03747684327, 9156.373867691613, 9160.72437617314, 9165.08897947892, 9169.467654877732, 9173.860379715732, 9178.267131416158, 9182.687887478995, 9187.12262548067, 9191.571323073751, 9196.03395798662, 9200.510508023173, 9205.000951062513, 9209.505265058648, 9214.023428040173, 9218.555418109983, 9223.101213444965, 9227.660792295701, 9232.23413298616, 9236.821213913412, 9241.422013547332, 9246.036510430298, 9250.664683176907, 9255.30651047367, 9259.961971078743, 9264.631043821619, 9269.313707602847, 9274.009941393753, 9278.719724236142, 9283.443035242031, 9288.179853593349, 9292.93015854167, 9297.693929407927, 9302.471145582142, 9307.261786523135, 9312.065831758257, 9316.883260883122, 9321.714053561323, 9326.558189524168, 9331.4156485704, 9336.286410565943, 9341.170455443622, 9346.067763202898, 9350.978313909605, 9355.90208769569, 9360.83906475894, 9365.78922536273, 9370.752549835755, 9375.72901857178, 9380.71861202937, 9385.72131073164, 9390.737095266, 9395.765946283902, 9400.807844500578, 9405.862770694797, 9410.930705708608, 9416.011630447098, 9421.10552587813, 9426.212373032111, 9431.332153001731, 9436.464846941728, 9441.610436068648, 9446.768901660578, 9451.940225056935, 9457.124387658203, 9462.321370925707, 9467.531156381361, 9472.753725607441, 9477.989060246351, 9483.237142000375, 9488.497952631451, 9493.771473960938, 9499.057687869383, 9504.35657629629, 9509.668121239883, 9514.99230475689, 9520.329108962307, 9525.678516029173, 9531.04050818834, 9536.41506772825, 9541.802176994723, 9547.201818390715, 9552.613974376109, 9558.038627467486, 9563.47576023791, 9568.925355316718, 9574.387395389283, 9579.86186319681, 9585.348741536112, 9590.848013259412, 9596.35966127411, 9601.883668542569, 9607.420018081928, 9612.968692963865, 9618.529676314396, 9624.102951313667, 9629.688501195742, 9635.286309248406, 9640.896358812945, 9646.518633283944, 9652.15311610909, 9657.799790788966, 9663.458640876841, 9669.12964997847, 9674.812801751901, 9680.508079907271, 9686.215468206605, 9691.934950463614, 9697.666510543508, 9703.410132362793, 9709.165799889075, 9714.933497140866, 9720.713208187393, 9726.504917148404, 9732.30860819397, 9738.1242655443, 9743.951873469548, 9749.791416289636, 9755.642878374038, 9761.50624414161, 9767.381498060411, 9773.268624647497, 9779.16760846875, 9785.078434138682, 9791.001086320266, 9796.935549724742, 9802.88180911143, 9808.839849287568, 9814.809655108105, 9820.791211475556, 9826.784503339783, 9832.789515697843, 9838.806233593808, 9844.834642118583, 9850.874726409727, 9856.926471651286, 9862.989863073612, 9869.064885953198, 9875.151525612495, 9881.249767419744, 9887.359596788807, 9893.480999178999, 9899.613960094903, 9905.758465086219, 9911.914499747592, 9918.08204971843, 9924.26110068276, 9930.451638369035, 9936.653648549996, 9942.867117042493, 9949.092029707319, 9955.328372449045, 9961.576131215872, 9967.83529199946, 9974.105840834756, 9980.387763799854, 9986.68104701582, 9992.985676646544, 9999.301638898567, 10005.628920020936, 10011.967506305047, 10018.317384084485, 10024.678539734852, 10031.050959673648, 10037.434630360085, 10043.82953829495, 10050.235670020442, 10056.653012120027, 10063.081551218285, 10069.521273980754, 10075.972167113781, 10082.434217364384, 10088.907411520084, 10095.391736408768, 10101.887178898538, 10108.393725897566, 10114.911364353948, 10121.440081255549, 10127.97986362987, 10134.530698543893, 10141.09257310395, 10147.665474455564, 10154.24938978331, 10160.844306310686, 10167.450211299954, 10174.067092052006, 10180.694935906226, 10187.333730240345, 10193.983462470309, 10200.64412005013, 10207.315690471758, 10213.998161264932, 10220.69151999706, 10227.395754273068, 10234.110851735262, 10240.836800063207, 10247.573586973587, 10254.321200220063, 10261.079627593144, 10267.84885692006, 10274.628876064626, 10281.419672927104, 10288.221235444074, 10295.033551588316, 10301.856609368664, 10308.69039682988, 10315.534902052523, 10322.39011315284, 10329.25601828261, 10336.132605629027, 10343.01986341458, 10349.917779896923, 10356.826343368746, 10363.745542157647, 10370.675364626013, 10377.615799170895, 10384.56683422389, 10391.528458250996, 10398.500659752513, 10405.483427262912, 10412.476749350713, 10419.48061461836, 10426.495011702107, 10433.51992927189, 10440.555356031222, 10447.601280717052, 10454.657692099665, 10461.724578982554, 10468.801930202306, 10475.889734628481, 10482.9879811635, 10490.096658742525, 10497.21575633335, 10504.34526293627, 10511.485167583982, 10518.635459341464, 10525.796127305866, 10532.967160606384, 10540.14854840416, 10547.340279892163, 10554.542344295087, 10561.754730869216, 10568.97742890234, 10576.210427713624, 10583.453716653516, 10590.707285103616, 10597.97112247658, 10605.245218216016, 10612.529561796364, 10619.824142722788, 10627.128950531076, 10634.443974787533, 10641.769205088867, 10649.104631062086, 10656.450242364393, 10663.806028683082, 10671.171979735434, 10678.548085268601, 10685.934335059517, 10693.330718914789, 10700.737226670588, 10708.153848192556, 10715.58057337569, 10723.017392144255, 10730.46429445168, 10737.921270280443, 10745.388309641981, 10752.865402576594, 10760.352539153333, 10767.849709469914, 10775.3569036526, 10782.874111856125, 10790.401324263583, 10797.938531086325, 10805.485722563872, 10813.042888963811, 10820.610020581706, 10828.18710774099, 10835.774140792879, 10843.37111011627, 10850.978006117657, 10858.594819231017, 10866.221539917726, 10873.858158666473, 10881.504665993156, 10889.161052440784, 10896.827308579399, 10904.50342500597, 10912.18939234431, 10919.885201244977, 10927.590842385185, 10935.306306468716, 10943.031584225828, 10950.766666413158, 10958.511543813636, 10966.266207236407, 10974.030647516725, 10981.804855515868, 10989.588822121046, 10997.38253824533, 11005.185994827552, 11012.999182832209, 11020.822093249386, 11028.654717094672, 11036.497045409067, 11044.349069258898, 11052.210779735731 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "235 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 234.75741374983662 ], "y": [ 8586.501033599194 ] }, { "connectgaps": true, "name": "Constant Minimum Drag", "type": "scatter", "x": [ 0, 0.3003003003003003, 0.6006006006006006, 0.9009009009009009, 1.2012012012012012, 1.5015015015015014, 1.8018018018018018, 2.1021021021021022, 2.4024024024024024, 2.7027027027027026, 3.003003003003003, 3.3033033033033035, 3.6036036036036037, 3.903903903903904, 4.2042042042042045, 4.504504504504505, 4.804804804804805, 5.105105105105105, 5.405405405405405, 5.7057057057057055, 6.006006006006006, 6.306306306306307, 6.606606606606607, 6.906906906906907, 7.207207207207207, 7.5075075075075075, 7.807807807807808, 8.108108108108109, 8.408408408408409, 8.70870870870871, 9.00900900900901, 9.30930930930931, 9.60960960960961, 9.90990990990991, 10.21021021021021, 10.51051051051051, 10.81081081081081, 11.11111111111111, 11.411411411411411, 11.711711711711711, 12.012012012012011, 12.312312312312313, 12.612612612612613, 12.912912912912914, 13.213213213213214, 13.513513513513514, 13.813813813813814, 14.114114114114114, 14.414414414414415, 14.714714714714715, 15.015015015015015, 15.315315315315315, 15.615615615615615, 15.915915915915916, 16.216216216216218, 16.516516516516518, 16.816816816816818, 17.117117117117118, 17.41741741741742, 17.71771771771772, 18.01801801801802, 18.31831831831832, 18.61861861861862, 18.91891891891892, 19.21921921921922, 19.51951951951952, 19.81981981981982, 20.12012012012012, 20.42042042042042, 20.72072072072072, 21.02102102102102, 21.32132132132132, 21.62162162162162, 21.92192192192192, 22.22222222222222, 22.52252252252252, 22.822822822822822, 23.123123123123122, 23.423423423423422, 23.723723723723722, 24.024024024024023, 24.324324324324326, 24.624624624624627, 24.924924924924927, 25.225225225225227, 25.525525525525527, 25.825825825825827, 26.126126126126128, 26.426426426426428, 26.726726726726728, 27.027027027027028, 27.32732732732733, 27.62762762762763, 27.92792792792793, 28.22822822822823, 28.52852852852853, 28.82882882882883, 29.12912912912913, 29.42942942942943, 29.72972972972973, 30.03003003003003, 30.33033033033033, 30.63063063063063, 30.93093093093093, 31.23123123123123, 31.53153153153153, 31.83183183183183, 32.132132132132135, 32.432432432432435, 32.732732732732735, 33.033033033033036, 33.333333333333336, 33.633633633633636, 33.933933933933936, 34.234234234234236, 34.53453453453454, 34.83483483483484, 35.13513513513514, 35.43543543543544, 35.73573573573574, 36.03603603603604, 36.33633633633634, 36.63663663663664, 36.93693693693694, 37.23723723723724, 37.53753753753754, 37.83783783783784, 38.13813813813814, 38.43843843843844, 38.73873873873874, 39.03903903903904, 39.33933933933934, 39.63963963963964, 39.93993993993994, 40.24024024024024, 40.54054054054054, 40.84084084084084, 41.14114114114114, 41.44144144144144, 41.74174174174174, 42.04204204204204, 42.34234234234234, 42.64264264264264, 42.94294294294294, 43.24324324324324, 43.54354354354354, 43.84384384384384, 44.14414414414414, 44.44444444444444, 44.74474474474474, 45.04504504504504, 45.34534534534534, 45.645645645645644, 45.945945945945944, 46.246246246246244, 46.546546546546544, 46.846846846846844, 47.147147147147145, 47.447447447447445, 47.747747747747745, 48.048048048048045, 48.34834834834835, 48.64864864864865, 48.94894894894895, 49.24924924924925, 49.54954954954955, 49.84984984984985, 50.150150150150154, 50.450450450450454, 50.750750750750754, 51.051051051051054, 51.351351351351354, 51.651651651651655, 51.951951951951955, 52.252252252252255, 52.552552552552555, 52.852852852852855, 53.153153153153156, 53.453453453453456, 53.753753753753756, 54.054054054054056, 54.354354354354356, 54.65465465465466, 54.95495495495496, 55.25525525525526, 55.55555555555556, 55.85585585585586, 56.15615615615616, 56.45645645645646, 56.75675675675676, 57.05705705705706, 57.35735735735736, 57.65765765765766, 57.95795795795796, 58.25825825825826, 58.55855855855856, 58.85885885885886, 59.15915915915916, 59.45945945945946, 59.75975975975976, 60.06006006006006, 60.36036036036036, 60.66066066066066, 60.96096096096096, 61.26126126126126, 61.56156156156156, 61.86186186186186, 62.16216216216216, 62.46246246246246, 62.76276276276276, 63.06306306306306, 63.36336336336336, 63.66366366366366, 63.96396396396396, 64.26426426426427, 64.56456456456456, 64.86486486486487, 65.16516516516516, 65.46546546546547, 65.76576576576576, 66.06606606606607, 66.36636636636636, 66.66666666666667, 66.96696696696696, 67.26726726726727, 67.56756756756756, 67.86786786786787, 68.16816816816817, 68.46846846846847, 68.76876876876877, 69.06906906906907, 69.36936936936937, 69.66966966966967, 69.96996996996997, 70.27027027027027, 70.57057057057057, 70.87087087087087, 71.17117117117117, 71.47147147147147, 71.77177177177177, 72.07207207207207, 72.37237237237237, 72.67267267267268, 72.97297297297297, 73.27327327327328, 73.57357357357357, 73.87387387387388, 74.17417417417417, 74.47447447447448, 74.77477477477477, 75.07507507507508, 75.37537537537537, 75.67567567567568, 75.97597597597597, 76.27627627627628, 76.57657657657657, 76.87687687687688, 77.17717717717719, 77.47747747747748, 77.77777777777779, 78.07807807807808, 78.37837837837839, 78.67867867867868, 78.97897897897899, 79.27927927927928, 79.57957957957959, 79.87987987987988, 80.18018018018019, 80.48048048048048, 80.78078078078079, 81.08108108108108, 81.38138138138139, 81.68168168168168, 81.98198198198199, 82.28228228228228, 82.58258258258259, 82.88288288288288, 83.18318318318319, 83.48348348348348, 83.78378378378379, 84.08408408408408, 84.38438438438439, 84.68468468468468, 84.98498498498499, 85.28528528528528, 85.58558558558559, 85.88588588588588, 86.18618618618619, 86.48648648648648, 86.78678678678679, 87.08708708708708, 87.38738738738739, 87.68768768768768, 87.98798798798799, 88.28828828828829, 88.58858858858859, 88.88888888888889, 89.1891891891892, 89.48948948948949, 89.7897897897898, 90.09009009009009, 90.3903903903904, 90.69069069069069, 90.990990990991, 91.29129129129129, 91.5915915915916, 91.89189189189189, 92.1921921921922, 92.49249249249249, 92.7927927927928, 93.09309309309309, 93.3933933933934, 93.69369369369369, 93.993993993994, 94.29429429429429, 94.5945945945946, 94.89489489489489, 95.1951951951952, 95.49549549549549, 95.7957957957958, 96.09609609609609, 96.3963963963964, 96.6966966966967, 96.996996996997, 97.2972972972973, 97.5975975975976, 97.8978978978979, 98.1981981981982, 98.4984984984985, 98.7987987987988, 99.0990990990991, 99.3993993993994, 99.6996996996997, 100, 100.30030030030031, 100.6006006006006, 100.90090090090091, 101.2012012012012, 101.50150150150151, 101.8018018018018, 102.10210210210211, 102.4024024024024, 102.70270270270271, 103.003003003003, 103.30330330330331, 103.6036036036036, 103.90390390390391, 104.2042042042042, 104.50450450450451, 104.8048048048048, 105.10510510510511, 105.4054054054054, 105.70570570570571, 106.006006006006, 106.30630630630631, 106.6066066066066, 106.90690690690691, 107.2072072072072, 107.50750750750751, 107.8078078078078, 108.10810810810811, 108.4084084084084, 108.70870870870871, 109.009009009009, 109.30930930930931, 109.6096096096096, 109.90990990990991, 110.2102102102102, 110.51051051051051, 110.8108108108108, 111.11111111111111, 111.41141141141141, 111.71171171171171, 112.01201201201201, 112.31231231231232, 112.61261261261261, 112.91291291291292, 113.21321321321321, 113.51351351351352, 113.81381381381381, 114.11411411411412, 114.41441441441441, 114.71471471471472, 115.01501501501501, 115.31531531531532, 115.61561561561562, 115.91591591591592, 116.21621621621622, 116.51651651651652, 116.81681681681683, 117.11711711711712, 117.41741741741743, 117.71771771771772, 118.01801801801803, 118.31831831831832, 118.61861861861863, 118.91891891891892, 119.21921921921923, 119.51951951951952, 119.81981981981983, 120.12012012012012, 120.42042042042043, 120.72072072072072, 121.02102102102103, 121.32132132132132, 121.62162162162163, 121.92192192192192, 122.22222222222223, 122.52252252252252, 122.82282282282283, 123.12312312312312, 123.42342342342343, 123.72372372372372, 124.02402402402403, 124.32432432432432, 124.62462462462463, 124.92492492492492, 125.22522522522523, 125.52552552552552, 125.82582582582583, 126.12612612612612, 126.42642642642643, 126.72672672672672, 127.02702702702703, 127.32732732732732, 127.62762762762763, 127.92792792792793, 128.22822822822823, 128.52852852852854, 128.82882882882882, 129.12912912912913, 129.42942942942943, 129.72972972972974, 130.03003003003002, 130.33033033033033, 130.63063063063063, 130.93093093093094, 131.23123123123122, 131.53153153153153, 131.83183183183183, 132.13213213213214, 132.43243243243242, 132.73273273273273, 133.03303303303304, 133.33333333333334, 133.63363363363362, 133.93393393393393, 134.23423423423424, 134.53453453453454, 134.83483483483485, 135.13513513513513, 135.43543543543544, 135.73573573573574, 136.03603603603605, 136.33633633633633, 136.63663663663664, 136.93693693693695, 137.23723723723725, 137.53753753753753, 137.83783783783784, 138.13813813813815, 138.43843843843845, 138.73873873873873, 139.03903903903904, 139.33933933933935, 139.63963963963965, 139.93993993993993, 140.24024024024024, 140.54054054054055, 140.84084084084085, 141.14114114114113, 141.44144144144144, 141.74174174174175, 142.04204204204206, 142.34234234234233, 142.64264264264264, 142.94294294294295, 143.24324324324326, 143.54354354354354, 143.84384384384384, 144.14414414414415, 144.44444444444446, 144.74474474474474, 145.04504504504504, 145.34534534534535, 145.64564564564566, 145.94594594594594, 146.24624624624624, 146.54654654654655, 146.84684684684686, 147.14714714714714, 147.44744744744744, 147.74774774774775, 148.04804804804806, 148.34834834834834, 148.64864864864865, 148.94894894894895, 149.24924924924926, 149.54954954954954, 149.84984984984985, 150.15015015015015, 150.45045045045046, 150.75075075075074, 151.05105105105105, 151.35135135135135, 151.65165165165166, 151.95195195195194, 152.25225225225225, 152.55255255255256, 152.85285285285286, 153.15315315315314, 153.45345345345345, 153.75375375375376, 154.05405405405406, 154.35435435435437, 154.65465465465465, 154.95495495495496, 155.25525525525526, 155.55555555555557, 155.85585585585585, 156.15615615615616, 156.45645645645646, 156.75675675675677, 157.05705705705705, 157.35735735735736, 157.65765765765767, 157.95795795795797, 158.25825825825825, 158.55855855855856, 158.85885885885887, 159.15915915915917, 159.45945945945945, 159.75975975975976, 160.06006006006007, 160.36036036036037, 160.66066066066065, 160.96096096096096, 161.26126126126127, 161.56156156156158, 161.86186186186185, 162.16216216216216, 162.46246246246247, 162.76276276276278, 163.06306306306305, 163.36336336336336, 163.66366366366367, 163.96396396396398, 164.26426426426426, 164.56456456456456, 164.86486486486487, 165.16516516516518, 165.46546546546546, 165.76576576576576, 166.06606606606607, 166.36636636636638, 166.66666666666666, 166.96696696696696, 167.26726726726727, 167.56756756756758, 167.86786786786786, 168.16816816816817, 168.46846846846847, 168.76876876876878, 169.06906906906906, 169.36936936936937, 169.66966966966967, 169.96996996996998, 170.27027027027026, 170.57057057057057, 170.87087087087087, 171.17117117117118, 171.47147147147146, 171.77177177177177, 172.07207207207207, 172.37237237237238, 172.67267267267266, 172.97297297297297, 173.27327327327328, 173.57357357357358, 173.8738738738739, 174.17417417417417, 174.47447447447448, 174.77477477477478, 175.0750750750751, 175.37537537537537, 175.67567567567568, 175.97597597597598, 176.2762762762763, 176.57657657657657, 176.87687687687688, 177.17717717717719, 177.4774774774775, 177.77777777777777, 178.07807807807808, 178.3783783783784, 178.6786786786787, 178.97897897897897, 179.27927927927928, 179.5795795795796, 179.8798798798799, 180.18018018018017, 180.48048048048048, 180.7807807807808, 181.0810810810811, 181.38138138138137, 181.68168168168168, 181.981981981982, 182.2822822822823, 182.58258258258257, 182.88288288288288, 183.1831831831832, 183.4834834834835, 183.78378378378378, 184.08408408408408, 184.3843843843844, 184.6846846846847, 184.98498498498498, 185.28528528528528, 185.5855855855856, 185.8858858858859, 186.18618618618618, 186.48648648648648, 186.7867867867868, 187.0870870870871, 187.38738738738738, 187.68768768768768, 187.987987987988, 188.2882882882883, 188.58858858858858, 188.88888888888889, 189.1891891891892, 189.4894894894895, 189.78978978978978, 190.0900900900901, 190.3903903903904, 190.6906906906907, 190.99099099099098, 191.2912912912913, 191.5915915915916, 191.8918918918919, 192.19219219219218, 192.4924924924925, 192.7927927927928, 193.0930930930931, 193.3933933933934, 193.6936936936937, 193.993993993994, 194.2942942942943, 194.5945945945946, 194.8948948948949, 195.1951951951952, 195.4954954954955, 195.7957957957958, 196.0960960960961, 196.3963963963964, 196.6966966966967, 196.996996996997, 197.2972972972973, 197.5975975975976, 197.8978978978979, 198.1981981981982, 198.4984984984985, 198.7987987987988, 199.0990990990991, 199.3993993993994, 199.6996996996997, 200, 200.3003003003003, 200.60060060060061, 200.9009009009009, 201.2012012012012, 201.5015015015015, 201.80180180180182, 202.1021021021021, 202.4024024024024, 202.7027027027027, 203.00300300300302, 203.3033033033033, 203.6036036036036, 203.9039039039039, 204.20420420420422, 204.5045045045045, 204.8048048048048, 205.1051051051051, 205.40540540540542, 205.7057057057057, 206.006006006006, 206.3063063063063, 206.60660660660662, 206.9069069069069, 207.2072072072072, 207.5075075075075, 207.80780780780782, 208.1081081081081, 208.4084084084084, 208.7087087087087, 209.00900900900902, 209.3093093093093, 209.6096096096096, 209.9099099099099, 210.21021021021022, 210.5105105105105, 210.8108108108108, 211.11111111111111, 211.41141141141142, 211.71171171171173, 212.012012012012, 212.31231231231232, 212.61261261261262, 212.91291291291293, 213.2132132132132, 213.51351351351352, 213.81381381381382, 214.11411411411413, 214.4144144144144, 214.71471471471472, 215.01501501501502, 215.31531531531533, 215.6156156156156, 215.91591591591592, 216.21621621621622, 216.51651651651653, 216.8168168168168, 217.11711711711712, 217.41741741741743, 217.71771771771773, 218.018018018018, 218.31831831831832, 218.61861861861863, 218.91891891891893, 219.2192192192192, 219.51951951951952, 219.81981981981983, 220.12012012012013, 220.4204204204204, 220.72072072072072, 221.02102102102103, 221.32132132132134, 221.6216216216216, 221.92192192192192, 222.22222222222223, 222.52252252252254, 222.82282282282281, 223.12312312312312, 223.42342342342343, 223.72372372372374, 224.02402402402402, 224.32432432432432, 224.62462462462463, 224.92492492492494, 225.22522522522522, 225.52552552552552, 225.82582582582583, 226.12612612612614, 226.42642642642642, 226.72672672672672, 227.02702702702703, 227.32732732732734, 227.62762762762762, 227.92792792792793, 228.22822822822823, 228.52852852852854, 228.82882882882882, 229.12912912912913, 229.42942942942943, 229.72972972972974, 230.03003003003002, 230.33033033033033, 230.63063063063063, 230.93093093093094, 231.23123123123125, 231.53153153153153, 231.83183183183183, 232.13213213213214, 232.43243243243245, 232.73273273273273, 233.03303303303304, 233.33333333333334, 233.63363363363365, 233.93393393393393, 234.23423423423424, 234.53453453453454, 234.83483483483485, 235.13513513513513, 235.43543543543544, 235.73573573573574, 236.03603603603605, 236.33633633633633, 236.63663663663664, 236.93693693693695, 237.23723723723725, 237.53753753753753, 237.83783783783784, 238.13813813813815, 238.43843843843845, 238.73873873873873, 239.03903903903904, 239.33933933933935, 239.63963963963965, 239.93993993993993, 240.24024024024024, 240.54054054054055, 240.84084084084085, 241.14114114114113, 241.44144144144144, 241.74174174174175, 242.04204204204206, 242.34234234234233, 242.64264264264264, 242.94294294294295, 243.24324324324326, 243.54354354354354, 243.84384384384384, 244.14414414414415, 244.44444444444446, 244.74474474474474, 245.04504504504504, 245.34534534534535, 245.64564564564566, 245.94594594594594, 246.24624624624624, 246.54654654654655, 246.84684684684686, 247.14714714714714, 247.44744744744744, 247.74774774774775, 248.04804804804806, 248.34834834834834, 248.64864864864865, 248.94894894894895, 249.24924924924926, 249.54954954954954, 249.84984984984985, 250.15015015015015, 250.45045045045046, 250.75075075075077, 251.05105105105105, 251.35135135135135, 251.65165165165166, 251.95195195195197, 252.25225225225225, 252.55255255255256, 252.85285285285286, 253.15315315315317, 253.45345345345345, 253.75375375375376, 254.05405405405406, 254.35435435435437, 254.65465465465465, 254.95495495495496, 255.25525525525526, 255.55555555555557, 255.85585585585585, 256.15615615615616, 256.45645645645646, 256.7567567567568, 257.0570570570571, 257.3573573573574, 257.65765765765764, 257.95795795795794, 258.25825825825825, 258.55855855855856, 258.85885885885887, 259.1591591591592, 259.4594594594595, 259.7597597597598, 260.06006006006004, 260.36036036036035, 260.66066066066065, 260.96096096096096, 261.26126126126127, 261.5615615615616, 261.8618618618619, 262.1621621621622, 262.46246246246244, 262.76276276276275, 263.06306306306305, 263.36336336336336, 263.66366366366367, 263.963963963964, 264.2642642642643, 264.5645645645646, 264.86486486486484, 265.16516516516515, 265.46546546546546, 265.76576576576576, 266.06606606606607, 266.3663663663664, 266.6666666666667, 266.966966966967, 267.26726726726724, 267.56756756756755, 267.86786786786786, 268.16816816816817, 268.4684684684685, 268.7687687687688, 269.0690690690691, 269.3693693693694, 269.6696696696697, 269.96996996996995, 270.27027027027026, 270.57057057057057, 270.8708708708709, 271.1711711711712, 271.4714714714715, 271.7717717717718, 272.0720720720721, 272.37237237237235, 272.67267267267266, 272.97297297297297, 273.2732732732733, 273.5735735735736, 273.8738738738739, 274.1741741741742, 274.4744744744745, 274.77477477477476, 275.07507507507506, 275.37537537537537, 275.6756756756757, 275.975975975976, 276.2762762762763, 276.5765765765766, 276.8768768768769, 277.17717717717716, 277.47747747747746, 277.77777777777777, 278.0780780780781, 278.3783783783784, 278.6786786786787, 278.978978978979, 279.2792792792793, 279.57957957957956, 279.87987987987987, 280.1801801801802, 280.4804804804805, 280.7807807807808, 281.0810810810811, 281.3813813813814, 281.6816816816817, 281.98198198198196, 282.28228228228227, 282.5825825825826, 282.8828828828829, 283.1831831831832, 283.4834834834835, 283.7837837837838, 284.0840840840841, 284.38438438438436, 284.68468468468467, 284.984984984985, 285.2852852852853, 285.5855855855856, 285.8858858858859, 286.1861861861862, 286.4864864864865, 286.78678678678676, 287.08708708708707, 287.3873873873874, 287.6876876876877, 287.987987987988, 288.2882882882883, 288.5885885885886, 288.8888888888889, 289.1891891891892, 289.4894894894895, 289.7897897897898, 290.0900900900901, 290.3903903903904, 290.6906906906907, 290.990990990991, 291.2912912912913, 291.5915915915916, 291.8918918918919, 292.1921921921922, 292.4924924924925, 292.7927927927928, 293.0930930930931, 293.3933933933934, 293.6936936936937, 293.993993993994, 294.2942942942943, 294.5945945945946, 294.8948948948949, 295.1951951951952, 295.4954954954955, 295.7957957957958, 296.0960960960961, 296.3963963963964, 296.6966966966967, 296.996996996997, 297.2972972972973, 297.5975975975976, 297.8978978978979, 298.1981981981982, 298.4984984984985, 298.7987987987988, 299.0990990990991, 299.3993993993994, 299.6996996996997, 300 ], "y": [ 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194, 8586.501033599194 ] } ], "layout": { "legend": { "title": { "text": "Altitude" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Total drag variation with altitude - CD0 = 0.016, K=0.045, S=50m^2, W=160.0" }, "xaxis": { "range": [ 0, 300 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 20000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = go.Figure()\n", "\n", "fig.update_xaxes(range=[0, 300])\n", "fig.update_yaxes(range=[0, 20e3])\n", "\n", "for alt in [0, 5000, 15000]:\n", "\n", " mosphere = Atmosphere(alt)\n", " rho = mosphere.density\n", "\n", " # Determine stall speed\n", " Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", " # Determine A and B\n", " A = CD0 * 0.5 * rho * S\n", " B = K * W ** 2 / 0.5 / rho / S\n", "\n", " # Flight speed vector\n", " Vs = np.linspace(Vstall[0], 340, 1000)\n", "\n", "\n", " # Define drags\n", " Dind = B * Vs**-2\n", " Dprof = A * Vs**2\n", " D = Dind + Dprof\n", "\n", " # Get minimum drag\n", " Vmd = (B/A)**.25\n", " md = A * Vmd**2 + B * Vmd**-2\n", "\n", "\n", " fig.add_trace(go.Scatter(x=Vs, y=D, name=f\"Total Drag: {alt/1e3:1.0f}km\"))\n", " fig.add_trace(go.Scatter(x=Vmd, y=md, mode=\"markers+text\",\\\n", " text=f\"{Vmd[0]:1.0f} m/s \",\\\n", " textposition=\"bottom center\", name=\"Annotation\"))\n", "\n", "\n", " \n", "\n", " fig.update_layout(\n", " title=f\"Total drag variation with altitude - CD0 = {CD0}, K={K}, S={S}m^2, W={W/1e3}\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Altitude\",\n", " )\n", " \n", "\n", "fig.add_trace(go.Scatter(x=np.linspace(0, 300, 1000), y=md*np.ones(1000), name=\"Constant Minimum Drag\", connectgaps=True))\n", " \n", " \n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", " \n", " \n", "fig.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Variation of drag with aircraft weight\n", "\n", "By contrast to the density, the aircraft weight *only* appears in the **induced drag** term, $B=\\frac{K\\,W^2}{\\frac{1}{2}\\rho S}$, and hence the profile drag stays constant whilst the induced drag increases with aircraft weight.\n", "\n", "This makes sense as the wetted area of the aircraft is unchanged, hence the viscous drag would be constant. The dimensional value of lift is increased, therefore the cruise $C_L$ is also increased, and the circulation *must* be increased hence the trailing vortex system is given more energy - more drag.\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "scrolled": false, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Total Drag: W=160kN", "type": "scatter", "x": [ 59.01688864847802, 59.29815302420527, 59.579417399932524, 59.86068177565977, 60.14194615138702, 60.42321052711427, 60.70447490284152, 60.985739278568765, 61.26700365429602, 61.548268030023266, 61.82953240575051, 62.11079678147777, 62.39206115720501, 62.67332553293226, 62.954589908659514, 63.23585428438676, 63.51711866011401, 63.79838303584126, 64.07964741156852, 64.36091178729576, 64.64217616302301, 64.92344053875026, 65.2047049144775, 65.48596929020475, 65.767233665932, 66.04849804165926, 66.3297624173865, 66.61102679311375, 66.892291168841, 67.17355554456825, 67.4548199202955, 67.73608429602275, 68.01734867175, 68.29861304747725, 68.5798774232045, 68.86114179893174, 69.14240617465899, 69.42367055038625, 69.7049349261135, 69.98619930184074, 70.26746367756799, 70.54872805329524, 70.8299924290225, 71.11125680474974, 71.39252118047699, 71.67378555620424, 71.95504993193148, 72.23631430765873, 72.51757868338598, 72.79884305911324, 73.08010743484049, 73.36137181056773, 73.64263618629498, 73.92390056202223, 74.20516493774949, 74.48642931347673, 74.76769368920398, 75.04895806493123, 75.33022244065847, 75.61148681638574, 75.89275119211297, 76.17401556784023, 76.45527994356748, 76.73654431929472, 77.01780869502197, 77.29907307074922, 77.58033744647648, 77.86160182220372, 78.14286619793097, 78.42413057365822, 78.70539494938546, 78.98665932511273, 79.26792370083996, 79.54918807656722, 79.83045245229447, 80.11171682802171, 80.39298120374896, 80.6742455794762, 80.95550995520347, 81.23677433093071, 81.51803870665796, 81.79930308238521, 82.08056745811245, 82.36183183383972, 82.64309620956695, 82.92436058529421, 83.20562496102146, 83.4868893367487, 83.76815371247595, 84.0494180882032, 84.33068246393046, 84.6119468396577, 84.89321121538495, 85.1744755911122, 85.45573996683945, 85.7370043425667, 86.01826871829394, 86.2995330940212, 86.58079746974845, 86.8620618454757, 87.14332622120294, 87.42459059693019, 87.70585497265745, 87.9871193483847, 88.26838372411194, 88.54964809983919, 88.83091247556644, 89.1121768512937, 89.39344122702094, 89.67470560274819, 89.95596997847544, 90.23723435420268, 90.51849872992993, 90.79976310565718, 91.08102748138444, 91.36229185711169, 91.64355623283893, 91.92482060856618, 92.20608498429343, 92.48734936002069, 92.76861373574792, 93.04987811147518, 93.33114248720243, 93.61240686292967, 93.89367123865694, 94.17493561438417, 94.45619999011143, 94.73746436583868, 95.01872874156592, 95.29999311729317, 95.58125749302042, 95.86252186874768, 96.14378624447491, 96.42505062020217, 96.70631499592942, 96.98757937165666, 97.26884374738393, 97.55010812311116, 97.83137249883842, 98.11263687456567, 98.39390125029291, 98.67516562602016, 98.9564300017474, 99.23769437747467, 99.5189587532019, 99.80022312892916, 100.08148750465641, 100.36275188038366, 100.64401625611092, 100.92528063183815, 101.20654500756541, 101.48780938329266, 101.7690737590199, 102.05033813474715, 102.3316025104744, 102.61286688620166, 102.89413126192889, 103.17539563765615, 103.4566600133834, 103.73792438911065, 104.0191887648379, 104.30045314056514, 104.5817175162924, 104.86298189201965, 105.1442462677469, 105.42551064347414, 105.70677501920139, 105.98803939492865, 106.26930377065588, 106.55056814638314, 106.83183252211039, 107.11309689783764, 107.3943612735649, 107.67562564929213, 107.95689002501939, 108.23815440074664, 108.51941877647388, 108.80068315220113, 109.08194752792838, 109.36321190365564, 109.64447627938287, 109.92574065511013, 110.20700503083738, 110.48826940656463, 110.76953378229189, 111.05079815801912, 111.33206253374638, 111.61332690947363, 111.89459128520087, 112.17585566092812, 112.45712003665537, 112.73838441238263, 113.01964878810986, 113.30091316383712, 113.58217753956437, 113.86344191529162, 114.14470629101888, 114.42597066674611, 114.70723504247337, 114.98849941820062, 115.26976379392786, 115.55102816965513, 115.83229254538236, 116.11355692110962, 116.39482129683687, 116.67608567256411, 116.95735004829136, 117.2386144240186, 117.51987879974587, 117.8011431754731, 118.08240755120036, 118.36367192692761, 118.64493630265486, 118.92620067838212, 119.20746505410935, 119.48872942983661, 119.76999380556386, 120.0512581812911, 120.33252255701835, 120.6137869327456, 120.89505130847286, 121.17631568420009, 121.45758005992735, 121.7388444356546, 122.02010881138185, 122.3013731871091, 122.58263756283634, 122.8639019385636, 123.14516631429083, 123.4264306900181, 123.70769506574536, 123.98895944147259, 124.27022381719985, 124.55148819292708, 124.83275256865434, 125.11401694438158, 125.39528132010884, 125.6765456958361, 125.95781007156333, 126.23907444729059, 126.52033882301782, 126.80160319874508, 127.08286757447235, 127.36413195019958, 127.64539632592684, 127.92666070165407, 128.20792507738133, 128.48918945310857, 128.77045382883583, 129.0517182045631, 129.33298258029032, 129.61424695601758, 129.8955113317448, 130.17677570747207, 130.45804008319934, 130.73930445892657, 131.02056883465383, 131.30183321038106, 131.58309758610832, 131.86436196183558, 132.14562633756282, 132.42689071329008, 132.7081550890173, 132.98941946474457, 133.2706838404718, 133.55194821619907, 133.83321259192633, 134.11447696765356, 134.39574134338082, 134.67700571910805, 134.9582700948353, 135.23953447056257, 135.5207988462898, 135.80206322201707, 136.0833275977443, 136.36459197347156, 136.6458563491988, 136.92712072492606, 137.20838510065332, 137.48964947638055, 137.7709138521078, 138.05217822783504, 138.3334426035623, 138.61470697928956, 138.8959713550168, 139.17723573074406, 139.4585001064713, 139.73976448219855, 140.02102885792578, 140.30229323365305, 140.5835576093803, 140.86482198510754, 141.1460863608348, 141.42735073656203, 141.7086151122893, 141.98987948801656, 142.2711438637438, 142.55240823947105, 142.83367261519828, 143.11493699092554, 143.39620136665278, 143.67746574238004, 143.9587301181073, 144.23999449383453, 144.5212588695618, 144.80252324528902, 145.08378762101628, 145.36505199674355, 145.64631637247078, 145.92758074819804, 146.20884512392527, 146.49010949965253, 146.77137387537977, 147.05263825110703, 147.3339026268343, 147.61516700256152, 147.89643137828878, 148.177695754016, 148.45896012974328, 148.74022450547054, 149.02148888119777, 149.30275325692503, 149.58401763265226, 149.86528200837952, 150.14654638410676, 150.42781075983402, 150.70907513556128, 150.9903395112885, 151.27160388701577, 151.552868262743, 151.83413263847027, 152.11539701419753, 152.39666138992476, 152.67792576565202, 152.95919014137925, 153.2404545171065, 153.52171889283375, 153.802983268561, 154.08424764428827, 154.3655120200155, 154.64677639574276, 154.92804077147, 155.20930514719726, 155.49056952292452, 155.77183389865175, 156.053098274379, 156.33436265010624, 156.6156270258335, 156.89689140156074, 157.178155777288, 157.45942015301526, 157.7406845287425, 158.02194890446975, 158.30321328019699, 158.58447765592425, 158.8657420316515, 159.14700640737874, 159.428270783106, 159.70953515883323, 159.9907995345605, 160.27206391028773, 160.553328286015, 160.83459266174225, 161.11585703746948, 161.39712141319674, 161.67838578892398, 161.95965016465124, 162.2409145403785, 162.52217891610573, 162.803443291833, 163.08470766756022, 163.36597204328748, 163.64723641901472, 163.92850079474198, 164.20976517046924, 164.49102954619647, 164.77229392192373, 165.05355829765097, 165.33482267337823, 165.6160870491055, 165.89735142483272, 166.17861580055998, 166.45988017628721, 166.74114455201448, 167.0224089277417, 167.30367330346897, 167.58493767919623, 167.86620205492346, 168.14746643065072, 168.42873080637796, 168.70999518210522, 168.99125955783248, 169.2725239335597, 169.55378830928697, 169.8350526850142, 170.11631706074147, 170.39758143646873, 170.67884581219596, 170.96011018792322, 171.24137456365045, 171.5226389393777, 171.80390331510495, 172.0851676908322, 172.36643206655947, 172.6476964422867, 172.92896081801396, 173.2102251937412, 173.49148956946846, 173.77275394519572, 174.05401832092295, 174.3352826966502, 174.61654707237744, 174.8978114481047, 175.17907582383194, 175.4603401995592, 175.74160457528646, 176.0228689510137, 176.30413332674095, 176.58539770246819, 176.86666207819545, 177.1479264539227, 177.42919082964994, 177.7104552053772, 177.99171958110443, 178.2729839568317, 178.55424833255893, 178.8355127082862, 179.11677708401345, 179.39804145974068, 179.67930583546794, 179.96057021119518, 180.24183458692244, 180.5230989626497, 180.80436333837693, 181.0856277141042, 181.36689208983142, 181.64815646555869, 181.92942084128592, 182.21068521701318, 182.49194959274044, 182.77321396846767, 183.05447834419493, 183.33574271992217, 183.61700709564943, 183.8982714713767, 184.17953584710392, 184.46080022283118, 184.74206459855841, 185.02332897428568, 185.3045933500129, 185.58585772574017, 185.86712210146743, 186.14838647719466, 186.42965085292192, 186.71091522864916, 186.99217960437642, 187.27344398010365, 187.5547083558309, 187.83597273155814, 188.1172371072854, 188.39850148301267, 188.6797658587399, 188.96103023446716, 189.2422946101944, 189.52355898592165, 189.80482336164891, 190.08608773737615, 190.3673521131034, 190.64861648883064, 190.9298808645579, 191.21114524028513, 191.4924096160124, 191.77367399173966, 192.0549383674669, 192.33620274319415, 192.61746711892138, 192.89873149464864, 193.1799958703759, 193.46126024610314, 193.7425246218304, 194.02378899755763, 194.3050533732849, 194.58631774901212, 194.86758212473939, 195.14884650046665, 195.43011087619388, 195.71137525192114, 195.99263962764837, 196.27390400337563, 196.5551683791029, 196.83643275483013, 197.1176971305574, 197.39896150628462, 197.68022588201188, 197.96149025773911, 198.24275463346638, 198.52401900919364, 198.80528338492087, 199.08654776064813, 199.36781213637536, 199.64907651210262, 199.93034088782989, 200.21160526355712, 200.49286963928438, 200.7741340150116, 201.05539839073887, 201.3366627664661, 201.61792714219337, 201.89919151792063, 202.18045589364786, 202.46172026937512, 202.74298464510235, 203.02424902082961, 203.30551339655688, 203.5867777722841, 203.86804214801137, 204.1493065237386, 204.43057089946586, 204.71183527519312, 204.99309965092036, 205.27436402664762, 205.55562840237485, 205.8368927781021, 206.11815715382934, 206.3994215295566, 206.68068590528387, 206.9619502810111, 207.24321465673836, 207.5244790324656, 207.80574340819285, 208.08700778392011, 208.36827215964735, 208.6495365353746, 208.93080091110184, 209.2120652868291, 209.49332966255633, 209.7745940382836, 210.05585841401086, 210.3371227897381, 210.61838716546535, 210.89965154119258, 211.18091591691984, 211.4621802926471, 211.74344466837434, 212.0247090441016, 212.30597341982883, 212.5872377955561, 212.86850217128332, 213.14976654701059, 213.43103092273785, 213.71229529846508, 213.99355967419234, 214.27482404991957, 214.55608842564683, 214.8373528013741, 215.11861717710133, 215.3998815528286, 215.68114592855582, 215.96241030428308, 216.24367468001032, 216.52493905573758, 216.80620343146484, 217.08746780719207, 217.36873218291933, 217.64999655864656, 217.93126093437382, 218.21252531010109, 218.49378968582832, 218.77505406155558, 219.0563184372828, 219.33758281301007, 219.6188471887373, 219.90011156446457, 220.18137594019183, 220.46264031591906, 220.74390469164632, 221.02516906737355, 221.30643344310081, 221.58769781882808, 221.8689621945553, 222.15022657028257, 222.4314909460098, 222.71275532173706, 222.9940196974643, 223.27528407319156, 223.55654844891882, 223.83781282464605, 224.1190772003733, 224.40034157610054, 224.6816059518278, 224.96287032755507, 225.2441347032823, 225.52539907900956, 225.8066634547368, 226.08792783046405, 226.3691922061913, 226.65045658191855, 226.9317209576458, 227.21298533337304, 227.4942497091003, 227.77551408482753, 228.0567784605548, 228.33804283628206, 228.6193072120093, 228.90057158773655, 229.18183596346378, 229.46310033919104, 229.74436471491828, 230.02562909064554, 230.3068934663728, 230.58815784210003, 230.8694222178273, 231.15068659355452, 231.4319509692818, 231.71321534500905, 231.99447972073628, 232.27574409646354, 232.55700847219077, 232.83827284791803, 233.11953722364527, 233.40080159937253, 233.6820659750998, 233.96333035082702, 234.24459472655428, 234.52585910228152, 234.80712347800878, 235.08838785373604, 235.36965222946327, 235.65091660519053, 235.93218098091776, 236.21344535664502, 236.49470973237226, 236.77597410809952, 237.05723848382678, 237.338502859554, 237.61976723528127, 237.9010316110085, 238.18229598673577, 238.46356036246303, 238.74482473819026, 239.02608911391752, 239.30735348964475, 239.58861786537202, 239.86988224109928, 240.1511466168265, 240.43241099255377, 240.713675368281, 240.99493974400826, 241.2762041197355, 241.55746849546276, 241.83873287119002, 242.11999724691725, 242.4012616226445, 242.68252599837174, 242.963790374099, 243.24505474982627, 243.5263191255535, 243.80758350128076, 244.088847877008, 244.37011225273525, 244.6513766284625, 244.93264100418975, 245.213905379917, 245.49516975564424, 245.7764341313715, 246.05769850709873, 246.338962882826, 246.62022725855326, 246.9014916342805, 247.18275601000775, 247.46402038573498, 247.74528476146224, 248.02654913718948, 248.30781351291674, 248.589077888644, 248.87034226437123, 249.1516066400985, 249.43287101582573, 249.714135391553, 249.99539976728025, 250.27666414300748, 250.55792851873474, 250.83919289446197, 251.12045727018923, 251.40172164591647, 251.68298602164373, 251.964250397371, 252.24551477309822, 252.52677914882548, 252.80804352455272, 253.08930790027998, 253.37057227600724, 253.65183665173447, 253.93310102746173, 254.21436540318896, 254.49562977891622, 254.77689415464346, 255.05815853037072, 255.33942290609798, 255.6206872818252, 255.90195165755247, 256.18321603327973, 256.46448040900697, 256.74574478473426, 257.0270091604615, 257.3082735361887, 257.58953791191595, 257.87080228764324, 258.1520666633705, 258.4333310390977, 258.714595414825, 258.99585979055223, 259.27712416627946, 259.5583885420067, 259.839652917734, 260.1209172934612, 260.40218166918845, 260.68344604491574, 260.964710420643, 261.2459747963702, 261.52723917209744, 261.8085035478247, 262.08976792355196, 262.3710322992792, 262.6522966750065, 262.9335610507337, 263.21482542646095, 263.49608980218824, 263.77735417791547, 264.0586185536427, 264.33988292936994, 264.6211473050972, 264.90241168082446, 265.1836760565517, 265.464940432279, 265.7462048080062, 266.02746918373344, 266.3087335594607, 266.58999793518797, 266.8712623109152, 267.15252668664243, 267.4337910623697, 267.71505543809695, 267.9963198138242, 268.2775841895514, 268.5588485652787, 268.84011294100594, 269.1213773167332, 269.40264169246046, 269.6839060681877, 269.96517044391493, 270.2464348196422, 270.52769919536945, 270.8089635710967, 271.0902279468239, 271.3714923225512, 271.65275669827844, 271.93402107400567, 272.21528544973296, 272.4965498254602, 272.7778142011874, 273.05907857691466, 273.34034295264195, 273.6216073283692, 273.9028717040964, 274.1841360798237, 274.46540045555093, 274.74666483127817, 275.0279292070054, 275.3091935827327, 275.5904579584599, 275.87172233418715, 276.15298670991444, 276.4342510856417, 276.7155154613689, 276.9967798370962, 277.27804421282343, 277.55930858855066, 277.8405729642779, 278.1218373400052, 278.4031017157324, 278.68436609145965, 278.96563046718694, 279.2468948429142, 279.5281592186414, 279.80942359436864, 280.0906879700959, 280.37195234582316, 280.6532167215504, 280.9344810972777, 281.2157454730049, 281.49700984873215, 281.77827422445944, 282.05953860018667, 282.3408029759139, 282.62206735164114, 282.9033317273684, 283.18459610309566, 283.4658604788229, 283.7471248545502, 284.0283892302774, 284.30965360600464, 284.5909179817319, 284.87218235745917, 285.1534467331864, 285.43471110891363, 285.7159754846409, 285.99723986036815, 286.2785042360954, 286.5597686118226, 286.8410329875499, 287.12229736327714, 287.4035617390044, 287.68482611473166, 287.9660904904589, 288.24735486618613, 288.5286192419134, 288.80988361764065, 289.0911479933679, 289.3724123690951, 289.6536767448224, 289.93494112054964, 290.21620549627687, 290.49746987200416, 290.7787342477314, 291.0599986234586, 291.34126299918586, 291.62252737491315, 291.9037917506404, 292.1850561263676, 292.4663205020949, 292.74758487782213, 293.02884925354937, 293.3101136292766, 293.5913780050039, 293.8726423807311, 294.15390675645835, 294.43517113218564, 294.7164355079129, 294.9976998836401, 295.2789642593674, 295.56022863509463, 295.84149301082186, 296.1227573865491, 296.4040217622764, 296.6852861380036, 296.96655051373085, 297.24781488945814, 297.5290792651854, 297.8103436409126, 298.09160801663984, 298.3728723923671, 298.65413676809436, 298.9354011438216, 299.2166655195489, 299.4979298952761, 299.77919427100335, 300.0604586467306, 300.34172302245787, 300.6229873981851, 300.90425177391234, 301.1855161496396, 301.46678052536686, 301.7480449010941, 302.0293092768214, 302.3105736525486, 302.59183802827584, 302.8731024040031, 303.15436677973037, 303.4356311554576, 303.71689553118483, 303.9981599069121, 304.27942428263935, 304.5606886583666, 304.8419530340938, 305.1232174098211, 305.40448178554834, 305.6857461612756, 305.96701053700286, 306.2482749127301, 306.52953928845733, 306.81080366418456, 307.09206803991185, 307.3733324156391, 307.6545967913663, 307.9358611670936, 308.21712554282084, 308.49838991854807, 308.77965429427536, 309.0609186700026, 309.3421830457298, 309.62344742145706, 309.90471179718435, 310.1859761729116, 310.4672405486388, 310.7485049243661, 311.02976930009334, 311.31103367582057, 311.5922980515478, 311.8735624272751, 312.1548268030023, 312.43609117872955, 312.71735555445684, 312.9986199301841, 313.2798843059113, 313.5611486816386, 313.84241305736583, 314.12367743309306, 314.4049418088203, 314.6862061845476, 314.9674705602748, 315.24873493600205, 315.5299993117293, 315.8112636874566, 316.0925280631838, 316.37379243891104, 316.6550568146383, 316.93632119036556, 317.2175855660928, 317.49884994182, 317.7801143175473, 318.06137869327455, 318.3426430690018, 318.62390744472907, 318.9051718204563, 319.18643619618354, 319.46770057191077, 319.74896494763806, 320.0302293233653, 320.3114936990925, 320.5927580748198, 320.87402245054705, 321.1552868262743, 321.4365512020015, 321.7178155777288, 321.99907995345603, 322.28034432918327, 322.56160870491055, 322.8428730806378, 323.124137456365, 323.40540183209225, 323.68666620781954, 323.9679305835468, 324.249194959274, 324.5304593350013, 324.81172371072853, 325.09298808645576, 325.37425246218305, 325.6555168379103, 325.9367812136375, 326.21804558936475, 326.49930996509204, 326.78057434081927, 327.0618387165465, 327.3431030922738, 327.624367468001, 327.90563184372826, 328.1868962194555, 328.4681605951828, 328.74942497091, 329.03068934663725, 329.31195372236454, 329.59321809809177, 329.874482473819, 330.15574684954623, 330.4370112252735, 330.71827560100076, 330.999539976728, 331.2808043524553, 331.5620687281825, 331.84333310390974, 332.12459747963703, 332.40586185536426, 332.6871262310915, 332.96839060681873, 333.249654982546, 333.53091935827325, 333.8121837340005, 334.0934481097278, 334.374712485455, 334.65597686118224, 334.9372412369095, 335.21850561263676, 335.499769988364, 335.7810343640912, 336.0622987398185, 336.34356311554575, 336.624827491273, 336.9060918670002, 337.1873562427275, 337.46862061845474, 337.74988499418197, 338.03114936990926, 338.3124137456365, 338.5936781213637, 338.874942497091, 339.15620687281825, 339.4374712485455, 339.7187356242727, 340 ], "y": [ 12506.666666666668, 12420.762150876155, 12336.379300565146, 12253.491037604961, 12172.070915560964, 12092.093102090877, 12013.5323619127, 11936.36404032115, 11860.56404723265, 11786.108841739493, 11712.975417154732, 11641.141286530057, 11570.584468629662, 11501.283474343685, 11433.217293525668, 11366.365382238875, 11300.70765039708, 11236.224449785912, 11172.89656245144, 11110.705189443188, 11049.631939899238, 10989.658820461646, 10930.768225010743, 10872.942924707437, 10816.16605833294, 10760.421122915877, 10705.691964637013, 10651.962770002203, 10599.21805727466, 10547.44266815778, 10496.621759720218, 10446.740796555207, 10397.785543166334, 10349.742056572382, 10302.596679124043, 10256.336031525563, 10210.947006054736, 10166.416759974734, 10122.73270913172, 10079.882521732117, 10037.854112293968, 9996.63563576671, 9956.2154818141, 9916.582269255108, 9877.724840657793, 9839.632257081437, 9802.29379296222, 9765.698931138042, 9729.837358008153, 9694.698958823428, 9660.273813103293, 9626.552190175418, 9593.524544834405, 9561.181513115906, 9529.513908182631, 9498.512716318923, 9468.16909303056, 9438.474359246724, 9409.41999762104, 9380.997648928742, 9353.199108557152, 9326.016323086664, 9299.441386959663, 9273.46653923471, 9248.084160423568, 9223.286769408638, 9199.067020438497, 9175.417700199245, 9152.33172495953, 9129.802137787112, 9107.82210583492, 9086.38491769467, 9065.483980816043, 9045.112818989674, 9025.265069892099, 9005.934482690893, 8987.11491570842, 8968.800334142441, 8950.984807842098, 8933.662509137688, 8916.827710722762, 8900.474783587133, 8884.598194999344, 8869.19250653731, 8854.252372165807, 8839.772536359475, 8825.747832270225, 8812.173179937752, 8799.043584542047, 8786.354134696774, 8774.10000078242, 8762.276433318184, 8750.878761371536, 8739.902391004503, 8729.34280375568, 8719.195555157039, 8709.456273284646, 8700.120657342373, 8691.184476277775, 8682.643567429275, 8674.493835203884, 8666.731249784634, 8659.351845866986, 8652.351721423478, 8645.727036495859, 8639.474012014065, 8633.58892864131, 8628.06812564466, 8622.907999790448, 8618.105004263889, 8613.655647612315, 8609.556492711436, 8605.804155754027, 8602.395305260545, 8599.326661111063, 8596.594993598064, 8594.197122499534, 8592.129916171883, 8590.390290662212, 8588.97520883943, 8587.881679543807, 8587.106756754489, 8586.647538774518, 8586.501167433016, 8586.664827304041, 8587.135744941752, 8587.911188131497, 8588.988465156452, 8590.364924079415, 8592.037952039422, 8594.004974562842, 8596.263454888589, 8598.810893307118, 8601.644826512937, 8604.762826970245, 8608.162502291447, 8611.841494628221, 8615.797480074874, 8620.028168083663, 8624.531300891853, 8629.304652960218, 8634.346030422723, 8639.65327054714, 8645.224241206364, 8651.056840360157, 8657.148995547112, 8663.498663386581, 8670.10382909039, 8676.96250598407, 8684.072735037405, 8691.432584404138, 8699.040148970556, 8706.893549912813, 8714.990934262783, 8723.330474482256, 8731.910368045272, 8740.72883702847, 8749.784127709216, 8759.074510171376, 8768.598277918576, 8778.353747494742, 8788.339258111822, 8798.553171284497, 8808.993870471719, 8819.659760725008, 8830.549268343242, 8841.660840533918, 8852.992945080667, 8864.544070016942, 8876.312723305713, 8888.297432525065, 8900.49674455956, 8912.909225297255, 8925.533459332266, 8938.368049672714, 8951.411617454012, 8964.662801657332, 8978.120258833158, 8991.782662829828, 9005.648704526957, 9019.717091573624, 9033.986548131277, 9048.455814621188, 9063.123647476426, 9077.98881889823, 9093.050116616672, 9108.306343655595, 9123.756318101643, 9139.398872877377, 9155.232855518365, 9171.257127954164, 9187.470566293126, 9203.872060610942, 9220.46051474287, 9237.234846079547, 9254.193985366326, 9271.336876506086, 9288.662476365404, 9306.16975458409, 9323.85769338793, 9341.725287404659, 9359.771543483064, 9377.995480515134, 9396.396129261244, 9414.97253217829, 9433.723743250706, 9452.648827824345, 9471.746862443128, 9491.016934688429, 9510.458143021144, 9530.069596626407, 9549.850415260842, 9569.799729102404, 9589.916678602653, 9610.200414341485, 9630.650096884274, 9651.264896641314, 9672.04399372961, 9692.986577836895, 9714.091848087879, 9735.359012912677, 9756.787289917349, 9778.375905756579, 9800.12409600836, 9822.031105050737, 9844.096185940518, 9866.318600293926, 9888.697618169172, 9911.232517950895, 9933.922586236451, 9956.767117723994, 9979.765415102347, 10002.916788942632, 10026.220557591556, 10049.676047066441, 10073.282590951861, 10097.039530297929, 10120.946213520147, 10145.001996300834, 10169.20624149212, 10193.558319020374, 10218.057605792193, 10242.703485601794, 10267.495349039857, 10292.432593403773, 10317.514622609264, 10342.740847103363, 10368.110683778721, 10393.62355588924, 10419.278892966964, 10445.076130740252, 10471.014711053202, 10497.094081786261, 10523.313696778077, 10549.673015748493, 10576.171504222712, 10602.808633456623, 10629.5838803632, 10656.496727440044, 10683.546662697981, 10710.733179590721, 10738.055776945597, 10765.513958895264, 10793.107234810494, 10820.835119233865, 10848.69713181453, 10876.692797243853, 10904.821645192045, 10933.083210245719, 10961.477031846325, 10990.002654229535, 11018.659626365457, 11047.447501899745, 11076.365839095579, 11105.414200776424, 11134.592154269685, 11163.899271351123, 11193.335128190094, 11222.899305295561, 11252.591387462882, 11282.41096372137, 11312.357627282576, 11342.43097548932, 11372.630609765461, 11402.95613556634, 11433.407162329971, 11463.983303428868, 11494.684176122597, 11525.509401510972, 11556.458604487909, 11587.531413695919, 11618.727461481249, 11650.046383849647, 11681.48782042274, 11713.051414395008, 11744.736812491363, 11776.543664925313, 11808.471625357717, 11840.52035085607, 11872.689501854402, 11904.978742113659, 11937.387738682708, 11969.916161859801, 12002.563685154593, 12035.329985250712, 12068.214741968759, 12101.217638229893, 12134.338360019847, 12167.576596353458, 12200.93203923969, 12234.404383647066, 12267.993327469663, 12301.698571493449, 12335.519819363171, 12369.45677754961, 12403.509155317333, 12437.676664692814, 12471.959020433034, 12506.355939994462, 12540.86714350245, 12575.492353721042, 12610.231296023188, 12645.083698361319, 12680.049291238345, 12715.127807679002, 12750.3189832016, 12785.622555790109, 12821.038265866642, 12856.565856264288, 12892.205072200251, 12927.955661249438, 12963.817373318261, 12999.789960618884, 13035.873177643754, 13072.066781140453, 13108.370530086908, 13144.78418566686, 13181.307511245726, 13217.940272346701, 13254.682236627188, 13291.533173855543, 13328.492855888093, 13365.56105664646, 13402.73755209516, 13440.022120219486, 13477.414541003698, 13514.914596409428, 13552.522070354444, 13590.236748691554, 13628.058419187935, 13665.98687150456, 13704.021897175995, 13742.163289590411, 13780.410843969805, 13818.764357350556, 13857.223628564112, 13895.788458218012, 13934.458648677095, 13973.234004044927, 14012.114330145509, 14051.099434505144, 14090.189126334591, 14129.383216511385, 14168.68151756239, 14208.0838436466, 14247.59001053808, 14287.199835609179, 14326.913137813899, 14366.7297376715, 14406.649457250289, 14446.672120151592, 14486.797551493946, 14527.025577897453, 14567.356027468357, 14607.78872978375, 14648.32351587652, 14688.96021822046, 14729.698670715516, 14770.538708673277, 14811.480168802587, 14852.522889195327, 14893.666709312425, 14934.911469969942, 14976.257013325408, 15017.703182864236, 15059.249823386388, 15100.896780993107, 15142.643903073866, 15184.491038293454, 15226.438036579188, 15268.484749108324, 15310.631028295553, 15352.876727780693, 15395.221702416515, 15437.665808256674, 15480.208902543827, 15522.850843697863, 15565.591491304249, 15608.430706102585, 15651.36834997518, 15694.404285935874, 15737.538378118883, 15780.770491767858, 15824.100493225005, 15867.528249920371, 15911.053630361243, 15954.676504121637, 15998.396741831955, 16042.214215168719, 16086.128796844434, 16130.140360597592, 16174.248781182725, 16218.453934360654, 16262.755696888757, 16307.153946511433, 16351.648561950602, 16396.23942289635, 16440.926409997686, 16485.709404853347, 16530.588290002786, 16575.56294891719, 16620.63326599063, 16665.79912653131, 16711.060416752898, 16756.41702376598, 16801.86883556956, 16847.41574104271, 16893.057629936273, 16938.794392864656, 16984.625921297767, 17030.552107552943, 17076.57284478707, 17122.68802698871, 17168.897548970355, 17215.201306360763, 17261.599195597344, 17308.091113918694, 17354.676959357115, 17401.356630731327, 17448.13002763916, 17494.997050450376, 17541.95760029956, 17589.011579079095, 17636.15888943219, 17683.399434746003, 17730.733119144814, 17778.159847483308, 17825.679525339896, 17873.292059010124, 17920.997355500127, 17968.79532252022, 18016.685868478453, 18064.668902474317, 18112.744334292507, 18160.91207439669, 18209.17203392343, 18257.52412467609, 18305.96825911886, 18354.50435037081, 18403.13231220004, 18451.852059017838, 18500.663505872963, 18549.566568445938, 18598.56116304343, 18647.647206592672, 18696.824616635964, 18746.09331132517, 18795.453209416395, 18844.904230264572, 18894.446293818208, 18944.079320614142, 18993.803231772352, 19043.617948990857, 19093.523394540593, 19143.519491260446, 19193.60616255223, 19243.78333237582, 19294.050925244213, 19344.40886621876, 19394.857080904374, 19445.395495444798, 19496.02403651796, 19546.742631331294, 19597.5512076172, 19648.449693628496, 19699.438018133893, 19750.516110413628, 19801.683900254975, 19852.94131794795, 19904.288294280963, 19955.72476053657, 20007.25064848724, 20058.865890391146, 20110.570418988074, 20162.364167495252, 20214.24706960336, 20266.21905947244, 20318.280071727968, 20370.43004145689, 20422.668904203707, 20474.99659596664, 20527.413053193766, 20579.918212779263, 20632.51201205964, 20685.19438881001, 20737.965281240453, 20790.824627992326, 20843.772368134683, 20896.808441160683, 20949.93278698407, 21003.145345935678, 21056.446058759924, 21109.834866611418, 21163.31171105152, 21216.876534045, 21270.529277956688, 21324.269885548165, 21378.098299974514, 21432.014464781034, 21486.018323900076, 21540.109821647842, 21594.288902721226, 21648.555512194725, 21702.90959551731, 21757.35109850941, 21811.879967359833, 21866.49614862281, 21921.199589214986, 21975.990236412497, 22030.868037848053, 22085.83294150803, 22140.884895729603, 22196.02384919797, 22251.249750943447, 22306.562550338782, 22361.96219709631, 22417.44864126531, 22473.02183322923, 22528.681723703034, 22584.428263730562, 22640.261404681874, 22696.18109825066, 22752.187296451662, 22808.279951618097, 22864.459016399152, 22920.724443757445, 22977.076186966577, 23033.5141996086, 23090.038435571674, 23146.648849047564, 23203.345394529268, 23260.128026808678, 23316.99670097417, 23373.951372408334, 23430.991996785604, 23488.11853007001, 23545.330928512918, 23602.629148650733, 23660.013147302736, 23717.482881568816, 23775.038308827352, 23832.679386732987, 23890.406073214497, 23948.2183264727, 24006.11610497829, 24064.09936746981, 24122.16807295153, 24180.32218069141, 24238.561650219097, 24296.886441323866, 24355.296514052672, 24413.791828708097, 24472.37234584649, 24531.03802627593, 24589.78883105436, 24648.62472148766, 24707.54565912773, 24766.551605770674, 24825.642523454873, 24884.81837445919, 24944.07912130114, 25003.424726735047, 25062.855153750304, 25122.37036556953, 25181.970325646882, 25241.654997666246, 25301.424345539534, 25361.278333404975, 25421.21692562538, 25481.240086786514, 25541.347781695367, 25601.539975378513, 25661.81663308051, 25722.177720262196, 25782.62320259916, 25843.153045980045, 25903.767216505083, 25964.465680484405, 26025.248404436545, 26086.11535508691, 26147.06649936618, 26208.101804408885, 26269.221237551796, 26330.424766332508, 26391.712358487945, 26453.083981952863, 26514.539604858437, 26576.079195530783, 26637.702722489565, 26699.410154446534, 26761.201460304157, 26823.076609154225, 26885.03557027644, 26947.078313137084, 27009.204807387636, 27071.41502286341, 27133.70892958229, 27196.08649774332, 27258.54769772545, 27321.092500086193, 27383.720875560382, 27446.432795058852, 27509.22822966718, 27572.10715064444, 27635.069529421933, 27698.11533760199, 27761.24454695669, 27824.457129426664, 27887.753057119946, 27951.13230231066, 28014.594837437966, 28078.140635104766, 28141.76966807662, 28205.481909280545, 28269.277331803874, 28333.15590889315, 28397.11761395294, 28461.16242054478, 28525.290302386016, 28589.501233348707, 28653.795187458578, 28718.172138893875, 28782.63206198435, 28847.174931210142, 28911.800721200758, 28976.509406734025, 29041.300962735015, 29106.17536427506, 29171.13258657069, 29236.172604982658, 29301.295395014902, 29366.500932313553, 29431.789192665972, 29497.160151999724, 29562.61378638166, 29628.150072016884, 29693.768985247858, 29759.47050255342, 29825.254600547836, 29891.121255979902, 29957.070445731963, 30023.10214681904, 30089.2163363879, 30155.412991716126, 30221.692090211276, 30288.053609409933, 30354.49752697687, 30421.023820704137, 30487.632468510194, 30554.3234484391, 30621.09673865957, 30687.952317464205, 30754.890163268614, 30821.910254610575, 30889.012570149214, 30956.19708866418, 31023.463789054847, 31090.81265033946, 31158.243651654404, 31225.75677225332, 31293.351991506377, 31361.029288899485, 31428.788644033462, 31496.630036623348, 31564.553446497557, 31632.55885359717, 31700.646237975154, 31768.815579795617, 31837.0668593331, 31905.400056971772, 31973.815153204774, 32042.312128633443, 32110.890963966598, 32179.551640019865, 32248.294137714907, 32317.11843807878, 32386.0245222432, 32455.012371443856, 32524.081967019734, 32593.233290412412, 32662.466323165438, 32731.781046923585, 32801.17744343222, 32870.655494536695, 32940.215182181564, 33009.85648841008, 33079.57939536343, 33149.383885280185, 33219.26994049557, 33289.23754344092, 33359.28667664303, 33429.41732272347, 33499.62946439806, 33569.923084476206, 33640.29816586033, 33710.75469154518, 33781.29264461734, 33851.9120082546, 33922.6127657253, 33993.394900387844, 34064.258395690056, 34135.20323516866, 34206.229402448604, 34277.33688124261, 34348.525655350575, 34419.79570865894, 34491.14702514021, 34562.57958885245, 34634.093383938576, 34705.68839462598, 34777.36460522588, 34849.122000132884, 34920.96056382432, 34992.88028085986, 35064.88113588092, 35136.96311361009, 35209.12619885077, 35281.370376486484, 35353.69563148054, 35426.101948875366, 35498.58931379212, 35571.15771143019, 35643.807127066604, 35716.53754605565, 35789.348953828376, 35862.241335892024, 35935.21467782964, 36008.268965299554, 36081.40418403496, 36154.62031984335, 36227.91735860615, 36301.29528627823, 36374.7540888874, 36448.293752534, 36521.914263390456, 36595.615607700805, 36669.39777178025, 36743.26074201475, 36817.20450486054, 36891.229046843735, 36965.334354559855, 37039.520414673454, 37113.78721391765, 37188.13473909367, 37262.56297707054, 37337.07191478458, 37411.66153923898, 37486.33183750345, 37561.08279671379, 37635.914404071475, 37710.82664684322, 37785.81951236067, 37860.892988019936, 37936.047061281184, 38011.28171966832, 38086.59695076855, 38161.99274223198, 38237.46908177128, 38313.025957161284, 38388.66335623862, 38464.38126690128, 38540.17967710832, 38616.05857487952, 38692.017948294866, 38768.05778549436, 38844.17807467757, 38920.378804103246, 38996.65996208904, 39073.02153701108, 39149.46351730371, 39225.98589145901, 39302.58864802656, 39379.271775613095, 39456.03526288205, 39532.87909855335, 39609.80327140302, 39686.80777026285, 39763.892584020025, 39841.05770161689, 39918.30311205055, 39995.62880437254, 40073.03476768854, 40150.52099115806, 40228.08746399408, 40305.73417546272, 40383.46111488302, 40461.26827162653, 40539.155635117044, 40617.12319483029, 40695.1709402936, 40773.298861085685, 40851.50694683618, 40929.795187225514, 41008.16357198453, 41086.61209089416, 41165.14073378519, 41243.74949053797, 41322.438351082055, 41401.207305396005, 41480.05634350705, 41558.98545549083, 41637.994631471025, 41717.083861619256, 41796.25313615465, 41875.50244534359, 41954.8317794995, 42034.24112898255, 42113.73048419935, 42193.2998356027, 42272.94917369136, 42352.67848900975, 42432.487772147644, 42512.37701374001, 42592.34620446668, 42672.39533505212, 42752.52439626512, 42832.73337891864, 42913.022273869465, 42993.39107201798, 43073.83976430796, 43154.36834172628, 43234.97679530266, 43315.66511610946, 43396.433295261435, 43477.28132391545, 43558.20919327027, 43639.21689456632, 43720.30441908547, 43801.47175815075, 43882.71890312615, 43964.0458454164, 44045.45257646674, 44126.939087762585, 44208.505370829494, 44290.1514172328, 44371.87721857739, 44453.682766507554, 44535.5680527067, 44617.533068897195, 44699.577806840076, 44781.70225833488, 44863.90641521942, 44946.19026936955, 45028.553812699, 45110.997037159126, 45193.51993473867, 45276.12249746364, 45358.804717397026, 45441.56658663865, 45524.408097324864, 45607.32924162848, 45690.3300117585, 45773.41039995987, 45856.57039851336, 45939.80999973535, 46023.129195977606, 46106.52797962705, 46190.00634310568, 46273.5642788703, 46357.20177941228, 46440.91883725747, 46524.71544496597, 46608.59159513193, 46692.547280383325, 46776.582493381866, 46860.697226822755, 46944.891473434465, 47029.16522597864, 47113.518477249905, 47197.95122007558, 47282.46344731563, 47367.05515186242, 47451.72632664059, 47536.47696460677, 47621.30705874954, 47706.216602089204, 47791.20558767754, 47876.27400859777, 47961.42185796429, 48046.64912892255, 48131.95581464884, 48217.34190835015, 48302.80740326406, 48388.352292658434, 48473.9765698314, 48559.68022811115, 48645.463260855686, 48731.3256614528, 48817.2674233198, 48903.288539903464, 48989.389004679724, 49075.568811153666, 49161.827952859305, 49248.166423359435, 49334.58421624544, 49421.081325137246, 49507.65774368303, 49594.313465559215, 49681.04848447017, 49767.86279414818, 49854.75638835328, 49941.729260873006, 50028.781405522386, 50115.912816143755, 50203.123486606506, 50290.41341080711, 50377.78258266885, 50465.23099614176, 50552.75864520241, 50640.365523853834, 50728.05162612535, 50815.81694607241, 50903.66147777652, 50991.58521534506, 51079.588152911165, 51167.67028463355, 51255.83160469642, 51344.07210730936, 51432.39178670711, 51520.79063714954, 51609.26865292145, 51697.825828332476, 51786.462157716895, 51875.17763543361, 51963.972255865934, 52052.846013421455, 52141.79890253198, 52230.8309176534, 52319.94205326546, 52409.13230387177, 52498.4016639996, 52587.75012819982, 52677.17769104668, 52766.68434713779, 52856.27009109397, 52945.93491755908, 53035.67882119997, 53125.501796706325, 53215.40383879058, 53305.384942187724, 53395.445101655285, 53485.58431197318, 53575.80256794353, 53666.09986439068, 53756.47619616093, 53846.93155812262, 53937.46594516575, 54028.079352202156, 54118.771774165216, 54209.543206009745, 54300.39364271199, 54391.32307926948, 54482.33151070079, 54573.41893204566, 54664.58533836471, 54755.83072473943, 54847.15508627199, 54938.55841808523, 55030.04071532252, 55121.60197314758, 55213.242186744515, 55304.96135131762, 55396.759462091315, 55488.63651430997, 55580.59250323792, 55672.62742415933, 55764.74127237798, 55856.93404321737, 55949.20573202044, 56041.55633414959, 56133.985844986484, 56226.49425993207, 56319.0815744064, 56411.747783848514, 56504.49288371645, 56597.31686948706, 56690.21973665592, 56783.201480737305, 56876.26209726402, 56969.40158178737 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "94 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 93.60414317185844 ], "y": [ 8586.501033599194 ] }, { "name": "Total Drag: W=200kN", "type": "scatter", "x": [ 65.98288741926626, 66.25717882325098, 66.5314702272357, 66.80576163122042, 67.08005303520514, 67.35434443918986, 67.62863584317458, 67.9029272471593, 68.17721865114402, 68.45151005512872, 68.72580145911344, 69.00009286309816, 69.27438426708288, 69.5486756710676, 69.82296707505232, 70.09725847903704, 70.37154988302176, 70.64584128700648, 70.9201326909912, 71.19442409497591, 71.46871549896063, 71.74300690294535, 72.01729830693007, 72.29158971091479, 72.56588111489951, 72.84017251888423, 73.11446392286894, 73.38875532685365, 73.66304673083837, 73.9373381348231, 74.21162953880781, 74.48592094279253, 74.76021234677725, 75.03450375076197, 75.30879515474669, 75.58308655873141, 75.85737796271613, 76.13166936670085, 76.40596077068557, 76.68025217467029, 76.954543578655, 77.22883498263973, 77.50312638662444, 77.77741779060915, 78.05170919459387, 78.32600059857859, 78.60029200256331, 78.87458340654803, 79.14887481053275, 79.42316621451747, 79.69745761850218, 79.9717490224869, 80.24604042647162, 80.52033183045634, 80.79462323444106, 81.06891463842578, 81.3432060424105, 81.61749744639522, 81.89178885037994, 82.16608025436466, 82.44037165834936, 82.7146630623341, 82.9889544663188, 83.26324587030352, 83.53753727428824, 83.81182867827296, 84.08612008225768, 84.3604114862424, 84.63470289022712, 84.90899429421184, 85.18328569819656, 85.45757710218128, 85.731868506166, 86.00615991015071, 86.28045131413543, 86.55474271812014, 86.82903412210487, 87.10332552608958, 87.37761693007431, 87.65190833405902, 87.92619973804374, 88.20049114202845, 88.47478254601317, 88.7490739499979, 89.02336535398261, 89.29765675796733, 89.57194816195205, 89.84623956593677, 90.12053096992149, 90.39482237390621, 90.66911377789093, 90.94340518187565, 91.21769658586035, 91.49198798984509, 91.76627939382979, 92.04057079781452, 92.31486220179923, 92.58915360578395, 92.86344500976867, 93.13773641375339, 93.4120278177381, 93.68631922172283, 93.96061062570755, 94.23490202969226, 94.50919343367698, 94.7834848376617, 95.05777624164642, 95.33206764563114, 95.60635904961586, 95.88065045360057, 96.1549418575853, 96.42923326157, 96.70352466555474, 96.97781606953944, 97.25210747352416, 97.52639887750888, 97.8006902814936, 98.07498168547832, 98.34927308946304, 98.62356449344776, 98.89785589743248, 99.1721473014172, 99.44643870540192, 99.72073010938664, 99.99502151337134, 100.26931291735607, 100.54360432134078, 100.81789572532551, 101.09218712931022, 101.36647853329495, 101.64076993727966, 101.91506134126439, 102.1893527452491, 102.46364414923382, 102.73793555321853, 103.01222695720325, 103.28651836118797, 103.56080976517269, 103.83510116915741, 104.10939257314213, 104.38368397712685, 104.65797538111156, 104.93226678509629, 105.206558189081, 105.48084959306573, 105.75514099705043, 106.02943240103517, 106.30372380501987, 106.5780152090046, 106.85230661298931, 107.12659801697403, 107.40088942095875, 107.67518082494347, 107.94947222892819, 108.2237636329129, 108.49805503689763, 108.77234644088234, 109.04663784486706, 109.32092924885177, 109.5952206528365, 109.86951205682121, 110.14380346080594, 110.41809486479065, 110.69238626877538, 110.96667767276008, 111.24096907674482, 111.51526048072952, 111.78955188471424, 112.06384328869896, 112.33813469268368, 112.6124260966684, 112.88671750065312, 113.16100890463784, 113.43530030862256, 113.70959171260728, 113.98388311659198, 114.25817452057672, 114.53246592456142, 114.80675732854615, 115.08104873253086, 115.3553401365156, 115.6296315405003, 115.90392294448503, 116.17821434846974, 116.45250575245446, 116.72679715643918, 117.0010885604239, 117.27537996440861, 117.54967136839333, 117.82396277237805, 118.09825417636277, 118.37254558034749, 118.64683698433221, 118.92112838831693, 119.19541979230164, 119.46971119628637, 119.74400260027107, 120.01829400425581, 120.29258540824051, 120.56687681222525, 120.84116821620995, 121.11545962019467, 121.38975102417939, 121.66404242816411, 121.93833383214883, 122.21262523613355, 122.48691664011827, 122.76120804410299, 123.0354994480877, 123.30979085207242, 123.58408225605714, 123.85837366004185, 124.13266506402658, 124.40695646801129, 124.68124787199602, 124.95553927598073, 125.22983067996546, 125.50412208395016, 125.77841348793488, 126.0527048919196, 126.32699629590432, 126.60128769988904, 126.87557910387376, 127.14987050785848, 127.4241619118432, 127.69845331582792, 127.97274471981264, 128.24703612379736, 128.52132752778206, 128.7956189317668, 129.0699103357515, 129.34420173973623, 129.61849314372094, 129.89278454770567, 130.16707595169038, 130.44136735567508, 130.71565875965982, 130.98995016364455, 131.26424156762926, 131.53853297161396, 131.8128243755987, 132.08711577958343, 132.36140718356813, 132.63569858755284, 132.90998999153757, 133.1842813955223, 133.458572799507, 133.73286420349172, 134.00715560747642, 134.28144701146115, 134.5557384154459, 134.8300298194306, 135.1043212234153, 135.37861262740003, 135.65290403138476, 135.92719543536947, 136.20148683935417, 136.4757782433389, 136.75006964732364, 137.02436105130835, 137.29865245529305, 137.57294385927779, 137.84723526326252, 138.12152666724722, 138.39581807123193, 138.67010947521663, 138.94440087920137, 139.2186922831861, 139.4929836871708, 139.7672750911555, 140.04156649514024, 140.31585789912498, 140.59014930310968, 140.8644407070944, 141.13873211107912, 141.41302351506386, 141.68731491904856, 141.96160632303327, 142.235897727018, 142.51018913100273, 142.78448053498744, 143.05877193897214, 143.33306334295685, 143.60735474694158, 143.88164615092631, 144.15593755491102, 144.43022895889573, 144.70452036288046, 144.9788117668652, 145.2531031708499, 145.5273945748346, 145.80168597881934, 146.07597738280407, 146.35026878678877, 146.62456019077348, 146.8988515947582, 147.17314299874295, 147.44743440272765, 147.72172580671236, 147.99601721069706, 148.2703086146818, 148.54460001866653, 148.81889142265123, 149.09318282663594, 149.36747423062067, 149.6417656346054, 149.9160570385901, 150.19034844257482, 150.46463984655955, 150.73893125054428, 151.013222654529, 151.2875140585137, 151.56180546249843, 151.83609686648316, 152.11038827046787, 152.38467967445257, 152.65897107843728, 152.933262482422, 153.20755388640674, 153.48184529039145, 153.75613669437615, 154.0304280983609, 154.30471950234562, 154.57901090633032, 154.85330231031503, 155.12759371429976, 155.4018851182845, 155.6761765222692, 155.9504679262539, 156.22475933023864, 156.49905073422337, 156.77334213820808, 157.04763354219278, 157.3219249461775, 157.59621635016222, 157.87050775414696, 158.14479915813166, 158.41909056211637, 158.6933819661011, 158.96767337008583, 159.24196477407054, 159.51625617805524, 159.79054758203998, 160.0648389860247, 160.33913039000942, 160.61342179399412, 160.88771319797885, 161.1620046019636, 161.4362960059483, 161.710587409933, 161.9848788139177, 162.25917021790244, 162.53346162188717, 162.80775302587188, 163.08204442985658, 163.3563358338413, 163.63062723782605, 163.90491864181075, 164.17921004579546, 164.4535014497802, 164.72779285376492, 165.00208425774963, 165.27637566173433, 165.55066706571907, 165.8249584697038, 166.0992498736885, 166.3735412776732, 166.64783268165792, 166.92212408564265, 167.19641548962738, 167.4707068936121, 167.7449982975968, 168.01928970158153, 168.29358110556626, 168.56787250955097, 168.84216391353567, 169.1164553175204, 169.39074672150514, 169.66503812548984, 169.93932952947455, 170.21362093345928, 170.48791233744402, 170.76220374142872, 171.03649514541343, 171.31078654939816, 171.58507795338286, 171.8593693573676, 172.1336607613523, 172.407952165337, 172.68224356932174, 172.95653497330647, 173.23082637729118, 173.50511778127589, 173.77940918526062, 174.05370058924535, 174.32799199323006, 174.60228339721476, 174.8765748011995, 175.15086620518423, 175.42515760916893, 175.69944901315364, 175.97374041713837, 176.24803182112308, 176.5223232251078, 176.79661462909252, 177.07090603307722, 177.34519743706196, 177.6194888410467, 177.8937802450314, 178.1680716490161, 178.44236305300083, 178.71665445698557, 178.99094586097027, 179.26523726495498, 179.5395286689397, 179.81382007292444, 180.08811147690915, 180.36240288089385, 180.6366942848786, 180.9109856888633, 181.18527709284803, 181.45956849683273, 181.73385990081744, 182.00815130480217, 182.2824427087869, 182.5567341127716, 182.8310255167563, 183.10531692074105, 183.37960832472578, 183.65389972871048, 183.9281911326952, 184.20248253667992, 184.47677394066466, 184.75106534464936, 185.02535674863407, 185.2996481526188, 185.5739395566035, 185.84823096058824, 186.12252236457294, 186.39681376855765, 186.67110517254238, 186.94539657652712, 187.21968798051182, 187.49397938449653, 187.76827078848126, 188.042562192466, 188.3168535964507, 188.5911450004354, 188.86543640442014, 189.13972780840487, 189.41401921238958, 189.68831061637428, 189.96260202035901, 190.23689342434372, 190.51118482832845, 190.78547623231316, 191.05976763629786, 191.3340590402826, 191.60835044426733, 191.88264184825204, 192.15693325223674, 192.43122465622147, 192.7055160602062, 192.9798074641909, 193.25409886817562, 193.52839027216035, 193.80268167614508, 194.0769730801298, 194.3512644841145, 194.62555588809923, 194.89984729208393, 195.17413869606867, 195.44843010005337, 195.7227215040381, 195.9970129080228, 196.27130431200754, 196.54559571599225, 196.81988711997698, 197.0941785239617, 197.3684699279464, 197.64276133193113, 197.91705273591583, 198.19134413990056, 198.46563554388527, 198.73992694787, 199.0142183518547, 199.28850975583944, 199.56280115982415, 199.83709256380888, 200.11138396779359, 200.38567537177832, 200.65996677576302, 200.93425817974776, 201.20854958373246, 201.4828409877172, 201.7571323917019, 202.0314237956866, 202.30571519967134, 202.58000660365605, 202.85429800764078, 203.12858941162548, 203.40288081561022, 203.67717221959492, 203.95146362357966, 204.22575502756436, 204.5000464315491, 204.7743378355338, 205.04862923951853, 205.32292064350324, 205.59721204748797, 205.87150345147268, 206.1457948554574, 206.42008625944212, 206.69437766342682, 206.96866906741155, 207.24296047139626, 207.517251875381, 207.7915432793657, 208.06583468335043, 208.34012608733514, 208.61441749131987, 208.88870889530457, 209.1630002992893, 209.437291703274, 209.71158310725875, 209.98587451124345, 210.26016591522819, 210.5344573192129, 210.80874872319762, 211.08304012718233, 211.35733153116703, 211.63162293515177, 211.90591433913647, 212.1802057431212, 212.4544971471059, 212.72878855109064, 213.00307995507535, 213.27737135906008, 213.5516627630448, 213.82595416702952, 214.10024557101423, 214.37453697499896, 214.64882837898367, 214.9231197829684, 215.1974111869531, 215.47170259093784, 215.74599399492254, 216.02028539890725, 216.29457680289198, 216.5688682068767, 216.84315961086142, 217.11745101484613, 217.39174241883086, 217.66603382281556, 217.9403252268003, 218.214616630785, 218.48890803476974, 218.76319943875444, 219.03749084273917, 219.31178224672388, 219.5860736507086, 219.86036505469332, 220.13465645867805, 220.40894786266276, 220.68323926664746, 220.9575306706322, 221.2318220746169, 221.50611347860163, 221.78040488258634, 222.05469628657107, 222.32898769055578, 222.6032790945405, 222.87757049852522, 223.15186190250995, 223.42615330649465, 223.7004447104794, 223.9747361144641, 224.24902751844883, 224.52331892243353, 224.79761032641827, 225.07190173040297, 225.34619313438768, 225.6204845383724, 225.89477594235711, 226.16906734634185, 226.44335875032655, 226.7176501543113, 226.991941558296, 227.26623296228072, 227.54052436626543, 227.81481577025016, 228.08910717423487, 228.3633985782196, 228.6376899822043, 228.91198138618904, 229.18627279017375, 229.46056419415848, 229.73485559814318, 230.0091470021279, 230.28343840611262, 230.55772981009733, 230.83202121408206, 231.10631261806677, 231.3806040220515, 231.6548954260362, 231.92918683002094, 232.20347823400564, 232.47776963799038, 232.75206104197508, 233.02635244595982, 233.30064384994452, 233.57493525392925, 233.84922665791396, 234.1235180618987, 234.3978094658834, 234.6721008698681, 234.94639227385284, 235.22068367783754, 235.49497508182228, 235.76926648580698, 236.0435578897917, 236.31784929377642, 236.59214069776115, 236.86643210174586, 237.1407235057306, 237.4150149097153, 237.68930631370003, 237.96359771768473, 238.23788912166947, 238.51218052565417, 238.7864719296389, 239.0607633336236, 239.33505473760832, 239.60934614159305, 239.88363754557776, 240.1579289495625, 240.4322203535472, 240.70651175753193, 240.98080316151663, 241.25509456550137, 241.52938596948607, 241.8036773734708, 242.0779687774555, 242.35226018144024, 242.62655158542495, 242.90084298940968, 243.1751343933944, 243.44942579737912, 243.72371720136383, 243.99800860534853, 244.27230000933326, 244.54659141331797, 244.8208828173027, 245.0951742212874, 245.36946562527214, 245.64375702925685, 245.91804843324158, 246.19233983722629, 246.46663124121102, 246.74092264519572, 247.01521404918046, 247.28950545316516, 247.5637968571499, 247.8380882611346, 248.11237966511933, 248.38667106910404, 248.66096247308874, 248.93525387707348, 249.20954528105818, 249.48383668504292, 249.75812808902762, 250.03241949301236, 250.30671089699706, 250.5810023009818, 250.8552937049665, 251.12958510895123, 251.40387651293594, 251.67816791692067, 251.95245932090538, 252.2267507248901, 252.50104212887481, 252.77533353285955, 253.04962493684425, 253.32391634082896, 253.5982077448137, 253.8724991487984, 254.14679055278313, 254.42108195676784, 254.69537336075257, 254.96966476473727, 255.243956168722, 255.5182475727067, 255.79253897669145, 256.06683038067615, 256.3411217846609, 256.61541318864556, 256.8897045926303, 257.16399599661503, 257.43828740059973, 257.7125788045845, 257.98687020856914, 258.2611616125539, 258.5354530165386, 258.8097444205233, 259.0840358245081, 259.3583272284928, 259.6326186324775, 259.90691003646225, 260.1812014404469, 260.45549284443166, 260.72978424841637, 261.00407565240107, 261.27836705638583, 261.55265846037054, 261.82694986435524, 262.10124126834, 262.37553267232465, 262.6498240763094, 262.9241154802941, 263.1984068842788, 263.4726982882636, 263.74698969224823, 264.021281096233, 264.2955725002177, 264.5698639042024, 264.84415530818717, 265.1184467121719, 265.3927381161566, 265.66702952014134, 265.941320924126, 266.21561232811075, 266.48990373209546, 266.76419513608016, 267.0384865400649, 267.31277794404957, 267.58706934803433, 267.86136075201904, 268.13565215600374, 268.4099435599885, 268.6842349639732, 268.9585263679579, 269.2328177719427, 269.5071091759273, 269.7814005799121, 270.0556919838968, 270.3299833878815, 270.60427479186626, 270.87856619585096, 271.15285759983567, 271.42714900382043, 271.7014404078051, 271.97573181178984, 272.25002321577455, 272.52431461975925, 272.798606023744, 273.07289742772866, 273.3471888317134, 273.62148023569813, 273.89577163968283, 274.1700630436676, 274.4443544476523, 274.718645851637, 274.99293725562177, 275.2672286596064, 275.5415200635912, 275.8158114675759, 276.0901028715606, 276.36439427554535, 276.63868567953006, 276.91297708351476, 277.18726848749947, 277.46155989148417, 277.73585129546893, 278.01014269945364, 278.28443410343834, 278.5587255074231, 278.83301691140775, 279.1073083153925, 279.3815997193772, 279.6558911233619, 279.9301825273467, 280.2044739313314, 280.4787653353161, 280.75305673930086, 281.0273481432855, 281.30163954727027, 281.575930951255, 281.8502223552397, 282.12451375922444, 282.3988051632091, 282.67309656719385, 282.94738797117856, 283.22167937516326, 283.495970779148, 283.77026218313273, 284.04455358711743, 284.3188449911022, 284.59313639508684, 284.8674277990716, 285.1417192030563, 285.416010607041, 285.6903020110258, 285.9645934150105, 286.2388848189952, 286.5131762229799, 286.7874676269646, 287.06175903094936, 287.33605043493407, 287.61034183891877, 287.88463324290353, 288.1589246468882, 288.43321605087294, 288.70750745485765, 288.98179885884235, 289.2560902628271, 289.5303816668118, 289.8046730707965, 290.0789644747813, 290.35325587876594, 290.6275472827507, 290.9018386867354, 291.1761300907201, 291.45042149470487, 291.7247128986895, 291.9990043026743, 292.273295706659, 292.5475871106437, 292.82187851462845, 293.09616991861316, 293.37046132259786, 293.6447527265826, 293.9190441305673, 294.19333553455203, 294.46762693853674, 294.74191834252144, 295.0162097465062, 295.2905011504909, 295.5647925544756, 295.8390839584603, 296.113375362445, 296.3876667664298, 296.6619581704145, 296.9362495743992, 297.21054097838396, 297.4848323823686, 297.75912378635337, 298.0334151903381, 298.3077065943228, 298.58199799830754, 298.85628940229225, 299.13058080627695, 299.4048722102617, 299.67916361424636, 299.9534550182311, 300.22774642221583, 300.50203782620054, 300.7763292301853, 301.05062063416995, 301.3249120381547, 301.5992034421394, 301.8734948461241, 302.1477862501089, 302.4220776540936, 302.6963690580783, 302.97066046206305, 303.2449518660477, 303.51924327003246, 303.79353467401717, 304.0678260780019, 304.34211748198663, 304.61640888597134, 304.89070028995604, 305.16499169394075, 305.43928309792545, 305.7135745019102, 305.9878659058949, 306.2621573098796, 306.5364487138644, 306.81074011784904, 307.0850315218338, 307.3593229258185, 307.6336143298032, 307.90790573378797, 308.1821971377727, 308.4564885417574, 308.73077994574214, 309.0050713497268, 309.27936275371155, 309.55365415769626, 309.82794556168096, 310.1022369656657, 310.3765283696504, 310.65081977363513, 310.92511117761984, 311.19940258160455, 311.4736939855893, 311.747985389574, 312.0222767935587, 312.2965681975435, 312.5708596015281, 312.8451510055129, 313.1194424094976, 313.3937338134823, 313.66802521746706, 313.94231662145177, 314.21660802543647, 314.4908994294212, 314.7651908334059, 315.03948223739064, 315.31377364137535, 315.58806504536005, 315.8623564493448, 316.13664785332946, 316.4109392573142, 316.68523066129893, 316.95952206528364, 317.2338134692684, 317.5081048732531, 317.7823962772378, 318.05668768122257, 318.3309790852072, 318.605270489192, 318.8795618931767, 319.1538532971614, 319.42814470114615, 319.7024361051308, 319.97672750911556, 320.25101891310027, 320.525310317085, 320.79960172106973, 321.07389312505444, 321.34818452903914, 321.6224759330239, 321.89676733700855, 322.1710587409933, 322.445350144978, 322.7196415489627, 322.9939329529475, 323.2682243569322, 323.5425157609169, 323.8168071649016, 324.0910985688863, 324.36538997287107, 324.6396813768558, 324.9139727808405, 325.1882641848252, 325.46255558880995, 325.73684699279465, 326.01113839677936, 326.28542980076406, 326.5597212047488, 326.83401260873353, 327.10830401271824, 327.38259541670294, 327.6568868206877, 327.9311782246724, 328.2054696286571, 328.4797610326418, 328.7540524366265, 329.0283438406113, 329.302635244596, 329.5769266485807, 329.8512180525654, 330.12550945655016, 330.39980086053487, 330.6740922645196, 330.9483836685043, 331.22267507248904, 331.49696647647374, 331.77125788045845, 332.04554928444315, 332.3198406884279, 332.5941320924126, 332.8684234963973, 333.14271490038203, 333.41700630436674, 333.6912977083515, 333.9655891123362, 334.2398805163209, 334.5141719203056, 334.7884633242904, 335.0627547282751, 335.3370461322598, 335.6113375362445, 335.88562894022925, 336.15992034421396, 336.43421174819866, 336.70850315218337, 336.98279455616813, 337.25708596015284, 337.53137736413754, 337.80566876812225, 338.07996017210695, 338.3542515760917, 338.6285429800764, 338.9028343840611, 339.1771257880458, 339.4514171920306, 339.7257085960153, 340 ], "y": [ 15633.333333333338, 15539.563555763476, 15447.244251665335, 15356.35285697884, 15266.86726802279, 15178.765830268858, 15092.027327433609, 15006.630970878407, 14922.556389307178, 14839.783618752594, 14758.293092841457, 14678.065633330429, 14599.08244090356, 14521.325086223333, 14444.775501227366, 14369.41597066298, 14295.229123852336, 14222.197926680914, 14150.305673802499, 14079.535981053943, 14009.872778073362, 13941.300301115478, 13873.803086058155, 13807.365961594329, 13741.974042603732, 13677.612723699, 13614.267672940949, 13551.92482571795, 13490.5703787846, 13430.190784454822, 13370.772744945014, 13312.303206862673, 13254.769355836359, 13198.158611282786, 13142.458621307112, 13087.657257732515, 13033.74261125536, 12980.702986722343, 12928.526898526081, 12877.20306611581, 12826.720409619875, 12777.068045576872, 12728.235282772344, 12680.211618178084, 12632.986732991147, 12586.550488769797, 12540.892923663658, 12496.004248735506, 12451.874844372109, 12408.495256781698, 12365.856194575661, 12323.94852543217, 12282.763272839522, 12242.29161291697, 12202.52487131099, 12163.454520164947, 12125.07217516014, 12087.369592626372, 12050.338666720116, 12013.97142666854, 11978.26003407761, 11943.196780302533, 11908.77408387901, 11874.984488013564, 11841.820658131473, 11809.275379480816, 11777.341554791083, 11746.012201985039, 11715.28045194238, 11685.139546313902, 11655.582835384834, 11626.603775986121, 11598.195929452397, 11570.352959625483, 11543.068630902233, 11516.336806325628, 11490.151445717987, 11464.50660385532, 11439.396428681652, 11414.815159562493, 11390.757125576303, 11367.216743843159, 11344.188517889586, 11321.667036048753, 11299.64696989508, 11278.123072712471, 11257.090177995347, 11236.543197981628, 11216.477122216942, 11196.8870161493, 11177.768019753446, 11159.115346184248, 11140.92428045836, 11123.19017816352, 11105.90846419484, 11089.07463151735, 11072.684239954318, 11056.732915000619, 11041.216346660596, 11026.130288309869, 11011.47055558049, 10997.233025268913, 10983.413634266246, 10970.008378510269, 10957.013311958712, 10944.424545583308, 10932.238246384124, 10920.450636423711, 10909.05799188065, 10898.056642121988, 10887.4429687942, 10877.213404932201, 10867.36443408605, 10857.89258946489, 10848.79445309778, 10840.066655011045, 10831.705872421702, 10823.708828946708, 10816.072293827598, 10808.793081170188, 10801.86804919905, 10795.294099526367, 10789.0681764349, 10783.187266174751, 10777.648396273593, 10772.448634860099, 10767.585090000275, 10763.054909046412, 10758.85527799838, 10754.983420877026, 10751.436599109364, 10748.212110925346, 10745.307290765966, 10742.719508702407, 10740.44616986606, 10738.48471388914, 10736.832614355682, 10735.487378262711, 10734.446545491359, 10733.707688287723, 10733.268410753262, 10733.126348344518, 10733.279167382007, 10733.724564568029, 10734.460266513262, 10735.484029271938, 10736.793637885432, 10738.38690593405, 10740.26167509694, 10742.41581471984, 10744.847221390606, 10747.553818522301, 10750.533555943708, 10753.78440949712, 10757.304380643267, 10761.0914960732, 10765.143807327053, 10769.459390419463, 10774.036345471613, 10778.872796349675, 10783.966890309574, 10789.316797647938, 10794.920711359122, 10800.77684679815, 10806.883441349495, 10813.238754101578, 10819.84106552684, 10826.688677167334, 10833.779911325659, 10841.113110761215, 10848.686638391582, 10856.498876999016, 10864.548228941887, 10872.833115871013, 10881.351978450775, 10890.103276084912, 10899.085486646944, 10908.297106215072, 10917.73664881155, 10927.402646146358, 10937.293647365168, 10947.408218801475, 10957.744943732829, 10968.30242214109, 10979.079270476654, 10990.07412142651, 11001.285623686137, 11012.712441735117, 11024.3532556164, 11036.206760719177, 11048.271667565272, 11060.546701598994, 11073.030602980389, 11085.722126381821, 11098.620040787828, 11111.723129298203, 11125.030188934203, 11138.540030447879, 11152.251478134434, 11166.163369647571, 11180.27455581776, 11194.58390047341, 11209.090280264823, 11223.792584490973, 11238.689714928969, 11253.78058566621, 11269.064122935182, 11284.539264950803, 11300.204961750336, 11316.060175035775, 11332.103878018675, 11348.335055267398, 11364.752702556709, 11381.35582671969, 11398.143445501937, 11415.11458741799, 11432.268291609975, 11449.603607708375, 11467.119595694972, 11484.815325767826, 11502.689878208332, 11520.742343250287, 11538.971820950934, 11557.377421063939, 11575.958262914311, 11594.71347527517, 11613.642196246368, 11632.743573134943, 11652.016762337338, 11671.46092922338, 11691.075248021983, 11710.858901708558, 11730.811081894055, 11750.930988715689, 11771.217830729238, 11791.670824802946, 11812.289196012984, 11833.072177540413, 11854.019010569684, 11875.128944188633, 11896.401235289864, 11917.835148473632, 11939.4299559521, 11961.184937454991, 11983.099380136598, 12005.17257848413, 12027.403834227378, 12049.79245624969, 12072.33776050019, 12095.039069907289, 12117.895714293389, 12140.907030290822, 12164.072361259, 12187.391057202702, 12210.862474691534, 12234.48597678053, 12258.260932931864, 12282.186718937674, 12306.26271684394, 12330.488314875463, 12354.862907361869, 12379.385894664658, 12404.056683105253, 12428.874684894055, 12453.8393180605, 12478.950006384042, 12504.206179326142, 12529.60727196314, 12555.152724920083, 12580.841984305462, 12606.67450164683, 12632.649733827297, 12658.767143022906, 12685.02619664086, 12711.426367258575, 12737.96713256357, 12764.647975294167, 12791.468383180998, 12818.427848889303, 12845.52586996198, 12872.761948763435, 12900.135592424162, 12927.646312786079, 12955.293626348575, 12983.077054215295, 13010.996122041615, 13039.050359982848, 13067.239302643095, 13095.562489024795, 13124.019462478936, 13152.60977065594, 13181.332965457157, 13210.188602987037, 13239.176243505883, 13268.295451383281, 13297.545795052085, 13326.926846963022, 13356.4381835399, 13386.079385135372, 13415.850035987298, 13445.74972417566, 13475.778041580017, 13505.934583837541, 13536.218950301587, 13566.630744000764, 13597.169571598555, 13627.835043353462, 13658.626773079639, 13689.544378108054, 13720.587479248094, 13751.75570074972, 13783.048670266071, 13814.466018816533, 13846.007380750292, 13877.672393710327, 13909.460698597897, 13941.371939537423, 13973.405763841842, 14005.561821978381, 14037.83976753477, 14070.239257185875, 14102.759950660738, 14135.401510710031, 14168.163603073906, 14201.045896450272, 14234.048062463433, 14267.169775633114, 14300.410713343888, 14333.77055581498, 14367.248986070419, 14400.845689909569, 14434.560355878011, 14468.392675238822, 14502.342341944135, 14536.409052607116, 14570.592506474204, 14604.892405397775, 14639.30845380907, 14673.84035869149, 14708.487829554168, 14743.250578405914, 14778.128319729452, 14813.12077045594, 14848.227649939827, 14883.448679934, 14918.783584565239, 14954.23209030995, 14989.793925970178, 15025.468822649927, 15061.25651373177, 15097.156734853692, 15133.169223886252, 15169.29372090998, 15205.529968193066, 15241.87771016931, 15278.33669341631, 15314.906666633911, 15351.587380622937, 15388.378588264131, 15425.28004449737, 15462.291506301091, 15499.412732671983, 15536.643484604927, 15573.983525073127, 15611.432619008487, 15648.990533282236, 15686.657036685754, 15724.431899911626, 15762.314895534913, 15800.305797994633, 15838.404383575458, 15876.610430389632, 15914.923718359081, 15953.344029197717, 15991.871146393965, 16030.5048551935, 16069.244942582129, 16108.091197268914, 16147.043409669466, 16186.101371889436, 16225.264877708192, 16264.533722562659, 16303.90770353136, 16343.386619318655, 16382.970270239119, 16422.658458202084, 16462.450986696444, 16502.34766077549, 16542.34828704204, 16582.45267363369, 16622.660630208156, 16662.971967928916, 16703.386499450906, 16743.90403890641, 16784.524401891096, 16825.247405450224, 16866.072868064988, 16907.000609639017, 16948.030451485007, 16989.16221631152, 17030.395728209936, 17071.7308126415, 17113.167296424563, 17154.705007721932, 17196.343776028356, 17238.08343215817, 17279.92380823307, 17321.864737669966, 17363.906055169045, 17406.047596701923, 17448.28919949992, 17490.63070204247, 17533.071944045638, 17575.612766450813, 17618.25301141347, 17660.992522292036, 17703.83114363693, 17746.768721179717, 17789.80510182232, 17832.940133626384, 17876.173665802777, 17919.505548701134, 17962.935633799603, 18006.463773694613, 18050.089822090773, 18093.813633790927, 18137.63506468626, 18181.553971746518, 18225.57021301034, 18269.68364757567, 18313.894135590337, 18358.20153824261, 18402.605717751983, 18447.106537359956, 18491.70386132098, 18536.39755489345, 18581.187484330807, 18626.073516872748, 18671.055520736492, 18716.13336510818, 18761.30692013432, 18806.576056913327, 18851.940647487198, 18897.40056483321, 18942.95568285573, 18988.60587637812, 19034.35102113469, 19080.19099376278, 19126.125671794878, 19172.154933650843, 19218.278658630195, 19264.496726904505, 19310.809019509827, 19357.215418339227, 19403.715806135406, 19450.31006648334, 19496.998083803068, 19543.77974334249, 19590.654931170262, 19637.623534168768, 19684.685440027155, 19731.840537234468, 19779.088715072747, 19826.429863610334, 19873.86387369518, 19921.39063694819, 19969.010045756673, 20016.721993267856, 20064.526373382454, 20112.4230807483, 20160.412010754026, 20208.493059522858, 20256.666123906376, 20304.931101478465, 20353.287890529195, 20401.736390058853, 20450.276499771986, 20498.90812007153, 20547.631152052953, 20596.44549749852, 20645.35105887157, 20694.347739310826, 20743.435442624832, 20792.614073286375, 20841.883536427, 20891.243737831566, 20940.69458393286, 20990.235981806218, 21039.867839164308, 21089.590064351825, 21139.402566340344, 21189.305254723164, 21239.29803971024, 21289.380832123094, 21339.553543389888, 21389.81608554043, 21440.168371201304, 21490.610313591, 21541.141826515122, 21591.76282436162, 21642.473222096072, 21693.272935257035, 21744.16187995138, 21795.13997284976, 21846.207131182015, 21897.363272732717, 21948.608315836693, 21999.942179374622, 22051.364782768655, 22102.876045978086, 22154.47588949506, 22206.16423434034, 22257.941002059048, 22309.80611471655, 22361.759494894297, 22413.801065685704, 22465.93075069214, 22518.148474018868, 22570.454160271092, 22622.84773454998, 22675.32912244879, 22727.89825004895, 22780.55504391628, 22833.299431097115, 22886.131339114607, 22939.050695964936, 22992.05743011365, 23045.151470491965, 23098.332746493168, 23151.601187968965, 23204.95672522598, 23258.399289022167, 23311.928810563317, 23365.54522149962, 23419.248453922162, 23473.038440359596, 23526.915113774685, 23580.87840756102, 23634.928255539646, 23689.06459195582, 23743.287351475723, 23797.59646918324, 23851.99188057676, 23906.473521566015, 23961.041328468906, 24015.695238008426, 24070.435187309526, 24125.26111389611, 24180.172955687965, 24235.170650997738, 24290.25413852802, 24345.42335736831, 24400.678246992167, 24456.018747254242, 24511.444798387456, 24566.95634100009, 24622.553316073037, 24678.235664956916, 24734.00332936937, 24789.85625139225, 24845.794373468954, 24901.81763840164, 24957.92598934863, 25014.11936982169, 25070.39772368343, 25126.760995144683, 25183.209128761904, 25239.742069434637, 25296.35976240291, 25353.062153244795, 25409.849187873824, 25466.72081253659, 25523.676973810205, 25580.717618599952, 25637.842694136783, 25695.052147975002, 25752.34592798983, 25809.7239823751, 25867.186259640876, 25924.732708611176, 25982.363278421657, 26040.077918517363, 26097.876578650437, 26155.75920887791, 26213.725759559475, 26271.776181355293, 26329.910425223814, 26388.128442419587, 26446.430184491186, 26504.815603278996, 26563.284650913178, 26621.837279811534, 26680.47344267749, 26739.193092497946, 26797.996182541345, 26856.882666355592, 26915.85249776607, 26974.90563087362, 27034.04202005264, 27093.261619949062, 27152.564385478447, 27211.950271824076, 27271.419234435, 27330.971229024213, 27390.606211566712, 27450.3241382977, 27510.12496571068, 27570.008650555705, 27629.975149837475, 27690.024420813632, 27750.15642099289, 27810.37110813334, 27870.66844024064, 27931.048375566315, 27991.510872606006, 28052.055890097785, 28112.683387020432, 28173.39332259175, 28234.185656266935, 28295.06034773687, 28356.017356926517, 28417.05664399327, 28478.178169325347, 28539.381893540183, 28600.667777482864, 28662.035782224484, 28723.485869060674, 28785.01799950996, 28846.632135312302, 28908.3282384275, 28970.106271033736, 29031.966195526016, 29093.907974514746, 29155.931570824185, 29218.03694749103, 29280.224067762934, 29342.492895097064, 29404.8433931587, 29467.275525819758, 29529.789257157438, 29592.384551452793, 29655.061373189354, 29717.81968705174, 29780.65945792432, 29843.58065088984, 29906.583231228076, 29969.66716441451, 30032.83241611901, 30096.07895220451, 30159.40673872571, 30222.81574192781, 30286.305928245176, 30349.877264300114, 30413.52971690159, 30477.263253043988, 30541.077839905858, 30604.97344484869, 30668.950035415695, 30733.007579330588, 30797.146044496374, 30861.365398994185, 30925.665611082048, 30990.046649193773, 31054.508481937723, 31119.05107809569, 31183.67440662174, 31248.378436641084, 31313.163137448937, 31378.028478509375, 31442.974429454272, 31508.00096008214, 31573.10804035709, 31638.29564040767, 31703.563730525875, 31768.912281165984, 31834.341262943584, 31899.850646634433, 31965.44040317348, 32031.11050365379, 32096.860919325518, 32162.691621594888, 32228.602582023184, 32294.593772325727, 32360.665164370894, 32426.816730179115, 32493.04844192187, 32559.360271920767, 32625.752192646483, 32692.224176717897, 32758.776196901068, 32825.40822610831, 32892.12023739725, 32958.91220396989, 33025.78409917169, 33092.73589649063, 33159.76756955627, 33226.879092138974, 33294.07043814883, 33361.34158163485, 33428.69249678412, 33496.1231579208, 33563.63353950544, 33631.22361613387, 33698.89336253655, 33766.64275357762, 33834.47176425403, 33902.38036969476, 33970.368545159974, 34038.436266040124, 34106.58350785527, 34174.81024625406, 34243.11645701309, 34311.50211603606, 34379.96719935288, 34448.51168311903, 34517.13554361465, 34585.838757243764, 34654.621300533654, 34723.48315013385, 34792.42428281556, 34861.444675470855, 34930.54430511182, 34999.72314887001, 35068.98118399547, 35138.3183878562, 35207.73473793728, 35277.23021184021, 35346.80478728219, 35416.45844209542, 35486.19115422627, 35556.00290173478, 35625.89366279374, 35695.86341568816, 35765.91213881452, 35836.03981068001, 35906.246409902036, 35976.53191520731, 36046.89630543137, 36117.33955951783, 36187.86165651769, 36258.46257558875, 36329.14229599494, 36399.900797105605, 36470.73805839497, 36541.654059441404, 36612.64877992686, 36683.7221996362, 36754.87429845656, 36826.10505637679, 36897.414453486796, 36968.802469976865, 37040.26908613726, 37111.81428235735, 37183.43803912521, 37255.14033702697, 37326.921156746146, 37398.78047906321, 37470.71828485483, 37542.734555093455, 37614.82927084664, 37687.00241327647, 37759.25396363905, 37831.58390328397, 37903.99221365358, 37976.4788762827, 38049.04387279776, 38121.687184916525, 38194.408794447445, 38267.20868328901, 38340.086833429414, 38413.04322694589, 38486.07784600422, 38559.19067285822, 38632.38168984915, 38705.65087940534, 38778.99822404154, 38852.42370635842, 38925.92730904223, 38999.50901486403, 39073.168806679416, 39146.90666742792, 39220.722580132504, 39294.61652789914, 39368.58849391628, 39442.638461454335, 39516.766413865334, 39590.97233458225, 39665.25620711869, 39739.61801506837, 39814.05774210457, 39888.57537197986, 39963.17088852542, 40037.84427565074, 40112.595517343136, 40187.42459766719, 40262.33150076445, 40337.31621085295, 40412.378712226644, 40487.51898925518, 40562.73702638326, 40638.032808130345, 40713.40631909015, 40788.85754393023, 40864.3864673916, 40939.99307428828, 41015.677349506834, 41091.439278006044, 41167.278844816414, 41243.19603503983, 41319.190833849105, 41395.26322648753, 41471.41319826864, 41547.64073457561, 41623.945820860994, 41700.328442646285, 41776.78858552149, 41853.32623514483, 41929.94137724226, 42006.63399760713, 42083.40408209984, 42160.251616647365, 42237.17658724295, 42314.17897994575, 42391.25878088036, 42468.41597623662, 42545.65055226903, 42622.962495296575, 42700.351791702255, 42777.81842793275, 42855.362390498085, 42932.983665971275, 43010.68224098789, 43088.45810224589, 43166.31123650504, 43244.24163058675, 43322.24927137367, 43400.3341458093, 43478.496240897715, 43556.735543703224, 43635.05204135002, 43713.445721021846, 43791.91656996163, 43870.464575471226, 43949.08972491109, 44027.79200569981, 44106.57140531406, 44185.427911287974, 44264.36151121302, 44343.372192737676, 44422.459943566995, 44501.624751462434, 44580.866604241484, 44660.185489777294, 44739.58139599856, 44819.05431088897, 44898.60422248708, 44978.231118886, 45057.93498823296, 45137.715818729244, 45217.57359862963, 45297.50831624232, 45377.51995992855, 45457.60851810226, 45537.77397922992, 45618.01633183017, 45698.33556447351, 45778.73166578215, 45859.204624429556, 45939.75442914028, 46020.38106868971, 46101.08453190367, 46181.86480765826, 46262.72188487958, 46343.65575254339, 46424.66639967492, 46505.75381534851, 46586.91798868745, 46668.15890886367, 46749.47656509744, 46830.87094665724, 46912.3420428593, 46993.889843067525, 47075.51433669319, 47157.2155131946, 47238.993362076966, 47320.84787289212, 47402.77903523811, 47484.78683875931, 47566.87127314576, 47649.0323281332, 47731.26999350276, 47813.58425908063, 47895.97511473799, 47978.442550390595, 48060.98655599868, 48143.60712156665, 48226.304237142824, 48309.0778928193, 48391.92807873166, 48474.854785058684, 48557.8580020223, 48640.93771988714, 48724.093928960465, 48807.32661959192, 48890.63578217323, 48974.02140713809, 49057.483484961886, 49141.02200616146, 49224.63696129496, 49308.32834096154, 49392.09613580119, 49475.9403364946, 49559.860933762735, 49643.85791836691, 49727.93128110832, 49812.081012828, 49896.307104406565, 49980.60954676396, 50064.98833085935, 50149.443447690865, 50233.97488829531, 50318.582643748225, 50403.26670516335, 50488.02706369269, 50572.86371052621, 50657.776636891576, 50742.765834054204, 50827.8312933167, 50912.973006019005, 50998.19096353804, 51083.4851572875, 51168.85557871773, 51254.30221931557, 51339.825070604005, 51425.42412414223, 51511.0993715252, 51596.85080438363, 51682.67841438378, 51768.58219322718, 51854.5621326506, 51940.61822442573, 52026.750460359115, 52112.9588322919, 52199.243332099664, 52285.60395169231, 52372.040683013816, 52458.55351804212, 52545.142448788865, 52631.80746729934, 52718.548565652236, 52805.36573595953, 52892.25897036619, 52979.22826105021, 53066.273600222274, 53153.394980125726, 53240.59239303622, 53327.86583126176, 53415.21528714246, 53502.64075305033, 53590.142221389186, 53677.71968459445, 53765.373135133, 53853.10256550308, 53940.907968234045, 54028.78933588622, 54116.74666105082, 54204.779936349725, 54292.8891544354, 54381.07430799059, 54469.33538972836, 54557.67239239186, 54646.08530875416, 54734.57413161809, 54823.13885381613, 54911.77946821031, 55000.49596769195, 55089.28834518161, 55178.15659362885, 55267.10070601223, 55356.120675339014, 55445.216494645174, 55534.38815699509, 55623.63565548155, 55712.95898322556, 55802.35813337618, 55891.83309911041, 55981.38387363305, 56071.01045017658, 56160.71282200103, 56250.49098239376, 56340.34492466945, 56430.27464216992, 56520.28012826394, 56610.361376347195, 56700.51837984206, 56790.75113219756, 56881.059626889175, 56971.443857418744, 57061.90381731431, 57152.439500130036 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "105 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 104.65261355394912 ], "y": [ 10733.126291998991 ] }, { "name": "Total Drag: W=300kN", "type": "scatter", "x": [ 80.81220296635497, 81.0716502106329, 81.33109745491082, 81.59054469918874, 81.84999194346666, 82.10943918774458, 82.3688864320225, 82.62833367630043, 82.88778092057836, 83.14722816485629, 83.40667540913421, 83.66612265341213, 83.92556989769005, 84.18501714196798, 84.4444643862459, 84.70391163052382, 84.96335887480174, 85.22280611907966, 85.48225336335759, 85.74170060763551, 86.00114785191343, 86.26059509619135, 86.52004234046927, 86.7794895847472, 87.03893682902512, 87.29838407330305, 87.55783131758098, 87.8172785618589, 88.07672580613682, 88.33617305041474, 88.59562029469267, 88.85506753897059, 89.11451478324851, 89.37396202752643, 89.63340927180435, 89.89285651608228, 90.1523037603602, 90.41175100463812, 90.67119824891604, 90.93064549319396, 91.1900927374719, 91.44953998174981, 91.70898722602774, 91.96843447030567, 92.22788171458359, 92.48732895886151, 92.74677620313943, 93.00622344741736, 93.26567069169528, 93.5251179359732, 93.78456518025112, 94.04401242452904, 94.30345966880697, 94.56290691308489, 94.82235415736281, 95.08180140164075, 95.34124864591865, 95.60069589019659, 95.86014313447451, 96.11959037875243, 96.37903762303036, 96.63848486730828, 96.8979321115862, 97.15737935586412, 97.41682660014204, 97.67627384441997, 97.93572108869789, 98.19516833297581, 98.45461557725373, 98.71406282153166, 98.97351006580959, 99.2329573100875, 99.49240455436544, 99.75185179864334, 100.01129904292128, 100.2707462871992, 100.53019353147712, 100.78964077575505, 101.04908802003297, 101.30853526431089, 101.56798250858881, 101.82742975286673, 102.08687699714466, 102.34632424142258, 102.6057714857005, 102.86521872997842, 103.12466597425635, 103.38411321853428, 103.64356046281219, 103.90300770709013, 104.16245495136803, 104.42190219564597, 104.68134943992389, 104.94079668420181, 105.20024392847974, 105.45969117275766, 105.71913841703558, 105.9785856613135, 106.23803290559142, 106.49748014986935, 106.75692739414727, 107.01637463842519, 107.27582188270313, 107.53526912698104, 107.79471637125897, 108.05416361553688, 108.31361085981482, 108.57305810409274, 108.83250534837066, 109.09195259264858, 109.3513998369265, 109.61084708120443, 109.87029432548235, 110.12974156976027, 110.38918881403819, 110.64863605831611, 110.90808330259404, 111.16753054687196, 111.42697779114988, 111.68642503542782, 111.94587227970572, 112.20531952398366, 112.46476676826157, 112.7242140125395, 112.98366125681743, 113.24310850109535, 113.50255574537327, 113.7620029896512, 114.02145023392912, 114.28089747820704, 114.54034472248496, 114.79979196676288, 115.0592392110408, 115.31868645531873, 115.57813369959666, 115.83758094387457, 116.0970281881525, 116.35647543243041, 116.61592267670835, 116.87536992098626, 117.1348171652642, 117.39426440954212, 117.65371165382004, 117.91315889809796, 118.17260614237588, 118.4320533866538, 118.69150063093173, 118.95094787520965, 119.21039511948757, 119.46984236376551, 119.72928960804342, 119.98873685232135, 120.24818409659926, 120.5076313408772, 120.7670785851551, 121.02652582943304, 121.28597307371096, 121.54542031798889, 121.80486756226681, 122.06431480654473, 122.32376205082265, 122.58320929510057, 122.8426565393785, 123.10210378365642, 123.36155102793434, 123.62099827221226, 123.8804455164902, 124.1398927607681, 124.39934000504604, 124.65878724932395, 124.91823449360189, 125.1776817378798, 125.43712898215773, 125.69657622643565, 125.95602347071357, 126.2154707149915, 126.47491795926942, 126.73436520354734, 126.99381244782526, 127.25325969210319, 127.51270693638111, 127.77215418065904, 128.03160142493695, 128.2910486692149, 128.5504959134928, 128.80994315777073, 129.06939040204864, 129.32883764632658, 129.58828489060448, 129.84773213488242, 130.10717937916036, 130.36662662343826, 130.62607386771617, 130.8855211119941, 131.14496835627205, 131.40441560054995, 131.66386284482786, 131.9233100891058, 132.18275733338373, 132.44220457766164, 132.70165182193958, 132.96109906621749, 133.22054631049542, 133.47999355477333, 133.73944079905127, 133.9988880433292, 134.2583352876071, 134.51778253188502, 134.77722977616295, 135.0366770204409, 135.2961242647188, 135.5555715089967, 135.81501875327464, 136.07446599755258, 136.3339132418305, 136.59336048610842, 136.85280773038633, 137.11225497466427, 137.37170221894218, 137.6311494632201, 137.89059670749805, 138.15004395177596, 138.40949119605386, 138.6689384403318, 138.92838568460974, 139.18783292888764, 139.44728017316555, 139.7067274174435, 139.96617466172142, 140.22562190599933, 140.48506915027727, 140.74451639455518, 141.0039636388331, 141.26341088311102, 141.52285812738896, 141.78230537166687, 142.0417526159448, 142.3011998602227, 142.56064710450065, 142.82009434877858, 143.0795415930565, 143.3389888373344, 143.59843608161233, 143.85788332589027, 144.11733057016818, 144.37677781444611, 144.63622505872402, 144.89567230300196, 145.15511954727987, 145.4145667915578, 145.67401403583574, 145.93346128011365, 146.19290852439156, 146.4523557686695, 146.71180301294743, 146.97125025722534, 147.23069750150324, 147.49014474578118, 147.74959199005912, 148.00903923433702, 148.26848647861493, 148.52793372289287, 148.7873809671708, 149.0468282114487, 149.30627545572662, 149.56572270000459, 149.8251699442825, 150.0846171885604, 150.34406443283834, 150.60351167711627, 150.86295892139418, 151.1224061656721, 151.38185340995003, 151.64130065422796, 151.90074789850587, 152.16019514278378, 152.4196423870617, 152.67908963133965, 152.93853687561756, 153.19798411989547, 153.45743136417343, 153.71687860845134, 153.97632585272925, 154.23577309700718, 154.49522034128512, 154.75466758556303, 155.01411482984093, 155.27356207411887, 155.5330093183968, 155.79245656267472, 156.05190380695262, 156.31135105123056, 156.5707982955085, 156.8302455397864, 157.0896927840643, 157.34914002834225, 157.60858727262018, 157.8680345168981, 158.12748176117603, 158.38692900545396, 158.64637624973187, 158.90582349400978, 159.16527073828772, 159.42471798256565, 159.68416522684356, 159.94361247112147, 160.2030597153994, 160.46250695967734, 160.72195420395525, 160.98140144823316, 161.2408486925111, 161.50029593678903, 161.75974318106694, 162.01919042534487, 162.2786376696228, 162.53808491390072, 162.79753215817863, 163.05697940245656, 163.3164266467345, 163.5758738910124, 163.83532113529031, 164.09476837956825, 164.3542156238462, 164.6136628681241, 164.873110112402, 165.13255735667994, 165.39200460095788, 165.65145184523578, 165.9108990895137, 166.17034633379166, 166.42979357806956, 166.68924082234747, 166.9486880666254, 167.20813531090334, 167.46758255518125, 167.72702979945916, 167.9864770437371, 168.24592428801503, 168.50537153229294, 168.76481877657085, 169.02426602084878, 169.28371326512672, 169.54316050940463, 169.80260775368254, 170.0620549979605, 170.3215022422384, 170.58094948651632, 170.84039673079425, 171.0998439750722, 171.3592912193501, 171.618738463628, 171.87818570790594, 172.13763295218388, 172.3970801964618, 172.6565274407397, 172.91597468501763, 173.17542192929557, 173.43486917357347, 173.69431641785138, 173.95376366212932, 174.21321090640726, 174.47265815068516, 174.7321053949631, 174.99155263924104, 175.25099988351894, 175.51044712779685, 175.7698943720748, 176.02934161635272, 176.28878886063063, 176.54823610490854, 176.80768334918648, 177.0671305934644, 177.32657783774232, 177.58602508202023, 177.84547232629816, 178.1049195705761, 178.364366814854, 178.62381405913194, 178.88326130340988, 179.1427085476878, 179.4021557919657, 179.66160303624363, 179.92105028052157, 180.18049752479948, 180.43994476907739, 180.69939201335532, 180.95883925763326, 181.21828650191117, 181.47773374618907, 181.737180990467, 181.99662823474495, 182.25607547902285, 182.51552272330076, 182.77496996757873, 183.03441721185663, 183.29386445613454, 183.55331170041248, 183.81275894469042, 184.07220618896832, 184.33165343324623, 184.59110067752417, 184.8505479218021, 185.10999516608, 185.36944241035792, 185.62888965463586, 185.8883368989138, 186.1477841431917, 186.4072313874696, 186.66667863174757, 186.92612587602548, 187.1855731203034, 187.44502036458132, 187.70446760885926, 187.96391485313717, 188.22336209741508, 188.482809341693, 188.74225658597095, 189.00170383024886, 189.26115107452677, 189.5205983188047, 189.78004556308264, 190.03949280736055, 190.29894005163845, 190.5583872959164, 190.81783454019433, 191.07728178447223, 191.33672902875017, 191.5961762730281, 191.85562351730601, 192.11507076158392, 192.37451800586186, 192.6339652501398, 192.8934124944177, 193.1528597386956, 193.41230698297355, 193.67175422725148, 193.9312014715294, 194.1906487158073, 194.45009596008524, 194.70954320436317, 194.96899044864108, 195.22843769291902, 195.48788493719695, 195.74733218147486, 196.00677942575277, 196.2662266700307, 196.52567391430864, 196.78512115858655, 197.04456840286446, 197.3040156471424, 197.56346289142033, 197.82291013569824, 198.08235737997614, 198.34180462425408, 198.60125186853202, 198.86069911280993, 199.12014635708783, 199.3795936013658, 199.6390408456437, 199.8984880899216, 200.15793533419955, 200.4173825784775, 200.6768298227554, 200.9362770670333, 201.19572431131124, 201.45517155558917, 201.71461879986708, 201.974066044145, 202.23351328842293, 202.49296053270086, 202.75240777697877, 203.01185502125668, 203.27130226553464, 203.53074950981255, 203.79019675409046, 204.0496439983684, 204.30909124264633, 204.56853848692424, 204.82798573120215, 205.08743297548008, 205.34688021975802, 205.60632746403593, 205.86577470831384, 206.12522195259177, 206.3846691968697, 206.64411644114762, 206.90356368542552, 207.16301092970346, 207.4224581739814, 207.6819054182593, 207.94135266253724, 208.20079990681518, 208.46024715109309, 208.719694395371, 208.9791416396489, 209.23858888392687, 209.49803612820477, 209.75748337248268, 210.01693061676065, 210.27637786103855, 210.53582510531646, 210.79527234959437, 211.05471959387233, 211.31416683815024, 211.57361408242815, 211.83306132670606, 212.09250857098402, 212.35195581526193, 212.61140305953984, 212.87085030381775, 213.1302975480957, 213.38974479237362, 213.64919203665153, 213.9086392809295, 214.1680865252074, 214.4275337694853, 214.68698101376322, 214.94642825804118, 215.2058755023191, 215.465322746597, 215.7247699908749, 215.98421723515287, 216.24366447943078, 216.50311172370868, 216.7625589679866, 217.02200621226456, 217.28145345654247, 217.54090070082037, 217.80034794509828, 218.05979518937625, 218.31924243365415, 218.57868967793206, 218.83813692221003, 219.09758416648793, 219.35703141076584, 219.61647865504375, 219.87592589932171, 220.13537314359962, 220.39482038787753, 220.65426763215544, 220.9137148764334, 221.1731621207113, 221.43260936498922, 221.69205660926713, 221.9515038535451, 222.210951097823, 222.4703983421009, 222.72984558637887, 222.98929283065678, 223.2487400749347, 223.5081873192126, 223.76763456349056, 224.02708180776847, 224.28652905204638, 224.54597629632428, 224.80542354060225, 225.06487078488016, 225.32431802915806, 225.58376527343597, 225.84321251771394, 226.10265976199184, 226.36210700626975, 226.62155425054772, 226.88100149482563, 227.14044873910353, 227.39989598338144, 227.6593432276594, 227.9187904719373, 228.17823771621522, 228.43768496049313, 228.6971322047711, 228.956579449049, 229.2160266933269, 229.47547393760482, 229.73492118188278, 229.9943684261607, 230.2538156704386, 230.51326291471656, 230.77271015899447, 231.03215740327238, 231.2916046475503, 231.55105189182825, 231.81049913610616, 232.06994638038407, 232.32939362466198, 232.58884086893994, 232.84828811321785, 233.10773535749576, 233.36718260177366, 233.62662984605163, 233.88607709032954, 234.14552433460744, 234.40497157888535, 234.66441882316332, 234.92386606744122, 235.18331331171913, 235.4427605559971, 235.702207800275, 235.9616550445529, 236.22110228883082, 236.48054953310879, 236.7399967773867, 236.9994440216646, 237.2588912659425, 237.51833851022047, 237.77778575449838, 238.0372329987763, 238.2966802430542, 238.55612748733216, 238.81557473161007, 239.07502197588798, 239.33446922016594, 239.59391646444385, 239.85336370872176, 240.11281095299967, 240.37225819727763, 240.63170544155554, 240.89115268583345, 241.15059993011135, 241.41004717438932, 241.66949441866723, 241.92894166294514, 242.18838890722304, 242.447836151501, 242.70728339577892, 242.96673064005682, 243.2261778843348, 243.4856251286127, 243.7450723728906, 244.0045196171685, 244.26396686144648, 244.52341410572438, 244.7828613500023, 245.0423085942802, 245.30175583855817, 245.56120308283607, 245.82065032711398, 246.0800975713919, 246.33954481566985, 246.59899205994776, 246.85843930422567, 247.11788654850363, 247.37733379278154, 247.63678103705945, 247.89622828133736, 248.15567552561532, 248.41512276989323, 248.67457001417114, 248.93401725844905, 249.193464502727, 249.45291174700492, 249.71235899128283, 249.97180623556073, 250.2312534798387, 250.4907007241166, 250.75014796839451, 251.00959521267242, 251.2690424569504, 251.5284897012283, 251.7879369455062, 252.04738418978417, 252.30683143406208, 252.56627867833998, 252.8257259226179, 253.08517316689586, 253.34462041117376, 253.60406765545167, 253.86351489972958, 254.12296214400754, 254.38240938828545, 254.64185663256336, 254.90130387684127, 255.16075112111923, 255.42019836539714, 255.67964560967505, 255.939092853953, 256.1985400982309, 256.45798734250883, 256.71743458678674, 256.9768818310647, 257.2363290753426, 257.4957763196205, 257.7552235638984, 258.0146708081764, 258.2741180524543, 258.5335652967322, 258.7930125410101, 259.0524597852881, 259.311907029566, 259.5713542738439, 259.83080151812186, 260.09024876239977, 260.3496960066777, 260.6091432509556, 260.86859049523355, 261.12803773951146, 261.38748498378936, 261.64693222806727, 261.90637947234524, 262.16582671662314, 262.42527396090105, 262.68472120517896, 262.9441684494569, 263.20361569373483, 263.46306293801274, 263.7225101822907, 263.9819574265686, 264.2414046708465, 264.50085191512443, 264.7602991594024, 265.0197464036803, 265.2791936479582, 265.5386408922361, 265.7980881365141, 266.057535380792, 266.3169826250699, 266.5764298693478, 266.83587711362577, 267.0953243579037, 267.3547716021816, 267.6142188464595, 267.87366609073746, 268.13311333501537, 268.3925605792933, 268.65200782357124, 268.91145506784915, 269.17090231212705, 269.43034955640496, 269.6897968006829, 269.94924404496084, 270.20869128923874, 270.46813853351665, 270.7275857777946, 270.9870330220725, 271.24648026635043, 271.50592751062834, 271.7653747549063, 272.0248219991842, 272.2842692434621, 272.5437164877401, 272.803163732018, 273.0626109762959, 273.3220582205738, 273.5815054648518, 273.8409527091297, 274.1003999534076, 274.3598471976855, 274.61929444196346, 274.87874168624137, 275.1381889305193, 275.3976361747972, 275.65708341907515, 275.91653066335306, 276.17597790763097, 276.43542515190893, 276.69487239618684, 276.95431964046475, 277.21376688474265, 277.4732141290206, 277.7326613732985, 277.99210861757643, 278.25155586185434, 278.5110031061323, 278.7704503504102, 279.0298975946881, 279.28934483896603, 279.548792083244, 279.8082393275219, 280.0676865717998, 280.3271338160778, 280.5865810603557, 280.8460283046336, 281.1054755489115, 281.36492279318946, 281.6243700374674, 281.8838172817453, 282.1432645260232, 282.40271177030115, 282.66215901457906, 282.92160625885697, 283.1810535031349, 283.44050074741284, 283.69994799169075, 283.95939523596866, 284.21884248024656, 284.47828972452453, 284.73773696880244, 284.99718421308035, 285.2566314573583, 285.5160787016362, 285.7755259459141, 286.03497319019203, 286.29442043447, 286.5538676787479, 286.8133149230258, 287.0727621673037, 287.3322094115817, 287.5916566558596, 287.8511039001375, 288.1105511444154, 288.3699983886934, 288.6294456329713, 288.8888928772492, 289.14834012152716, 289.40778736580506, 289.66723461008297, 289.9266818543609, 290.18612909863884, 290.44557634291675, 290.70502358719466, 290.96447083147257, 291.22391807575053, 291.48336532002844, 291.74281256430635, 292.00225980858426, 292.2617070528622, 292.52115429714013, 292.78060154141804, 293.040048785696, 293.2994960299739, 293.5589432742518, 293.8183905185297, 294.0778377628077, 294.3372850070856, 294.5967322513635, 294.8561794956414, 295.1156267399194, 295.3750739841973, 295.6345212284752, 295.8939684727531, 296.15341571703107, 296.412862961309, 296.6723102055869, 296.93175744986485, 297.19120469414275, 297.45065193842066, 297.71009918269857, 297.96954642697654, 298.22899367125444, 298.48844091553235, 298.74788815981026, 299.0073354040882, 299.26678264836613, 299.52622989264404, 299.78567713692195, 300.0451243811999, 300.3045716254778, 300.5640188697557, 300.82346611403364, 301.0829133583116, 301.3423606025895, 301.6018078468674, 301.8612550911454, 302.1207023354233, 302.3801495797012, 302.6395968239791, 302.89904406825707, 303.158491312535, 303.4179385568129, 303.6773858010908, 303.93683304536876, 304.19628028964667, 304.4557275339246, 304.7151747782025, 304.97462202248045, 305.23406926675835, 305.49351651103626, 305.7529637553142, 306.01241099959213, 306.27185824387004, 306.53130548814795, 306.7907527324259, 307.0501999767038, 307.30964722098173, 307.56909446525964, 307.8285417095376, 308.0879889538155, 308.3474361980934, 308.6068834423713, 308.8663306866493, 309.1257779309272, 309.3852251752051, 309.6446724194831, 309.904119663761, 310.1635669080389, 310.4230141523168, 310.68246139659476, 310.94190864087267, 311.2013558851506, 311.4608031294285, 311.72025037370645, 311.97969761798436, 312.23914486226226, 312.4985921065402, 312.75803935081814, 313.01748659509605, 313.27693383937395, 313.5363810836519, 313.7958283279298, 314.05527557220773, 314.31472281648564, 314.5741700607636, 314.8336173050415, 315.0930645493194, 315.35251179359733, 315.6119590378753, 315.8714062821532, 316.1308535264311, 316.390300770709, 316.649748014987, 316.9091952592649, 317.1686425035428, 317.4280897478207, 317.68753699209867, 317.9469842363766, 318.2064314806545, 318.46587872493245, 318.72532596921036, 318.98477321348827, 319.2442204577662, 319.50366770204414, 319.76311494632205, 320.02256219059996, 320.28200943487786, 320.54145667915583, 320.80090392343374, 321.06035116771164, 321.31979841198955, 321.5792456562675, 321.8386929005454, 322.09814014482333, 322.3575873891013, 322.6170346333792, 322.8764818776571, 323.135929121935, 323.395376366213, 323.6548236104909, 323.9142708547688, 324.1737180990467, 324.4331653433247, 324.6926125876026, 324.9520598318805, 325.2115070761584, 325.47095432043636, 325.73040156471427, 325.9898488089922, 326.24929605327014, 326.50874329754805, 326.76819054182596, 327.02763778610387, 327.28708503038183, 327.54653227465974, 327.80597951893765, 328.06542676321556, 328.3248740074935, 328.5843212517714, 328.84376849604934, 329.10321574032724, 329.3626629846052, 329.6221102288831, 329.881557473161, 330.141004717439, 330.4004519617169, 330.6598992059948, 330.9193464502727, 331.1787936945507, 331.4382409388286, 331.6976881831065, 331.9571354273844, 332.21658267166237, 332.4760299159403, 332.7354771602182, 332.9949244044961, 333.25437164877405, 333.51381889305196, 333.77326613732987, 334.0327133816078, 334.29216062588574, 334.55160787016365, 334.81105511444156, 335.0705023587195, 335.32994960299743, 335.58939684727534, 335.84884409155325, 336.1082913358312, 336.3677385801091, 336.627185824387, 336.88663306866493, 337.14608031294284, 337.4055275572208, 337.6649748014987, 337.9244220457766, 338.1838692900546, 338.4433165343325, 338.7027637786104, 338.9622110228883, 339.2216582671663, 339.4811055114442, 339.7405527557221, 340 ], "y": [ 23450, 23341.178571761844, 23233.659512013608, 23127.427119401887, 23022.465941028182, 22918.76076774597, 22816.29662956134, 22715.05879113453, 22615.032747379893, 22516.20421916185, 22418.559149084314, 22322.083697371494, 22226.764237837622, 22132.58735394352, 22039.539834937816, 21947.608672080827, 21856.78105494898, 21767.04436781787, 21678.386186122105, 21590.794272989944, 21504.25657585105, 21418.76122311555, 21334.296520922697, 21250.85094995746, 21168.413162333472, 21086.971978540685, 21006.516384456285, 20927.035528417302, 20848.518718353505, 20770.95541897915, 20694.335249042222, 20618.647978629822, 20543.883526528356, 20470.0319576373, 20397.083480435365, 20325.02844449763, 20253.85733806278, 20183.560785649017, 20114.129545717737, 20045.55450838376, 19977.82669317111, 19910.937246813322, 19844.87744109717, 19779.638670749053, 19715.212451362786, 19651.59041736816, 19588.764320039125, 19526.726025540876, 19465.46751301489, 19404.980872701093, 19345.258304096355, 19286.29211414848, 19228.074715484956, 19170.59862467564, 19113.856460528703, 19057.840942419072, 19002.544888648663, 18947.96121483769, 18894.082932346522, 18840.903146727156, 18788.415056203976, 18736.61195018293, 18685.48720778867, 18635.034296428945, 18585.24677038579, 18536.118269432816, 18487.64251747813, 18439.81332123231, 18392.624568900956, 18346.070228901215, 18300.144348601854, 18254.841053086366, 18210.154543938574, 18166.07909805041, 18122.60906645122, 18079.738873158312, 18037.4630140482, 17995.776055748196, 17954.67263454786, 17914.147455329974, 17874.19529052059, 17834.810979057784, 17795.98942537871, 17757.725598424655, 17720.014530663644, 17682.851317130277, 17646.23111448248, 17610.1491400748, 17574.600671047883, 17539.581043433893, 17505.085651277495, 17471.109945772074, 17437.64943441099, 17404.699680153422, 17372.256300604673, 17340.3149672105, 17308.871404465335, 17277.921389134, 17247.46074948676, 17217.485364547356, 17187.991163353872, 17158.974124232074, 17130.43027408107, 17102.355687671006, 17074.746486952594, 17047.598840378214, 17020.90896223439, 16994.673111985438, 16968.88759362802, 16943.54875505646, 16918.652987438578, 16894.196724601832, 16870.17644242964, 16846.588658267614, 16823.42993033955, 16800.696857172996, 16778.386077034243, 16756.494267372484, 16735.01814427307, 16713.954461919613, 16693.300012064836, 16673.051623509935, 16653.20616159239, 16633.760527681967, 16614.71165868487, 16596.056526555774, 16577.792137817705, 16559.915533089537, 16542.42378662106, 16525.314005835367, 16508.58333087853, 16492.228934176375, 16476.248019998253, 16460.637824027654, 16445.395612939603, 16430.51868398463, 16416.00436457925, 16401.85001190287, 16388.053012500885, 16374.610781894015, 16361.520764193654, 16348.780431723168, 16336.387284645018, 16324.33885059366, 16312.632684314034, 16301.266367305623, 16290.237507471938, 16279.543738775354, 16269.182720897188, 16259.152138902962, 16249.449702912712, 16240.073147776298, 16231.020232753608, 16222.28874119957, 16213.876480253915, 16205.78128053556, 16198.000995841594, 16190.533502850738, 16183.376700831222, 16176.528511353015, 16169.98687800431, 16163.749766112218, 16157.815162467574, 16152.181075053802, 16146.845532779784, 16141.80658521662, 16137.062302338261, 16132.610774265944, 16128.450111016322, 16124.578442253285, 16120.993917043386, 16117.69470361479, 16114.67898911973, 16111.944979400392, 16109.490898758155, 16107.314989726154, 16105.415512845128, 16103.79074644244, 16102.438986414287, 16101.358546010984, 16100.547755625343, 16100.004962584006, 16099.728530941786, 16099.716841278878, 16099.968290500952, 16100.481291642063, 16101.254273670314, 16102.28568129626, 16103.573974784, 16105.117629764882, 16106.915137053838, 16108.965002468252, 16111.265746649362, 16113.815904886116, 16116.614026941483, 16119.65867688115, 16122.9484329046, 16126.481887178481, 16130.257645672296, 16134.274327996302, 16138.530567241687, 16143.02500982287, 16147.756315321965, 16152.723156335385, 16157.924218322489, 16163.3581994563, 16169.02381047625, 16174.91977454288, 16181.044827094527, 16187.397715705916, 16193.977199948651, 16200.78205125359, 16207.811052775056, 16215.062999256808, 16222.53669689988, 16230.230963232118, 16238.14462697945, 16246.276527938888, 16254.625516853182, 16263.190455287131, 16271.970215505531, 16280.963680352721, 16290.169743133698, 16299.587307496815, 16309.215287317968, 16319.052606586332, 16329.098199291577, 16339.351009312519, 16349.809990307262, 16360.47410560471, 16371.34232809753, 16382.41364013645, 16393.687033425955, 16405.161508921297, 16416.83607672684, 16428.70975599569, 16440.781574830624, 16453.05057018629, 16465.515787772605, 16478.17628195945, 16491.031115682497, 16504.079360350304, 16517.32009575253, 16530.75240996932, 16544.375399281846, 16558.188168083965, 16572.189828794966, 16586.379501773452, 16600.75631523224, 16615.31940515439, 16630.06791521022, 16645.000996675386, 16660.117808349976, 16675.417516478603, 16690.89929467148, 16706.562323826456, 16722.405792052075, 16738.428894591503, 16754.630833747422, 16771.01081880788, 16787.568065972977, 16804.30179828251, 16821.21124554446, 16838.295644264374, 16855.554237575598, 16872.986275170348, 16890.591013231628, 16908.367714365948, 16926.31564753691, 16944.434087999514, 16962.72231723532, 16981.17962288835, 16999.8052987018, 17018.598644455455, 17037.55896590387, 17056.685574715335, 17075.977788411506, 17095.43493030777, 17115.056329454324, 17134.841320577983, 17154.789244024607, 17174.89944570224, 17195.17127702498, 17215.604094857397, 17236.197261459678, 17256.950144433402, 17277.86211666796, 17298.932556287546, 17320.160846598847, 17341.546376039292, 17363.088538125892, 17384.786731404733, 17406.640359400975, 17428.648830569502, 17450.811558246107, 17473.127960599224, 17495.597460582263, 17518.21948588644, 17540.993468894198, 17563.91884663312, 17586.995060730394, 17610.22155736779, 17633.597787237162, 17657.123205496417, 17680.797271726035, 17704.61944988607, 17728.58920827361, 17752.706019480727, 17776.969360352938, 17801.378711948095, 17825.933559495752, 17850.633392356976, 17875.47770398464, 17900.46599188412, 17925.59775757447, 17950.872506549986, 17976.289748242263, 18001.848995982607, 18027.549766964898, 18053.39158220886, 18079.37396652376, 18105.496448472455, 18131.758560335893, 18158.159838077958, 18184.69982131074, 18211.37805326018, 18238.194080732057, 18265.147454078386, 18292.237727164174, 18319.46445733454, 18346.82720538217, 18374.32553551517, 18401.959015325232, 18429.727215756146, 18457.629711072692, 18485.666078829825, 18513.83589984221, 18542.138758154084, 18570.574241009446, 18599.14193882257, 18627.841445148828, 18656.672356655818, 18685.634273094816, 18714.72679727253, 18743.949535023174, 18773.302095180756, 18802.7840895518, 18832.395132888225, 18862.134842860603, 18892.00284003163, 18921.99874782996, 18952.12219252422, 18982.37280319738, 19012.750211721333, 19043.254052731798, 19073.88396360344, 19104.639584425266, 19135.520557976277, 19166.526529701405, 19197.657147687638, 19228.912062640455, 19260.290927860464, 19291.793399220318, 19323.419135141823, 19355.167796573343, 19387.039046967388, 19419.032552258468, 19451.147980841135, 19483.385003548294, 19515.743293629723, 19548.22252673081, 19580.82238087148, 19613.542536425397, 19646.382676099332, 19679.342484912773, 19712.42165017769, 19745.619861478583, 19778.93681065266, 19812.372191770264, 19845.925701115484, 19879.597037166943, 19913.385900578825, 19947.291994162035, 19981.315022865594, 20015.454693758216, 20049.710716010046, 20084.082800874596, 20118.57066167086, 20153.174013765627, 20187.892574555943, 20222.726063451737, 20257.674201858677, 20292.73671316113, 20327.91332270536, 20363.203757782787, 20398.607747613547, 20434.125023330118, 20469.75531796114, 20505.49836641537, 20541.353905465858, 20577.3216737342, 20613.401411674993, 20649.59286156043, 20685.895767465063, 20722.309875250674, 20758.834932551326, 20795.470688758563, 20832.21689500673, 20869.073304158483, 20906.039670790335, 20943.115751178488, 20980.301303284683, 21017.59608674226, 21054.99986284228, 21092.512394519876, 21130.13344634067, 21167.86278448729, 21205.70017674611, 21243.645392494076, 21281.6982026856, 21319.858379839672, 21358.125698027034, 21396.49993285749, 21434.98086146738, 21473.56826250708, 21512.261916128708, 21551.06160397391, 21589.96710916178, 21628.978216276828, 21668.094711357193, 21707.316381882825, 21746.643016763857, 21786.07440632908, 21825.610342314532, 21865.250617852143, 21904.99502745855, 21944.843367023965, 21984.7954338012, 22024.85102639476, 22065.009944750025, 22105.27199014255, 22145.636965167516, 22186.104673729144, 22226.674921030375, 22267.34751356251, 22308.122259095024, 22348.998966665422, 22389.977446569246, 22431.057510350118, 22472.238970789927, 22513.52164189904, 22554.90533890667, 22596.389878251295, 22637.975077571184, 22679.660755694982, 22721.4467326324, 22763.332829564995, 22805.318868837046, 22847.404673946432, 22889.590069535716, 22931.874881383246, 22974.258936394286, 23016.742062592322, 23059.32408911041, 23102.004846182583, 23144.78416513532, 23187.66187837917, 23230.637819400392, 23273.71182275265, 23316.883724048846, 23360.153359952965, 23403.52056817204, 23446.985187448172, 23490.547057550597, 23534.206019267862, 23577.961914400057, 23621.814585751097, 23665.76387712109, 23709.80963329879, 23753.9517000541, 23798.18992413058, 23842.524153238148, 23886.954236045764, 23931.480022174175, 23976.10136218873, 24020.818107592284, 24065.63011081818, 24110.537225223212, 24155.539305080714, 24200.636205573697, 24245.827782788056, 24291.113893705813, 24336.494396198406, 24381.969149020115, 24427.53801180143, 24473.200845042586, 24518.957510107055, 24564.80786921519, 24610.751785437864, 24656.78912269014, 24702.919745725092, 24749.14352012758, 24795.460312308158, 24841.869989496907, 24888.372419737538, 24934.967471881304, 24981.65501558115, 25028.43492128578, 25075.307060233896, 25122.271304448375, 25169.32752673058, 25216.47560065464, 25263.715400561876, 25311.046801555196, 25358.46967949354, 25405.983910986437, 25453.589373388546, 25501.285944794265, 25549.073504032356, 25596.95193066071, 25644.92110496101, 25692.980907933586, 25741.13122129218, 25789.371927458877, 25837.70290955899, 25886.124051416034, 25934.635237546696, 25983.236353155917, 26031.927284131958, 26080.707917041538, 26129.578139124955, 26178.537838291344, 26227.586903113915, 26276.72522282519, 26325.952687312387, 26375.269187112757, 26424.67461340898, 26474.168858024594, 26523.7518134195, 26573.42337268546, 26623.18342954166, 26673.03187833023, 26722.968614011985, 26772.993532161985, 26823.106528965283, 26873.307501212606, 26923.596346296174, 26973.97296220548, 27024.43724752307, 27074.989101420513, 27125.6284236542, 27176.355114561367, 27227.169075055957, 27278.07020662473, 27329.058411323214, 27380.133591771824, 27431.29565115189, 27482.544493201865, 27533.880022213416, 27585.302143027675, 27636.81076103137, 27688.40578215317, 27740.087112859914, 27791.85466015291, 27843.70833156431, 27895.648035153463, 27947.673679503325, 27999.785173716813, 28051.98242741338, 28104.265350725404, 28156.63385429475, 28209.087849269243, 28261.62724729932, 28314.251960534566, 28366.961901620358, 28419.756983694468, 28472.63712038381, 28525.602225801078, 28578.65221454147, 28631.787001679506, 28685.00650276571, 28738.3106338235, 28791.69931134594, 28845.17245229263, 28898.72997408659, 28952.371794611154, 29006.097832206844, 29059.908005668392, 29113.802234241695, 29167.78043762078, 29221.84253594481, 29275.9884497952, 29330.218100192622, 29384.53140859412, 29438.928296890168, 29493.40868740188, 29547.972502878136, 29602.6196664927, 29657.35010184151, 29712.163732939855, 29767.060484219608, 29822.040280526468, 29877.103047117314, 29932.248709657448, 29987.477194217954, 30042.788427272997, 30098.18233569724, 30153.65884676321, 30209.217888138704, 30264.85938788418, 30320.583274450266, 30376.389476675187, 30432.27792378223, 30488.248545377282, 30544.30127144634, 30600.43603235306, 30656.652758836248, 30712.95138200755, 30769.331833348966, 30825.794044710496, 30882.337948307722, 30938.96347671954, 30995.670562885753, 31052.45914010481, 31109.32914203144, 31166.280502674443, 31223.313156394393, 31280.42703790135, 31337.622082252725, 31394.89822485096, 31452.25540144142, 31509.693548110135, 31567.212601281688, 31624.812497717045, 31682.49317451144, 31740.254569092198, 31798.096619216714, 31856.019262970316, 31914.022438764227, 31972.10608533343, 32030.270141734745, 32088.514547344726, 32146.83924185764, 32205.24416528353, 32263.729257946197, 32322.294460481236, 32380.93971383405, 32439.664959257996, 32498.470138312376, 32557.355192860596, 32616.320065068176, 32675.36469740097, 32734.489032623253, 32793.693013795855, 32852.97658427431, 32912.33968770706, 32971.78226803365, 33031.30426948286, 33090.90563657099, 33150.58631410002, 33210.34624715592, 33270.1853811068, 33330.10366160126, 33390.10103456663, 33450.177446207264, 33510.33284300281, 33570.567171706556, 33630.88037934374, 33691.272413209896, 33751.74322086917, 33812.29275015271, 33872.920949157015, 33933.62776624236, 33994.4131500311, 34055.27704940617, 34116.21941350948, 34177.24019174027, 34238.33933375363, 34299.51678945895, 34360.772509018316, 34422.106442845026, 34483.518541602076, 34545.00875620062, 34606.57703779854, 34668.22333779885, 34729.947607848335, 34791.74979983601, 34853.62986589174, 34915.587758384645, 34977.62342992187, 35039.736833347015, 35101.92792173874, 35164.1966484094, 35226.542966903646, 35288.96683099703, 35351.46819469458, 35414.04701222952, 35476.703238061855, 35539.436826877056, 35602.247733584685, 35665.13591331708, 35728.101321428076, 35791.14391349166, 35854.26364530062, 35917.46047286535, 35980.73435241254, 36044.08524038381, 36107.51309343456, 36171.01786843269, 36234.59952245728, 36298.25801279743, 36361.99329695098, 36425.80533262333, 36489.69407772618, 36553.65949037633, 36617.70152889451, 36681.820151804204, 36746.015317830395, 36810.28698589843, 36874.635115132885, 36939.05966485638, 37003.560594588445, 37068.137864044285, 37132.79143313378, 37197.52126196035, 37262.327310819644, 37327.2095401987, 37392.16791077465, 37457.20238341371, 37522.312919170006, 37587.499479284605, 37652.76202518438, 37718.1005184809, 37783.514920969465, 37849.005194627964, 37914.57130161589, 37980.213204273285, 38045.93086511966, 38111.72424685303, 38177.593312348894, 38243.53802465915, 38309.558347011196, 38375.65424280685, 38441.825675621396, 38508.07260920256, 38574.395007469575, 38640.79283451222, 38707.26605458978, 38773.814632130154, 38840.43853172887, 38907.13771814816, 38973.912156316, 39040.76181132518, 39107.68664843236, 39174.68663305721, 39241.76173078139, 39308.91190734774, 39376.13712865932, 39443.43736077855, 39510.81256992622, 39578.262722480744, 39645.78778497719, 39713.387724106426, 39781.06250671424, 39848.812099800474, 39916.636470518235, 39984.535586172926, 40052.509414221466, 40120.55792227144, 40188.6810780803, 40256.87884955444, 40325.15120474846, 40393.498111864305, 40461.91953925048, 40530.41545540116, 40598.985828955505, 40667.63062869677, 40736.349823551536, 40805.14338258895, 40874.011275019875, 40942.9534701962, 41011.969937609996, 41081.060646892765, 41150.22556781467, 41219.46467028383, 41288.77792434549, 41358.165300181296, 41427.62676810857, 41497.16229857957, 41566.77186218071, 41636.4554296319, 41706.21297178576, 41776.04445962694, 41845.94986427132, 41915.92915696546, 41985.98230908572, 42056.10929213768, 42126.310077755326, 42196.584637700485, 42266.93294386204, 42337.354968255306, 42407.85068302125, 42478.42006042595, 42549.06307285985, 42619.77969283704, 42690.56989299469, 42761.43364609233, 42832.370925011266, 42903.381702753766, 42974.46595244259, 43045.62364732028, 43116.854760748494, 43188.159266207374, 43259.537137294945, 43330.988347726474, 43402.51287133388, 43474.11068206499, 43545.7817539831, 43617.52606126621, 43689.34357820651, 43761.23427920973, 43833.19813879457, 43905.235131592075, 43977.345232345004, 44049.528415907356, 44121.78465724367, 44194.11393142852, 44266.51621364584, 44338.99147918847, 44411.53970345748, 44484.160861961696, 44556.85493031699, 44629.621884245906, 44702.46169957696, 44775.374352244115, 44848.35981828627, 44921.4180738467, 44994.54909517246, 45067.75285861389, 45141.02934062409, 45214.378517758334, 45287.80036667361, 45361.29486412797, 45434.86198698016, 45508.50171218899, 45582.21401681284, 45655.99887800913, 45729.85627303387, 45803.786179241084, 45877.78857408233, 45951.86343510618, 46026.010739957725, 46100.23046637813, 46174.52259220404, 46248.88709536718, 46323.323953893785, 46397.83314590424, 46472.41464961239, 46547.06844332529, 46621.79450544258, 46696.59281445609, 46771.46334894924, 46846.40608759676, 46921.4210091641, 46996.50809250699, 47071.66731657096, 47146.89866039093, 47222.202103090756, 47297.57762388269, 47373.02520206706, 47448.54481703172, 47524.13644825168, 47599.80007528856, 47675.53567779028, 47751.34323549054, 47827.22272820844, 47903.17413584796, 47979.197438397634, 48055.29261593006, 48131.459648601536, 48207.698516651515, 48284.00920040234, 48360.39168025877, 48436.845936707454, 48513.37195031674, 48589.96970173608, 48666.63917169571, 48743.380341006196, 48820.1931905581, 48897.07770132152, 48974.03385434574, 49051.06163075875, 49128.16101176698, 49205.3319786548, 49282.574512784224, 49359.8885955944, 49437.27420860136, 49514.73133339759, 49592.25995165158, 49669.86004510755, 49747.53159558505, 49825.27458497855, 49903.088995257065, 49980.974808463856, 50058.93200671601, 50136.96057220408, 50215.06048719171, 50293.23173401533, 50371.47429508374, 50449.78815287782, 50528.17328995005, 50606.62968892432, 50685.15733249545, 50763.75620342896, 50842.42628456056, 50921.167558796, 50999.9800091106, 51078.86361854891, 51157.81837022444, 51236.84424731929, 51315.94123308383, 51395.1093108363, 51474.348463962575, 51553.65867591578, 51633.039930216015, 51712.49221044993, 51792.01550027051, 51871.60978339669, 51951.2750436131, 52031.01126476962, 52110.81843078121, 52190.69652562754, 52270.64553335262, 52350.66543806459, 52430.75622393532, 52510.91787520021, 52591.15037615774, 52671.45371116931, 52751.827864658844, 52832.27282111256, 52912.788565078554, 52993.37508116666, 53074.032354048046, 53154.76036845497, 53235.55910918042, 53316.42856107794, 53397.368709061266, 53478.37953810397, 53559.46103323934, 53640.61317956, 53721.83596221761, 53803.1293664226, 53884.49337744395, 53965.92798060883, 54047.4331613024, 54129.008904967435, 54210.65519710416, 54292.37202326993, 54374.15936907895, 54456.01722020199, 54537.9455623662, 54619.94438135479, 54702.01366300669, 54784.153393216446, 54866.36355793386, 54948.644143163736, 55030.995134965604, 55113.41651945354, 55195.90828279585, 55278.47041121483, 55361.10289098649, 55443.80570844035, 55526.57884995914, 55609.42230197863, 55692.33605098726, 55775.32008352598, 55858.37438618803, 55941.49894561863, 56024.69374851475, 56107.95878162488, 56191.294031748854, 56274.69948573746, 56358.17513049237, 56441.720952965785, 56525.33694016028, 56609.023079128485, 56692.77935697297, 56776.605760845894, 56860.50227794888, 56944.468895532715, 57028.50560089711, 57112.61238139058, 57196.78922441012, 57281.03611740098, 57365.35304785653, 57449.74000331797, 57534.19697137411, 57618.723939661184, 57703.320895862584, 57787.987827708734 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "128 m/s ", "textposition": "bottom center", "type": "scatter", "x": [ 128.1727517279251 ], "y": [ 16099.689437998486 ] } ], "layout": { "legend": { "title": { "text": "Altitude" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Total drag variation with aircraft weight - CD0 = 0.016, K=0.045, S=50m^2, Sea Level" }, "xaxis": { "range": [ 0, 300 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 20000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = go.Figure()\n", "\n", "fig.update_xaxes(range=[0, 300])\n", "fig.update_yaxes(range=[0, 20e3])\n", "alt = 0\n", "\n", "for W in [160e3, 200e3, 300e3]:\n", "\n", " mosphere = Atmosphere(alt)\n", " rho = mosphere.density\n", "\n", " # Determine stall speed\n", " Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", " # Determine A and B\n", " A = CD0 * 0.5 * rho * S\n", " B = K * W ** 2 / 0.5 / rho / S\n", "\n", " # Flight speed vector\n", " Vs = np.linspace(Vstall[0], 340, 1000)\n", "\n", "\n", " # Define drags\n", " Dind = B * Vs**-2\n", " Dprof = A * Vs**2\n", " D = Dind + Dprof\n", "\n", " # Get minimum drag\n", " Vmd = (B/A)**.25\n", " md = A * Vmd**2 + B * Vmd**-2\n", "\n", "\n", " fig.add_trace(go.Scatter(x=Vs, y=D, name=f\"Total Drag: W={W/1e3:1.0f}kN\"))\n", " fig.add_trace(go.Scatter(x=Vmd, y=md, mode=\"markers+text\",\\\n", " text=f\"{Vmd[0]:1.0f} m/s \",\\\n", " textposition=\"bottom center\", name=\"Annotation\"))\n", "\n", "\n", " \n", "\n", " fig.update_layout(\n", " title=f\"Total drag variation with aircraft weight - CD0 = {CD0}, K={K}, S={S}m^2, Sea Level\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Altitude\",\n", " )\n", " \n", "\n", "# fig.add_trace(go.Scatter(x=np.linspace(0, 300, 1000), y=md*np.ones(1000), name=\"Constant Minimum Drag\", connectgaps=True))\n", " \n", " \n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", " \n", " \n", "fig.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Variation of aircraft drag in cruise: summary\n", "\n", "In the drag equation, the combination of $V^2$ and $V^{-2}$ terms gives a minima in the total drag curve at the minimum drag speed, $V_{md}$ which can be determined directly from $V_{md}=\\left[\\frac{B}{A}\\right]^{\\frac{1}{4}}$.\n", "\n", "At *low speed*, the **induced drag** term $B=\\frac{K\\,W}{\\frac{1}{2}\\rho\\,S}$ dominates.\n", "\n", "```{admonition} Think: where in a flight regime is this important?\n", ":class: dropdown\n", "\n", "Take-off, landing, and air combat.\n", "```\n", "At *high speed*, the **profile drag** term $A=\\frac{1}{2}\\rho C_{D0}S$ dominates.\n", "\n", "```{admonition} Think: where in a flight regime is this important?\n", ":class: dropdown\n", "\n", "At cruise conditions.\n", "```\n", "This gives an indication of which parameters are relevant for different aircraft if drag reduction is desired.\n", "\n", "Answer the following questions:\n", "\n", "\n", "```{admonition} Describe the effect of *altitude* on drag curves.\n", ":class: dropdown\n", "\n", "An increase in altitude causes a decrease in density. This causes the induced drag to increase, and the profile drag to decrease. The minimum drag speed increases with altitude, but the minimum drag stays constant.\n", "\n", "The visual effect is that total drag curves are shifted to the right, but the minima remains at the same position.\n", "```\n", "\n", "```{admonition} Describe the effect of *aircraft weight* on drag curves.\n", ":class: dropdown\n", "\n", "An increase in aircraft weight affects *only* the induced drag, which is increased.\n", "\n", "The visual effect is that total drag curves are shifted to the right, and up - the minimum drag *and* the minimum drag speed are increased.\n", "```\n", "\n", "\n", "```{admonition} Describe the effect of *wing area* on drag curves.\n", ":class: dropdown\n", "\n", "This wasn't covered above, but you should be able to answer using the same logic. Think about what you expect the answer to be, then try and plot it.\n", "\n", "Discuss the answer on Slack.\n", "```\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Removing the Altitude Dependency - EAS\n", "\n", "The drag equation as presented, in dimensional form is\n", "\n", "$$D = C_{D0}\\frac{1}{2}\\rho\\,V^2S + \\frac{K\\,W^2}{\\frac{1}{2}\\rho\\,V^2S}$$\n", "\n", "where the velocity in question is TAS. We can use the relationship\n", "\n", "$$\\frac{V_E}{V}=\\sqrt{\\frac{\\rho}{\\rho_{SL}}}$$\n", "\n", "to express the drag equation in terms of EAS:\n", "\n", "$$D = C_{D0}\\frac{1}{2}\\rho_{SL}\\,V_E^2S + \\frac{K\\,W^2}{\\frac{1}{2}\\rho_{SL}\\,V_E^2S}$$\n", "\n", "or\n", "\n", "$$D = A_E\\cdot V_E^2 + B_E\\cdot V_E^{-2}$$\n", "\n", "where $A_E$ and $B_E$ are defined as before, but with the sea-level density in place of density at whatever altitude is in question.\n", "\n", "This has the effect of *collapsing the drag curves together*, as $\\rho_{SL}$ is a constant." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": false, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Total Drag: 0km", "type": "scatter", "x": [ 80.81220296635497, 81.0716502106329, 81.33109745491082, 81.59054469918874, 81.84999194346666, 82.10943918774458, 82.3688864320225, 82.62833367630043, 82.88778092057836, 83.14722816485629, 83.40667540913421, 83.66612265341213, 83.92556989769005, 84.18501714196798, 84.4444643862459, 84.70391163052382, 84.96335887480174, 85.22280611907966, 85.48225336335759, 85.74170060763551, 86.00114785191343, 86.26059509619135, 86.52004234046927, 86.7794895847472, 87.03893682902512, 87.29838407330305, 87.55783131758098, 87.8172785618589, 88.07672580613682, 88.33617305041474, 88.59562029469267, 88.85506753897059, 89.11451478324851, 89.37396202752643, 89.63340927180435, 89.89285651608228, 90.1523037603602, 90.41175100463812, 90.67119824891604, 90.93064549319396, 91.1900927374719, 91.44953998174981, 91.70898722602774, 91.96843447030567, 92.22788171458359, 92.48732895886151, 92.74677620313943, 93.00622344741736, 93.26567069169528, 93.5251179359732, 93.78456518025112, 94.04401242452904, 94.30345966880697, 94.56290691308489, 94.82235415736281, 95.08180140164075, 95.34124864591865, 95.60069589019659, 95.86014313447451, 96.11959037875243, 96.37903762303036, 96.63848486730828, 96.8979321115862, 97.15737935586412, 97.41682660014204, 97.67627384441997, 97.93572108869789, 98.19516833297581, 98.45461557725373, 98.71406282153166, 98.97351006580959, 99.2329573100875, 99.49240455436544, 99.75185179864334, 100.01129904292128, 100.2707462871992, 100.53019353147712, 100.78964077575505, 101.04908802003297, 101.30853526431089, 101.56798250858881, 101.82742975286673, 102.08687699714466, 102.34632424142258, 102.6057714857005, 102.86521872997842, 103.12466597425635, 103.38411321853428, 103.64356046281219, 103.90300770709013, 104.16245495136803, 104.42190219564597, 104.68134943992389, 104.94079668420181, 105.20024392847974, 105.45969117275766, 105.71913841703558, 105.9785856613135, 106.23803290559142, 106.49748014986935, 106.75692739414727, 107.01637463842519, 107.27582188270313, 107.53526912698104, 107.79471637125897, 108.05416361553688, 108.31361085981482, 108.57305810409274, 108.83250534837066, 109.09195259264858, 109.3513998369265, 109.61084708120443, 109.87029432548235, 110.12974156976027, 110.38918881403819, 110.64863605831611, 110.90808330259404, 111.16753054687196, 111.42697779114988, 111.68642503542782, 111.94587227970572, 112.20531952398366, 112.46476676826157, 112.7242140125395, 112.98366125681743, 113.24310850109535, 113.50255574537327, 113.7620029896512, 114.02145023392912, 114.28089747820704, 114.54034472248496, 114.79979196676288, 115.0592392110408, 115.31868645531873, 115.57813369959666, 115.83758094387457, 116.0970281881525, 116.35647543243041, 116.61592267670835, 116.87536992098626, 117.1348171652642, 117.39426440954212, 117.65371165382004, 117.91315889809796, 118.17260614237588, 118.4320533866538, 118.69150063093173, 118.95094787520965, 119.21039511948757, 119.46984236376551, 119.72928960804342, 119.98873685232135, 120.24818409659926, 120.5076313408772, 120.7670785851551, 121.02652582943304, 121.28597307371096, 121.54542031798889, 121.80486756226681, 122.06431480654473, 122.32376205082265, 122.58320929510057, 122.8426565393785, 123.10210378365642, 123.36155102793434, 123.62099827221226, 123.8804455164902, 124.1398927607681, 124.39934000504604, 124.65878724932395, 124.91823449360189, 125.1776817378798, 125.43712898215773, 125.69657622643565, 125.95602347071357, 126.2154707149915, 126.47491795926942, 126.73436520354734, 126.99381244782526, 127.25325969210319, 127.51270693638111, 127.77215418065904, 128.03160142493695, 128.2910486692149, 128.5504959134928, 128.80994315777073, 129.06939040204864, 129.32883764632658, 129.58828489060448, 129.84773213488242, 130.10717937916036, 130.36662662343826, 130.62607386771617, 130.8855211119941, 131.14496835627205, 131.40441560054995, 131.66386284482786, 131.9233100891058, 132.18275733338373, 132.44220457766164, 132.70165182193958, 132.96109906621749, 133.22054631049542, 133.47999355477333, 133.73944079905127, 133.9988880433292, 134.2583352876071, 134.51778253188502, 134.77722977616295, 135.0366770204409, 135.2961242647188, 135.5555715089967, 135.81501875327464, 136.07446599755258, 136.3339132418305, 136.59336048610842, 136.85280773038633, 137.11225497466427, 137.37170221894218, 137.6311494632201, 137.89059670749805, 138.15004395177596, 138.40949119605386, 138.6689384403318, 138.92838568460974, 139.18783292888764, 139.44728017316555, 139.7067274174435, 139.96617466172142, 140.22562190599933, 140.48506915027727, 140.74451639455518, 141.0039636388331, 141.26341088311102, 141.52285812738896, 141.78230537166687, 142.0417526159448, 142.3011998602227, 142.56064710450065, 142.82009434877858, 143.0795415930565, 143.3389888373344, 143.59843608161233, 143.85788332589027, 144.11733057016818, 144.37677781444611, 144.63622505872402, 144.89567230300196, 145.15511954727987, 145.4145667915578, 145.67401403583574, 145.93346128011365, 146.19290852439156, 146.4523557686695, 146.71180301294743, 146.97125025722534, 147.23069750150324, 147.49014474578118, 147.74959199005912, 148.00903923433702, 148.26848647861493, 148.52793372289287, 148.7873809671708, 149.0468282114487, 149.30627545572662, 149.56572270000459, 149.8251699442825, 150.0846171885604, 150.34406443283834, 150.60351167711627, 150.86295892139418, 151.1224061656721, 151.38185340995003, 151.64130065422796, 151.90074789850587, 152.16019514278378, 152.4196423870617, 152.67908963133965, 152.93853687561756, 153.19798411989547, 153.45743136417343, 153.71687860845134, 153.97632585272925, 154.23577309700718, 154.49522034128512, 154.75466758556303, 155.01411482984093, 155.27356207411887, 155.5330093183968, 155.79245656267472, 156.05190380695262, 156.31135105123056, 156.5707982955085, 156.8302455397864, 157.0896927840643, 157.34914002834225, 157.60858727262018, 157.8680345168981, 158.12748176117603, 158.38692900545396, 158.64637624973187, 158.90582349400978, 159.16527073828772, 159.42471798256565, 159.68416522684356, 159.94361247112147, 160.2030597153994, 160.46250695967734, 160.72195420395525, 160.98140144823316, 161.2408486925111, 161.50029593678903, 161.75974318106694, 162.01919042534487, 162.2786376696228, 162.53808491390072, 162.79753215817863, 163.05697940245656, 163.3164266467345, 163.5758738910124, 163.83532113529031, 164.09476837956825, 164.3542156238462, 164.6136628681241, 164.873110112402, 165.13255735667994, 165.39200460095788, 165.65145184523578, 165.9108990895137, 166.17034633379166, 166.42979357806956, 166.68924082234747, 166.9486880666254, 167.20813531090334, 167.46758255518125, 167.72702979945916, 167.9864770437371, 168.24592428801503, 168.50537153229294, 168.76481877657085, 169.02426602084878, 169.28371326512672, 169.54316050940463, 169.80260775368254, 170.0620549979605, 170.3215022422384, 170.58094948651632, 170.84039673079425, 171.0998439750722, 171.3592912193501, 171.618738463628, 171.87818570790594, 172.13763295218388, 172.3970801964618, 172.6565274407397, 172.91597468501763, 173.17542192929557, 173.43486917357347, 173.69431641785138, 173.95376366212932, 174.21321090640726, 174.47265815068516, 174.7321053949631, 174.99155263924104, 175.25099988351894, 175.51044712779685, 175.7698943720748, 176.02934161635272, 176.28878886063063, 176.54823610490854, 176.80768334918648, 177.0671305934644, 177.32657783774232, 177.58602508202023, 177.84547232629816, 178.1049195705761, 178.364366814854, 178.62381405913194, 178.88326130340988, 179.1427085476878, 179.4021557919657, 179.66160303624363, 179.92105028052157, 180.18049752479948, 180.43994476907739, 180.69939201335532, 180.95883925763326, 181.21828650191117, 181.47773374618907, 181.737180990467, 181.99662823474495, 182.25607547902285, 182.51552272330076, 182.77496996757873, 183.03441721185663, 183.29386445613454, 183.55331170041248, 183.81275894469042, 184.07220618896832, 184.33165343324623, 184.59110067752417, 184.8505479218021, 185.10999516608, 185.36944241035792, 185.62888965463586, 185.8883368989138, 186.1477841431917, 186.4072313874696, 186.66667863174757, 186.92612587602548, 187.1855731203034, 187.44502036458132, 187.70446760885926, 187.96391485313717, 188.22336209741508, 188.482809341693, 188.74225658597095, 189.00170383024886, 189.26115107452677, 189.5205983188047, 189.78004556308264, 190.03949280736055, 190.29894005163845, 190.5583872959164, 190.81783454019433, 191.07728178447223, 191.33672902875017, 191.5961762730281, 191.85562351730601, 192.11507076158392, 192.37451800586186, 192.6339652501398, 192.8934124944177, 193.1528597386956, 193.41230698297355, 193.67175422725148, 193.9312014715294, 194.1906487158073, 194.45009596008524, 194.70954320436317, 194.96899044864108, 195.22843769291902, 195.48788493719695, 195.74733218147486, 196.00677942575277, 196.2662266700307, 196.52567391430864, 196.78512115858655, 197.04456840286446, 197.3040156471424, 197.56346289142033, 197.82291013569824, 198.08235737997614, 198.34180462425408, 198.60125186853202, 198.86069911280993, 199.12014635708783, 199.3795936013658, 199.6390408456437, 199.8984880899216, 200.15793533419955, 200.4173825784775, 200.6768298227554, 200.9362770670333, 201.19572431131124, 201.45517155558917, 201.71461879986708, 201.974066044145, 202.23351328842293, 202.49296053270086, 202.75240777697877, 203.01185502125668, 203.27130226553464, 203.53074950981255, 203.79019675409046, 204.0496439983684, 204.30909124264633, 204.56853848692424, 204.82798573120215, 205.08743297548008, 205.34688021975802, 205.60632746403593, 205.86577470831384, 206.12522195259177, 206.3846691968697, 206.64411644114762, 206.90356368542552, 207.16301092970346, 207.4224581739814, 207.6819054182593, 207.94135266253724, 208.20079990681518, 208.46024715109309, 208.719694395371, 208.9791416396489, 209.23858888392687, 209.49803612820477, 209.75748337248268, 210.01693061676065, 210.27637786103855, 210.53582510531646, 210.79527234959437, 211.05471959387233, 211.31416683815024, 211.57361408242815, 211.83306132670606, 212.09250857098402, 212.35195581526193, 212.61140305953984, 212.87085030381775, 213.1302975480957, 213.38974479237362, 213.64919203665153, 213.9086392809295, 214.1680865252074, 214.4275337694853, 214.68698101376322, 214.94642825804118, 215.2058755023191, 215.465322746597, 215.7247699908749, 215.98421723515287, 216.24366447943078, 216.50311172370868, 216.7625589679866, 217.02200621226456, 217.28145345654247, 217.54090070082037, 217.80034794509828, 218.05979518937625, 218.31924243365415, 218.57868967793206, 218.83813692221003, 219.09758416648793, 219.35703141076584, 219.61647865504375, 219.87592589932171, 220.13537314359962, 220.39482038787753, 220.65426763215544, 220.9137148764334, 221.1731621207113, 221.43260936498922, 221.69205660926713, 221.9515038535451, 222.210951097823, 222.4703983421009, 222.72984558637887, 222.98929283065678, 223.2487400749347, 223.5081873192126, 223.76763456349056, 224.02708180776847, 224.28652905204638, 224.54597629632428, 224.80542354060225, 225.06487078488016, 225.32431802915806, 225.58376527343597, 225.84321251771394, 226.10265976199184, 226.36210700626975, 226.62155425054772, 226.88100149482563, 227.14044873910353, 227.39989598338144, 227.6593432276594, 227.9187904719373, 228.17823771621522, 228.43768496049313, 228.6971322047711, 228.956579449049, 229.2160266933269, 229.47547393760482, 229.73492118188278, 229.9943684261607, 230.2538156704386, 230.51326291471656, 230.77271015899447, 231.03215740327238, 231.2916046475503, 231.55105189182825, 231.81049913610616, 232.06994638038407, 232.32939362466198, 232.58884086893994, 232.84828811321785, 233.10773535749576, 233.36718260177366, 233.62662984605163, 233.88607709032954, 234.14552433460744, 234.40497157888535, 234.66441882316332, 234.92386606744122, 235.18331331171913, 235.4427605559971, 235.702207800275, 235.9616550445529, 236.22110228883082, 236.48054953310879, 236.7399967773867, 236.9994440216646, 237.2588912659425, 237.51833851022047, 237.77778575449838, 238.0372329987763, 238.2966802430542, 238.55612748733216, 238.81557473161007, 239.07502197588798, 239.33446922016594, 239.59391646444385, 239.85336370872176, 240.11281095299967, 240.37225819727763, 240.63170544155554, 240.89115268583345, 241.15059993011135, 241.41004717438932, 241.66949441866723, 241.92894166294514, 242.18838890722304, 242.447836151501, 242.70728339577892, 242.96673064005682, 243.2261778843348, 243.4856251286127, 243.7450723728906, 244.0045196171685, 244.26396686144648, 244.52341410572438, 244.7828613500023, 245.0423085942802, 245.30175583855817, 245.56120308283607, 245.82065032711398, 246.0800975713919, 246.33954481566985, 246.59899205994776, 246.85843930422567, 247.11788654850363, 247.37733379278154, 247.63678103705945, 247.89622828133736, 248.15567552561532, 248.41512276989323, 248.67457001417114, 248.93401725844905, 249.193464502727, 249.45291174700492, 249.71235899128283, 249.97180623556073, 250.2312534798387, 250.4907007241166, 250.75014796839451, 251.00959521267242, 251.2690424569504, 251.5284897012283, 251.7879369455062, 252.04738418978417, 252.30683143406208, 252.56627867833998, 252.8257259226179, 253.08517316689586, 253.34462041117376, 253.60406765545167, 253.86351489972958, 254.12296214400754, 254.38240938828545, 254.64185663256336, 254.90130387684127, 255.16075112111923, 255.42019836539714, 255.67964560967505, 255.939092853953, 256.1985400982309, 256.45798734250883, 256.71743458678674, 256.9768818310647, 257.2363290753426, 257.4957763196205, 257.7552235638984, 258.0146708081764, 258.2741180524543, 258.5335652967322, 258.7930125410101, 259.0524597852881, 259.311907029566, 259.5713542738439, 259.83080151812186, 260.09024876239977, 260.3496960066777, 260.6091432509556, 260.86859049523355, 261.12803773951146, 261.38748498378936, 261.64693222806727, 261.90637947234524, 262.16582671662314, 262.42527396090105, 262.68472120517896, 262.9441684494569, 263.20361569373483, 263.46306293801274, 263.7225101822907, 263.9819574265686, 264.2414046708465, 264.50085191512443, 264.7602991594024, 265.0197464036803, 265.2791936479582, 265.5386408922361, 265.7980881365141, 266.057535380792, 266.3169826250699, 266.5764298693478, 266.83587711362577, 267.0953243579037, 267.3547716021816, 267.6142188464595, 267.87366609073746, 268.13311333501537, 268.3925605792933, 268.65200782357124, 268.91145506784915, 269.17090231212705, 269.43034955640496, 269.6897968006829, 269.94924404496084, 270.20869128923874, 270.46813853351665, 270.7275857777946, 270.9870330220725, 271.24648026635043, 271.50592751062834, 271.7653747549063, 272.0248219991842, 272.2842692434621, 272.5437164877401, 272.803163732018, 273.0626109762959, 273.3220582205738, 273.5815054648518, 273.8409527091297, 274.1003999534076, 274.3598471976855, 274.61929444196346, 274.87874168624137, 275.1381889305193, 275.3976361747972, 275.65708341907515, 275.91653066335306, 276.17597790763097, 276.43542515190893, 276.69487239618684, 276.95431964046475, 277.21376688474265, 277.4732141290206, 277.7326613732985, 277.99210861757643, 278.25155586185434, 278.5110031061323, 278.7704503504102, 279.0298975946881, 279.28934483896603, 279.548792083244, 279.8082393275219, 280.0676865717998, 280.3271338160778, 280.5865810603557, 280.8460283046336, 281.1054755489115, 281.36492279318946, 281.6243700374674, 281.8838172817453, 282.1432645260232, 282.40271177030115, 282.66215901457906, 282.92160625885697, 283.1810535031349, 283.44050074741284, 283.69994799169075, 283.95939523596866, 284.21884248024656, 284.47828972452453, 284.73773696880244, 284.99718421308035, 285.2566314573583, 285.5160787016362, 285.7755259459141, 286.03497319019203, 286.29442043447, 286.5538676787479, 286.8133149230258, 287.0727621673037, 287.3322094115817, 287.5916566558596, 287.8511039001375, 288.1105511444154, 288.3699983886934, 288.6294456329713, 288.8888928772492, 289.14834012152716, 289.40778736580506, 289.66723461008297, 289.9266818543609, 290.18612909863884, 290.44557634291675, 290.70502358719466, 290.96447083147257, 291.22391807575053, 291.48336532002844, 291.74281256430635, 292.00225980858426, 292.2617070528622, 292.52115429714013, 292.78060154141804, 293.040048785696, 293.2994960299739, 293.5589432742518, 293.8183905185297, 294.0778377628077, 294.3372850070856, 294.5967322513635, 294.8561794956414, 295.1156267399194, 295.3750739841973, 295.6345212284752, 295.8939684727531, 296.15341571703107, 296.412862961309, 296.6723102055869, 296.93175744986485, 297.19120469414275, 297.45065193842066, 297.71009918269857, 297.96954642697654, 298.22899367125444, 298.48844091553235, 298.74788815981026, 299.0073354040882, 299.26678264836613, 299.52622989264404, 299.78567713692195, 300.0451243811999, 300.3045716254778, 300.5640188697557, 300.82346611403364, 301.0829133583116, 301.3423606025895, 301.6018078468674, 301.8612550911454, 302.1207023354233, 302.3801495797012, 302.6395968239791, 302.89904406825707, 303.158491312535, 303.4179385568129, 303.6773858010908, 303.93683304536876, 304.19628028964667, 304.4557275339246, 304.7151747782025, 304.97462202248045, 305.23406926675835, 305.49351651103626, 305.7529637553142, 306.01241099959213, 306.27185824387004, 306.53130548814795, 306.7907527324259, 307.0501999767038, 307.30964722098173, 307.56909446525964, 307.8285417095376, 308.0879889538155, 308.3474361980934, 308.6068834423713, 308.8663306866493, 309.1257779309272, 309.3852251752051, 309.6446724194831, 309.904119663761, 310.1635669080389, 310.4230141523168, 310.68246139659476, 310.94190864087267, 311.2013558851506, 311.4608031294285, 311.72025037370645, 311.97969761798436, 312.23914486226226, 312.4985921065402, 312.75803935081814, 313.01748659509605, 313.27693383937395, 313.5363810836519, 313.7958283279298, 314.05527557220773, 314.31472281648564, 314.5741700607636, 314.8336173050415, 315.0930645493194, 315.35251179359733, 315.6119590378753, 315.8714062821532, 316.1308535264311, 316.390300770709, 316.649748014987, 316.9091952592649, 317.1686425035428, 317.4280897478207, 317.68753699209867, 317.9469842363766, 318.2064314806545, 318.46587872493245, 318.72532596921036, 318.98477321348827, 319.2442204577662, 319.50366770204414, 319.76311494632205, 320.02256219059996, 320.28200943487786, 320.54145667915583, 320.80090392343374, 321.06035116771164, 321.31979841198955, 321.5792456562675, 321.8386929005454, 322.09814014482333, 322.3575873891013, 322.6170346333792, 322.8764818776571, 323.135929121935, 323.395376366213, 323.6548236104909, 323.9142708547688, 324.1737180990467, 324.4331653433247, 324.6926125876026, 324.9520598318805, 325.2115070761584, 325.47095432043636, 325.73040156471427, 325.9898488089922, 326.24929605327014, 326.50874329754805, 326.76819054182596, 327.02763778610387, 327.28708503038183, 327.54653227465974, 327.80597951893765, 328.06542676321556, 328.3248740074935, 328.5843212517714, 328.84376849604934, 329.10321574032724, 329.3626629846052, 329.6221102288831, 329.881557473161, 330.141004717439, 330.4004519617169, 330.6598992059948, 330.9193464502727, 331.1787936945507, 331.4382409388286, 331.6976881831065, 331.9571354273844, 332.21658267166237, 332.4760299159403, 332.7354771602182, 332.9949244044961, 333.25437164877405, 333.51381889305196, 333.77326613732987, 334.0327133816078, 334.29216062588574, 334.55160787016365, 334.81105511444156, 335.0705023587195, 335.32994960299743, 335.58939684727534, 335.84884409155325, 336.1082913358312, 336.3677385801091, 336.627185824387, 336.88663306866493, 337.14608031294284, 337.4055275572208, 337.6649748014987, 337.9244220457766, 338.1838692900546, 338.4433165343325, 338.7027637786104, 338.9622110228883, 339.2216582671663, 339.4811055114442, 339.7405527557221, 340 ], "y": [ 23450, 23341.17857281152, 23233.65951408784, 23127.427122476005, 23022.465945077958, 22918.760772747613, 22816.296635491486, 22715.058797970225, 22615.032755098604, 22516.204227741426, 22418.559158503, 22322.083707607933, 22226.764248870815, 22132.58736575284, 22039.539847502998, 21947.608685381965, 21856.78106896649, 21767.04438253254, 21678.386201515023, 21590.794289042544, 21504.256592545076, 21418.761240433065, 21334.29653884605, 21250.85096846932, 21168.41318141679, 21086.971998178706, 21006.51640463253, 20927.035549115568, 20848.51873955786, 20770.955440673933, 20694.335271212036, 20618.648001259506, 20543.883549603008, 20470.031981142274, 20397.08350435624, 20325.028468820234, 20253.857362773157, 20183.560810733445, 20114.129571162717, 20045.554534176015, 19977.82671929757, 19910.93727326112, 19844.87746785366, 19779.638697801776, 19715.212478699494, 19651.590444976784, 19588.764347907796, 19526.726053657912, 19465.467541368787, 19404.980901280534, 19345.258332890186, 19286.292143145733, 19228.074744674825, 19170.598654047488, 19113.85649007206, 19057.840972123624, 19002.54491850424, 18947.961244834307, 18894.082962474316, 18840.90317697643, 18788.415086565168, 18736.611980646634, 18685.48723834561, 18635.034327069985, 18585.24680110193, 18536.11830021519, 18487.642548317996, 18439.813352121062, 18392.624599830116, 18346.070259862423, 18300.144379586876, 18254.841084087075, 18210.15457494697, 18166.079129058606, 18122.609097451445, 18079.738904142898, 18037.463045009594, 17995.776086678947, 17954.67266544063, 17914.14748617752, 17874.195321315776, 17834.81100979356, 17795.98945604814, 17757.725629020893, 17720.014561179934, 17682.85134755996, 17646.231144818994, 17610.149170311655, 17574.600701178693, 17539.58107345235, 17505.085681177374, 17471.109975547242, 17437.649464055386, 17404.699709661076, 17372.256329969685, 17340.31499642705, 17308.871433527678, 17277.921418036465, 17247.46077822375, 17217.48539311336, 17187.99119174343, 17158.974152439805, 17130.43030210166, 17102.355715499216, 17074.746514583232, 17047.59886780617, 17020.90898945462, 16994.67313899295, 16968.887620417885, 16943.54878162382, 16918.65301377862, 16894.196750709816, 16870.17646830088, 16846.588683897477, 16823.42995572346, 16800.69688230643, 16778.386101912736, 16756.494291991625, 16735.018168628496, 16713.95448600702, 16693.300035879955, 16673.05164704856, 16653.206184850358, 16633.760550655174, 16614.711681369245, 16596.056548947297, 16577.792159912402, 16559.91555488348, 16542.42380811037, 16525.314027016197, 16508.58335174709, 16492.2289547289, 16476.248040231025, 16460.63784393701, 16445.3956325219, 16430.518703236277, 16416.004383496696, 16401.850030482587, 16388.0530307394, 16374.61079978788, 16361.520781739466, 16348.78044891755, 16336.38730148464, 16324.338867075214, 16312.632700434255, 16301.266383061273, 16290.237522859821, 16279.543753792292, 16269.18273554005, 16259.152153168634, 16249.449716798124, 16240.073161278406, 16231.020245869393, 16222.288753926045, 16213.876492588122, 16205.781292474572, 16198.00100738251, 16190.533513990684, 16183.37671156735, 16176.528521682507, 16169.986887924375, 16163.749775620086, 16157.815171560498, 16152.181083729072, 16146.845541034701, 16141.806593048517, 16137.062309744495, 16132.610781243893, 16128.450117563385, 16124.57844836689, 16120.993922720976, 16117.694708853835, 16114.678993917723, 16111.944983754845, 16109.490902666596, 16107.31499318614, 16105.41551585423, 16103.790748998257, 16102.438988514428, 16101.358547653086, 16100.547756807051, 16100.004963302996, 16099.728531195746, 16099.716841065514, 16099.968289817989, 16100.481290487249, 16101.254272041406, 16102.285679191034, 16103.57397220025, 16105.117626700423, 16106.915133506494, 16108.964998435873, 16111.265742129799, 16113.815899877249, 16116.614021441197, 16119.658670887353, 16122.948426415212, 16126.481880191437, 16130.257638185543, 16134.274320007804, 16138.530558749426, 16143.025000824833, 16147.756305816158, 16152.723146319822, 16157.924207795204, 16163.358188415337, 16169.023798919668, 16174.919762468748, 16181.044814500925, 16187.397702590937, 16193.977186310402, 16200.782037090194, 16207.81103808463, 16215.062984037502, 16222.536681149842, 16230.230946949514, 16238.144610162453, 16246.276510585682, 16254.625498961963, 16263.190436856103, 16271.970196532915, 16280.96366083674, 16290.169723072588, 16299.587286888822, 16309.215266161347, 16319.052584879348, 16329.098177032502, 16339.350986499645, 16349.809966938874, 16360.474081679113, 16371.342303613033, 16382.413615091375, 16393.687007818626, 16405.161482750053, 16416.836049990023, 16428.709728691654, 16440.781546957733, 16453.05054174291, 16465.51575875711, 16478.176252370224, 16491.031085517934, 16504.0793296088, 16517.320064432493, 16530.75237806917, 16544.375366799995, 16558.188135018845, 16572.189795145016, 16586.379467537103, 16600.75628040795, 16615.319369740606, 16630.067879205406, 16645.00096007801, 16660.117771158515, 16675.417478691532, 16690.899256287285, 16706.562284843636, 16722.405752469123, 16738.42885440692, 16754.630792959728, 16771.010777415584, 16787.5680239746, 16804.301755676577, 16821.211202329505, 16838.295600438934, 16855.554193138214, 16872.986230119568, 16890.590967566004, 16908.367668084044, 16926.31560063728, 16944.434040480726, 16962.72226909595, 16981.17957412698, 16999.805249317007, 17018.598594445815, 17037.55891526799, 17056.685523451804, 17075.977736518922, 17095.43487778473, 17115.05627629945, 17134.841266789877, 17154.789189601877, 17174.899390643528, 17195.1712213289, 17215.60403852257, 17236.197204484743, 17256.950086817, 17277.862058408722, 17298.932497384118, 17320.160787049877, 17341.54631584343, 17363.08847728179, 17384.786669911045, 17406.640297256366, 17428.64876777264, 17450.81149479565, 17473.12789649385, 17495.59739582064, 17518.21942046725, 17540.99340281612, 17563.918779894833, 17586.994993330587, 17610.221489305157, 17633.597718510387, 17657.123136104194, 17680.79720166707, 17704.61937915906, 17728.589136877254, 17752.70594741373, 17776.96928761401, 17801.378638535956, 17825.933485409107, 17850.633317594544, 17875.477628545133, 17900.465915766268, 17925.597680776988, 17950.872429071605, 17976.289670081707, 18001.84891713861, 18027.549687436192, 18053.39150199418, 18079.373885621844, 18105.496366882046, 18131.75847805572, 18158.159755106768, 18184.699737647286, 18211.37796890321, 18238.193995680307, 18265.147368330614, 18292.237640719137, 18319.46437019099, 18346.827117538865, 18374.325446970866, 18401.95892607869, 18429.727125806134, 18457.62962041797, 18485.66598746916, 18513.83580777437, 18542.13866537783, 18570.574147523555, 18599.141844625818, 18627.84135023998, 18656.672261033655, 18685.63417675811, 18714.72670022007, 18743.949437253727, 18773.301996693113, 18802.78399034474, 18832.395032960525, 18862.134742211056, 18892.002738659023, 18921.99864573308, 18952.122089701854, 18982.37269964832, 19012.750107444375, 19043.25394772573, 19073.883857867055, 19104.63947795736, 19135.520450775653, 19166.526421766852, 19197.657039017962, 19228.91195323445, 19260.290817716937, 19291.793288338064, 19323.419023519644, 19355.167684210053, 19387.03893386179, 19419.03243840936, 19451.147866247327, 19483.384888208602, 19515.74317754295, 19548.22240989576, 19580.822263286973, 19613.542418090245, 19646.382557012344, 19679.34236507276, 19712.421529583473, 19745.619740128972, 19778.93668854647, 19812.372068906312, 19845.925577492588, 19879.596912783927, 19913.385775434497, 19947.29186825522, 19981.314896195116, 20015.454566322896, 20049.7105878087, 20084.08267190604, 20118.57053193393, 20153.173883259147, 20187.892443278728, 20222.725931402616, 20257.67406903648, 20292.736579564684, 20327.913188333474, 20363.203622634297, 20398.60761168729, 20434.124886624915, 20469.75518047582, 20505.49822814876, 20541.3537664168, 20577.321533901515, 20613.40127105751, 20649.592720156983, 20685.895625274487, 20722.309732271795, 20758.83478878298, 20795.47054419958, 20832.216749655952, 20869.07315801473, 20906.039523852447, 20943.1156034453, 20980.301154755038, 21017.59593741498, 21054.99971271621, 21092.512243593857, 21130.133294613526, 21167.862631957858, 21205.700023413236, 21243.645238356592, 21281.69804774235, 21319.858224089483, 21358.125541468744, 21396.499775489952, 21434.980703289424, 21473.56810351754, 21512.26175632643, 21551.061443357736, 21589.966947730543, 21628.978054029372, 21668.094548292356, 21707.316217999447, 21746.64285206078, 21786.074240805152, 21825.610175968584, 21865.250450683023, 21904.994859465092, 21944.84319820501, 21984.7952641556, 22024.85085592135, 22065.009773447648, 22105.271818010056, 22145.636792203724, 22186.104499932924, 22226.67474640056, 22267.34733809794, 22308.12208279454, 22348.998789527872, 22389.977268593473, 22431.057331534965, 22472.238791134234, 22513.521461401648, 22554.905157566423, 22596.389696067043, 22637.97489454177, 22679.660571819244, 22721.446547909185, 22763.33264399315, 22805.318682415407, 22847.404486673848, 22889.58988141104, 22931.8746924053, 22974.258746561933, 23016.741871904404, 23059.323897565766, 23102.00465378005, 23144.783971873745, 23187.661684257415, 23230.637624417282, 23273.71162690704, 23316.88352733957, 23360.153162378876, 23403.520369731978, 23446.98498814098, 23490.54685737512, 23534.205818222952, 23577.96171248455, 23621.81438296383, 23665.763673460922, 23709.80942876457, 23753.951494644643, 23798.189717844743, 23842.52394607479, 23886.95402800372, 23931.47981325228, 23976.101152385825, 24020.817896907232, 24065.62989924982, 24110.53701277038, 24155.539091742245, 24200.635991348445, 24245.827567674867, 24291.113677703517, 24336.494179305864, 24381.968931236166, 24427.53779312491, 24473.20062547234, 24518.957289641927, 24564.80764785403, 24610.751563179496, 24656.78889953342, 24702.91952166886, 24749.14329517069, 24795.46008644942, 24841.869762735194, 24888.372192071674, 24934.967243310144, 24981.65478610352, 25028.43469090054, 25075.30682893988, 25122.271072244424, 25169.327293615526, 25216.475366627335, 25263.71516562116, 25311.0465656999, 25358.469442722515, 25405.983673298524, 25453.589134782585, 25501.285705269085, 25549.073263586815, 25596.951689293634, 25644.92086267125, 25692.98066471997, 25741.130977153556, 25789.37168239408, 25837.70266356687, 25886.123804495415, 25934.634989696424, 25983.23610437483, 26031.927034418906, 26080.707666395334, 26129.577887544456, 26178.537585775386, 26227.586649661327, 26276.724968434817, 26325.952431983074, 26375.268930843333, 26424.674356198284, 26474.16859987146, 26523.75155432277, 26573.42311264397, 26623.183168554235, 26673.03161639572, 26722.968351129228, 26772.99326832981, 26823.106264182527, 26873.307235478107, 26923.59607960877, 26973.97269456399, 27024.436978926355, 27074.98883186739, 27125.628153143516, 27176.35484309194, 27227.168802626635, 27278.069933234343, 27329.0581369706, 27380.133316455802, 27431.295374871308, 27482.54421595556, 27533.87974400022, 27585.30186384641, 27636.810480880875, 27688.405501032285, 27740.086830767454, 27791.85437708772, 27843.70804752523, 27895.64775013932, 27947.67339351293, 27999.784886749025, 28051.98213946702, 28104.265061799306, 28156.63356438773, 28209.087558380146, 28261.62695542698, 28314.25166767781, 28366.961607778005, 28419.756688865367, 28472.636824566776, 28525.601928994944, 28578.651916745068, 28631.786702891666, 28685.006202985263, 28738.31033304927, 28791.699009576747, 28845.17214952732, 28898.729670323984, 28952.371489850073, 29006.097526446123, 29059.907698906864, 29113.801926478183, 29167.780128854098, 29221.842226173798, 29275.98813901869, 29330.217788409434, 29384.53109580307, 29438.927983090092, 29493.408372591613, 29547.97218705648, 29602.619349658504, 29657.34978399359, 29712.163414077037, 29767.060164340706, 29822.039959630318, 29877.102725202738, 29932.248386723277, 29987.476870263003, 30042.78810229609, 30098.18200969721, 30153.658519738874, 30209.217560088877, 30264.859058807695, 30320.582944345944, 30376.38914554184, 30432.277591618695, 30488.248212182378, 30544.300937218897, 30600.43569709187, 30656.652422540166, 30712.95104467538, 30769.33149497954, 30825.793705302614, 30882.337607860227, 30938.96313523124, 30995.670220355478, 31052.458796531362, 31109.328797413655, 31166.280157011133, 31223.312809684372, 31280.42669014345, 31337.62173344576, 31394.897874993752, 31452.25505053278, 31509.69319614888, 31567.212248266653, 31624.812143647036, 31682.49281938527, 31740.254212908683, 31798.096261974686, 31856.018904668585, 31914.02207940159, 31972.105724908724, 32030.26978024678, 32088.51418479232, 32146.83887823961, 32205.243800598702, 32263.728892193376, 32322.294093659228, 32380.939345941682, 32439.664590294087, 32498.469768275732, 32557.354821750025, 32616.319692882502, 32675.364324139013, 32734.488658283815, 32793.692638377746, 32852.97620777635, 32912.339310128074, 32971.78188937243, 33031.303889738236, 33090.90525574176, 33150.585932185015, 33210.345864153926, 33270.184997016644, 33330.10327642175, 33390.10064829659, 33450.17705884549, 33510.33245454812, 33570.56678215776, 33630.87998869965, 33691.27202146932, 33751.74282803092, 33812.292356215585, 33872.920554119846, 33933.62737010393, 33994.412752790246, 34055.276651061686, 34116.21901406017, 34177.23979118494, 34238.338932091116, 34299.51638668804, 34360.77210513781, 34422.106037853744, 34483.51813549883, 34545.00834898421, 34606.57662946777, 34668.22292835254, 34729.94719728527, 34791.74938815504, 34853.62945309161, 34915.58734446421, 34977.62301487992, 35039.736417182336, 35101.927504450156, 35164.19622999573, 35226.54254736368, 35288.96641032958, 35351.467772898446, 35414.046589303514, 35476.70281400478, 35539.43640168769, 35602.24730726185, 35665.135485859595, 35728.10089283473, 35791.14348376126, 35854.263214431965, 35917.46004085726, 35980.733919263796, 36044.084806093204, 36107.512658000924, 36171.017431854816, 36234.59908473397, 36298.2575739275, 36361.9928569332, 36425.80489145653, 36489.693635409145, 36553.65904690785, 36617.70108427343, 36681.81970602928, 36746.01487090043, 36810.28653781226, 36874.63466588929, 36939.059214454166, 37003.560143026385, 37068.13741132119, 37132.79097924848, 37197.5208069116, 37262.32685460627, 37327.2090828195, 37392.16745222842, 37457.20192369922, 37522.312458286106, 37587.49901723007, 37652.76156195799, 37718.10005408147, 37783.51445539578, 37849.00472787884, 37914.57083369013, 37980.21273516965, 38045.930394836985, 38111.723775390084, 38177.592839704485, 38243.53755083208, 38309.55787200025, 38375.65376661083, 38441.82519823909, 38508.07213063276, 38574.39452771111, 38640.79235356385, 38707.26557245031, 38773.81414879838, 38840.43804720358, 38907.137232428155, 38973.91166940008, 39040.761323212115, 39107.68615912098, 39174.68614254628, 39241.76123906971, 39308.91141443412, 39376.13663454253, 39443.43686545738, 39510.81207339948, 39578.26222474721, 39645.78728603569, 39713.38722395571, 39781.062005353124, 39848.81159722776, 39916.635966732676, 39984.535081173344, 40052.50890800664, 40120.55741484015, 40188.68056943135, 40256.878339686635, 40325.150693660566, 40393.49759955515, 40461.91902571881, 40530.41494064579, 40598.985312975215, 40667.63011149035, 40736.34930511778, 40805.14286292665, 40874.010754127805, 40942.95294807319, 41011.96941425479, 41081.06012230416, 41150.225041991485, 41219.46414322482, 41288.77739604944, 41358.16477064702, 41427.62623733482, 41497.16176656518, 41566.77132892444, 41636.45489513254, 41706.21243604211, 41776.04392263775, 41845.94932603542, 41915.92861748162, 41985.98176835273, 42056.10875015433, 42126.309534520384, 42196.584093212754, 42266.93239812032, 42337.35442125832, 42407.85013476785, 42478.41951091491, 42549.06252208992, 42619.77914080704, 42690.56933970338, 42761.43309153852, 42832.370369193726, 42903.38114567128, 42974.46539409395, 43045.623087704276, 43116.854199863876, 43188.15870405295, 43259.5365738695, 43330.987783028795, 43402.51230536275, 43474.11011481918, 43545.7811854614, 43617.52549146741, 43689.34300712938, 43761.23370685307, 43833.19756515715, 43905.23455667265, 43977.34465614241, 44049.52783842035, 44121.78407847103, 44194.11335136903, 44266.51563229827, 44338.99089655162, 44411.53911953014, 44484.160276742594, 44556.85434380498, 44629.62129643972, 44702.461110475386, 44775.373761845956, 44848.35922659028, 44921.41748085166, 44994.548500877165, 45067.75226301711, 45141.02874372462, 45214.37791955494, 45287.79976716507, 45361.29426331309, 45434.861384857686, 45508.5011087577, 45582.21341207152, 45655.99827195656, 45729.85566566886, 45803.785570562366, 45877.7879640887, 45951.86282379641, 46026.01012733059, 46100.22985243242, 46174.521976938544, 46248.88647878064, 46323.32333598501, 46397.83252667199, 46472.414029055435, 46547.06782144245, 46621.793882232596, 46696.59218991773, 46771.46272308131, 46846.405460398026, 46921.420380633346, 46996.50746264297, 47071.666685372445, 47146.89802785674, 47222.20146921961, 47297.576988673405, 47373.024565518404, 47448.54417914245, 47524.13580902057, 47599.79943471441, 47675.53503587184, 47751.34259222664, 47827.222083597786, 47903.17348988936, 47979.19679108987, 48055.29196727189, 48131.45899859171, 48207.69786528885, 48284.00854768559, 48360.39102618671, 48436.84528127887, 48513.37129353039, 48589.969043590754, 48666.63851219015, 48743.3796801392, 48820.19252832845, 48897.07703772797, 48974.03318938707, 49051.060964433724, 49128.16034407438, 49205.33130959341, 49282.57384235277, 49359.8879237917, 49437.27353542618, 49514.73065884867, 49592.259275727716, 49669.85936780752, 49747.530916907606, 49825.273904922484, 49903.088313821136, 49980.97412564684, 50058.93132251668, 50136.959886621175, 50215.059800224044, 50293.23104566167, 50371.47360534284, 50449.787461748456, 50528.17259743099, 50606.62899501434, 50685.15663719332, 50763.75550673342, 50842.42558647042, 50921.16685931002, 50999.979308227514, 51078.86291626754, 51157.81766654353, 51236.84354223762, 51315.94052660015, 51395.108602949374, 51474.347754671195, 51553.65796521872, 51633.03921811201, 51712.491496937786, 51792.01478534897, 51871.60906706454, 51951.2743258691, 52031.01054561252, 52110.8177102098, 52190.69580364058, 52270.64480994886, 52350.66471324283, 52430.75549769432, 52510.91714753873, 52591.149647074555, 52671.45298066316, 52751.82713272853, 52832.27208775682, 52912.78783029616, 52993.3743449564, 53074.031616408676, 53154.75962938523, 53235.558368679136, 53316.427819143835, 53397.36796569308, 53478.37879330052, 53559.460286999376, 53640.612431882284, 53721.8352131009, 53803.128615865666, 53884.49262544559, 53965.92722716778, 54047.432406417414, 54129.0081486373, 54210.65443932763, 54292.37126404576, 54374.158608405916, 54456.01645807885, 54537.94479879175, 54619.94361632774, 54702.01289652584, 54784.15262528057, 54866.362788541686, 54948.64337231404, 55030.99436265717, 55113.41574568511, 55195.907507566226, 55278.46963452273, 55361.1021128307, 55443.80492881962, 55526.578068872244, 55609.421519424315, 55692.33526696429, 55775.31929803313, 55858.37359922408, 55941.49815718231, 56024.69295860484, 56107.95799024015, 56191.293238888036, 56274.698691399346, 56358.17433467571, 56441.72015566933, 56525.3361413828, 56609.02227886876, 56692.77855522973, 56776.60495761794, 56860.50147323496, 56944.46808933157, 57028.50479320753, 57112.611572211295, 57196.7884137399, 57281.03530523861, 57365.352234200756, 57449.739188167536, 57534.1961547278, 57618.723121517745, 57703.32007622081, 57787.98700656734 ] }, { "name": "Total Drag: 5km", "type": "scatter", "x": [ 80.81220296635497, 81.0716502106329, 81.33109745491082, 81.59054469918874, 81.84999194346666, 82.10943918774458, 82.3688864320225, 82.62833367630043, 82.88778092057836, 83.14722816485629, 83.40667540913421, 83.66612265341213, 83.92556989769005, 84.18501714196798, 84.4444643862459, 84.70391163052382, 84.96335887480174, 85.22280611907966, 85.48225336335759, 85.74170060763551, 86.00114785191343, 86.26059509619135, 86.52004234046927, 86.7794895847472, 87.03893682902512, 87.29838407330305, 87.55783131758098, 87.8172785618589, 88.07672580613682, 88.33617305041474, 88.59562029469267, 88.85506753897059, 89.11451478324851, 89.37396202752643, 89.63340927180435, 89.89285651608228, 90.1523037603602, 90.41175100463812, 90.67119824891604, 90.93064549319396, 91.1900927374719, 91.44953998174981, 91.70898722602774, 91.96843447030567, 92.22788171458359, 92.48732895886151, 92.74677620313943, 93.00622344741736, 93.26567069169528, 93.5251179359732, 93.78456518025112, 94.04401242452904, 94.30345966880697, 94.56290691308489, 94.82235415736281, 95.08180140164075, 95.34124864591865, 95.60069589019659, 95.86014313447451, 96.11959037875243, 96.37903762303036, 96.63848486730828, 96.8979321115862, 97.15737935586412, 97.41682660014204, 97.67627384441997, 97.93572108869789, 98.19516833297581, 98.45461557725373, 98.71406282153166, 98.97351006580959, 99.2329573100875, 99.49240455436544, 99.75185179864334, 100.01129904292128, 100.2707462871992, 100.53019353147712, 100.78964077575505, 101.04908802003297, 101.30853526431089, 101.56798250858881, 101.82742975286673, 102.08687699714466, 102.34632424142258, 102.6057714857005, 102.86521872997842, 103.12466597425635, 103.38411321853428, 103.64356046281219, 103.90300770709013, 104.16245495136803, 104.42190219564597, 104.68134943992389, 104.94079668420181, 105.20024392847974, 105.45969117275766, 105.71913841703558, 105.9785856613135, 106.23803290559142, 106.49748014986935, 106.75692739414727, 107.01637463842519, 107.27582188270313, 107.53526912698104, 107.79471637125897, 108.05416361553688, 108.31361085981482, 108.57305810409274, 108.83250534837066, 109.09195259264858, 109.3513998369265, 109.61084708120443, 109.87029432548235, 110.12974156976027, 110.38918881403819, 110.64863605831611, 110.90808330259404, 111.16753054687196, 111.42697779114988, 111.68642503542782, 111.94587227970572, 112.20531952398366, 112.46476676826157, 112.7242140125395, 112.98366125681743, 113.24310850109535, 113.50255574537327, 113.7620029896512, 114.02145023392912, 114.28089747820704, 114.54034472248496, 114.79979196676288, 115.0592392110408, 115.31868645531873, 115.57813369959666, 115.83758094387457, 116.0970281881525, 116.35647543243041, 116.61592267670835, 116.87536992098626, 117.1348171652642, 117.39426440954212, 117.65371165382004, 117.91315889809796, 118.17260614237588, 118.4320533866538, 118.69150063093173, 118.95094787520965, 119.21039511948757, 119.46984236376551, 119.72928960804342, 119.98873685232135, 120.24818409659926, 120.5076313408772, 120.7670785851551, 121.02652582943304, 121.28597307371096, 121.54542031798889, 121.80486756226681, 122.06431480654473, 122.32376205082265, 122.58320929510057, 122.8426565393785, 123.10210378365642, 123.36155102793434, 123.62099827221226, 123.8804455164902, 124.1398927607681, 124.39934000504604, 124.65878724932395, 124.91823449360189, 125.1776817378798, 125.43712898215773, 125.69657622643565, 125.95602347071357, 126.2154707149915, 126.47491795926942, 126.73436520354734, 126.99381244782526, 127.25325969210319, 127.51270693638111, 127.77215418065904, 128.03160142493695, 128.2910486692149, 128.5504959134928, 128.80994315777073, 129.06939040204864, 129.32883764632658, 129.58828489060448, 129.84773213488242, 130.10717937916036, 130.36662662343826, 130.62607386771617, 130.8855211119941, 131.14496835627205, 131.40441560054995, 131.66386284482786, 131.9233100891058, 132.18275733338373, 132.44220457766164, 132.70165182193958, 132.96109906621749, 133.22054631049542, 133.47999355477333, 133.73944079905127, 133.9988880433292, 134.2583352876071, 134.51778253188502, 134.77722977616295, 135.0366770204409, 135.2961242647188, 135.5555715089967, 135.81501875327464, 136.07446599755258, 136.3339132418305, 136.59336048610842, 136.85280773038633, 137.11225497466427, 137.37170221894218, 137.6311494632201, 137.89059670749805, 138.15004395177596, 138.40949119605386, 138.6689384403318, 138.92838568460974, 139.18783292888764, 139.44728017316555, 139.7067274174435, 139.96617466172142, 140.22562190599933, 140.48506915027727, 140.74451639455518, 141.0039636388331, 141.26341088311102, 141.52285812738896, 141.78230537166687, 142.0417526159448, 142.3011998602227, 142.56064710450065, 142.82009434877858, 143.0795415930565, 143.3389888373344, 143.59843608161233, 143.85788332589027, 144.11733057016818, 144.37677781444611, 144.63622505872402, 144.89567230300196, 145.15511954727987, 145.4145667915578, 145.67401403583574, 145.93346128011365, 146.19290852439156, 146.4523557686695, 146.71180301294743, 146.97125025722534, 147.23069750150324, 147.49014474578118, 147.74959199005912, 148.00903923433702, 148.26848647861493, 148.52793372289287, 148.7873809671708, 149.0468282114487, 149.30627545572662, 149.56572270000459, 149.8251699442825, 150.0846171885604, 150.34406443283834, 150.60351167711627, 150.86295892139418, 151.1224061656721, 151.38185340995003, 151.64130065422796, 151.90074789850587, 152.16019514278378, 152.4196423870617, 152.67908963133965, 152.93853687561756, 153.19798411989547, 153.45743136417343, 153.71687860845134, 153.97632585272925, 154.23577309700718, 154.49522034128512, 154.75466758556303, 155.01411482984093, 155.27356207411887, 155.5330093183968, 155.79245656267472, 156.05190380695262, 156.31135105123056, 156.5707982955085, 156.8302455397864, 157.0896927840643, 157.34914002834225, 157.60858727262018, 157.8680345168981, 158.12748176117603, 158.38692900545396, 158.64637624973187, 158.90582349400978, 159.16527073828772, 159.42471798256565, 159.68416522684356, 159.94361247112147, 160.2030597153994, 160.46250695967734, 160.72195420395525, 160.98140144823316, 161.2408486925111, 161.50029593678903, 161.75974318106694, 162.01919042534487, 162.2786376696228, 162.53808491390072, 162.79753215817863, 163.05697940245656, 163.3164266467345, 163.5758738910124, 163.83532113529031, 164.09476837956825, 164.3542156238462, 164.6136628681241, 164.873110112402, 165.13255735667994, 165.39200460095788, 165.65145184523578, 165.9108990895137, 166.17034633379166, 166.42979357806956, 166.68924082234747, 166.9486880666254, 167.20813531090334, 167.46758255518125, 167.72702979945916, 167.9864770437371, 168.24592428801503, 168.50537153229294, 168.76481877657085, 169.02426602084878, 169.28371326512672, 169.54316050940463, 169.80260775368254, 170.0620549979605, 170.3215022422384, 170.58094948651632, 170.84039673079425, 171.0998439750722, 171.3592912193501, 171.618738463628, 171.87818570790594, 172.13763295218388, 172.3970801964618, 172.6565274407397, 172.91597468501763, 173.17542192929557, 173.43486917357347, 173.69431641785138, 173.95376366212932, 174.21321090640726, 174.47265815068516, 174.7321053949631, 174.99155263924104, 175.25099988351894, 175.51044712779685, 175.7698943720748, 176.02934161635272, 176.28878886063063, 176.54823610490854, 176.80768334918648, 177.0671305934644, 177.32657783774232, 177.58602508202023, 177.84547232629816, 178.1049195705761, 178.364366814854, 178.62381405913194, 178.88326130340988, 179.1427085476878, 179.4021557919657, 179.66160303624363, 179.92105028052157, 180.18049752479948, 180.43994476907739, 180.69939201335532, 180.95883925763326, 181.21828650191117, 181.47773374618907, 181.737180990467, 181.99662823474495, 182.25607547902285, 182.51552272330076, 182.77496996757873, 183.03441721185663, 183.29386445613454, 183.55331170041248, 183.81275894469042, 184.07220618896832, 184.33165343324623, 184.59110067752417, 184.8505479218021, 185.10999516608, 185.36944241035792, 185.62888965463586, 185.8883368989138, 186.1477841431917, 186.4072313874696, 186.66667863174757, 186.92612587602548, 187.1855731203034, 187.44502036458132, 187.70446760885926, 187.96391485313717, 188.22336209741508, 188.482809341693, 188.74225658597095, 189.00170383024886, 189.26115107452677, 189.5205983188047, 189.78004556308264, 190.03949280736055, 190.29894005163845, 190.5583872959164, 190.81783454019433, 191.07728178447223, 191.33672902875017, 191.5961762730281, 191.85562351730601, 192.11507076158392, 192.37451800586186, 192.6339652501398, 192.8934124944177, 193.1528597386956, 193.41230698297355, 193.67175422725148, 193.9312014715294, 194.1906487158073, 194.45009596008524, 194.70954320436317, 194.96899044864108, 195.22843769291902, 195.48788493719695, 195.74733218147486, 196.00677942575277, 196.2662266700307, 196.52567391430864, 196.78512115858655, 197.04456840286446, 197.3040156471424, 197.56346289142033, 197.82291013569824, 198.08235737997614, 198.34180462425408, 198.60125186853202, 198.86069911280993, 199.12014635708783, 199.3795936013658, 199.6390408456437, 199.8984880899216, 200.15793533419955, 200.4173825784775, 200.6768298227554, 200.9362770670333, 201.19572431131124, 201.45517155558917, 201.71461879986708, 201.974066044145, 202.23351328842293, 202.49296053270086, 202.75240777697877, 203.01185502125668, 203.27130226553464, 203.53074950981255, 203.79019675409046, 204.0496439983684, 204.30909124264633, 204.56853848692424, 204.82798573120215, 205.08743297548008, 205.34688021975802, 205.60632746403593, 205.86577470831384, 206.12522195259177, 206.3846691968697, 206.64411644114762, 206.90356368542552, 207.16301092970346, 207.4224581739814, 207.6819054182593, 207.94135266253724, 208.20079990681518, 208.46024715109309, 208.719694395371, 208.9791416396489, 209.23858888392687, 209.49803612820477, 209.75748337248268, 210.01693061676065, 210.27637786103855, 210.53582510531646, 210.79527234959437, 211.05471959387233, 211.31416683815024, 211.57361408242815, 211.83306132670606, 212.09250857098402, 212.35195581526193, 212.61140305953984, 212.87085030381775, 213.1302975480957, 213.38974479237362, 213.64919203665153, 213.9086392809295, 214.1680865252074, 214.4275337694853, 214.68698101376322, 214.94642825804118, 215.2058755023191, 215.465322746597, 215.7247699908749, 215.98421723515287, 216.24366447943078, 216.50311172370868, 216.7625589679866, 217.02200621226456, 217.28145345654247, 217.54090070082037, 217.80034794509828, 218.05979518937625, 218.31924243365415, 218.57868967793206, 218.83813692221003, 219.09758416648793, 219.35703141076584, 219.61647865504375, 219.87592589932171, 220.13537314359962, 220.39482038787753, 220.65426763215544, 220.9137148764334, 221.1731621207113, 221.43260936498922, 221.69205660926713, 221.9515038535451, 222.210951097823, 222.4703983421009, 222.72984558637887, 222.98929283065678, 223.2487400749347, 223.5081873192126, 223.76763456349056, 224.02708180776847, 224.28652905204638, 224.54597629632428, 224.80542354060225, 225.06487078488016, 225.32431802915806, 225.58376527343597, 225.84321251771394, 226.10265976199184, 226.36210700626975, 226.62155425054772, 226.88100149482563, 227.14044873910353, 227.39989598338144, 227.6593432276594, 227.9187904719373, 228.17823771621522, 228.43768496049313, 228.6971322047711, 228.956579449049, 229.2160266933269, 229.47547393760482, 229.73492118188278, 229.9943684261607, 230.2538156704386, 230.51326291471656, 230.77271015899447, 231.03215740327238, 231.2916046475503, 231.55105189182825, 231.81049913610616, 232.06994638038407, 232.32939362466198, 232.58884086893994, 232.84828811321785, 233.10773535749576, 233.36718260177366, 233.62662984605163, 233.88607709032954, 234.14552433460744, 234.40497157888535, 234.66441882316332, 234.92386606744122, 235.18331331171913, 235.4427605559971, 235.702207800275, 235.9616550445529, 236.22110228883082, 236.48054953310879, 236.7399967773867, 236.9994440216646, 237.2588912659425, 237.51833851022047, 237.77778575449838, 238.0372329987763, 238.2966802430542, 238.55612748733216, 238.81557473161007, 239.07502197588798, 239.33446922016594, 239.59391646444385, 239.85336370872176, 240.11281095299967, 240.37225819727763, 240.63170544155554, 240.89115268583345, 241.15059993011135, 241.41004717438932, 241.66949441866723, 241.92894166294514, 242.18838890722304, 242.447836151501, 242.70728339577892, 242.96673064005682, 243.2261778843348, 243.4856251286127, 243.7450723728906, 244.0045196171685, 244.26396686144648, 244.52341410572438, 244.7828613500023, 245.0423085942802, 245.30175583855817, 245.56120308283607, 245.82065032711398, 246.0800975713919, 246.33954481566985, 246.59899205994776, 246.85843930422567, 247.11788654850363, 247.37733379278154, 247.63678103705945, 247.89622828133736, 248.15567552561532, 248.41512276989323, 248.67457001417114, 248.93401725844905, 249.193464502727, 249.45291174700492, 249.71235899128283, 249.97180623556073, 250.2312534798387, 250.4907007241166, 250.75014796839451, 251.00959521267242, 251.2690424569504, 251.5284897012283, 251.7879369455062, 252.04738418978417, 252.30683143406208, 252.56627867833998, 252.8257259226179, 253.08517316689586, 253.34462041117376, 253.60406765545167, 253.86351489972958, 254.12296214400754, 254.38240938828545, 254.64185663256336, 254.90130387684127, 255.16075112111923, 255.42019836539714, 255.67964560967505, 255.939092853953, 256.1985400982309, 256.45798734250883, 256.71743458678674, 256.9768818310647, 257.2363290753426, 257.4957763196205, 257.7552235638984, 258.0146708081764, 258.2741180524543, 258.5335652967322, 258.7930125410101, 259.0524597852881, 259.311907029566, 259.5713542738439, 259.83080151812186, 260.09024876239977, 260.3496960066777, 260.6091432509556, 260.86859049523355, 261.12803773951146, 261.38748498378936, 261.64693222806727, 261.90637947234524, 262.16582671662314, 262.42527396090105, 262.68472120517896, 262.9441684494569, 263.20361569373483, 263.46306293801274, 263.7225101822907, 263.9819574265686, 264.2414046708465, 264.50085191512443, 264.7602991594024, 265.0197464036803, 265.2791936479582, 265.5386408922361, 265.7980881365141, 266.057535380792, 266.3169826250699, 266.5764298693478, 266.83587711362577, 267.0953243579037, 267.3547716021816, 267.6142188464595, 267.87366609073746, 268.13311333501537, 268.3925605792933, 268.65200782357124, 268.91145506784915, 269.17090231212705, 269.43034955640496, 269.6897968006829, 269.94924404496084, 270.20869128923874, 270.46813853351665, 270.7275857777946, 270.9870330220725, 271.24648026635043, 271.50592751062834, 271.7653747549063, 272.0248219991842, 272.2842692434621, 272.5437164877401, 272.803163732018, 273.0626109762959, 273.3220582205738, 273.5815054648518, 273.8409527091297, 274.1003999534076, 274.3598471976855, 274.61929444196346, 274.87874168624137, 275.1381889305193, 275.3976361747972, 275.65708341907515, 275.91653066335306, 276.17597790763097, 276.43542515190893, 276.69487239618684, 276.95431964046475, 277.21376688474265, 277.4732141290206, 277.7326613732985, 277.99210861757643, 278.25155586185434, 278.5110031061323, 278.7704503504102, 279.0298975946881, 279.28934483896603, 279.548792083244, 279.8082393275219, 280.0676865717998, 280.3271338160778, 280.5865810603557, 280.8460283046336, 281.1054755489115, 281.36492279318946, 281.6243700374674, 281.8838172817453, 282.1432645260232, 282.40271177030115, 282.66215901457906, 282.92160625885697, 283.1810535031349, 283.44050074741284, 283.69994799169075, 283.95939523596866, 284.21884248024656, 284.47828972452453, 284.73773696880244, 284.99718421308035, 285.2566314573583, 285.5160787016362, 285.7755259459141, 286.03497319019203, 286.29442043447, 286.5538676787479, 286.8133149230258, 287.0727621673037, 287.3322094115817, 287.5916566558596, 287.8511039001375, 288.1105511444154, 288.3699983886934, 288.6294456329713, 288.8888928772492, 289.14834012152716, 289.40778736580506, 289.66723461008297, 289.9266818543609, 290.18612909863884, 290.44557634291675, 290.70502358719466, 290.96447083147257, 291.22391807575053, 291.48336532002844, 291.74281256430635, 292.00225980858426, 292.2617070528622, 292.52115429714013, 292.78060154141804, 293.040048785696, 293.2994960299739, 293.5589432742518, 293.8183905185297, 294.0778377628077, 294.3372850070856, 294.5967322513635, 294.8561794956414, 295.1156267399194, 295.3750739841973, 295.6345212284752, 295.8939684727531, 296.15341571703107, 296.412862961309, 296.6723102055869, 296.93175744986485, 297.19120469414275, 297.45065193842066, 297.71009918269857, 297.96954642697654, 298.22899367125444, 298.48844091553235, 298.74788815981026, 299.0073354040882, 299.26678264836613, 299.52622989264404, 299.78567713692195, 300.0451243811999, 300.3045716254778, 300.5640188697557, 300.82346611403364, 301.0829133583116, 301.3423606025895, 301.6018078468674, 301.8612550911454, 302.1207023354233, 302.3801495797012, 302.6395968239791, 302.89904406825707, 303.158491312535, 303.4179385568129, 303.6773858010908, 303.93683304536876, 304.19628028964667, 304.4557275339246, 304.7151747782025, 304.97462202248045, 305.23406926675835, 305.49351651103626, 305.7529637553142, 306.01241099959213, 306.27185824387004, 306.53130548814795, 306.7907527324259, 307.0501999767038, 307.30964722098173, 307.56909446525964, 307.8285417095376, 308.0879889538155, 308.3474361980934, 308.6068834423713, 308.8663306866493, 309.1257779309272, 309.3852251752051, 309.6446724194831, 309.904119663761, 310.1635669080389, 310.4230141523168, 310.68246139659476, 310.94190864087267, 311.2013558851506, 311.4608031294285, 311.72025037370645, 311.97969761798436, 312.23914486226226, 312.4985921065402, 312.75803935081814, 313.01748659509605, 313.27693383937395, 313.5363810836519, 313.7958283279298, 314.05527557220773, 314.31472281648564, 314.5741700607636, 314.8336173050415, 315.0930645493194, 315.35251179359733, 315.6119590378753, 315.8714062821532, 316.1308535264311, 316.390300770709, 316.649748014987, 316.9091952592649, 317.1686425035428, 317.4280897478207, 317.68753699209867, 317.9469842363766, 318.2064314806545, 318.46587872493245, 318.72532596921036, 318.98477321348827, 319.2442204577662, 319.50366770204414, 319.76311494632205, 320.02256219059996, 320.28200943487786, 320.54145667915583, 320.80090392343374, 321.06035116771164, 321.31979841198955, 321.5792456562675, 321.8386929005454, 322.09814014482333, 322.3575873891013, 322.6170346333792, 322.8764818776571, 323.135929121935, 323.395376366213, 323.6548236104909, 323.9142708547688, 324.1737180990467, 324.4331653433247, 324.6926125876026, 324.9520598318805, 325.2115070761584, 325.47095432043636, 325.73040156471427, 325.9898488089922, 326.24929605327014, 326.50874329754805, 326.76819054182596, 327.02763778610387, 327.28708503038183, 327.54653227465974, 327.80597951893765, 328.06542676321556, 328.3248740074935, 328.5843212517714, 328.84376849604934, 329.10321574032724, 329.3626629846052, 329.6221102288831, 329.881557473161, 330.141004717439, 330.4004519617169, 330.6598992059948, 330.9193464502727, 331.1787936945507, 331.4382409388286, 331.6976881831065, 331.9571354273844, 332.21658267166237, 332.4760299159403, 332.7354771602182, 332.9949244044961, 333.25437164877405, 333.51381889305196, 333.77326613732987, 334.0327133816078, 334.29216062588574, 334.55160787016365, 334.81105511444156, 335.0705023587195, 335.32994960299743, 335.58939684727534, 335.84884409155325, 336.1082913358312, 336.3677385801091, 336.627185824387, 336.88663306866493, 337.14608031294284, 337.4055275572208, 337.6649748014987, 337.9244220457766, 338.1838692900546, 338.4433165343325, 338.7027637786104, 338.9622110228883, 339.2216582671663, 339.4811055114442, 339.7405527557221, 340 ], "y": [ 23450, 23341.17857281152, 23233.65951408784, 23127.427122476005, 23022.465945077958, 22918.760772747613, 22816.296635491486, 22715.058797970225, 22615.032755098604, 22516.204227741426, 22418.559158503, 22322.083707607933, 22226.764248870815, 22132.58736575284, 22039.539847502998, 21947.608685381965, 21856.78106896649, 21767.04438253254, 21678.386201515023, 21590.794289042544, 21504.256592545076, 21418.761240433065, 21334.29653884605, 21250.85096846932, 21168.41318141679, 21086.971998178706, 21006.51640463253, 20927.035549115568, 20848.51873955786, 20770.955440673933, 20694.335271212036, 20618.648001259506, 20543.883549603008, 20470.031981142274, 20397.08350435624, 20325.028468820234, 20253.857362773157, 20183.560810733445, 20114.129571162717, 20045.554534176015, 19977.82671929757, 19910.93727326112, 19844.87746785366, 19779.638697801776, 19715.212478699494, 19651.590444976784, 19588.764347907796, 19526.726053657912, 19465.467541368787, 19404.980901280534, 19345.258332890186, 19286.292143145733, 19228.074744674825, 19170.598654047488, 19113.85649007206, 19057.840972123624, 19002.54491850424, 18947.961244834307, 18894.082962474316, 18840.90317697643, 18788.415086565168, 18736.611980646634, 18685.48723834561, 18635.034327069985, 18585.24680110193, 18536.11830021519, 18487.642548317996, 18439.813352121062, 18392.624599830116, 18346.070259862423, 18300.144379586876, 18254.841084087075, 18210.15457494697, 18166.079129058606, 18122.609097451445, 18079.738904142898, 18037.463045009594, 17995.776086678947, 17954.67266544063, 17914.14748617752, 17874.195321315776, 17834.81100979356, 17795.98945604814, 17757.725629020893, 17720.014561179934, 17682.85134755996, 17646.231144818994, 17610.149170311655, 17574.600701178693, 17539.58107345235, 17505.085681177374, 17471.109975547242, 17437.649464055386, 17404.699709661076, 17372.256329969685, 17340.31499642705, 17308.871433527678, 17277.921418036465, 17247.46077822375, 17217.48539311336, 17187.99119174343, 17158.974152439805, 17130.43030210166, 17102.355715499216, 17074.746514583232, 17047.59886780617, 17020.90898945462, 16994.67313899295, 16968.887620417885, 16943.54878162382, 16918.65301377862, 16894.196750709816, 16870.17646830088, 16846.588683897477, 16823.42995572346, 16800.69688230643, 16778.386101912736, 16756.494291991625, 16735.018168628496, 16713.95448600702, 16693.300035879955, 16673.05164704856, 16653.206184850358, 16633.760550655174, 16614.711681369245, 16596.056548947297, 16577.792159912402, 16559.91555488348, 16542.42380811037, 16525.314027016197, 16508.58335174709, 16492.2289547289, 16476.248040231025, 16460.63784393701, 16445.3956325219, 16430.518703236277, 16416.004383496696, 16401.850030482587, 16388.0530307394, 16374.61079978788, 16361.520781739466, 16348.78044891755, 16336.38730148464, 16324.338867075214, 16312.632700434255, 16301.266383061273, 16290.237522859821, 16279.543753792292, 16269.18273554005, 16259.152153168634, 16249.449716798124, 16240.073161278406, 16231.020245869393, 16222.288753926045, 16213.876492588122, 16205.781292474572, 16198.00100738251, 16190.533513990684, 16183.37671156735, 16176.528521682507, 16169.986887924375, 16163.749775620086, 16157.815171560498, 16152.181083729072, 16146.845541034701, 16141.806593048517, 16137.062309744495, 16132.610781243893, 16128.450117563385, 16124.57844836689, 16120.993922720976, 16117.694708853835, 16114.678993917723, 16111.944983754845, 16109.490902666596, 16107.31499318614, 16105.41551585423, 16103.790748998257, 16102.438988514428, 16101.358547653086, 16100.547756807051, 16100.004963302996, 16099.728531195746, 16099.716841065514, 16099.968289817989, 16100.481290487249, 16101.254272041406, 16102.285679191034, 16103.57397220025, 16105.117626700423, 16106.915133506494, 16108.964998435873, 16111.265742129799, 16113.815899877249, 16116.614021441197, 16119.658670887353, 16122.948426415212, 16126.481880191437, 16130.257638185543, 16134.274320007804, 16138.530558749426, 16143.025000824833, 16147.756305816158, 16152.723146319822, 16157.924207795204, 16163.358188415337, 16169.023798919668, 16174.919762468748, 16181.044814500925, 16187.397702590937, 16193.977186310402, 16200.782037090194, 16207.81103808463, 16215.062984037502, 16222.536681149842, 16230.230946949514, 16238.144610162453, 16246.276510585682, 16254.625498961963, 16263.190436856103, 16271.970196532915, 16280.96366083674, 16290.169723072588, 16299.587286888822, 16309.215266161347, 16319.052584879348, 16329.098177032502, 16339.350986499645, 16349.809966938874, 16360.474081679113, 16371.342303613033, 16382.413615091375, 16393.687007818626, 16405.161482750053, 16416.836049990023, 16428.709728691654, 16440.781546957733, 16453.05054174291, 16465.51575875711, 16478.176252370224, 16491.031085517934, 16504.0793296088, 16517.320064432493, 16530.75237806917, 16544.375366799995, 16558.188135018845, 16572.189795145016, 16586.379467537103, 16600.75628040795, 16615.319369740606, 16630.067879205406, 16645.00096007801, 16660.117771158515, 16675.417478691532, 16690.899256287285, 16706.562284843636, 16722.405752469123, 16738.42885440692, 16754.630792959728, 16771.010777415584, 16787.5680239746, 16804.301755676577, 16821.211202329505, 16838.295600438934, 16855.554193138214, 16872.986230119568, 16890.590967566004, 16908.367668084044, 16926.31560063728, 16944.434040480726, 16962.72226909595, 16981.17957412698, 16999.805249317007, 17018.598594445815, 17037.55891526799, 17056.685523451804, 17075.977736518922, 17095.43487778473, 17115.05627629945, 17134.841266789877, 17154.789189601877, 17174.899390643528, 17195.1712213289, 17215.60403852257, 17236.197204484743, 17256.950086817, 17277.862058408722, 17298.932497384118, 17320.160787049877, 17341.54631584343, 17363.08847728179, 17384.786669911045, 17406.640297256366, 17428.64876777264, 17450.81149479565, 17473.12789649385, 17495.59739582064, 17518.21942046725, 17540.99340281612, 17563.918779894833, 17586.994993330587, 17610.221489305157, 17633.597718510387, 17657.123136104194, 17680.79720166707, 17704.61937915906, 17728.589136877254, 17752.70594741373, 17776.96928761401, 17801.378638535956, 17825.933485409107, 17850.633317594544, 17875.477628545133, 17900.465915766268, 17925.597680776988, 17950.872429071605, 17976.289670081707, 18001.84891713861, 18027.549687436192, 18053.39150199418, 18079.373885621844, 18105.496366882046, 18131.75847805572, 18158.159755106768, 18184.699737647286, 18211.37796890321, 18238.193995680307, 18265.147368330614, 18292.237640719137, 18319.46437019099, 18346.827117538865, 18374.325446970866, 18401.95892607869, 18429.727125806134, 18457.62962041797, 18485.66598746916, 18513.83580777437, 18542.13866537783, 18570.574147523555, 18599.141844625818, 18627.84135023998, 18656.672261033655, 18685.63417675811, 18714.72670022007, 18743.949437253727, 18773.301996693113, 18802.78399034474, 18832.395032960525, 18862.134742211056, 18892.002738659023, 18921.99864573308, 18952.122089701854, 18982.37269964832, 19012.750107444375, 19043.25394772573, 19073.883857867055, 19104.63947795736, 19135.520450775653, 19166.526421766852, 19197.657039017962, 19228.91195323445, 19260.290817716937, 19291.793288338064, 19323.419023519644, 19355.167684210053, 19387.03893386179, 19419.03243840936, 19451.147866247327, 19483.384888208602, 19515.74317754295, 19548.22240989576, 19580.822263286973, 19613.542418090245, 19646.382557012344, 19679.34236507276, 19712.421529583473, 19745.619740128972, 19778.93668854647, 19812.372068906312, 19845.925577492588, 19879.596912783927, 19913.385775434497, 19947.29186825522, 19981.314896195116, 20015.454566322896, 20049.7105878087, 20084.08267190604, 20118.57053193393, 20153.173883259147, 20187.892443278728, 20222.725931402616, 20257.67406903648, 20292.736579564684, 20327.913188333474, 20363.203622634297, 20398.60761168729, 20434.124886624915, 20469.75518047582, 20505.49822814876, 20541.3537664168, 20577.321533901515, 20613.40127105751, 20649.592720156983, 20685.895625274487, 20722.309732271795, 20758.83478878298, 20795.47054419958, 20832.216749655952, 20869.07315801473, 20906.039523852447, 20943.1156034453, 20980.301154755038, 21017.59593741498, 21054.99971271621, 21092.512243593857, 21130.133294613526, 21167.862631957858, 21205.700023413236, 21243.645238356592, 21281.69804774235, 21319.858224089483, 21358.125541468744, 21396.499775489952, 21434.980703289424, 21473.56810351754, 21512.26175632643, 21551.061443357736, 21589.966947730543, 21628.978054029372, 21668.094548292356, 21707.316217999447, 21746.64285206078, 21786.074240805152, 21825.610175968584, 21865.250450683023, 21904.994859465092, 21944.84319820501, 21984.7952641556, 22024.85085592135, 22065.009773447648, 22105.271818010056, 22145.636792203724, 22186.104499932924, 22226.67474640056, 22267.34733809794, 22308.12208279454, 22348.998789527872, 22389.977268593473, 22431.057331534965, 22472.238791134234, 22513.521461401648, 22554.905157566423, 22596.389696067043, 22637.97489454177, 22679.660571819244, 22721.446547909185, 22763.33264399315, 22805.318682415407, 22847.404486673848, 22889.58988141104, 22931.8746924053, 22974.258746561933, 23016.741871904404, 23059.323897565766, 23102.00465378005, 23144.783971873745, 23187.661684257415, 23230.637624417282, 23273.71162690704, 23316.88352733957, 23360.153162378876, 23403.520369731978, 23446.98498814098, 23490.54685737512, 23534.205818222952, 23577.96171248455, 23621.81438296383, 23665.763673460922, 23709.80942876457, 23753.951494644643, 23798.189717844743, 23842.52394607479, 23886.95402800372, 23931.47981325228, 23976.101152385825, 24020.817896907232, 24065.62989924982, 24110.53701277038, 24155.539091742245, 24200.635991348445, 24245.827567674867, 24291.113677703517, 24336.494179305864, 24381.968931236166, 24427.53779312491, 24473.20062547234, 24518.957289641927, 24564.80764785403, 24610.751563179496, 24656.78889953342, 24702.91952166886, 24749.14329517069, 24795.46008644942, 24841.869762735194, 24888.372192071674, 24934.967243310144, 24981.65478610352, 25028.43469090054, 25075.30682893988, 25122.271072244424, 25169.327293615526, 25216.475366627335, 25263.71516562116, 25311.0465656999, 25358.469442722515, 25405.983673298524, 25453.589134782585, 25501.285705269085, 25549.073263586815, 25596.951689293634, 25644.92086267125, 25692.98066471997, 25741.130977153556, 25789.37168239408, 25837.70266356687, 25886.123804495415, 25934.634989696424, 25983.23610437483, 26031.927034418906, 26080.707666395334, 26129.577887544456, 26178.537585775386, 26227.586649661327, 26276.724968434817, 26325.952431983074, 26375.268930843333, 26424.674356198284, 26474.16859987146, 26523.75155432277, 26573.42311264397, 26623.183168554235, 26673.03161639572, 26722.968351129228, 26772.99326832981, 26823.106264182527, 26873.307235478107, 26923.59607960877, 26973.97269456399, 27024.436978926355, 27074.98883186739, 27125.628153143516, 27176.35484309194, 27227.168802626635, 27278.069933234343, 27329.0581369706, 27380.133316455802, 27431.295374871308, 27482.54421595556, 27533.87974400022, 27585.30186384641, 27636.810480880875, 27688.405501032285, 27740.086830767454, 27791.85437708772, 27843.70804752523, 27895.64775013932, 27947.67339351293, 27999.784886749025, 28051.98213946702, 28104.265061799306, 28156.63356438773, 28209.087558380146, 28261.62695542698, 28314.25166767781, 28366.961607778005, 28419.756688865367, 28472.636824566776, 28525.601928994944, 28578.651916745068, 28631.786702891666, 28685.006202985263, 28738.31033304927, 28791.699009576747, 28845.17214952732, 28898.729670323984, 28952.371489850073, 29006.097526446123, 29059.907698906864, 29113.801926478183, 29167.780128854098, 29221.842226173798, 29275.98813901869, 29330.217788409434, 29384.53109580307, 29438.927983090092, 29493.408372591613, 29547.97218705648, 29602.619349658504, 29657.34978399359, 29712.163414077037, 29767.060164340706, 29822.039959630318, 29877.102725202738, 29932.248386723277, 29987.476870263003, 30042.78810229609, 30098.18200969721, 30153.658519738874, 30209.217560088877, 30264.859058807695, 30320.582944345944, 30376.38914554184, 30432.277591618695, 30488.248212182378, 30544.300937218897, 30600.43569709187, 30656.652422540166, 30712.95104467538, 30769.33149497954, 30825.793705302614, 30882.337607860227, 30938.96313523124, 30995.670220355478, 31052.458796531362, 31109.328797413655, 31166.280157011133, 31223.312809684372, 31280.42669014345, 31337.62173344576, 31394.897874993752, 31452.25505053278, 31509.69319614888, 31567.212248266653, 31624.812143647036, 31682.49281938527, 31740.254212908683, 31798.096261974686, 31856.018904668585, 31914.02207940159, 31972.105724908724, 32030.26978024678, 32088.51418479232, 32146.83887823961, 32205.243800598702, 32263.728892193376, 32322.294093659228, 32380.939345941682, 32439.664590294087, 32498.469768275732, 32557.354821750025, 32616.319692882502, 32675.364324139013, 32734.488658283815, 32793.692638377746, 32852.97620777635, 32912.339310128074, 32971.78188937243, 33031.303889738236, 33090.90525574176, 33150.585932185015, 33210.345864153926, 33270.184997016644, 33330.10327642175, 33390.10064829659, 33450.17705884549, 33510.33245454812, 33570.56678215776, 33630.87998869965, 33691.27202146932, 33751.74282803092, 33812.292356215585, 33872.920554119846, 33933.62737010393, 33994.412752790246, 34055.276651061686, 34116.21901406017, 34177.23979118494, 34238.338932091116, 34299.51638668804, 34360.77210513781, 34422.106037853744, 34483.51813549883, 34545.00834898421, 34606.57662946777, 34668.22292835254, 34729.94719728527, 34791.74938815504, 34853.62945309161, 34915.58734446421, 34977.62301487992, 35039.736417182336, 35101.927504450156, 35164.19622999573, 35226.54254736368, 35288.96641032958, 35351.467772898446, 35414.046589303514, 35476.70281400478, 35539.43640168769, 35602.24730726185, 35665.135485859595, 35728.10089283473, 35791.14348376126, 35854.263214431965, 35917.46004085726, 35980.733919263796, 36044.084806093204, 36107.512658000924, 36171.017431854816, 36234.59908473397, 36298.2575739275, 36361.9928569332, 36425.80489145653, 36489.693635409145, 36553.65904690785, 36617.70108427343, 36681.81970602928, 36746.01487090043, 36810.28653781226, 36874.63466588929, 36939.059214454166, 37003.560143026385, 37068.13741132119, 37132.79097924848, 37197.5208069116, 37262.32685460627, 37327.2090828195, 37392.16745222842, 37457.20192369922, 37522.312458286106, 37587.49901723007, 37652.76156195799, 37718.10005408147, 37783.51445539578, 37849.00472787884, 37914.57083369013, 37980.21273516965, 38045.930394836985, 38111.723775390084, 38177.592839704485, 38243.53755083208, 38309.55787200025, 38375.65376661083, 38441.82519823909, 38508.07213063276, 38574.39452771111, 38640.79235356385, 38707.26557245031, 38773.81414879838, 38840.43804720358, 38907.137232428155, 38973.91166940008, 39040.761323212115, 39107.68615912098, 39174.68614254628, 39241.76123906971, 39308.91141443412, 39376.13663454253, 39443.43686545738, 39510.81207339948, 39578.26222474721, 39645.78728603569, 39713.38722395571, 39781.062005353124, 39848.81159722776, 39916.635966732676, 39984.535081173344, 40052.50890800664, 40120.55741484015, 40188.68056943135, 40256.878339686635, 40325.150693660566, 40393.49759955515, 40461.91902571881, 40530.41494064579, 40598.985312975215, 40667.63011149035, 40736.34930511778, 40805.14286292665, 40874.010754127805, 40942.95294807319, 41011.96941425479, 41081.06012230416, 41150.225041991485, 41219.46414322482, 41288.77739604944, 41358.16477064702, 41427.62623733482, 41497.16176656518, 41566.77132892444, 41636.45489513254, 41706.21243604211, 41776.04392263775, 41845.94932603542, 41915.92861748162, 41985.98176835273, 42056.10875015433, 42126.309534520384, 42196.584093212754, 42266.93239812032, 42337.35442125832, 42407.85013476785, 42478.41951091491, 42549.06252208992, 42619.77914080704, 42690.56933970338, 42761.43309153852, 42832.370369193726, 42903.38114567128, 42974.46539409395, 43045.623087704276, 43116.854199863876, 43188.15870405295, 43259.5365738695, 43330.987783028795, 43402.51230536275, 43474.11011481918, 43545.7811854614, 43617.52549146741, 43689.34300712938, 43761.23370685307, 43833.19756515715, 43905.23455667265, 43977.34465614241, 44049.52783842035, 44121.78407847103, 44194.11335136903, 44266.51563229827, 44338.99089655162, 44411.53911953014, 44484.160276742594, 44556.85434380498, 44629.62129643972, 44702.461110475386, 44775.373761845956, 44848.35922659028, 44921.41748085166, 44994.548500877165, 45067.75226301711, 45141.02874372462, 45214.37791955494, 45287.79976716507, 45361.29426331309, 45434.861384857686, 45508.5011087577, 45582.21341207152, 45655.99827195656, 45729.85566566886, 45803.785570562366, 45877.7879640887, 45951.86282379641, 46026.01012733059, 46100.22985243242, 46174.521976938544, 46248.88647878064, 46323.32333598501, 46397.83252667199, 46472.414029055435, 46547.06782144245, 46621.793882232596, 46696.59218991773, 46771.46272308131, 46846.405460398026, 46921.420380633346, 46996.50746264297, 47071.666685372445, 47146.89802785674, 47222.20146921961, 47297.576988673405, 47373.024565518404, 47448.54417914245, 47524.13580902057, 47599.79943471441, 47675.53503587184, 47751.34259222664, 47827.222083597786, 47903.17348988936, 47979.19679108987, 48055.29196727189, 48131.45899859171, 48207.69786528885, 48284.00854768559, 48360.39102618671, 48436.84528127887, 48513.37129353039, 48589.969043590754, 48666.63851219015, 48743.3796801392, 48820.19252832845, 48897.07703772797, 48974.03318938707, 49051.060964433724, 49128.16034407438, 49205.33130959341, 49282.57384235277, 49359.8879237917, 49437.27353542618, 49514.73065884867, 49592.259275727716, 49669.85936780752, 49747.530916907606, 49825.273904922484, 49903.088313821136, 49980.97412564684, 50058.93132251668, 50136.959886621175, 50215.059800224044, 50293.23104566167, 50371.47360534284, 50449.787461748456, 50528.17259743099, 50606.62899501434, 50685.15663719332, 50763.75550673342, 50842.42558647042, 50921.16685931002, 50999.979308227514, 51078.86291626754, 51157.81766654353, 51236.84354223762, 51315.94052660015, 51395.108602949374, 51474.347754671195, 51553.65796521872, 51633.03921811201, 51712.491496937786, 51792.01478534897, 51871.60906706454, 51951.2743258691, 52031.01054561252, 52110.8177102098, 52190.69580364058, 52270.64480994886, 52350.66471324283, 52430.75549769432, 52510.91714753873, 52591.149647074555, 52671.45298066316, 52751.82713272853, 52832.27208775682, 52912.78783029616, 52993.3743449564, 53074.031616408676, 53154.75962938523, 53235.558368679136, 53316.427819143835, 53397.36796569308, 53478.37879330052, 53559.460286999376, 53640.612431882284, 53721.8352131009, 53803.128615865666, 53884.49262544559, 53965.92722716778, 54047.432406417414, 54129.0081486373, 54210.65443932763, 54292.37126404576, 54374.158608405916, 54456.01645807885, 54537.94479879175, 54619.94361632774, 54702.01289652584, 54784.15262528057, 54866.362788541686, 54948.64337231404, 55030.99436265717, 55113.41574568511, 55195.907507566226, 55278.46963452273, 55361.1021128307, 55443.80492881962, 55526.578068872244, 55609.421519424315, 55692.33526696429, 55775.31929803313, 55858.37359922408, 55941.49815718231, 56024.69295860484, 56107.95799024015, 56191.293238888036, 56274.698691399346, 56358.17433467571, 56441.72015566933, 56525.3361413828, 56609.02227886876, 56692.77855522973, 56776.60495761794, 56860.50147323496, 56944.46808933157, 57028.50479320753, 57112.611572211295, 57196.7884137399, 57281.03530523861, 57365.352234200756, 57449.739188167536, 57534.1961547278, 57618.723121517745, 57703.32007622081, 57787.98700656734 ] }, { "name": "Total Drag: 15km", "type": "scatter", "x": [ 80.81220296635497, 81.0716502106329, 81.33109745491082, 81.59054469918874, 81.84999194346666, 82.10943918774458, 82.3688864320225, 82.62833367630043, 82.88778092057836, 83.14722816485629, 83.40667540913421, 83.66612265341213, 83.92556989769005, 84.18501714196798, 84.4444643862459, 84.70391163052382, 84.96335887480174, 85.22280611907966, 85.48225336335759, 85.74170060763551, 86.00114785191343, 86.26059509619135, 86.52004234046927, 86.7794895847472, 87.03893682902512, 87.29838407330305, 87.55783131758098, 87.8172785618589, 88.07672580613682, 88.33617305041474, 88.59562029469267, 88.85506753897059, 89.11451478324851, 89.37396202752643, 89.63340927180435, 89.89285651608228, 90.1523037603602, 90.41175100463812, 90.67119824891604, 90.93064549319396, 91.1900927374719, 91.44953998174981, 91.70898722602774, 91.96843447030567, 92.22788171458359, 92.48732895886151, 92.74677620313943, 93.00622344741736, 93.26567069169528, 93.5251179359732, 93.78456518025112, 94.04401242452904, 94.30345966880697, 94.56290691308489, 94.82235415736281, 95.08180140164075, 95.34124864591865, 95.60069589019659, 95.86014313447451, 96.11959037875243, 96.37903762303036, 96.63848486730828, 96.8979321115862, 97.15737935586412, 97.41682660014204, 97.67627384441997, 97.93572108869789, 98.19516833297581, 98.45461557725373, 98.71406282153166, 98.97351006580959, 99.2329573100875, 99.49240455436544, 99.75185179864334, 100.01129904292128, 100.2707462871992, 100.53019353147712, 100.78964077575505, 101.04908802003297, 101.30853526431089, 101.56798250858881, 101.82742975286673, 102.08687699714466, 102.34632424142258, 102.6057714857005, 102.86521872997842, 103.12466597425635, 103.38411321853428, 103.64356046281219, 103.90300770709013, 104.16245495136803, 104.42190219564597, 104.68134943992389, 104.94079668420181, 105.20024392847974, 105.45969117275766, 105.71913841703558, 105.9785856613135, 106.23803290559142, 106.49748014986935, 106.75692739414727, 107.01637463842519, 107.27582188270313, 107.53526912698104, 107.79471637125897, 108.05416361553688, 108.31361085981482, 108.57305810409274, 108.83250534837066, 109.09195259264858, 109.3513998369265, 109.61084708120443, 109.87029432548235, 110.12974156976027, 110.38918881403819, 110.64863605831611, 110.90808330259404, 111.16753054687196, 111.42697779114988, 111.68642503542782, 111.94587227970572, 112.20531952398366, 112.46476676826157, 112.7242140125395, 112.98366125681743, 113.24310850109535, 113.50255574537327, 113.7620029896512, 114.02145023392912, 114.28089747820704, 114.54034472248496, 114.79979196676288, 115.0592392110408, 115.31868645531873, 115.57813369959666, 115.83758094387457, 116.0970281881525, 116.35647543243041, 116.61592267670835, 116.87536992098626, 117.1348171652642, 117.39426440954212, 117.65371165382004, 117.91315889809796, 118.17260614237588, 118.4320533866538, 118.69150063093173, 118.95094787520965, 119.21039511948757, 119.46984236376551, 119.72928960804342, 119.98873685232135, 120.24818409659926, 120.5076313408772, 120.7670785851551, 121.02652582943304, 121.28597307371096, 121.54542031798889, 121.80486756226681, 122.06431480654473, 122.32376205082265, 122.58320929510057, 122.8426565393785, 123.10210378365642, 123.36155102793434, 123.62099827221226, 123.8804455164902, 124.1398927607681, 124.39934000504604, 124.65878724932395, 124.91823449360189, 125.1776817378798, 125.43712898215773, 125.69657622643565, 125.95602347071357, 126.2154707149915, 126.47491795926942, 126.73436520354734, 126.99381244782526, 127.25325969210319, 127.51270693638111, 127.77215418065904, 128.03160142493695, 128.2910486692149, 128.5504959134928, 128.80994315777073, 129.06939040204864, 129.32883764632658, 129.58828489060448, 129.84773213488242, 130.10717937916036, 130.36662662343826, 130.62607386771617, 130.8855211119941, 131.14496835627205, 131.40441560054995, 131.66386284482786, 131.9233100891058, 132.18275733338373, 132.44220457766164, 132.70165182193958, 132.96109906621749, 133.22054631049542, 133.47999355477333, 133.73944079905127, 133.9988880433292, 134.2583352876071, 134.51778253188502, 134.77722977616295, 135.0366770204409, 135.2961242647188, 135.5555715089967, 135.81501875327464, 136.07446599755258, 136.3339132418305, 136.59336048610842, 136.85280773038633, 137.11225497466427, 137.37170221894218, 137.6311494632201, 137.89059670749805, 138.15004395177596, 138.40949119605386, 138.6689384403318, 138.92838568460974, 139.18783292888764, 139.44728017316555, 139.7067274174435, 139.96617466172142, 140.22562190599933, 140.48506915027727, 140.74451639455518, 141.0039636388331, 141.26341088311102, 141.52285812738896, 141.78230537166687, 142.0417526159448, 142.3011998602227, 142.56064710450065, 142.82009434877858, 143.0795415930565, 143.3389888373344, 143.59843608161233, 143.85788332589027, 144.11733057016818, 144.37677781444611, 144.63622505872402, 144.89567230300196, 145.15511954727987, 145.4145667915578, 145.67401403583574, 145.93346128011365, 146.19290852439156, 146.4523557686695, 146.71180301294743, 146.97125025722534, 147.23069750150324, 147.49014474578118, 147.74959199005912, 148.00903923433702, 148.26848647861493, 148.52793372289287, 148.7873809671708, 149.0468282114487, 149.30627545572662, 149.56572270000459, 149.8251699442825, 150.0846171885604, 150.34406443283834, 150.60351167711627, 150.86295892139418, 151.1224061656721, 151.38185340995003, 151.64130065422796, 151.90074789850587, 152.16019514278378, 152.4196423870617, 152.67908963133965, 152.93853687561756, 153.19798411989547, 153.45743136417343, 153.71687860845134, 153.97632585272925, 154.23577309700718, 154.49522034128512, 154.75466758556303, 155.01411482984093, 155.27356207411887, 155.5330093183968, 155.79245656267472, 156.05190380695262, 156.31135105123056, 156.5707982955085, 156.8302455397864, 157.0896927840643, 157.34914002834225, 157.60858727262018, 157.8680345168981, 158.12748176117603, 158.38692900545396, 158.64637624973187, 158.90582349400978, 159.16527073828772, 159.42471798256565, 159.68416522684356, 159.94361247112147, 160.2030597153994, 160.46250695967734, 160.72195420395525, 160.98140144823316, 161.2408486925111, 161.50029593678903, 161.75974318106694, 162.01919042534487, 162.2786376696228, 162.53808491390072, 162.79753215817863, 163.05697940245656, 163.3164266467345, 163.5758738910124, 163.83532113529031, 164.09476837956825, 164.3542156238462, 164.6136628681241, 164.873110112402, 165.13255735667994, 165.39200460095788, 165.65145184523578, 165.9108990895137, 166.17034633379166, 166.42979357806956, 166.68924082234747, 166.9486880666254, 167.20813531090334, 167.46758255518125, 167.72702979945916, 167.9864770437371, 168.24592428801503, 168.50537153229294, 168.76481877657085, 169.02426602084878, 169.28371326512672, 169.54316050940463, 169.80260775368254, 170.0620549979605, 170.3215022422384, 170.58094948651632, 170.84039673079425, 171.0998439750722, 171.3592912193501, 171.618738463628, 171.87818570790594, 172.13763295218388, 172.3970801964618, 172.6565274407397, 172.91597468501763, 173.17542192929557, 173.43486917357347, 173.69431641785138, 173.95376366212932, 174.21321090640726, 174.47265815068516, 174.7321053949631, 174.99155263924104, 175.25099988351894, 175.51044712779685, 175.7698943720748, 176.02934161635272, 176.28878886063063, 176.54823610490854, 176.80768334918648, 177.0671305934644, 177.32657783774232, 177.58602508202023, 177.84547232629816, 178.1049195705761, 178.364366814854, 178.62381405913194, 178.88326130340988, 179.1427085476878, 179.4021557919657, 179.66160303624363, 179.92105028052157, 180.18049752479948, 180.43994476907739, 180.69939201335532, 180.95883925763326, 181.21828650191117, 181.47773374618907, 181.737180990467, 181.99662823474495, 182.25607547902285, 182.51552272330076, 182.77496996757873, 183.03441721185663, 183.29386445613454, 183.55331170041248, 183.81275894469042, 184.07220618896832, 184.33165343324623, 184.59110067752417, 184.8505479218021, 185.10999516608, 185.36944241035792, 185.62888965463586, 185.8883368989138, 186.1477841431917, 186.4072313874696, 186.66667863174757, 186.92612587602548, 187.1855731203034, 187.44502036458132, 187.70446760885926, 187.96391485313717, 188.22336209741508, 188.482809341693, 188.74225658597095, 189.00170383024886, 189.26115107452677, 189.5205983188047, 189.78004556308264, 190.03949280736055, 190.29894005163845, 190.5583872959164, 190.81783454019433, 191.07728178447223, 191.33672902875017, 191.5961762730281, 191.85562351730601, 192.11507076158392, 192.37451800586186, 192.6339652501398, 192.8934124944177, 193.1528597386956, 193.41230698297355, 193.67175422725148, 193.9312014715294, 194.1906487158073, 194.45009596008524, 194.70954320436317, 194.96899044864108, 195.22843769291902, 195.48788493719695, 195.74733218147486, 196.00677942575277, 196.2662266700307, 196.52567391430864, 196.78512115858655, 197.04456840286446, 197.3040156471424, 197.56346289142033, 197.82291013569824, 198.08235737997614, 198.34180462425408, 198.60125186853202, 198.86069911280993, 199.12014635708783, 199.3795936013658, 199.6390408456437, 199.8984880899216, 200.15793533419955, 200.4173825784775, 200.6768298227554, 200.9362770670333, 201.19572431131124, 201.45517155558917, 201.71461879986708, 201.974066044145, 202.23351328842293, 202.49296053270086, 202.75240777697877, 203.01185502125668, 203.27130226553464, 203.53074950981255, 203.79019675409046, 204.0496439983684, 204.30909124264633, 204.56853848692424, 204.82798573120215, 205.08743297548008, 205.34688021975802, 205.60632746403593, 205.86577470831384, 206.12522195259177, 206.3846691968697, 206.64411644114762, 206.90356368542552, 207.16301092970346, 207.4224581739814, 207.6819054182593, 207.94135266253724, 208.20079990681518, 208.46024715109309, 208.719694395371, 208.9791416396489, 209.23858888392687, 209.49803612820477, 209.75748337248268, 210.01693061676065, 210.27637786103855, 210.53582510531646, 210.79527234959437, 211.05471959387233, 211.31416683815024, 211.57361408242815, 211.83306132670606, 212.09250857098402, 212.35195581526193, 212.61140305953984, 212.87085030381775, 213.1302975480957, 213.38974479237362, 213.64919203665153, 213.9086392809295, 214.1680865252074, 214.4275337694853, 214.68698101376322, 214.94642825804118, 215.2058755023191, 215.465322746597, 215.7247699908749, 215.98421723515287, 216.24366447943078, 216.50311172370868, 216.7625589679866, 217.02200621226456, 217.28145345654247, 217.54090070082037, 217.80034794509828, 218.05979518937625, 218.31924243365415, 218.57868967793206, 218.83813692221003, 219.09758416648793, 219.35703141076584, 219.61647865504375, 219.87592589932171, 220.13537314359962, 220.39482038787753, 220.65426763215544, 220.9137148764334, 221.1731621207113, 221.43260936498922, 221.69205660926713, 221.9515038535451, 222.210951097823, 222.4703983421009, 222.72984558637887, 222.98929283065678, 223.2487400749347, 223.5081873192126, 223.76763456349056, 224.02708180776847, 224.28652905204638, 224.54597629632428, 224.80542354060225, 225.06487078488016, 225.32431802915806, 225.58376527343597, 225.84321251771394, 226.10265976199184, 226.36210700626975, 226.62155425054772, 226.88100149482563, 227.14044873910353, 227.39989598338144, 227.6593432276594, 227.9187904719373, 228.17823771621522, 228.43768496049313, 228.6971322047711, 228.956579449049, 229.2160266933269, 229.47547393760482, 229.73492118188278, 229.9943684261607, 230.2538156704386, 230.51326291471656, 230.77271015899447, 231.03215740327238, 231.2916046475503, 231.55105189182825, 231.81049913610616, 232.06994638038407, 232.32939362466198, 232.58884086893994, 232.84828811321785, 233.10773535749576, 233.36718260177366, 233.62662984605163, 233.88607709032954, 234.14552433460744, 234.40497157888535, 234.66441882316332, 234.92386606744122, 235.18331331171913, 235.4427605559971, 235.702207800275, 235.9616550445529, 236.22110228883082, 236.48054953310879, 236.7399967773867, 236.9994440216646, 237.2588912659425, 237.51833851022047, 237.77778575449838, 238.0372329987763, 238.2966802430542, 238.55612748733216, 238.81557473161007, 239.07502197588798, 239.33446922016594, 239.59391646444385, 239.85336370872176, 240.11281095299967, 240.37225819727763, 240.63170544155554, 240.89115268583345, 241.15059993011135, 241.41004717438932, 241.66949441866723, 241.92894166294514, 242.18838890722304, 242.447836151501, 242.70728339577892, 242.96673064005682, 243.2261778843348, 243.4856251286127, 243.7450723728906, 244.0045196171685, 244.26396686144648, 244.52341410572438, 244.7828613500023, 245.0423085942802, 245.30175583855817, 245.56120308283607, 245.82065032711398, 246.0800975713919, 246.33954481566985, 246.59899205994776, 246.85843930422567, 247.11788654850363, 247.37733379278154, 247.63678103705945, 247.89622828133736, 248.15567552561532, 248.41512276989323, 248.67457001417114, 248.93401725844905, 249.193464502727, 249.45291174700492, 249.71235899128283, 249.97180623556073, 250.2312534798387, 250.4907007241166, 250.75014796839451, 251.00959521267242, 251.2690424569504, 251.5284897012283, 251.7879369455062, 252.04738418978417, 252.30683143406208, 252.56627867833998, 252.8257259226179, 253.08517316689586, 253.34462041117376, 253.60406765545167, 253.86351489972958, 254.12296214400754, 254.38240938828545, 254.64185663256336, 254.90130387684127, 255.16075112111923, 255.42019836539714, 255.67964560967505, 255.939092853953, 256.1985400982309, 256.45798734250883, 256.71743458678674, 256.9768818310647, 257.2363290753426, 257.4957763196205, 257.7552235638984, 258.0146708081764, 258.2741180524543, 258.5335652967322, 258.7930125410101, 259.0524597852881, 259.311907029566, 259.5713542738439, 259.83080151812186, 260.09024876239977, 260.3496960066777, 260.6091432509556, 260.86859049523355, 261.12803773951146, 261.38748498378936, 261.64693222806727, 261.90637947234524, 262.16582671662314, 262.42527396090105, 262.68472120517896, 262.9441684494569, 263.20361569373483, 263.46306293801274, 263.7225101822907, 263.9819574265686, 264.2414046708465, 264.50085191512443, 264.7602991594024, 265.0197464036803, 265.2791936479582, 265.5386408922361, 265.7980881365141, 266.057535380792, 266.3169826250699, 266.5764298693478, 266.83587711362577, 267.0953243579037, 267.3547716021816, 267.6142188464595, 267.87366609073746, 268.13311333501537, 268.3925605792933, 268.65200782357124, 268.91145506784915, 269.17090231212705, 269.43034955640496, 269.6897968006829, 269.94924404496084, 270.20869128923874, 270.46813853351665, 270.7275857777946, 270.9870330220725, 271.24648026635043, 271.50592751062834, 271.7653747549063, 272.0248219991842, 272.2842692434621, 272.5437164877401, 272.803163732018, 273.0626109762959, 273.3220582205738, 273.5815054648518, 273.8409527091297, 274.1003999534076, 274.3598471976855, 274.61929444196346, 274.87874168624137, 275.1381889305193, 275.3976361747972, 275.65708341907515, 275.91653066335306, 276.17597790763097, 276.43542515190893, 276.69487239618684, 276.95431964046475, 277.21376688474265, 277.4732141290206, 277.7326613732985, 277.99210861757643, 278.25155586185434, 278.5110031061323, 278.7704503504102, 279.0298975946881, 279.28934483896603, 279.548792083244, 279.8082393275219, 280.0676865717998, 280.3271338160778, 280.5865810603557, 280.8460283046336, 281.1054755489115, 281.36492279318946, 281.6243700374674, 281.8838172817453, 282.1432645260232, 282.40271177030115, 282.66215901457906, 282.92160625885697, 283.1810535031349, 283.44050074741284, 283.69994799169075, 283.95939523596866, 284.21884248024656, 284.47828972452453, 284.73773696880244, 284.99718421308035, 285.2566314573583, 285.5160787016362, 285.7755259459141, 286.03497319019203, 286.29442043447, 286.5538676787479, 286.8133149230258, 287.0727621673037, 287.3322094115817, 287.5916566558596, 287.8511039001375, 288.1105511444154, 288.3699983886934, 288.6294456329713, 288.8888928772492, 289.14834012152716, 289.40778736580506, 289.66723461008297, 289.9266818543609, 290.18612909863884, 290.44557634291675, 290.70502358719466, 290.96447083147257, 291.22391807575053, 291.48336532002844, 291.74281256430635, 292.00225980858426, 292.2617070528622, 292.52115429714013, 292.78060154141804, 293.040048785696, 293.2994960299739, 293.5589432742518, 293.8183905185297, 294.0778377628077, 294.3372850070856, 294.5967322513635, 294.8561794956414, 295.1156267399194, 295.3750739841973, 295.6345212284752, 295.8939684727531, 296.15341571703107, 296.412862961309, 296.6723102055869, 296.93175744986485, 297.19120469414275, 297.45065193842066, 297.71009918269857, 297.96954642697654, 298.22899367125444, 298.48844091553235, 298.74788815981026, 299.0073354040882, 299.26678264836613, 299.52622989264404, 299.78567713692195, 300.0451243811999, 300.3045716254778, 300.5640188697557, 300.82346611403364, 301.0829133583116, 301.3423606025895, 301.6018078468674, 301.8612550911454, 302.1207023354233, 302.3801495797012, 302.6395968239791, 302.89904406825707, 303.158491312535, 303.4179385568129, 303.6773858010908, 303.93683304536876, 304.19628028964667, 304.4557275339246, 304.7151747782025, 304.97462202248045, 305.23406926675835, 305.49351651103626, 305.7529637553142, 306.01241099959213, 306.27185824387004, 306.53130548814795, 306.7907527324259, 307.0501999767038, 307.30964722098173, 307.56909446525964, 307.8285417095376, 308.0879889538155, 308.3474361980934, 308.6068834423713, 308.8663306866493, 309.1257779309272, 309.3852251752051, 309.6446724194831, 309.904119663761, 310.1635669080389, 310.4230141523168, 310.68246139659476, 310.94190864087267, 311.2013558851506, 311.4608031294285, 311.72025037370645, 311.97969761798436, 312.23914486226226, 312.4985921065402, 312.75803935081814, 313.01748659509605, 313.27693383937395, 313.5363810836519, 313.7958283279298, 314.05527557220773, 314.31472281648564, 314.5741700607636, 314.8336173050415, 315.0930645493194, 315.35251179359733, 315.6119590378753, 315.8714062821532, 316.1308535264311, 316.390300770709, 316.649748014987, 316.9091952592649, 317.1686425035428, 317.4280897478207, 317.68753699209867, 317.9469842363766, 318.2064314806545, 318.46587872493245, 318.72532596921036, 318.98477321348827, 319.2442204577662, 319.50366770204414, 319.76311494632205, 320.02256219059996, 320.28200943487786, 320.54145667915583, 320.80090392343374, 321.06035116771164, 321.31979841198955, 321.5792456562675, 321.8386929005454, 322.09814014482333, 322.3575873891013, 322.6170346333792, 322.8764818776571, 323.135929121935, 323.395376366213, 323.6548236104909, 323.9142708547688, 324.1737180990467, 324.4331653433247, 324.6926125876026, 324.9520598318805, 325.2115070761584, 325.47095432043636, 325.73040156471427, 325.9898488089922, 326.24929605327014, 326.50874329754805, 326.76819054182596, 327.02763778610387, 327.28708503038183, 327.54653227465974, 327.80597951893765, 328.06542676321556, 328.3248740074935, 328.5843212517714, 328.84376849604934, 329.10321574032724, 329.3626629846052, 329.6221102288831, 329.881557473161, 330.141004717439, 330.4004519617169, 330.6598992059948, 330.9193464502727, 331.1787936945507, 331.4382409388286, 331.6976881831065, 331.9571354273844, 332.21658267166237, 332.4760299159403, 332.7354771602182, 332.9949244044961, 333.25437164877405, 333.51381889305196, 333.77326613732987, 334.0327133816078, 334.29216062588574, 334.55160787016365, 334.81105511444156, 335.0705023587195, 335.32994960299743, 335.58939684727534, 335.84884409155325, 336.1082913358312, 336.3677385801091, 336.627185824387, 336.88663306866493, 337.14608031294284, 337.4055275572208, 337.6649748014987, 337.9244220457766, 338.1838692900546, 338.4433165343325, 338.7027637786104, 338.9622110228883, 339.2216582671663, 339.4811055114442, 339.7405527557221, 340 ], "y": [ 23450, 23341.17857281152, 23233.65951408784, 23127.427122476005, 23022.465945077958, 22918.760772747613, 22816.296635491486, 22715.058797970225, 22615.032755098604, 22516.204227741426, 22418.559158503, 22322.083707607933, 22226.764248870815, 22132.58736575284, 22039.539847502998, 21947.608685381965, 21856.78106896649, 21767.04438253254, 21678.386201515023, 21590.794289042544, 21504.256592545076, 21418.761240433065, 21334.29653884605, 21250.85096846932, 21168.41318141679, 21086.971998178706, 21006.51640463253, 20927.035549115568, 20848.51873955786, 20770.955440673933, 20694.335271212036, 20618.648001259506, 20543.883549603008, 20470.031981142274, 20397.08350435624, 20325.028468820234, 20253.857362773157, 20183.560810733445, 20114.129571162717, 20045.554534176015, 19977.82671929757, 19910.93727326112, 19844.87746785366, 19779.638697801776, 19715.212478699494, 19651.590444976784, 19588.764347907796, 19526.726053657912, 19465.467541368787, 19404.980901280534, 19345.258332890186, 19286.292143145733, 19228.074744674825, 19170.598654047488, 19113.85649007206, 19057.840972123624, 19002.54491850424, 18947.961244834307, 18894.082962474316, 18840.90317697643, 18788.415086565168, 18736.611980646634, 18685.48723834561, 18635.034327069985, 18585.24680110193, 18536.11830021519, 18487.642548317996, 18439.813352121062, 18392.624599830116, 18346.070259862423, 18300.144379586876, 18254.841084087075, 18210.15457494697, 18166.079129058606, 18122.609097451445, 18079.738904142898, 18037.463045009594, 17995.776086678947, 17954.67266544063, 17914.14748617752, 17874.195321315776, 17834.81100979356, 17795.98945604814, 17757.725629020893, 17720.014561179934, 17682.85134755996, 17646.231144818994, 17610.149170311655, 17574.600701178693, 17539.58107345235, 17505.085681177374, 17471.109975547242, 17437.649464055386, 17404.699709661076, 17372.256329969685, 17340.31499642705, 17308.871433527678, 17277.921418036465, 17247.46077822375, 17217.48539311336, 17187.99119174343, 17158.974152439805, 17130.43030210166, 17102.355715499216, 17074.746514583232, 17047.59886780617, 17020.90898945462, 16994.67313899295, 16968.887620417885, 16943.54878162382, 16918.65301377862, 16894.196750709816, 16870.17646830088, 16846.588683897477, 16823.42995572346, 16800.69688230643, 16778.386101912736, 16756.494291991625, 16735.018168628496, 16713.95448600702, 16693.300035879955, 16673.05164704856, 16653.206184850358, 16633.760550655174, 16614.711681369245, 16596.056548947297, 16577.792159912402, 16559.91555488348, 16542.42380811037, 16525.314027016197, 16508.58335174709, 16492.2289547289, 16476.248040231025, 16460.63784393701, 16445.3956325219, 16430.518703236277, 16416.004383496696, 16401.850030482587, 16388.0530307394, 16374.61079978788, 16361.520781739466, 16348.78044891755, 16336.38730148464, 16324.338867075214, 16312.632700434255, 16301.266383061273, 16290.237522859821, 16279.543753792292, 16269.18273554005, 16259.152153168634, 16249.449716798124, 16240.073161278406, 16231.020245869393, 16222.288753926045, 16213.876492588122, 16205.781292474572, 16198.00100738251, 16190.533513990684, 16183.37671156735, 16176.528521682507, 16169.986887924375, 16163.749775620086, 16157.815171560498, 16152.181083729072, 16146.845541034701, 16141.806593048517, 16137.062309744495, 16132.610781243893, 16128.450117563385, 16124.57844836689, 16120.993922720976, 16117.694708853835, 16114.678993917723, 16111.944983754845, 16109.490902666596, 16107.31499318614, 16105.41551585423, 16103.790748998257, 16102.438988514428, 16101.358547653086, 16100.547756807051, 16100.004963302996, 16099.728531195746, 16099.716841065514, 16099.968289817989, 16100.481290487249, 16101.254272041406, 16102.285679191034, 16103.57397220025, 16105.117626700423, 16106.915133506494, 16108.964998435873, 16111.265742129799, 16113.815899877249, 16116.614021441197, 16119.658670887353, 16122.948426415212, 16126.481880191437, 16130.257638185543, 16134.274320007804, 16138.530558749426, 16143.025000824833, 16147.756305816158, 16152.723146319822, 16157.924207795204, 16163.358188415337, 16169.023798919668, 16174.919762468748, 16181.044814500925, 16187.397702590937, 16193.977186310402, 16200.782037090194, 16207.81103808463, 16215.062984037502, 16222.536681149842, 16230.230946949514, 16238.144610162453, 16246.276510585682, 16254.625498961963, 16263.190436856103, 16271.970196532915, 16280.96366083674, 16290.169723072588, 16299.587286888822, 16309.215266161347, 16319.052584879348, 16329.098177032502, 16339.350986499645, 16349.809966938874, 16360.474081679113, 16371.342303613033, 16382.413615091375, 16393.687007818626, 16405.161482750053, 16416.836049990023, 16428.709728691654, 16440.781546957733, 16453.05054174291, 16465.51575875711, 16478.176252370224, 16491.031085517934, 16504.0793296088, 16517.320064432493, 16530.75237806917, 16544.375366799995, 16558.188135018845, 16572.189795145016, 16586.379467537103, 16600.75628040795, 16615.319369740606, 16630.067879205406, 16645.00096007801, 16660.117771158515, 16675.417478691532, 16690.899256287285, 16706.562284843636, 16722.405752469123, 16738.42885440692, 16754.630792959728, 16771.010777415584, 16787.5680239746, 16804.301755676577, 16821.211202329505, 16838.295600438934, 16855.554193138214, 16872.986230119568, 16890.590967566004, 16908.367668084044, 16926.31560063728, 16944.434040480726, 16962.72226909595, 16981.17957412698, 16999.805249317007, 17018.598594445815, 17037.55891526799, 17056.685523451804, 17075.977736518922, 17095.43487778473, 17115.05627629945, 17134.841266789877, 17154.789189601877, 17174.899390643528, 17195.1712213289, 17215.60403852257, 17236.197204484743, 17256.950086817, 17277.862058408722, 17298.932497384118, 17320.160787049877, 17341.54631584343, 17363.08847728179, 17384.786669911045, 17406.640297256366, 17428.64876777264, 17450.81149479565, 17473.12789649385, 17495.59739582064, 17518.21942046725, 17540.99340281612, 17563.918779894833, 17586.994993330587, 17610.221489305157, 17633.597718510387, 17657.123136104194, 17680.79720166707, 17704.61937915906, 17728.589136877254, 17752.70594741373, 17776.96928761401, 17801.378638535956, 17825.933485409107, 17850.633317594544, 17875.477628545133, 17900.465915766268, 17925.597680776988, 17950.872429071605, 17976.289670081707, 18001.84891713861, 18027.549687436192, 18053.39150199418, 18079.373885621844, 18105.496366882046, 18131.75847805572, 18158.159755106768, 18184.699737647286, 18211.37796890321, 18238.193995680307, 18265.147368330614, 18292.237640719137, 18319.46437019099, 18346.827117538865, 18374.325446970866, 18401.95892607869, 18429.727125806134, 18457.62962041797, 18485.66598746916, 18513.83580777437, 18542.13866537783, 18570.574147523555, 18599.141844625818, 18627.84135023998, 18656.672261033655, 18685.63417675811, 18714.72670022007, 18743.949437253727, 18773.301996693113, 18802.78399034474, 18832.395032960525, 18862.134742211056, 18892.002738659023, 18921.99864573308, 18952.122089701854, 18982.37269964832, 19012.750107444375, 19043.25394772573, 19073.883857867055, 19104.63947795736, 19135.520450775653, 19166.526421766852, 19197.657039017962, 19228.91195323445, 19260.290817716937, 19291.793288338064, 19323.419023519644, 19355.167684210053, 19387.03893386179, 19419.03243840936, 19451.147866247327, 19483.384888208602, 19515.74317754295, 19548.22240989576, 19580.822263286973, 19613.542418090245, 19646.382557012344, 19679.34236507276, 19712.421529583473, 19745.619740128972, 19778.93668854647, 19812.372068906312, 19845.925577492588, 19879.596912783927, 19913.385775434497, 19947.29186825522, 19981.314896195116, 20015.454566322896, 20049.7105878087, 20084.08267190604, 20118.57053193393, 20153.173883259147, 20187.892443278728, 20222.725931402616, 20257.67406903648, 20292.736579564684, 20327.913188333474, 20363.203622634297, 20398.60761168729, 20434.124886624915, 20469.75518047582, 20505.49822814876, 20541.3537664168, 20577.321533901515, 20613.40127105751, 20649.592720156983, 20685.895625274487, 20722.309732271795, 20758.83478878298, 20795.47054419958, 20832.216749655952, 20869.07315801473, 20906.039523852447, 20943.1156034453, 20980.301154755038, 21017.59593741498, 21054.99971271621, 21092.512243593857, 21130.133294613526, 21167.862631957858, 21205.700023413236, 21243.645238356592, 21281.69804774235, 21319.858224089483, 21358.125541468744, 21396.499775489952, 21434.980703289424, 21473.56810351754, 21512.26175632643, 21551.061443357736, 21589.966947730543, 21628.978054029372, 21668.094548292356, 21707.316217999447, 21746.64285206078, 21786.074240805152, 21825.610175968584, 21865.250450683023, 21904.994859465092, 21944.84319820501, 21984.7952641556, 22024.85085592135, 22065.009773447648, 22105.271818010056, 22145.636792203724, 22186.104499932924, 22226.67474640056, 22267.34733809794, 22308.12208279454, 22348.998789527872, 22389.977268593473, 22431.057331534965, 22472.238791134234, 22513.521461401648, 22554.905157566423, 22596.389696067043, 22637.97489454177, 22679.660571819244, 22721.446547909185, 22763.33264399315, 22805.318682415407, 22847.404486673848, 22889.58988141104, 22931.8746924053, 22974.258746561933, 23016.741871904404, 23059.323897565766, 23102.00465378005, 23144.783971873745, 23187.661684257415, 23230.637624417282, 23273.71162690704, 23316.88352733957, 23360.153162378876, 23403.520369731978, 23446.98498814098, 23490.54685737512, 23534.205818222952, 23577.96171248455, 23621.81438296383, 23665.763673460922, 23709.80942876457, 23753.951494644643, 23798.189717844743, 23842.52394607479, 23886.95402800372, 23931.47981325228, 23976.101152385825, 24020.817896907232, 24065.62989924982, 24110.53701277038, 24155.539091742245, 24200.635991348445, 24245.827567674867, 24291.113677703517, 24336.494179305864, 24381.968931236166, 24427.53779312491, 24473.20062547234, 24518.957289641927, 24564.80764785403, 24610.751563179496, 24656.78889953342, 24702.91952166886, 24749.14329517069, 24795.46008644942, 24841.869762735194, 24888.372192071674, 24934.967243310144, 24981.65478610352, 25028.43469090054, 25075.30682893988, 25122.271072244424, 25169.327293615526, 25216.475366627335, 25263.71516562116, 25311.0465656999, 25358.469442722515, 25405.983673298524, 25453.589134782585, 25501.285705269085, 25549.073263586815, 25596.951689293634, 25644.92086267125, 25692.98066471997, 25741.130977153556, 25789.37168239408, 25837.70266356687, 25886.123804495415, 25934.634989696424, 25983.23610437483, 26031.927034418906, 26080.707666395334, 26129.577887544456, 26178.537585775386, 26227.586649661327, 26276.724968434817, 26325.952431983074, 26375.268930843333, 26424.674356198284, 26474.16859987146, 26523.75155432277, 26573.42311264397, 26623.183168554235, 26673.03161639572, 26722.968351129228, 26772.99326832981, 26823.106264182527, 26873.307235478107, 26923.59607960877, 26973.97269456399, 27024.436978926355, 27074.98883186739, 27125.628153143516, 27176.35484309194, 27227.168802626635, 27278.069933234343, 27329.0581369706, 27380.133316455802, 27431.295374871308, 27482.54421595556, 27533.87974400022, 27585.30186384641, 27636.810480880875, 27688.405501032285, 27740.086830767454, 27791.85437708772, 27843.70804752523, 27895.64775013932, 27947.67339351293, 27999.784886749025, 28051.98213946702, 28104.265061799306, 28156.63356438773, 28209.087558380146, 28261.62695542698, 28314.25166767781, 28366.961607778005, 28419.756688865367, 28472.636824566776, 28525.601928994944, 28578.651916745068, 28631.786702891666, 28685.006202985263, 28738.31033304927, 28791.699009576747, 28845.17214952732, 28898.729670323984, 28952.371489850073, 29006.097526446123, 29059.907698906864, 29113.801926478183, 29167.780128854098, 29221.842226173798, 29275.98813901869, 29330.217788409434, 29384.53109580307, 29438.927983090092, 29493.408372591613, 29547.97218705648, 29602.619349658504, 29657.34978399359, 29712.163414077037, 29767.060164340706, 29822.039959630318, 29877.102725202738, 29932.248386723277, 29987.476870263003, 30042.78810229609, 30098.18200969721, 30153.658519738874, 30209.217560088877, 30264.859058807695, 30320.582944345944, 30376.38914554184, 30432.277591618695, 30488.248212182378, 30544.300937218897, 30600.43569709187, 30656.652422540166, 30712.95104467538, 30769.33149497954, 30825.793705302614, 30882.337607860227, 30938.96313523124, 30995.670220355478, 31052.458796531362, 31109.328797413655, 31166.280157011133, 31223.312809684372, 31280.42669014345, 31337.62173344576, 31394.897874993752, 31452.25505053278, 31509.69319614888, 31567.212248266653, 31624.812143647036, 31682.49281938527, 31740.254212908683, 31798.096261974686, 31856.018904668585, 31914.02207940159, 31972.105724908724, 32030.26978024678, 32088.51418479232, 32146.83887823961, 32205.243800598702, 32263.728892193376, 32322.294093659228, 32380.939345941682, 32439.664590294087, 32498.469768275732, 32557.354821750025, 32616.319692882502, 32675.364324139013, 32734.488658283815, 32793.692638377746, 32852.97620777635, 32912.339310128074, 32971.78188937243, 33031.303889738236, 33090.90525574176, 33150.585932185015, 33210.345864153926, 33270.184997016644, 33330.10327642175, 33390.10064829659, 33450.17705884549, 33510.33245454812, 33570.56678215776, 33630.87998869965, 33691.27202146932, 33751.74282803092, 33812.292356215585, 33872.920554119846, 33933.62737010393, 33994.412752790246, 34055.276651061686, 34116.21901406017, 34177.23979118494, 34238.338932091116, 34299.51638668804, 34360.77210513781, 34422.106037853744, 34483.51813549883, 34545.00834898421, 34606.57662946777, 34668.22292835254, 34729.94719728527, 34791.74938815504, 34853.62945309161, 34915.58734446421, 34977.62301487992, 35039.736417182336, 35101.927504450156, 35164.19622999573, 35226.54254736368, 35288.96641032958, 35351.467772898446, 35414.046589303514, 35476.70281400478, 35539.43640168769, 35602.24730726185, 35665.135485859595, 35728.10089283473, 35791.14348376126, 35854.263214431965, 35917.46004085726, 35980.733919263796, 36044.084806093204, 36107.512658000924, 36171.017431854816, 36234.59908473397, 36298.2575739275, 36361.9928569332, 36425.80489145653, 36489.693635409145, 36553.65904690785, 36617.70108427343, 36681.81970602928, 36746.01487090043, 36810.28653781226, 36874.63466588929, 36939.059214454166, 37003.560143026385, 37068.13741132119, 37132.79097924848, 37197.5208069116, 37262.32685460627, 37327.2090828195, 37392.16745222842, 37457.20192369922, 37522.312458286106, 37587.49901723007, 37652.76156195799, 37718.10005408147, 37783.51445539578, 37849.00472787884, 37914.57083369013, 37980.21273516965, 38045.930394836985, 38111.723775390084, 38177.592839704485, 38243.53755083208, 38309.55787200025, 38375.65376661083, 38441.82519823909, 38508.07213063276, 38574.39452771111, 38640.79235356385, 38707.26557245031, 38773.81414879838, 38840.43804720358, 38907.137232428155, 38973.91166940008, 39040.761323212115, 39107.68615912098, 39174.68614254628, 39241.76123906971, 39308.91141443412, 39376.13663454253, 39443.43686545738, 39510.81207339948, 39578.26222474721, 39645.78728603569, 39713.38722395571, 39781.062005353124, 39848.81159722776, 39916.635966732676, 39984.535081173344, 40052.50890800664, 40120.55741484015, 40188.68056943135, 40256.878339686635, 40325.150693660566, 40393.49759955515, 40461.91902571881, 40530.41494064579, 40598.985312975215, 40667.63011149035, 40736.34930511778, 40805.14286292665, 40874.010754127805, 40942.95294807319, 41011.96941425479, 41081.06012230416, 41150.225041991485, 41219.46414322482, 41288.77739604944, 41358.16477064702, 41427.62623733482, 41497.16176656518, 41566.77132892444, 41636.45489513254, 41706.21243604211, 41776.04392263775, 41845.94932603542, 41915.92861748162, 41985.98176835273, 42056.10875015433, 42126.309534520384, 42196.584093212754, 42266.93239812032, 42337.35442125832, 42407.85013476785, 42478.41951091491, 42549.06252208992, 42619.77914080704, 42690.56933970338, 42761.43309153852, 42832.370369193726, 42903.38114567128, 42974.46539409395, 43045.623087704276, 43116.854199863876, 43188.15870405295, 43259.5365738695, 43330.987783028795, 43402.51230536275, 43474.11011481918, 43545.7811854614, 43617.52549146741, 43689.34300712938, 43761.23370685307, 43833.19756515715, 43905.23455667265, 43977.34465614241, 44049.52783842035, 44121.78407847103, 44194.11335136903, 44266.51563229827, 44338.99089655162, 44411.53911953014, 44484.160276742594, 44556.85434380498, 44629.62129643972, 44702.461110475386, 44775.373761845956, 44848.35922659028, 44921.41748085166, 44994.548500877165, 45067.75226301711, 45141.02874372462, 45214.37791955494, 45287.79976716507, 45361.29426331309, 45434.861384857686, 45508.5011087577, 45582.21341207152, 45655.99827195656, 45729.85566566886, 45803.785570562366, 45877.7879640887, 45951.86282379641, 46026.01012733059, 46100.22985243242, 46174.521976938544, 46248.88647878064, 46323.32333598501, 46397.83252667199, 46472.414029055435, 46547.06782144245, 46621.793882232596, 46696.59218991773, 46771.46272308131, 46846.405460398026, 46921.420380633346, 46996.50746264297, 47071.666685372445, 47146.89802785674, 47222.20146921961, 47297.576988673405, 47373.024565518404, 47448.54417914245, 47524.13580902057, 47599.79943471441, 47675.53503587184, 47751.34259222664, 47827.222083597786, 47903.17348988936, 47979.19679108987, 48055.29196727189, 48131.45899859171, 48207.69786528885, 48284.00854768559, 48360.39102618671, 48436.84528127887, 48513.37129353039, 48589.969043590754, 48666.63851219015, 48743.3796801392, 48820.19252832845, 48897.07703772797, 48974.03318938707, 49051.060964433724, 49128.16034407438, 49205.33130959341, 49282.57384235277, 49359.8879237917, 49437.27353542618, 49514.73065884867, 49592.259275727716, 49669.85936780752, 49747.530916907606, 49825.273904922484, 49903.088313821136, 49980.97412564684, 50058.93132251668, 50136.959886621175, 50215.059800224044, 50293.23104566167, 50371.47360534284, 50449.787461748456, 50528.17259743099, 50606.62899501434, 50685.15663719332, 50763.75550673342, 50842.42558647042, 50921.16685931002, 50999.979308227514, 51078.86291626754, 51157.81766654353, 51236.84354223762, 51315.94052660015, 51395.108602949374, 51474.347754671195, 51553.65796521872, 51633.03921811201, 51712.491496937786, 51792.01478534897, 51871.60906706454, 51951.2743258691, 52031.01054561252, 52110.8177102098, 52190.69580364058, 52270.64480994886, 52350.66471324283, 52430.75549769432, 52510.91714753873, 52591.149647074555, 52671.45298066316, 52751.82713272853, 52832.27208775682, 52912.78783029616, 52993.3743449564, 53074.031616408676, 53154.75962938523, 53235.558368679136, 53316.427819143835, 53397.36796569308, 53478.37879330052, 53559.460286999376, 53640.612431882284, 53721.8352131009, 53803.128615865666, 53884.49262544559, 53965.92722716778, 54047.432406417414, 54129.0081486373, 54210.65443932763, 54292.37126404576, 54374.158608405916, 54456.01645807885, 54537.94479879175, 54619.94361632774, 54702.01289652584, 54784.15262528057, 54866.362788541686, 54948.64337231404, 55030.99436265717, 55113.41574568511, 55195.907507566226, 55278.46963452273, 55361.1021128307, 55443.80492881962, 55526.578068872244, 55609.421519424315, 55692.33526696429, 55775.31929803313, 55858.37359922408, 55941.49815718231, 56024.69295860484, 56107.95799024015, 56191.293238888036, 56274.698691399346, 56358.17433467571, 56441.72015566933, 56525.3361413828, 56609.02227886876, 56692.77855522973, 56776.60495761794, 56860.50147323496, 56944.46808933157, 57028.50479320753, 57112.611572211295, 57196.7884137399, 57281.03530523861, 57365.352234200756, 57449.739188167536, 57534.1961547278, 57618.723121517745, 57703.32007622081, 57787.98700656734 ] } ], "layout": { "legend": { "title": { "text": "Altitude" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Total drag variation with altitude - CD0 = 0.016, K=0.045, S=50m^2, W=300.0" }, "xaxis": { "range": [ 0, 300 ], "title": { "text": "EAS / (m/s)" } }, "yaxis": { "range": [ 0, 20000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = go.Figure()\n", "\n", "fig.update_xaxes(range=[0, 300])\n", "fig.update_yaxes(range=[0, 20e3])\n", "\n", "rho_sl = 1.225\n", "\n", "for alt in [0, 5000, 15000]:\n", "\n", " mosphere = Atmosphere(alt)\n", " rho = mosphere.density\n", "\n", " # Determine stall speed\n", " Vstall = np.sqrt(W / (0.5 * rho_sl * S * Clmax))\n", "\n", "\n", " # Determine A and B\n", " AE = CD0 * 0.5 * rho_sl * S\n", " BE = K * W ** 2 / 0.5 / rho_sl / S\n", "\n", " # Flight speed vector\n", " VE = np.linspace(Vstall, 340, 1000)\n", "\n", "\n", " # Define drags\n", " Dind = BE * VE**-2\n", " Dprof = AE * VE**2\n", " D = Dind + Dprof\n", "\n", " # Get minimum drag\n", " Vmd = (BE/AE)**.25\n", " md = AE * Vmd**2 + BE * Vmd**-2\n", "\n", "\n", " fig.add_trace(go.Scatter(x=Vs, y=D, name=f\"Total Drag: {alt/1e3:1.0f}km\"))\n", "\n", "\n", "\n", " \n", "\n", " fig.update_layout(\n", " title=f\"Total drag variation with altitude - CD0 = {CD0}, K={K}, S={S}m^2, W={W/1e3}\",\n", " xaxis_title=\"EAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Altitude\",\n", " )\n", " \n", "\n", "# fig.add_trace(go.Scatter(x=np.linspace(0, 300, 1000), y=md*np.ones(1000), name=\"Constant Minimum Drag\", connectgaps=True))\n", " \n", " \n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", " \n", " \n", "fig.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Hence the minimum drag speed in EAS is a function of the constants $K$ and $C_{Dmin}$, and $\\rho_{SL}$. $V_{E_{MD}}$ and *increases with aircraft weight* and **remains constant** with *aircraft altitude*." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Range vs Endurance\n", "\n", "The aircraft *drag* can be considered as the force required to propel the aircraft forward. For this reason, it is useful to determine the condition of minimum drag, as this means the aircraft is flying with the greatest aerodynamic efficiency - when flying at this condition, the aircraft can go the farthest. This defines the **maximum range** (see the note below). Hence, if a pilot wishes to fly the longest distance (in a glider or propeller-drive aircraft) for a certain amount of fuel, they should fly at $V_{md} = \\left[\\frac{B}{A}\\right]^{-\\frac{1}{4}}$.\n", "\n", "```{admonition} Actually...\n", "The maximum range is found at $V_{md}$ for a glider or a propeller-driven aircraft, for reasons that we'll get to.\n", "\n", "The maximum range for a turbojet is found at the minimum power speed - so this is another reason why we need to look at power.\n", "```\n", "\n", "However, they will not be able to fly for the longest period of time at this speed. For certain aircraft missions, it is desirable to seek _endurance_ as opposed to _range_.\n", "\n", "For consideration of endurance, the problem is not one of minimising the force required, but instead to minimise the amount of energy required in a given amount of time, Hence, the problem is not one of minimising the *force required* (the drag), but minimising the amount of *work done per time* - **flying with minimum power**.\n", "\n", "### Power required\n", "\n", "Power is the rate of doing work - so the power required to overcome drag is:\n", "\n", "$$\\text{required power } = \\text{ drag} \\times \\text{flight speed}$$\n", "$$P_R=D\\cdot V$$\n", "\n", "$$P = T\\cdot V = D\\cdot V$$\n", "$$= \\left[AV^2 + \\frac{B}{V^2}\\right]\\cdot V$$\n", "$$= AV^3 + \\frac{B}{V}$$\n", "\n", "the minimum power required is found\n", "\n", "$$\\frac{\\text{d}P}{\\text{d}V} = 3AV^2 - \\frac{B}{V^2} (= 0 \\text{ at }P_{min}\\text{)})$$\n", "$$V_{MP}^4 = \\frac{B}{3A}$$\n", "$$V_{MP} = \\left[\\frac{B}{3A}\\right]^{\\frac{1}{4}}$$\n", "$$= \\left[\\frac{2W}{\\rho S}\\right]^\\frac{1}{2}\\left[\\frac{K}{3\\cdot C_{D0}}\\right]^{\\frac{1}{4}}$$\n", "\n", "It is easy to compare the minimum drag speed and the minimum power speeds, now:\n", "\n", "$$\\frac{V_{MP}}{V_{MD}} = \\frac{\\left[\\frac{B}{3A}\\right]^{\\frac{1}{4}}}{\\left[\\frac{B}{A}\\right]^{\\frac{1}{4}}}=\\left[\\frac{1}{3}\\right]^\\frac{1}{4}\\simeq 75.98\\%$$\n", "\n", "So flying at the minimum power speed, which is _slower_ than the minimum drag speed, will not get the best range but will enable a pilot to stay in the air for the longest period of time. \n", " \n", "As was performed for Drag, the Power required can now be plotted vs TAS:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "scrolled": false, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Induced Power", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 637382.3974035627, 635861.8915713852, 634348.6229515413, 632842.5399958364, 631343.591644463, 629851.7273202304, 628366.8969228773, 626889.0508234615, 625418.1398588314, 623954.1153261751, 622496.9289776433, 621046.5330150496, 619602.8800846458, 618165.9232719656, 616735.6160967443, 615311.9125079074, 613894.7668786264, 612484.1340014464, 611079.9690834782, 609682.2277416568, 608290.8659980651, 606905.8402753222, 605527.107392033, 604154.6245583004, 602788.3493712998, 601428.2398109105, 600074.2542354091, 598726.3513772191, 597384.4903387182, 596048.6305881023, 594718.7319553038, 593394.7546279659, 592076.6591474686, 590764.4064050103, 589457.9576377376, 588157.2744249308, 586862.3186842354, 585573.052667947, 584289.4389593427, 583011.4404690608, 581739.0204315302, 580472.1424014424, 579210.7702502743, 577954.8681628515, 576704.4006339601, 575459.3324650003, 574219.6287606834, 572985.2549257716, 571756.1766618612, 570532.3599642039, 569313.7711185722, 568100.376698163, 566892.1435605405, 565689.0388446199, 564491.0299676872, 563298.0846224577, 562110.170774173, 560927.256657732, 559749.3107748604, 558576.3018913144, 557408.1990341208, 556244.9714888495, 555086.5887969225, 553933.0207529552, 552784.2374021307, 551640.2090376067, 550500.9061979558, 549366.2996646351, 548236.3604594893, 547111.0598422835, 545990.3693082664, 544874.2605857629, 543762.7056337978, 542655.676639746, 541553.146017014, 540455.0864027482, 539361.4706555704, 538272.2718533422, 537187.4632909558, 536107.018478151, 535030.9111373593, 533959.1152015738, 532891.6048122436, 531828.3543171945, 530769.3382685749, 529714.5314208241, 528663.908728668, 527617.4453451353, 526575.1166195998, 525536.8980958436, 524502.7655101459, 523472.6947893913, 522446.66204920266, 521424.64359209494, 520406.6159056507, 519392.5556607165, 518382.4397096219, 517376.245084417, 516373.94899513246, 515375.5288280585, 514380.962144044, 513390.2266768159, 512403.30033131724, 511420.1611820643, 510440.7874715236, 509465.1576085066, 508493.2501665826, 507525.04388251074, 506560.51765468915, 505599.6505416216, 504642.42176040245, 503688.8106852179, 502738.7968458646, 501792.35992628476, 500849.47976311826, 499910.13634427043, 498974.3098074963, 498041.9804390008, 497113.1286720544, 496187.73508562375, 495265.7804030189, 494347.2454905545, 493432.1113562258, 492520.3591484001, 491611.9701545224, 490706.9257998343, 489805.2076461092, 488906.79739039915, 488011.67686379683, 487119.82803021104, 486231.2329851547, 485345.87395454716, 484463.7332935289, 483584.7934852892, 482709.0371399071, 481836.4469932041, 480967.00590561, 480100.69686104014, 479237.50296578626, 478377.4074474171, 477520.39365369343, 476666.4450514922, 475815.54522574414, 474967.67787838116, 474122.8268272968, 473280.9760053157, 472442.10945917584, 471606.21134852036, 470773.26594490063, 469943.25763078954, 469116.170898606, 468291.9903497483, 467470.70069363905, 466652.2867467795, 465836.7334318138, 465024.0257766027, 464214.1489133082, 463407.088077486, 462602.82860718895, 461801.35594207875, 461002.6556225474, 460206.7132888475, 459413.5146802321, 458623.04563410225, 457835.2920851649, 457050.24006459815, 456267.87569922564, 455488.1852106992, 454711.15491469053, 453936.77122008987, 453165.0206282143, 452395.8897320228, 451629.3652153404, 450865.4338520889, 450104.08250552736, 449345.2981274978, 448589.0677576805, 447835.3785228563, 447084.2176361755, 446335.57239643496, 445589.43018736265, 444845.7784769083, 444104.6048165419, 443365.8968405596, 442629.6422653956, 441895.828888941, 441164.4445898703, 440435.4773269735, 439708.91513849556, 438984.7461414823, 438262.95853113197, 437543.5405801542, 436826.480638135, 436111.7671309075, 435399.3885599293, 434689.3335016664, 433981.59060698125, 433276.1486005296, 432572.99628016073, 431872.12251632474, 431173.51625148556, 430477.1664995392, 429783.062345238, 429091.19294362, 428401.5475194445, 427714.1153666326, 427028.88584771304, 426345.8483932735, 425664.99250141735, 424986.30773722514, 424309.7837322219, 423635.4101838488, 422963.17685494, 422293.0735732054, 421625.09023071645, 420959.216783399, 420295.44325052906, 419633.75971423456, 418974.1563190011, 418316.62327118317, 417661.15083851846, 417007.72934964875, 416356.3491936438, 415707.0008195296, 415059.67473582266, 414414.36151006666, 413771.05176837445, 413129.7361949747, 412490.40553176147, 411853.0505778492, 411217.6621891312, 410584.2312778423, 409952.74881212565, 409323.20581560326, 408695.59336695087, 408069.9025994766, 407446.12470070313, 406824.25091195427, 406204.27252794465, 405586.1808963738, 404969.96741752344, 404355.62354385894, 403743.14077963383, 403132.5106804983, 402523.72485311114, 401916.7749547549, 401311.65269295516, 400708.3498251027, 400106.85815807927, 399507.16954788676, 398909.27589927946, 398313.1691654, 397718.841347418, 397126.2844941731, 396535.49070181913, 395946.452113474, 395359.1609188706, 394773.60935401154, 394189.7897008275, 393607.6942868378, 393027.3154848145, 392448.6457124491, 391871.6774320223, 391296.4031500768, 390722.815417093, 390150.90682716726, 389580.67001769325, 389012.097669046, 388445.18250426865, 387879.917288762, 387316.2948299768, 386754.30797710875, 386193.9496207961, 385635.2126928194, 385078.09016580525, 384522.57505293057, 383968.66040763137, 383416.33932331274, 382865.6049330622, 382316.45040936465, 381768.86896382057, 381222.85384686606, 380678.3983474956, 380135.4957929873, 379594.13954863, 379054.3230174533, 378516.0396399593, 377979.282893857, 377444.04629379883, 376910.3233911197, 376378.10777357774, 375847.3930650975, 375318.1729255158, 374790.4410503283, 374264.1911704401, 373739.417051917, 373216.1124957396, 372694.2713375588, 372173.8874474544, 371654.9547296942, 371137.4671224968, 370621.4185977953, 370106.80316100304, 369593.6148507816, 369081.8477388108, 368571.49592956004, 368062.5535600621, 367555.0147996888, 367048.87384992826, 366544.1249441638, 366040.76234745514, 365538.7803563215, 365038.1732985253, 364538.9355328596, 364041.0614489354, 363544.545466972, 363049.3820375882, 362555.56564159563, 362063.0907897936, 361571.95202276605, 361082.1439106795, 360593.6610530832, 360106.4980787102, 359620.6496452811, 359136.11043930805, 358652.8751759017, 358170.93859857885, 357690.2954790716, 357210.9406171387, 356732.8688403774, 356256.0750040382, 355780.55399083975, 355306.3007107858, 354833.31010098394, 354361.57712546503, 353891.09677500464, 353421.8640669458, 352953.874045023, 352487.1217791879, 352021.6023654357, 351557.3109256341, 351094.2426073523, 350632.39258369233, 350171.756053121, 349712.32823930396, 349254.1043909402, 348797.07978159847, 348341.2497095547, 347886.6094976307, 347433.1544930343, 346980.88006720075, 346529.781615635, 346079.8545577553, 345631.0943367388, 345183.49641936686, 344737.0562958732, 344291.76947979175, 343847.631507807, 343404.63793960446, 342962.78435772256, 342522.0663674063, 342082.4795964611, 341644.01969510864, 341206.682335843, 340770.4632132884, 340335.35804405797, 339901.36256661353, 339468.47254112654, 339036.68374933995, 338605.991994431, 338176.39310087566, 337747.8829143134, 337320.45730141323, 336894.11214974103, 336468.84336762753, 336044.6468840374, 335621.5186484395, 335199.45463067753, 334778.4508208426, 334358.5032291459, 333939.60788579297, 333521.7608408583, 333104.95816416113, 332689.1959451426, 332274.4702927431, 331860.77733528125, 331448.1132203329, 331036.4741146121, 330625.8562038519, 330216.25569268694, 329807.66880453634, 329400.0917814876, 328993.5208841815, 328587.9523916976, 328183.382601441, 327779.80782902904, 327377.22440818045, 326975.62869060325, 326575.01704588544, 326175.3858613851, 325776.73154212174, 325379.05051066884, 324982.3392070467, 324586.59408861626, 324191.81162997324, 323797.9883228441, 323405.1206759818, 323013.20521506254, 322622.2384825833, 322232.21703776065, 321843.1374564292, 321454.99633094185, 321067.79027006985, 320681.51589890465, 320296.1698587591, 319911.74880707084, 319528.2494173053, 319145.66837885947, 318764.0023969672, 318383.2481926043, 318003.4025023944, 317624.4620785165, 317246.4236886114, 316869.28411569085, 316493.04015804507, 316117.68862915336, 315743.22635759326, 315369.65018695174, 314996.9569757363, 314625.14359728707, 314254.20693968906, 313884.1439056855, 313514.95141259197, 313146.6263922102, 312779.1657907434, 312412.5665687122, 312046.82570087, 311681.9401761206, 311317.90699743485, 310954.72318176937, 310592.38575998443, 310230.89177676314, 309870.2382905313, 309510.4223733778, 309151.44111097464, 308793.2916024991, 308435.9709605551, 308079.47631109564, 307723.8047933459, 307368.9535597269, 307014.9197757787, 306661.7006200861, 306309.29328420263, 305957.69497257686, 305606.90290247794, 305256.9143039225, 304907.7264196018, 304559.33650480915, 304211.7418273679, 303864.9396675603, 303518.9273180563, 303173.70208384324, 302829.26128215593, 302485.6022424071, 302142.72230611823, 301800.6188268513, 301459.2891701404, 301118.7307134244, 300778.94084597926, 300439.9169688521, 300101.6564947944, 299764.1568481963, 299427.41546502104, 299091.4297927404, 298756.19729027, 298421.71542790526, 298087.9816872578, 297754.9935611921, 297422.7485537631, 297091.24418015307, 296760.4779666105, 296430.4474503882, 296101.1501796823, 295772.5837135712, 295444.74562195555, 295117.6334854983, 294791.24489556527, 294465.5774541658, 294140.6287738943, 293816.3964778715, 293492.87819968717, 293170.0715833417, 292847.97428318963, 292526.5839638824, 292205.8983003123, 291885.91497755586, 291566.6316908187, 291248.0461453796, 290930.15605653636, 290612.9591495502, 290296.45315959235, 289980.63583168964, 289665.50492067117, 289351.05819111475, 289037.29341729474, 288724.2083831289, 288411.8008821264, 288100.06871733617, 287789.0097012951, 287478.62165597716, 287168.90241274226, 286859.8498122861, 286551.4617045897, 286243.7359488696, 285936.6704135287, 285630.2629761061, 285324.5115232293, 285019.41395056504, 284714.96816277097, 284411.1720734479, 284108.0236050921, 283805.5206890477, 283503.66126546, 283202.44328322855, 282901.8646999607, 282601.9234819253, 282302.6176040071, 282003.94504966086, 281705.90381086647, 281408.4918880835, 281111.7072902069, 280815.5480345222, 280520.01214666176, 280225.09766056016, 279930.80261841166, 279637.125070626, 279344.06307578576, 279051.6147006035, 278759.7780198792, 278468.551116458, 278177.93208118837, 277887.91901288024, 277598.51001826354, 277309.7032119471, 277021.4967163778, 276733.88866179937, 276446.87718621263, 276160.46043533494, 275874.6365625604, 275589.40372891986, 275304.76010304206, 275020.7038611137, 274737.2331868411, 274454.3462714114, 274172.04131345364, 273890.31651900103, 273609.17010145285, 273328.60028153623, 273048.60528726934, 272769.18335392355, 272490.33272398653, 272212.05164712545, 271934.33838015026, 271657.1911869774, 271380.6083385934, 271104.58811301924, 270829.1287952745, 270554.22867734154, 270279.88605813077, 270006.0992434449, 269732.8665459448, 269460.1862851142, 269188.0567872255, 268916.47638530546, 268645.4434191016, 268374.9562350474, 268105.01318622957, 267835.6126323543, 267566.75293971406, 267298.4324811545, 267030.64963604166, 266763.40279022936, 266496.6903360269, 266230.51067216654, 265964.8622037716, 265699.7433423248, 265435.1525056363, 265171.0881178122, 264907.5486092236, 264644.53241647524, 264382.0379823745, 264120.063755901, 263858.6081921758, 263597.6697524308, 263337.24690397934, 263077.33812018536, 262817.94188043394, 262559.0566701016, 262300.68098052696, 262042.8133089811, 261785.4521586388, 261528.59603854924, 261272.24346360748, 261016.39295452574, 260761.0430378049, 260506.19224570613, 260251.83911622313, 259997.9821930537, 259744.62002557234, 259491.75116880232, 259239.3741833885, 258987.48763556968, 258736.0900971517, 258485.18014548044, 258234.7563634149, 257984.8173393005, 257735.36166694268, 257486.38794558027, 257237.89477985966, 256989.88077980836, 256742.34456080932, 256495.2847435751, 256248.69995412225, 256002.58882374567, 255756.94998899364, 255511.78209164235, 255267.08377867096, 255022.85370223675, 254779.09051965034, 254535.79289335094, 254292.95949088217, 254050.5889848676, 253808.68005298643, 253567.23137794965, 253326.24164747616, 253085.70955426854, 252845.63379599008, 252606.01307524077, 252366.8460995342, 252128.13158127418, 251889.86823773175, 251652.05479102192, 251414.68996808128, 251177.77250064493, 250941.30112522407, 250705.27458308334, 250469.69162021883, 250234.55098733542, 249999.85143982506, 249765.5917377447, 249531.77064579443, 249298.38693329573, 249065.43937417006, 248832.926746917, 248600.84783459338, 248369.20142479183, 248137.98630961945, 247907.20128567726, 247676.845154039, 247446.91672023037, 247217.41479420857, 246988.33819034172, 246759.6857273882, 246531.45622847675, 246303.64852108603, 246076.26143702437, 245849.29381241024, 245622.74448765212, 245396.61230742876, 245170.89612066955, 244945.59478053506, 244720.70714439754, 244496.23207382165, 244272.16843454525, 244048.51509646024, 243825.27093359362, 243602.43482408868, 243380.00565018583, 243157.98229820447, 242936.36365852394, 242715.14862556529, 242494.33609777282, 242273.92497759577, 242053.91417147007, 241834.30258980053, 241615.08914694248, 241396.27276118417, 241177.85235472885, 240959.82685367716, 240742.19518800927, 240524.95629156777, 240308.10910204, 240091.6525609407, 239875.5856135951, 239659.9072091214, 239444.61630041382, 239229.711844126, 239015.19280065372, 238801.05813411833, 238587.30681235006, 238373.93780687143, 238160.9500928807, 237948.34264923554, 237736.11445843673, 237524.26450661183, 237312.79178349904, 237101.6952824314, 236890.97400032028, 236680.62693764005, 236470.65309841197, 236261.05149018858, 236051.8211240379, 235842.9610145282, 235634.47017971214, 235426.3476411117, 235218.59242370265, 235011.20355589956, 234804.18006954034, 234597.5209998715, 234391.22538553292, 234185.292268543, 233979.72069428404, 233774.50971148707, 233569.6583722177, 233365.16573186102, 233161.03084910734, 232957.2527859378, 232753.83060760988, 232550.76338264314, 232348.050182805, 232145.6900830966, 231943.68216173872, 231742.0255001578, 231540.71918297204, 231339.76229797752, 231139.15393613442, 230938.89319155327, 230738.9791614814, 230539.41094628934, 230340.18764945734, 230141.30837756183, 229942.7722402623, 229744.5783502878, 229546.72582342374, 229349.2137784989, 229152.0413373722, 228955.20762491974, 228758.71176902184, 228562.5529005502, 228366.7301533549, 228171.24266425203, 227976.0895730106, 227781.27002234024, 227586.78315787832, 227392.6281281779, 227198.80408469477, 227005.3101817756, 226812.14557664527, 226619.3094293949, 226426.80090296944, 226234.61916315573, 226042.76337857035, 225851.23272064773, 225660.0263636281, 225469.14348454578, 225278.58326321718, 225088.34488222923, 224898.4275269275, 224708.83038540484, 224519.55264848957, 224330.59350973406, 224141.95216540335, 223953.62781446349, 223765.6196585706, 223577.92690205926, 223390.5487519314, 223203.4844178452, 223016.73311210392, 222830.29404964473, 222644.16644802786, 222458.34952742563, 222272.84251061163, 222087.64462294962, 221902.75509238304, 221718.17314942414, 221533.89802714318, 221349.92896115826, 221166.26518962416, 220982.9059532223, 220799.85049514993, 220617.09806110998, 220434.64789930056, 220252.49926040467, 220070.65139757996, 219889.10356644858, 219707.85502508687, 219526.90503401536, 219346.25285618877, 219165.89775698583, 218985.8390041995, 218806.07586802696, 218626.60762105978, 218447.43353827405, 218268.5528970207, 218089.96497701586, 217911.6690603309, 217733.6644313831, 217555.95037692602, 217378.5261860398, 217201.39115012187, 217024.5445628775, 216847.98572031027, 216671.71392071288, 216495.72846465788, 216320.0286549881, 216144.6137968079, 215969.48319747375, 215794.63616658506, 215620.0720159753, 215445.79005970285, 215271.78961404195, 215098.06999747394, 214924.6305306783, 214751.47053652367, 214578.58934005914, 214405.9862685056, 214233.6606512467, 214061.61181982042, 213889.83910791046, 213718.3418513374, 213547.11938805034, 213376.1710581183, 213205.49620372176, 213035.09416914417, 212864.9643007637, 212695.10594704474, 212525.51845852952, 212356.2011878302, 212187.15348962002, 212018.37472062575, 211849.86423961917, 211681.62140740882, 211513.6455868324, 211345.93614274825, 211178.49244202752, 211011.31385354637, 210844.3997481777, 210677.7494987836, 210511.3624802073, 210345.2380692653, 210179.37564473975, 210013.77458737063, 209848.43427984812, 209683.35410680476, 209518.533454808, 209353.97171235245, 209189.66826985238, 209025.62251963426, 208861.83385592914, 208698.3016748654, 208535.02537446102, 208372.00435461645, 208209.23801710713, 208046.7257655763, 207884.4670055275, 207722.4611443175, 207560.70759114917, 207399.205757064, 207237.95505493513, 207076.9548994603, 206916.20470715465, 206755.70389634368, 206595.4518871563, 206435.44810151783, 206275.69196314295, 206116.18289752898, 205956.9203319488, 205797.90369544402, 205639.13241881834, 205480.60593463058, 205322.32367718781, 205164.28508253905, 205006.4895884681, 204848.93663448712, 204691.62566182998, 204534.55611344558, 204377.72743399133, 204221.1390698266, 204064.7904690062, 203908.68108127383, 203752.81035805578, 203597.17775245442, 203441.7827192416, 203286.6247148527, 203131.70319737995, 202977.0176265663, 202822.56746379903, 202668.3521721036, 202514.37121613722, 202360.62406218308, 202207.11017814372, 202053.8290335351, 201900.7800994805, 201747.96284870448, 201595.37675552664, 201443.02129585575, 201290.89594718377, 201139.00018857972, 200987.33350068392, 200835.89536570193, 200684.6852673987, 200533.70269109265, 200382.9471236501, 200232.41805347908, 200082.11497052372, 199932.0373662585, 199782.18473368252, 199632.55656731373, 199483.15236318336, 199333.97161883005, 199185.01383329454, 199036.2785071137, 198887.76514231515, 198739.47324241177, 198591.40231239598, 198443.55185873437, 198295.92138936216, 198148.51041367778, 198001.31844253733, 197854.34498824933, 197707.58956456918, 197561.05168669394, 197414.73087125688, 197268.62663632215, 197122.7385013797, 196977.06598733968, 196831.6086165275, 196686.3659126784, 196541.33740093242, 196396.52260782899, 196251.9210613021, 196107.53229067492, 195963.3558266547, 195819.39120132785, 195675.6379481548, 195532.0956019648, 195388.7636989512, 195245.64177666622, 195102.7293740161, 194960.0260312561, 194817.53128998552, 194675.2446931429, 194533.16578500107, 194391.29411116225, 194249.62921855334, 194108.17065542098, 193966.9179713267, 193825.87071714227, 193685.02844504488, 193544.39070851245, 193403.95706231878, 193263.72706252898, 193123.7002664948, 192983.8762328498, 192844.25452150498, 192704.83469364385, 192565.61631171816, 192426.5989394431, 192287.7821417928, 192149.16548499576, 192010.74853653047, 191872.5308651207, 191734.51204073124, 191596.69163456318, 191459.06921904988, 191321.64436785196, 191184.41665585345, 191047.38565915718, 190910.5509550803, 190773.9121221502, 190637.4687400999, 190501.2203898639, 190365.16665357398, 190229.3071145547, 190093.64135731925, 189958.16896756535, 189822.8895321708, 189687.80263918938, 189552.90787784677, 189418.20483853618, 189283.69311281442, 189149.3722933976, 189015.24197415716, 188881.30175011564, 188747.55121744264, 188613.98997345087, 188480.61761659206, 188347.43374645273, 188214.4379637506, 188081.62987033013 ] }, { "name": "Profile Power", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 100722.15662673584, 101446.44190362701, 102174.19107073783, 102905.41239134202, 103640.11412871345, 104378.304546126, 105119.9919068534, 105865.18447416954, 106613.89051134826, 107366.1182816633, 108121.87604838853, 108881.17207479784, 109644.01462416493, 110410.4119597637, 111180.37234486802, 111953.9040427516, 112731.01531668834, 113511.71442995209, 114296.00964581658, 115083.9092275557, 115875.4214384433, 116670.55454175314, 117469.31680075907, 118271.71647873496, 119077.76183895454, 119887.46114469171, 120700.8226592203, 121517.85464581406, 122338.5653677469, 123162.96308829261, 123991.056070725, 124822.85257831788, 125658.36087434516, 126497.58922208057, 127340.54588479798, 128187.23912577123, 129037.67720827406, 129891.86839558042, 130749.82095096409, 131611.5431376989, 132477.0432190585, 133346.32945831702, 134219.41011874803, 135096.2934636255, 135976.98775622324, 136861.50125981506, 137749.8422376747, 138642.0189530761, 139538.03966929298, 140437.9126495993, 141341.64615726884, 142249.2484555753, 143160.7278077927, 144076.0924771947, 144995.35072705516, 145918.510820648, 146845.58102124702, 147776.56959212598, 148711.48479655865, 149650.334897819, 150593.12815918072, 151539.8728439178, 152490.57721530396, 153445.24953661306, 154403.89807111878, 155366.53108209514, 156333.15683281585, 157303.78358655484, 158278.41960658587, 159257.07315618277, 160239.75249861926, 161226.46589716937, 162217.2216151067, 163212.0279157053, 164210.8930622389, 165213.82531798133, 166220.83294620627, 167231.92421018778, 168247.10737319948, 169266.3906985154, 170289.78244940925, 171317.2908891549, 172348.92428102597, 173384.6908882966, 174424.59897424036, 175468.65680213127, 176516.87263524308, 177569.25473684963, 178625.8113702246, 179686.550798642, 180751.4812853755, 181820.61109369915, 182893.9484868866, 183971.50172821173, 185053.27908094827, 186139.28880837015, 187229.5391737511, 188324.03844036517, 189422.79487148597, 190525.8167303873, 191633.11228034314, 192744.6897846273, 193860.55750651337, 194980.7237092755, 196105.19665618739, 197233.9846105227, 198367.09583555546, 199504.53859455948, 200646.32115080845, 201792.45176757633, 202942.93870813696, 204097.79023576397, 205257.01461373142, 206420.62010531302, 207588.6149737825, 208761.0074824139, 209937.80589448093, 211119.01847325746, 212304.65348201714, 213494.719184034, 214689.2238425817, 215888.17572093432, 217091.5830823655, 218299.4541901491, 219511.79730755877, 220728.62069786864, 221949.9326243523, 223175.7413502838, 224406.0551389368, 225640.88225358515, 226880.2309575026, 228124.10951396317, 229372.52618624043, 230625.48923760848, 231883.006931341, 233145.08753071184, 234411.7392989947, 235682.97049946367, 236958.78939539226, 238239.20425005455, 239524.22332672434, 240813.85488867536, 242108.1071991813, 243406.98852151635, 244710.50711895394, 246018.67125476827, 247331.48919223293, 248648.96919462184, 249971.1195252086, 251297.9484472674, 252629.46422407174, 253965.67511889568, 255306.589395013, 256652.21531569748, 258002.56114422277, 259357.635143863, 260717.44557789175, 262082.00070958308, 263451.3088022107, 264825.37811904843, 266204.21692336997, 267587.8334784494, 268976.2360475602, 270369.4328939766, 271767.43228097225, 273170.2424718209, 274577.87172979634, 275990.3283181726, 277407.62050022325, 278829.75653922244, 280256.74469844374, 281688.5932411611, 283125.31043064815, 284566.90453017893, 286013.3838030271, 287464.7565124667, 288921.0309217715, 290382.2152942152, 291848.3178930715, 293319.3469816146, 294795.31082311796, 296276.2176808557, 297762.0758181015, 299252.89349812927, 300748.67898421263, 302249.44053962565, 303755.1864276419, 305265.9249115355, 306781.6642545801, 308302.4127200496, 309828.17857121764, 311358.9700713583, 312894.79548374517, 314435.66307165235, 315981.58109835343, 317532.5578271222, 319088.6015212328, 320649.72044395877, 322215.9228585739, 323787.2170283523, 325363.61121656763, 326945.1136864936, 328531.7327014042, 330123.4765245733, 331720.3534192744, 333322.37164878176, 334929.5394763689, 336541.8651653097, 338159.35697887815, 339782.0231803479, 341409.8720329927, 343042.9118000867, 344681.1507449035, 346324.5971307168, 347973.25922080065, 349627.14527842886, 351286.2635668751, 352950.62234941334, 354620.2298893175, 356295.094449861, 357975.22429431806, 359660.62768596236, 361351.3128880676, 363047.28816390794, 364748.561776757, 366455.14198988845, 368167.0370665764, 369884.25527009444, 371606.80486371665, 373334.69411071663, 375067.93127436837, 376806.5246179456, 378550.482404722, 380299.8128979715, 382054.52436096815, 383814.6250569856, 385580.12324929767, 387351.0272011783, 389127.34517590085, 390909.0854367396, 392696.25624696846, 394488.8658698611, 396286.9225686912, 398090.4346067328, 399899.41024725937, 401713.857753545, 403533.7853888637, 405359.2014164891, 407190.11409969506, 409026.5317017553, 410868.4624859435, 412715.9147155338, 414568.89665380004, 416427.41656401596, 418291.48270945536, 420161.10335339204, 422036.28675909963, 423917.04118985217, 425803.3749089237, 427695.2961795878, 429592.81326511834, 431495.9344287891, 433404.6679338738, 435319.0220436463, 437239.00502138084, 439164.6251303508, 441095.8906338302, 443032.8097950928, 444975.3908774122, 446923.64214406244, 448877.5718583176, 450837.1882834512, 452802.49968273717, 454773.5143194492, 456750.2404568611, 458732.6863582467, 460720.86028688017, 462714.77050603507, 464714.4252789853, 466719.8328690045, 468731.0015393665, 470747.93955334526, 472770.65517421474, 474799.1566652487, 476833.45228972076, 478873.550310905, 480919.45899207477, 482971.18659650435, 485028.7413874676, 487092.13162823813, 489161.3655820899, 491236.4515122967, 493317.397682132, 495404.21235487005, 497496.90379378473, 499595.4802621497, 501699.9500232388, 503810.32134032587, 505926.60247668443, 508048.8016955886, 510176.9272603124, 512310.98743412946, 514450.9904803136, 516596.9446621386, 518748.8582428782, 520906.7394858062, 523070.5966541969, 525240.4380113237, 527416.2718204606, 529598.1063448812, 531785.9498478593, 533979.810592669, 536179.6968425842, 538385.6168608785, 540597.5789108258, 542815.5912556999, 545039.6621587743, 547269.7998833231, 549506.0126926206, 551748.3088499401, 553996.6966185556, 556251.1842617407, 558511.7800427692, 560778.4922249151, 563051.3290714523, 565330.2988456546, 567615.4098107959, 569906.6702301498, 572204.08836699, 574507.6724845904, 576817.4308462255, 579133.3717151684, 581455.5033546931, 583783.8340280734, 586118.3719985831, 588459.1255294959, 590806.1028840862, 593159.3123256274, 595518.7621173933, 597884.4605226578, 600256.4158046945, 602634.6362267775, 605019.1300521807, 607409.9055441779, 609806.9709660427, 612210.334581049, 614620.0046524706, 617035.9894435813, 619458.2972176552, 621886.9362379661, 624321.9147677876, 626763.2410703935, 629210.9234090574, 631664.9700470536, 634125.389247656, 636592.1892741381, 639065.3783897739, 641544.9648578371, 644030.9569416012, 646523.3629043406, 649022.191009329, 651527.4495198402, 654039.146699148, 656557.2908105261, 659081.8901172482, 661612.9528825883, 664150.4873698206, 666694.5018422185, 669245.0045630558, 671802.0037956067, 674365.5078031443, 676935.524848943, 679512.0631962768, 682095.1311084192, 684684.736848644, 687280.8886802251, 689883.594866436, 692492.863670551, 695108.7033558439, 697731.1221855883, 700360.1284230582, 702995.7303315274, 705637.9361742694, 708286.7542145582, 710942.192715668, 713604.2599408723, 716272.9641534451, 718948.3136166597, 721630.3165937905, 724318.9813481111, 727014.3161428954, 729716.3292414173, 732425.0289069504, 735140.4234027686, 737862.5209921458, 740591.3299383556, 743326.8585046722, 746069.1149543694, 748818.1075507207, 751573.8445569999, 754336.3342364811, 757105.584852438, 759881.6046681446, 762664.4019468746, 765453.9849519018, 768250.3619464999, 771053.5411939429, 773863.5309575045, 776680.3395004588, 779503.9750860794, 782334.4459776402, 785171.7604384148, 788015.9267316773, 790866.9531207012, 793724.8478687609, 796589.6192391298, 799461.2754950819, 802339.8248998907, 805225.2757168304, 808117.6362091744, 811016.9146401972, 813923.1192731721, 816836.2583713732, 819756.3401980738, 822683.3730165483, 825617.3650900703, 828558.3246819137, 831506.2600553525, 834461.1794736601, 837423.0912001104, 840392.0034979775, 843367.9246305348, 846350.8628610568, 849340.826452817, 852337.8236690889, 855341.8627731465, 858352.9520282638, 861371.0996977143, 864396.3140447724, 867428.6033327117, 870467.9758248058, 873514.4397843283, 876568.0034745536, 879628.675158755, 882696.463100207, 885771.375562183, 888853.4208079568, 891942.607100802, 895038.9427039931, 898142.435880803, 901253.0948945066, 904370.9280083772, 907495.9434856884, 910628.149589714, 913767.554583728, 916914.1667310046, 920067.9942948174, 923229.0455384401, 926397.3287251465, 929572.8521182105, 932755.6239809053, 935945.6525765059, 939142.9461682856, 942347.5130195181, 945559.3613934773, 948778.4995534372, 952004.9357626707, 955238.678284453, 958479.7353820574, 961728.1153187575, 964983.8263578272, 968246.8767625405, 971517.2747961704, 974795.028721992, 978080.1468032788, 981372.6373033042, 984672.5084853421, 987979.7686126668, 991294.4259485507, 994616.4887562696, 997945.9652990962, 1001282.8638403045, 1004627.1926431685, 1007978.9599709619, 1011338.1740869577, 1014704.8432544313, 1018078.9757366556, 1021460.5797969047, 1024849.6636984523, 1028246.2357045722, 1031650.3040785376, 1035061.8770836237, 1038480.9629831035, 1041907.5700402509, 1045341.7065183398, 1048783.380680644, 1052232.6007904366, 1055689.3751109927, 1059153.7119055858, 1062625.6194374892, 1066105.105969977, 1069592.1797663232, 1073086.8490898008, 1076589.1222036846, 1080099.0073712484, 1083616.5128557659, 1087141.6469205103, 1090674.4178287562, 1094214.8338437763, 1097762.903228846, 1101318.6342472383, 1104882.035162227, 1108453.114237086, 1112031.8797350891, 1115618.3399195096, 1119212.5030536223, 1122814.377400701, 1126423.9712240188, 1130041.29278685, 1133666.3503524682, 1137299.1521841465, 1140939.7065451604, 1144588.0216987827, 1148244.1059082875, 1151907.9674369483, 1155579.6145480394, 1159259.0555048333, 1162946.298570606, 1166641.3520086298, 1170344.2240821794, 1174054.9230545277, 1177773.457188949, 1181499.8347487166, 1185234.0639971052, 1188976.1531973886, 1192726.1106128402, 1196483.944506734, 1200249.6631423435, 1204023.274782942, 1207804.7876918048, 1211594.2101322052, 1215391.5503674166, 1219196.8166607132, 1223010.0172753686, 1226831.160474656, 1230660.2545218505, 1234497.3076802255, 1238342.3282130545, 1242195.3243836116, 1246056.3044551706, 1249925.2766910044, 1253802.2493543883, 1257687.2307085958, 1261580.2290169003, 1265481.2525425756, 1269390.3095488958, 1273307.4082991339, 1277232.557056565, 1281165.7640844625, 1285107.0376461, 1289056.3860047513, 1293013.8174236903, 1296979.3401661904, 1300952.9624955263, 1304934.6926749714, 1308924.5389677999, 1312922.5096372848, 1316928.6129467008, 1320942.85715932, 1324965.2505384188, 1328995.8013472692, 1333034.517849146, 1337081.4083073223, 1341136.4809850724, 1345199.7441456693, 1349271.2060523878, 1353350.8749685017, 1357438.7591572846, 1361534.8668820101, 1365639.206405952, 1369751.7859923837, 1373872.6139045802, 1378001.698405815, 1382139.0477593618, 1386284.6702284939, 1390438.5740764858, 1394600.7675666101, 1398771.2589621423, 1402950.0565263557, 1407137.168522524, 1411332.6032139205, 1415536.3688638199, 1419748.4737354945, 1423968.92609222, 1428197.7341972694, 1432434.906313917, 1436680.4507054358, 1440934.3756351003, 1445196.689366183, 1449467.4001619597, 1453746.516285703, 1458034.0460006874, 1462329.997570186, 1466634.3792574732, 1470947.1993258216, 1475268.466038507, 1479598.1876588021, 1483936.372449981, 1488283.0286753173, 1492638.164598085, 1497001.7884815568, 1501373.9085890085, 1505754.5331837132, 1510143.670528944, 1514541.3288879758, 1518947.5165240816, 1523362.2417005347, 1527785.5126806104, 1532217.337727582, 1536657.7251047234, 1541106.6830753076, 1545564.2199026095, 1550030.3438499013, 1554505.063180459, 1558988.3861575553, 1563480.321044464, 1567980.8761044592, 1572490.0596008145, 1577007.879796803, 1581534.3449557002, 1586069.463340779, 1590613.243215313, 1595165.6928425767, 1599726.8204858433, 1604296.6344083857, 1608875.14287348, 1613462.354144399, 1618058.2764844163, 1622662.918156806, 1627276.2874248414, 1631898.392551796, 1636529.2418009453, 1641168.843435562, 1645817.20571892, 1650474.3369142935, 1655140.2452849555, 1659814.9390941798, 1664498.4266052416, 1669190.716081414, 1673891.8157859703, 1678601.7339821851, 1683320.4789333318, 1688048.0589026832, 1692784.4821535153, 1697529.7569491009, 1702283.8915527137, 1707046.8942276274, 1711818.7732371162, 1716599.5368444526, 1721389.1933129127, 1726187.7509057692, 1730995.2178862959, 1735811.6025177664, 1740636.913063455, 1745471.1577866343, 1750314.3449505798, 1755166.4828185649, 1760027.579653863, 1764897.6437197481, 1769776.6832794943, 1774664.7065963738, 1779561.721933663, 1784467.7375546345, 1789382.761722562, 1794306.802700719, 1799239.8687523801, 1804181.9681408182, 1809133.1091293083, 1814093.2999811235, 1819062.548959538, 1824040.8643278254, 1829028.2543492592, 1834024.7272871127, 1839030.2914046617, 1844044.9549651786, 1849068.726231938, 1854101.6134682128, 1859143.6249372773, 1864194.7689024042, 1869255.0536268696, 1874324.4873739462, 1879403.0784069076, 1884490.8349890278, 1889587.7653835807, 1894693.877853839, 1899809.1806630783, 1904933.682074572, 1910067.3903515935, 1915210.3137574166, 1920362.4605553155, 1925523.8390085627, 1930694.457380434, 1935874.3239342023, 1941063.4469331417, 1946261.8346405255, 1951469.495319628, 1956686.4372337216, 1961912.6686460825, 1967148.1978199834, 1972393.0330186982, 1977647.1825055005, 1982910.654543664, 1988183.4573964623, 1993465.5993271705, 1998757.0885990614, 2004057.9334754092, 2009368.1422194878, 2014687.7230945705, 2020016.6843639305, 2025355.0342908436, 2030702.7811385824, 2036059.933170421, 2041426.4986496333, 2046802.485839493, 2052187.9030032726, 2057582.7584042482, 2062987.0603056925, 2068400.8169708801, 2073824.0366630836, 2079256.7276455776, 2084698.8981816347, 2090150.5565345306, 2095611.7109675389, 2101082.369743932, 2106562.541126985, 2112052.233379971, 2117551.454766163, 2123060.213548837, 2128578.5179912657, 2134106.3763567233, 2139643.7969084834, 2145190.7879098193, 2150747.3576240037, 2156313.5143143134, 2161889.2662440212, 2167474.6216764003, 2173069.588874724, 2178674.1761022676, 2184288.391622303, 2189912.2436981066, 2195545.7405929505, 2201188.890570109, 2206841.7018928556, 2212504.1828244636, 2218176.3416282074, 2223858.186567362, 2229549.7259052, 2235250.967904995, 2240961.9208300216, 2246682.5929435533, 2252412.9925088626, 2258153.127789226, 2263903.0070479154, 2269662.638548205, 2275432.03055337, 2281211.191326682, 2287000.129131415, 2292798.8522308446, 2298607.3688882436, 2304425.687366886, 2310253.8159300457, 2316091.762840995, 2321939.5363630103, 2327797.144759364, 2333664.5962933307, 2339541.899228183, 2345429.061827196, 2351326.0923536406, 2357232.9990707953, 2363149.790241931, 2369076.474130322, 2375013.0589992427, 2380959.5531119662, 2386915.964731765, 2392882.302121916, 2398858.5735456916, 2404844.787266365, 2410840.951547211, 2416847.0746515025, 2422863.1648425134, 2428889.2303835186, 2434925.2795377914, 2440971.3205686053, 2447027.3617392345, 2453093.411312952, 2459169.477553032, 2465255.568722749, 2471351.6930853766, 2477457.8589041885, 2483574.0744424583, 2489700.3479634603, 2495836.687730467, 2501983.102006754, 2508139.599055594, 2514306.1871402618, 2520482.8745240304, 2526669.6694701733, 2532866.5802419647, 2539073.615102679, 2545290.7823155895, 2551518.0901439707, 2557755.5468510953, 2564003.1607002383, 2570260.9399546706, 2576528.8928776705, 2582807.0277325097, 2589095.3527824613, 2595393.8762908, 2601702.6065208, 2608021.5517357322, 2614350.720198875, 2620690.1201734995, 2627039.75992288, 2633399.6477102907, 2639769.791799005, 2646150.200452295, 2652540.881933438, 2658941.8445057063, 2665353.0964323734, 2671774.6459767134, 2678206.5014019995, 2684648.670971506, 2691101.1629485064, 2697563.985596276, 2704037.1471780874, 2710520.655957214, 2717014.5201969305, 2723518.7481605094, 2730033.348111226, 2736558.3283123546, 2743093.697027168, 2749639.4625189393, 2756195.6330509433, 2762762.216886453, 2769339.2222887436, 2775926.657521088, 2782524.5308467606, 2789132.850529035, 2795751.6248311847, 2802380.862016482, 2809020.570348204, 2815670.758089623, 2822331.433504013, 2829002.604854647, 2835684.2804048, 2842376.4684177437, 2849079.177156755, 2855792.4148851056, 2862516.1898660706, 2869250.5103629227, 2875995.3846389363, 2882750.8209573836, 2889516.827581541, 2896293.4127746816, 2903080.584800079, 2909878.351921007, 2916686.7224007393, 2923505.704502548, 2930335.30648971, 2937175.536625498, 2944026.403173186, 2950887.9143960467, 2957760.078557355, 2964642.903920383, 2971536.398748407, 2978440.5713047003, 2985355.429852536, 2992280.9826551876, 2999217.23797593, 3006164.2040780345, 3013121.889224779, 3020090.3016794347, 3027069.4497052757, 3034059.3415655764, 3041059.9855236104, 3048071.3898426495, 3055093.5627859714, 3062126.5126168476, 3069170.2475985517, 3076224.775994359, 3083290.106067542, 3090366.2460813737, 3097453.2042991305, 3104550.9889840847, 3111659.6083995104, 3118779.070808681, 3125909.3844748717, 3133050.557661353, 3140202.5986314025, 3147365.515648293, 3154539.3169752974, 3161724.01087569, 3168919.605612745, 3176126.1094497335, 3183343.530649934, 3190571.877476618, 3197811.158193059, 3205061.381062531, 3212322.5543483067, 3219594.6863136627, 3226877.785221871, 3234171.8593362058, 3241476.916919941, 3248792.9662363506, 3256120.0155487065, 3263458.0731202853, 3270807.1472143596, 3278167.2460942036, 3285538.378023091, 3292920.5512642944, 3300313.774081088, 3307718.054736748, 3315133.401494546, 3322559.822617756, 3329997.326369653, 3337445.9210135094, 3344905.6148125986, 3352376.4160301965, 3359858.3329295763, 3367351.373774011, 3374855.546826775, 3382370.8603511415, 3389897.3226103843, 3397434.9418677785, 3404983.726386597, 3412543.6844301135, 3420114.8242616025, 3427697.154144337, 3435290.6823415905, 3442895.4171166383, 3450511.3667327533, 3458138.53945321, 3465776.9435412814, 3473426.5872602416, 3481087.4788733637, 3488759.626643923, 3496443.0388351926, 3504137.723710447, 3511843.689532959, 3519560.944566002, 3527289.49707285, 3535029.3553167786, 3542780.5275610606, 3550543.0220689694, 3558316.8471037797, 3566102.010928764, 3573898.521807196, 3581706.3880023514, 3589525.6177775036, 3597356.2193959253, 3605198.2011208907, 3613051.5712156743, 3620916.337943548, 3628792.509567788, 3636680.0943516674, 3644579.1005584593, 3652489.536451439, 3660411.4102938785, 3668344.730349051, 3676289.5048802337, 3684245.7421506983, 3692213.450423719, 3700192.6379625695, 3708183.313030523, 3716185.483890853, 3724199.158806835, 3732224.3460417427, 3740261.053858849, 3748309.2905214285, 3756369.064292754, 3764440.383436098, 3772523.2562147384, 3780617.6908919467, 3788723.695730997, 3796841.2789951623, 3804970.4489477174, 3813111.2138519343, 3821263.58197109, 3829427.5615684567, 3837603.160907308, 3845790.3882509177, 3853989.25186256, 3862199.7600055067, 3870421.9209430353, 3878655.742938418, 3886901.2342549283, 3895158.4031558405, 3903427.2579044276, 3911707.8067639624, 3920000.0579977217 ] }, { "name": "Total Power", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 738104.5540302985, 737308.3334750122, 736522.8140222791, 735747.9523871784, 734983.7057731765, 734230.0318663565, 733486.8888297307, 732754.235297631, 732032.0303701797, 731320.2336078384, 730618.8050260318, 729927.7050898474, 729246.8947088107, 728576.3352317293, 727915.9884416123, 727265.816550659, 726625.7821953148, 725995.8484313985, 725375.9787292948, 724766.1369692126, 724166.2874365083, 723576.3948170753, 722996.424192792, 722426.3410370353, 721866.1112102544, 721315.7009556022, 720775.0768946294, 720244.2060230331, 719723.055706465, 719211.5936763949, 718709.7880260288, 718217.6072062837, 717735.0200218138, 717261.9956270908, 716798.5035225356, 716344.513550702, 715899.9958925095, 715464.9210635275, 715039.2599103068, 714622.9836067597, 714216.0636505887, 713818.4718597594, 713430.1803690223, 713051.161626477, 712681.3883901834, 712320.8337248154, 711969.470998358, 711627.2738788477, 711294.2163311542, 710970.2726138032, 710655.4172758411, 710349.6251537383, 710052.8713683332, 709765.1313218146, 709486.3806947423, 709216.5954431058, 708955.75179542, 708703.8262498579, 708460.7955714191, 708226.6367891334, 708001.3271933015, 707784.8443327673, 707577.1660122264, 707378.2702895682, 707188.1354732495, 707006.7401197018, 706834.0630307717, 706670.0832511899, 706514.7800660752, 706368.1329984663, 706230.1218068857, 706100.7264829322, 705979.9272489045, 705867.7045554512, 705764.039079253, 705668.9117207295, 705582.3036017767, 705504.1960635299, 705434.5706641553, 705373.4091766663, 705320.6935867686, 705276.4060907287, 705240.5290932696, 705213.0452054911, 705193.9372428153, 705183.1882229554, 705180.7813639111, 705186.700081985, 705200.9279898243, 705223.4488944856, 705254.2467955215, 705293.3058830905, 705340.6105360893, 705396.1453203066, 705459.894986599, 705531.8444690866, 705611.978883373, 705700.2835247822, 705796.7438666185, 705901.3455584458, 706014.0744243872, 706134.9164614432, 706263.8578378307, 706400.8848913398, 706545.984127711, 706699.1422190294, 706860.346002138, 707029.5824770702, 707206.8388054976, 707392.1023091979, 707585.3604685394, 707786.6009209818, 707995.811459596, 708212.9800315978, 708438.0947369008, 708671.1438266843, 708912.1157019773, 709160.9989122583, 709417.7821540715, 709682.4542696577, 709955.0042456007, 710235.4212114888, 710523.6944385914, 710819.8133385491, 711123.7674620812, 711435.546497703, 711755.1402704616, 712082.5387406829, 712417.7320027336, 712760.7102837962, 713111.4639426573, 713469.9834685103, 713836.2594797693, 714210.2827228977, 714592.044071248, 714981.534523916, 715378.7452046047, 715783.6673605038, 716196.2923611786, 716616.6116974717, 717044.6169804177, 717480.2999401676, 717923.6524249255, 718374.6663998975, 718833.3339462507, 719299.647260084, 719773.5986514088, 720255.1805431421, 720744.3854701093, 721241.206078057, 721745.6351226778, 722257.665468644, 722777.290088652, 723304.5020624769, 723839.2945760365, 724381.6609204657, 724931.5944911999, 725489.0887870691, 726054.1374093997, 726626.7340611272, 727206.8725459173, 727794.5467672969, 728389.7507277923, 728992.4785280789, 729602.7243661372, 730220.4825364191, 730845.747429022, 731478.5135288718, 732118.7754149138, 732766.5277593123, 733421.765326658, 734084.482973184, 734754.6756459886, 735432.3383822679, 736117.4663085544, 736810.0546399645, 737510.098679452, 738217.5938170715, 738932.535529247, 739654.9193780496, 740384.7410104806, 741121.996157764, 741866.6806346434, 742618.7903386889, 743378.3212496082, 744145.2694285666, 744919.6310175122, 745701.402238509, 746490.5793930757, 747287.1588615319, 748091.1371023497, 748902.5106515125, 749721.2761218802, 750547.4302025598, 751380.9696582828, 752221.8913287886, 753070.192128214, 753925.8690444883, 754788.9191387347, 755659.3395446771, 756537.1274680533, 757422.2801860329, 758314.7950466422, 759214.6694681933, 760121.9009387188, 761036.4870154143, 761958.4253240819, 762887.7135585832, 763824.3494802956, 764768.3309175731, 765719.6557652147, 766678.3219839355, 767644.3275998435, 768617.6707039222, 769598.3494515171, 770586.3620618279, 771581.7068174041, 772584.382063648, 773594.3862083186, 774611.7177210441, 775636.3751328365, 776668.357035611, 777707.6620817115, 778754.2889834375, 779808.2365125797, 780869.5034999552, 781938.0888349509, 783013.9914650691, 784097.2103954782, 785187.7446885658, 786285.5934634996, 787390.7558957879, 788503.2312168477, 789623.0187135747, 790750.117727919, 791884.5276564623, 793026.2479500008, 794175.2781131326, 795331.6177038455, 796495.2663331134, 797666.2236644919, 798844.4894137201, 800030.063348325, 801222.9452872311, 802423.1351003705, 803630.6327082999, 804845.4380818189, 806067.5512415918, 807296.9722577743, 808533.7012496421, 809777.738385223, 811029.0838809337, 812287.7380012181, 813553.701058189, 814826.9734112745, 816107.5554668661, 817395.4476779702, 818690.6505438637, 819993.1646097512, 821302.9904664257, 822620.1287499329, 823944.5801412382, 825276.3453658961, 826615.4251937231, 827961.8204384738, 829315.5319575181, 830676.5606515235, 832044.9074641388, 833420.5733816809, 834803.5594328244, 836193.8666882943, 837591.4962605599, 838996.4493035332, 840408.7270122686, 841828.3306226663, 843255.2614111772, 844689.5206945115, 846131.1098293478, 847580.0302120475, 849036.2832783691, 850499.8705031871, 851970.7934002113, 853449.0535217103, 854934.652458236, 856427.5918383508, 857927.8733283583, 859435.498632034, 860950.4694903614, 862472.7876812664, 864002.4550193578, 865539.4733556677, 867083.8445773942, 868635.5706076478, 870194.6534051984, 871761.0949642248, 873334.8973140668, 874916.0625189784, 876504.5926778847, 878100.4899241389, 879703.7564252828, 881314.3943828093, 882932.4060319248, 884557.7936413167, 886190.5595129202, 887830.705981689, 889478.2354153662, 891133.150214259, 892795.4528110125, 894465.1456703888, 896142.231289045, 897826.7121953145, 899518.5909489904, 901217.8701411095, 902924.5523937382, 904638.6403597612, 906360.1367226718, 908089.0441963626, 909825.3655249188, 911569.1034824143, 913320.2608727061, 915078.8405292351, 916844.8453148238, 918618.2781214793, 920399.1418701962, 922187.4395107604, 923983.1740215563, 925786.3484093747, 927596.9657092213, 929415.0289841287, 931240.5413249679, 933073.5058502636, 934913.9257060081, 936761.8040654788, 938617.1441290573, 940479.9491240481, 942350.2223045005, 944227.9669510319, 946113.1863706504, 948005.8838965811, 949906.0628880935, 951813.7267303286, 953728.8788341298, 955651.522635873, 957581.6615972989, 959519.2992053467, 961464.4389719893, 963417.084434069, 965377.239153136, 967344.906715286, 969320.0907310003, 971302.7948349883, 973293.0226860284, 975290.7779668127, 977296.0643837925, 979308.8856670228, 981329.2455700112, 983357.1478695656, 985392.5963656441, 987435.5948812057, 989486.1472620631, 991544.2573767353, 993609.9291163012, 995683.1663942566, 997763.9731463691, 999852.3533305365, 1001948.3109266462, 1004051.8499364341, 1006162.974383345, 1008281.6883123957, 1010407.9957900377, 1012541.90090402, 1014683.4077632565, 1016832.52049769, 1018989.2432581602, 1021153.5802162716, 1023325.5355642625, 1025505.1135148755, 1027692.3183012286, 1029887.1541766864, 1032089.6254147342, 1034299.7363088512, 1036517.4911723856, 1038742.8943384306, 1040975.9501597008, 1043216.6630084112, 1045465.0372761536, 1047721.077373778, 1049984.7877312717, 1052256.1727976424, 1054535.237040798, 1056821.9849474318, 1059116.421022905, 1061418.5497911319, 1063728.3757944661, 1066045.9035935868, 1068371.1377673848, 1070704.0829128525, 1073044.7436449726, 1075393.124596606, 1077749.230418385, 1080113.0657786028, 1082484.6353631068, 1084863.9438751913, 1087250.9960354909, 1089645.796581875, 1092048.350269344, 1094458.6618699247, 1096876.7361725671, 1099302.5779830422, 1101736.19212384, 1104177.5834340695, 1106626.7567693566, 1109083.717001747, 1111548.4690196058, 1114021.01772752, 1116501.3680462006, 1118989.5249123871, 1121485.4932787502, 1123989.2781137975, 1126500.8844017787, 1129020.3171425916, 1131547.5813516886, 1134082.6820599847, 1136625.6243137647, 1139176.4131745934, 1141735.0537192237, 1144301.551039507, 1146875.9102423042, 1149458.1364493964, 1152048.2347973974, 1154646.2104376666, 1157252.0685362204, 1159865.814273649, 1162487.4528450272, 1165116.9894598322, 1167754.4293418587, 1170399.7777291338, 1173053.039873835, 1175714.2210422072, 1178383.326514481, 1181060.3615847903, 1183745.3315610914, 1186438.241765085, 1189139.0975321329, 1191847.9042111817, 1194564.667164682, 1197289.3917685119, 1200022.0834118975, 1202762.747497339, 1205511.38944053, 1208268.0146702854, 1211032.6286284633, 1213805.236769891, 1216585.844562291, 1219374.457486206, 1222171.0810349272, 1224975.7207144191, 1227788.3820432492, 1230609.0705525144, 1233437.7917857708, 1236274.5512989615, 1239119.3546603492, 1241972.2074504416, 1244833.1152619252, 1247702.0836995956, 1250579.1183802886, 1253464.2249328112, 1256357.4089978775, 1259258.6762280366, 1262168.0322876095, 1265085.4828526215, 1268011.033610737, 1270944.6902611915, 1273886.4585147323, 1276836.3440935488, 1279794.3527312095, 1282760.4901726, 1285734.762173859, 1288717.1745023138, 1291707.7329364226, 1294706.4432657068, 1297713.3112906928, 1300728.3428228507, 1303751.543684533, 1306782.9197089132, 1309822.4767399295, 1312870.2206322209, 1315926.1572510705, 1318990.2924723467, 1322062.6321824437, 1325143.1822782247, 1328231.9486669654, 1331328.937266293, 1334434.1540041333, 1337547.6048186522, 1340669.2956581998, 1343799.2324812552, 1346937.4212563722, 1350083.8679621222, 1353238.5785870394, 1356401.5591295694, 1359572.8155980129, 1362752.354010472, 1365940.1803947994, 1369136.3007885432, 1372340.7212388949, 1375553.4478026368, 1378774.4865460922, 1382003.8435450713, 1385241.524884823, 1388487.5366599807, 1391741.8849745132, 1395004.5759416756, 1398275.6156839589, 1401555.0103330384, 1404842.7660297283, 1408138.8889239302, 1411443.3851745839, 1414756.260949621, 1418077.522425916, 1421407.1757892384, 1424745.227234208, 1428091.6829642428, 1431446.549191516, 1434809.832136909, 1438181.5380299645, 1441561.6731088404, 1444950.2436202667, 1448347.2558194962, 1451752.715970263, 1455166.6303447345, 1458589.0052234712, 1462019.8468953783, 1465459.1616576654, 1468906.9558158002, 1472363.235683466, 1475828.0075825197, 1479301.277842947, 1482783.0528028212, 1486273.3388082627, 1489772.1422133935, 1493279.4693802968, 1496795.3266789766, 1500319.7204873157, 1503852.6571910337, 1507394.14318365, 1510944.1848664382, 1514502.7886483893, 1518069.960946172, 1521645.7081840904, 1525230.0367940464, 1528822.953215502, 1532424.4638954368, 1536034.5752883116, 1539653.2938560292, 1543280.6260678968, 1546916.5784005867, 1550561.1573381014, 1554214.3693717318, 1557876.2210000234, 1561546.718728738, 1565225.8690708159, 1568913.6785463407, 1572610.1536825036, 1576315.3010135647, 1580029.127080819, 1583751.6384325593, 1587482.8416240423, 1591222.7432174508, 1594971.3497818636, 1598728.6678932142, 1602494.70413426, 1606269.4650945477, 1610052.9573703778, 1613845.187564771, 1617646.1622874353, 1621455.8881547314, 1625274.371789639, 1629101.6198217242, 1632937.6388871067, 1636782.4356284253, 1640636.0166948095, 1644498.388741842, 1648369.5584315283, 1652249.5324322656, 1656138.3174188107, 1660035.9200722463, 1663942.3470799546, 1667857.6051355794, 1671781.7009389992, 1675714.641196295, 1679656.432619721, 1683607.0819276704, 1687566.5958446509, 1691534.9811012489, 1695512.2444341022, 1699498.3925858699, 1703493.432305202, 1707497.37034671, 1711510.2134709407, 1715531.9684443418, 1719562.6420392366, 1723602.2410337934, 1727650.772211999, 1731708.2423636266, 1735774.6582842132, 1739850.0267750253, 1743934.3546430347, 1748027.6487008897, 1752129.9157668874, 1756241.1626649452, 1760361.3962245781, 1764490.623280865, 1768628.8506744246, 1772776.0852513907, 1776932.333863382, 1781097.6033674774, 1785271.9006261907, 1789455.2325074417, 1793647.6058845317, 1797849.0276361168, 1802059.5046461846, 1806279.0438040236, 1810507.6520042047, 1814745.3361465489, 1818992.1031361062, 1823247.9598831302, 1827512.9133030511, 1831786.9703164534, 1836070.137849051, 1840362.4228316613, 1844663.8322001805, 1848974.372895563, 1853294.051863793, 1857622.8760558618, 1861960.8524277485, 1866307.9879403892, 1870664.2895596572, 1875029.76425634, 1879404.4190061155, 1883788.2607895278, 1888181.296591967, 1892583.5334036432, 1896994.978219565, 1901415.6380395174, 1905845.5198680388, 1910284.6307143986, 1914732.977592577, 1919190.567521239, 1923657.407523715, 1928133.5046279796, 1932618.8658666275, 1937113.4982768532, 1941617.4089004323, 1946130.6047836943, 1950653.0929775056, 1955184.8805372468, 1959725.9745227934, 1964276.3819984917, 1968836.110033143, 1973405.1656999777, 1977983.5560766375, 1982571.2882451545, 1987168.3692919316, 1991774.8063077203, 1996390.6063876043, 2001015.776630975, 2005650.3241415152, 2010294.256027177, 2014947.5794001638, 2019610.3013769088, 2024282.4290780604, 2028963.969628456, 2033654.930157107, 2038355.3177971793, 2043065.1396859738, 2047784.4029649068, 2052513.114779494, 2057251.282279328, 2061998.912618062, 2066756.0129533906, 2071522.590447032, 2076298.6522647084, 2081084.2055761318, 2085879.257554979, 2090683.8153788806, 2095497.886229397, 2100321.477292006, 2105154.5957560814, 2109997.248814879, 2114849.443665514, 2119711.1875089477, 2124582.4875499685, 2129463.350997176, 2134353.7850629603, 2139253.796963492, 2144163.3939186977, 2149082.583152247, 2154011.371891535, 2158949.7673676657, 2163897.776815434, 2168855.4074733146, 2173822.666583438, 2178799.5613915785, 2183786.0991471373, 2188782.2871031268, 2193788.132516153, 2198803.6426464026, 2203828.8247576235, 2208863.6861171103, 2213908.233995689, 2218962.475667702, 2224026.4184109904, 2229100.0695068827, 2234183.436240173, 2239276.5258991118, 2244379.3457753872, 2249491.9031641106, 2254614.205363802, 2259746.2596763764, 2264888.073407125, 2270039.653864705, 2275201.0083611202, 2280372.144211711, 2285553.068735134, 2290743.7892533555, 2295944.31309163, 2301154.64757849, 2306374.800045727, 2311604.777828383, 2316844.588264731, 2322094.238696269, 2327353.7364676967, 2332623.088926904, 2337902.303424963, 2343191.387316105, 2348490.3479577163, 2353799.1927103186, 2359117.9289375553, 2364446.5640061805, 2369785.105286045, 2375133.5601500818, 2380491.9359742915, 2385860.2401377372, 2391238.4800225203, 2396626.6630137726, 2402024.796499644, 2407432.8878712896, 2412850.944522853, 2418278.9738514614, 2423716.9832572024, 2429164.9801431196, 2434622.9719151957, 2440090.965982342, 2445568.9697563853, 2451056.990652057, 2456555.0360869756, 2462063.1134816404, 2467581.2302594166, 2473109.393846523, 2478647.611672018, 2484195.891167796, 2489754.2397685633, 2495322.664911833, 2500901.1740379157, 2506489.774589899, 2512088.4740136443, 2517697.279757772, 2523316.199273648, 2528945.2400153754, 2534584.40943978, 2540233.7150063985, 2545893.1641774736, 2551562.7644179347, 2557242.52319539, 2562932.4479801143, 2568632.546245041, 2574342.8254657444, 2580063.29312044, 2585793.956689959, 2591534.823657748, 2597285.9015098545, 2603047.1977349157, 2608818.719824148, 2614600.47527134, 2620392.4715728345, 2626194.716227523, 2632007.2167368354, 2637829.980604725, 2643663.0153376632, 2649506.3284446285, 2655359.927437092, 2661223.81982901, 2667098.0131368143, 2672982.514879401, 2678877.332578119, 2684782.4737567645, 2690697.9459415656, 2696623.7566611744, 2702559.913446658, 2708506.423831487, 2714463.2953515267, 2720430.535545028, 2726408.1519526145, 2732396.1521172775, 2738394.543584361, 2744403.333901556, 2750422.5306188907, 2756452.1412887187, 2762492.1734657115, 2768542.6347068483, 2774603.5325714056, 2780674.8746209512, 2786756.6684193285, 2792848.9215326584, 2798951.6415293175, 2805064.8359799352, 2811188.512457385, 2817322.678536775, 2823467.341795435, 2829622.5098129166, 2835788.1901709735, 2841964.3904535584, 2848151.1182468142, 2854348.381139064, 2860556.1867208006, 2866774.5425846847, 2873003.456325527, 2879242.935540284, 2885492.9878280507, 2891753.62079005, 2898024.842029624, 2904306.6591522284, 2910599.07976542, 2916902.111478851, 2923215.7619042587, 2929540.03865546, 2935874.94934834, 2942220.501600846, 2948576.70303298, 2954943.561266787, 2961321.083926348, 2967709.2786377757, 2974108.153029201, 2980517.7147307713, 2986937.9713746347, 2993368.9305949383, 2999810.6000278187, 3006262.987311392, 3012726.100085747, 3019199.945992944, 3025684.5326769934, 3032179.8677838612, 3038685.958961452, 3045202.813859608, 3051730.440130096, 3058268.845426607, 3064818.0374047398, 3071378.023722, 3077948.812037788, 3084530.410013397, 3091122.8253120002, 3097726.065598648, 3104340.1385402577, 3110965.0518056066, 3117600.8130653244, 3124247.4299918883, 3130904.910259612, 3137573.2615446453, 3144252.491524958, 3150942.6078803404, 3157643.6182923904, 3164355.530444511, 3171078.352021901, 3177812.09071155, 3184556.7542022294, 3191312.350184485, 3198078.8863506317, 3204856.370394748, 3211644.810012665, 3218444.2129019666, 3225254.586761974, 3232075.939293744, 3238908.2782000634, 3245751.6111854403, 3252605.945956095, 3259471.2902199626, 3266347.6516866744, 3273235.038067558, 3280133.457075633, 3287042.916425598, 3293963.423833828, 3300894.987018372, 3307837.6136989375, 3314791.3115968904, 3321756.0884352475, 3328731.9519386706, 3335718.909833457, 3342716.96984754, 3349726.1397104757, 3356746.427153441, 3363777.839909225, 3370820.3857122255, 3377874.072298438, 3384938.9074054607, 3392014.898772474, 3399102.0541402427, 3406200.3812511107, 3413309.8878489905, 3420430.5816793647, 3427562.4704892696, 3434705.5620272984, 3441859.864043591, 3449025.3842898295, 3456202.1305192304, 3463390.1104865437, 3470589.331948042, 3477799.802661517, 3485021.530386274, 3492254.5228831246, 3499498.7879143828, 3506754.333243862, 3514021.166636861, 3521299.295860168, 3528588.728682049, 3535889.4728722437, 3543201.536201961, 3550524.9264438744, 3557859.6513721137, 3565205.7187622604, 3572563.1363913445, 3579931.9120378355, 3587312.053481641, 3594703.5685041007, 3602106.4648879766, 3609520.7504174532, 3616946.43287813, 3624383.520057015, 3631832.019742523, 3639291.939724467, 3646763.2877940554, 3654246.0717438846, 3661740.2993679363, 3669245.9784615696, 3676763.1168215186, 3684291.722245888, 3691831.802534144, 3699383.365487113, 3706946.418906975, 3714520.9705972583, 3722107.0283628353, 3729704.6000099215, 3737313.6933460617, 3744934.316180132, 3752566.476322333, 3760210.181584185, 3767865.4397785226, 3775532.2587194936, 3783210.6462225486, 3790900.610104438, 3798602.1581832096, 3806315.2982782032, 3814040.0382100428, 3821776.385800638, 3829524.3488731724, 3837283.935252103, 3845055.152763157, 3852838.0092333215, 3860632.5124908434, 3868438.6703652292, 3876256.4906872287, 3884085.9812888396, 3891927.1500033005, 3899780.004665086, 3907644.553109903, 3915520.8031746866, 3923408.762697596, 3931308.4395180065, 3939219.841476509, 3947142.9764149045, 3955077.8521761983, 3963024.4766046023, 3970982.8575455206, 3978953.0028455514, 3986934.920352482, 3994928.617915283, 4002934.103384105, 4010951.384610279, 4018980.4694463033, 4027021.3657458443, 4035074.081363732, 4043138.6241559577, 4051215.001979664, 4059303.222693151, 4067403.294155861, 4075515.2242283793, 4083639.0207724324, 4091774.6916508805, 4099922.244727713, 4108081.6878680517 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{md}=93.60$", "textposition": "top center", "type": "scatter", "x": [ 93.60414317185844 ], "y": [ 803732.0720943294 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=71.12$", "textposition": "top center", "type": "scatter", "x": [ 71.12376830681889 ], "y": [ 705180.5956398706 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Variation of Profile, Induced, and Total Power - CD0 = 0.016, K=0.045, altitude=0km, S=50m^2, W=160.0" }, "xaxis": { "range": [ 0, 200 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 4000000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "alt=0; # Altitude\n", "\n", "mosphere = Atmosphere(alt*1000)\n", "rho = mosphere.density\n", "\n", "# Determine stall speed\n", "Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", "# Determine A and B\n", "A = CD0 * 0.5 * rho * S\n", "B = K * W ** 2 / 0.5 / rho / S\n", "\n", "# Flight speed vector\n", "Vs = np.linspace(Vstall[0], 200, 1000)\n", "\n", "\n", "# Define drags\n", "Pind = B * Vs**-1\n", "Pprof = A * Vs**3\n", "P = Pind + Pprof\n", "\n", "# Get minimum drag speed and associated power\n", "Vmd = (B/A)**.25\n", "mdp = A * Vmd**3 + B * Vmd**-1\n", "\n", "# Get minimum power\n", "Vmp = (B/3/A)**.25\n", "mp = A * Vmp**3 + B * Vmp**-1\n", "\n", "fig = go.Figure()\n", "fig.add_trace(go.Scatter(x=Vs, y=Pind, name=\"Induced Power\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=Pprof, name=\"Profile Power\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=P, name=\"Total Power\"))\n", "\n", "fig.add_trace(go.Scatter(x=Vmd, y=mdp, mode=\"markers+text\", text=f\"$V_{{md}}={Vmd[0]:1.2f}$\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "fig.add_trace(go.Scatter(x=Vmp, y=mp, mode=\"markers+text\", text=f\"$V_{{mp}}={Vmp[0]:1.2f}$\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "\n", "\n", "fig.update_layout(\n", " title=f\"Variation of Profile, Induced, and Total Power - CD0 = {CD0}, K={K}, altitude={alt}km, S={S}m^2, W={W/1e3}\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "fig.update_xaxes(range=[0, 200])\n", "fig.update_yaxes(range=[0, 4e6])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Effect of altitude on minimum power\n", "\n", "Recall that an increase in altitude caused the total drag curve to shift to the right - increasing the minimum drag _speed_ but keeping the same value of dimensional minimum drag.\n", "\n", "A similar plot can be made to show the variation of minimum power with altitude - it can be seen that the minimum power increases linearly, with a line that passes through the origin.\n", "\n", "If you really wish to, you can show analytically that the gradient is a constant by differentiating the expression for $V_{MP}$ with respect to $\\rho$. It will yield a constant - but this will be a bit of a laborious exercise in algebra and calculus." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "scrolled": false, "tags": [ "hide-input.", "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Total Power - 0km", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 738104.5540302985, 737308.3334750122, 736522.8140222791, 735747.9523871784, 734983.7057731765, 734230.0318663565, 733486.8888297307, 732754.235297631, 732032.0303701797, 731320.2336078384, 730618.8050260318, 729927.7050898474, 729246.8947088107, 728576.3352317293, 727915.9884416123, 727265.816550659, 726625.7821953148, 725995.8484313985, 725375.9787292948, 724766.1369692126, 724166.2874365083, 723576.3948170753, 722996.424192792, 722426.3410370353, 721866.1112102544, 721315.7009556022, 720775.0768946294, 720244.2060230331, 719723.055706465, 719211.5936763949, 718709.7880260288, 718217.6072062837, 717735.0200218138, 717261.9956270908, 716798.5035225356, 716344.513550702, 715899.9958925095, 715464.9210635275, 715039.2599103068, 714622.9836067597, 714216.0636505887, 713818.4718597594, 713430.1803690223, 713051.161626477, 712681.3883901834, 712320.8337248154, 711969.470998358, 711627.2738788477, 711294.2163311542, 710970.2726138032, 710655.4172758411, 710349.6251537383, 710052.8713683332, 709765.1313218146, 709486.3806947423, 709216.5954431058, 708955.75179542, 708703.8262498579, 708460.7955714191, 708226.6367891334, 708001.3271933015, 707784.8443327673, 707577.1660122264, 707378.2702895682, 707188.1354732495, 707006.7401197018, 706834.0630307717, 706670.0832511899, 706514.7800660752, 706368.1329984663, 706230.1218068857, 706100.7264829322, 705979.9272489045, 705867.7045554512, 705764.039079253, 705668.9117207295, 705582.3036017767, 705504.1960635299, 705434.5706641553, 705373.4091766663, 705320.6935867686, 705276.4060907287, 705240.5290932696, 705213.0452054911, 705193.9372428153, 705183.1882229554, 705180.7813639111, 705186.700081985, 705200.9279898243, 705223.4488944856, 705254.2467955215, 705293.3058830905, 705340.6105360893, 705396.1453203066, 705459.894986599, 705531.8444690866, 705611.978883373, 705700.2835247822, 705796.7438666185, 705901.3455584458, 706014.0744243872, 706134.9164614432, 706263.8578378307, 706400.8848913398, 706545.984127711, 706699.1422190294, 706860.346002138, 707029.5824770702, 707206.8388054976, 707392.1023091979, 707585.3604685394, 707786.6009209818, 707995.811459596, 708212.9800315978, 708438.0947369008, 708671.1438266843, 708912.1157019773, 709160.9989122583, 709417.7821540715, 709682.4542696577, 709955.0042456007, 710235.4212114888, 710523.6944385914, 710819.8133385491, 711123.7674620812, 711435.546497703, 711755.1402704616, 712082.5387406829, 712417.7320027336, 712760.7102837962, 713111.4639426573, 713469.9834685103, 713836.2594797693, 714210.2827228977, 714592.044071248, 714981.534523916, 715378.7452046047, 715783.6673605038, 716196.2923611786, 716616.6116974717, 717044.6169804177, 717480.2999401676, 717923.6524249255, 718374.6663998975, 718833.3339462507, 719299.647260084, 719773.5986514088, 720255.1805431421, 720744.3854701093, 721241.206078057, 721745.6351226778, 722257.665468644, 722777.290088652, 723304.5020624769, 723839.2945760365, 724381.6609204657, 724931.5944911999, 725489.0887870691, 726054.1374093997, 726626.7340611272, 727206.8725459173, 727794.5467672969, 728389.7507277923, 728992.4785280789, 729602.7243661372, 730220.4825364191, 730845.747429022, 731478.5135288718, 732118.7754149138, 732766.5277593123, 733421.765326658, 734084.482973184, 734754.6756459886, 735432.3383822679, 736117.4663085544, 736810.0546399645, 737510.098679452, 738217.5938170715, 738932.535529247, 739654.9193780496, 740384.7410104806, 741121.996157764, 741866.6806346434, 742618.7903386889, 743378.3212496082, 744145.2694285666, 744919.6310175122, 745701.402238509, 746490.5793930757, 747287.1588615319, 748091.1371023497, 748902.5106515125, 749721.2761218802, 750547.4302025598, 751380.9696582828, 752221.8913287886, 753070.192128214, 753925.8690444883, 754788.9191387347, 755659.3395446771, 756537.1274680533, 757422.2801860329, 758314.7950466422, 759214.6694681933, 760121.9009387188, 761036.4870154143, 761958.4253240819, 762887.7135585832, 763824.3494802956, 764768.3309175731, 765719.6557652147, 766678.3219839355, 767644.3275998435, 768617.6707039222, 769598.3494515171, 770586.3620618279, 771581.7068174041, 772584.382063648, 773594.3862083186, 774611.7177210441, 775636.3751328365, 776668.357035611, 777707.6620817115, 778754.2889834375, 779808.2365125797, 780869.5034999552, 781938.0888349509, 783013.9914650691, 784097.2103954782, 785187.7446885658, 786285.5934634996, 787390.7558957879, 788503.2312168477, 789623.0187135747, 790750.117727919, 791884.5276564623, 793026.2479500008, 794175.2781131326, 795331.6177038455, 796495.2663331134, 797666.2236644919, 798844.4894137201, 800030.063348325, 801222.9452872311, 802423.1351003705, 803630.6327082999, 804845.4380818189, 806067.5512415918, 807296.9722577743, 808533.7012496421, 809777.738385223, 811029.0838809337, 812287.7380012181, 813553.701058189, 814826.9734112745, 816107.5554668661, 817395.4476779702, 818690.6505438637, 819993.1646097512, 821302.9904664257, 822620.1287499329, 823944.5801412382, 825276.3453658961, 826615.4251937231, 827961.8204384738, 829315.5319575181, 830676.5606515235, 832044.9074641388, 833420.5733816809, 834803.5594328244, 836193.8666882943, 837591.4962605599, 838996.4493035332, 840408.7270122686, 841828.3306226663, 843255.2614111772, 844689.5206945115, 846131.1098293478, 847580.0302120475, 849036.2832783691, 850499.8705031871, 851970.7934002113, 853449.0535217103, 854934.652458236, 856427.5918383508, 857927.8733283583, 859435.498632034, 860950.4694903614, 862472.7876812664, 864002.4550193578, 865539.4733556677, 867083.8445773942, 868635.5706076478, 870194.6534051984, 871761.0949642248, 873334.8973140668, 874916.0625189784, 876504.5926778847, 878100.4899241389, 879703.7564252828, 881314.3943828093, 882932.4060319248, 884557.7936413167, 886190.5595129202, 887830.705981689, 889478.2354153662, 891133.150214259, 892795.4528110125, 894465.1456703888, 896142.231289045, 897826.7121953145, 899518.5909489904, 901217.8701411095, 902924.5523937382, 904638.6403597612, 906360.1367226718, 908089.0441963626, 909825.3655249188, 911569.1034824143, 913320.2608727061, 915078.8405292351, 916844.8453148238, 918618.2781214793, 920399.1418701962, 922187.4395107604, 923983.1740215563, 925786.3484093747, 927596.9657092213, 929415.0289841287, 931240.5413249679, 933073.5058502636, 934913.9257060081, 936761.8040654788, 938617.1441290573, 940479.9491240481, 942350.2223045005, 944227.9669510319, 946113.1863706504, 948005.8838965811, 949906.0628880935, 951813.7267303286, 953728.8788341298, 955651.522635873, 957581.6615972989, 959519.2992053467, 961464.4389719893, 963417.084434069, 965377.239153136, 967344.906715286, 969320.0907310003, 971302.7948349883, 973293.0226860284, 975290.7779668127, 977296.0643837925, 979308.8856670228, 981329.2455700112, 983357.1478695656, 985392.5963656441, 987435.5948812057, 989486.1472620631, 991544.2573767353, 993609.9291163012, 995683.1663942566, 997763.9731463691, 999852.3533305365, 1001948.3109266462, 1004051.8499364341, 1006162.974383345, 1008281.6883123957, 1010407.9957900377, 1012541.90090402, 1014683.4077632565, 1016832.52049769, 1018989.2432581602, 1021153.5802162716, 1023325.5355642625, 1025505.1135148755, 1027692.3183012286, 1029887.1541766864, 1032089.6254147342, 1034299.7363088512, 1036517.4911723856, 1038742.8943384306, 1040975.9501597008, 1043216.6630084112, 1045465.0372761536, 1047721.077373778, 1049984.7877312717, 1052256.1727976424, 1054535.237040798, 1056821.9849474318, 1059116.421022905, 1061418.5497911319, 1063728.3757944661, 1066045.9035935868, 1068371.1377673848, 1070704.0829128525, 1073044.7436449726, 1075393.124596606, 1077749.230418385, 1080113.0657786028, 1082484.6353631068, 1084863.9438751913, 1087250.9960354909, 1089645.796581875, 1092048.350269344, 1094458.6618699247, 1096876.7361725671, 1099302.5779830422, 1101736.19212384, 1104177.5834340695, 1106626.7567693566, 1109083.717001747, 1111548.4690196058, 1114021.01772752, 1116501.3680462006, 1118989.5249123871, 1121485.4932787502, 1123989.2781137975, 1126500.8844017787, 1129020.3171425916, 1131547.5813516886, 1134082.6820599847, 1136625.6243137647, 1139176.4131745934, 1141735.0537192237, 1144301.551039507, 1146875.9102423042, 1149458.1364493964, 1152048.2347973974, 1154646.2104376666, 1157252.0685362204, 1159865.814273649, 1162487.4528450272, 1165116.9894598322, 1167754.4293418587, 1170399.7777291338, 1173053.039873835, 1175714.2210422072, 1178383.326514481, 1181060.3615847903, 1183745.3315610914, 1186438.241765085, 1189139.0975321329, 1191847.9042111817, 1194564.667164682, 1197289.3917685119, 1200022.0834118975, 1202762.747497339, 1205511.38944053, 1208268.0146702854, 1211032.6286284633, 1213805.236769891, 1216585.844562291, 1219374.457486206, 1222171.0810349272, 1224975.7207144191, 1227788.3820432492, 1230609.0705525144, 1233437.7917857708, 1236274.5512989615, 1239119.3546603492, 1241972.2074504416, 1244833.1152619252, 1247702.0836995956, 1250579.1183802886, 1253464.2249328112, 1256357.4089978775, 1259258.6762280366, 1262168.0322876095, 1265085.4828526215, 1268011.033610737, 1270944.6902611915, 1273886.4585147323, 1276836.3440935488, 1279794.3527312095, 1282760.4901726, 1285734.762173859, 1288717.1745023138, 1291707.7329364226, 1294706.4432657068, 1297713.3112906928, 1300728.3428228507, 1303751.543684533, 1306782.9197089132, 1309822.4767399295, 1312870.2206322209, 1315926.1572510705, 1318990.2924723467, 1322062.6321824437, 1325143.1822782247, 1328231.9486669654, 1331328.937266293, 1334434.1540041333, 1337547.6048186522, 1340669.2956581998, 1343799.2324812552, 1346937.4212563722, 1350083.8679621222, 1353238.5785870394, 1356401.5591295694, 1359572.8155980129, 1362752.354010472, 1365940.1803947994, 1369136.3007885432, 1372340.7212388949, 1375553.4478026368, 1378774.4865460922, 1382003.8435450713, 1385241.524884823, 1388487.5366599807, 1391741.8849745132, 1395004.5759416756, 1398275.6156839589, 1401555.0103330384, 1404842.7660297283, 1408138.8889239302, 1411443.3851745839, 1414756.260949621, 1418077.522425916, 1421407.1757892384, 1424745.227234208, 1428091.6829642428, 1431446.549191516, 1434809.832136909, 1438181.5380299645, 1441561.6731088404, 1444950.2436202667, 1448347.2558194962, 1451752.715970263, 1455166.6303447345, 1458589.0052234712, 1462019.8468953783, 1465459.1616576654, 1468906.9558158002, 1472363.235683466, 1475828.0075825197, 1479301.277842947, 1482783.0528028212, 1486273.3388082627, 1489772.1422133935, 1493279.4693802968, 1496795.3266789766, 1500319.7204873157, 1503852.6571910337, 1507394.14318365, 1510944.1848664382, 1514502.7886483893, 1518069.960946172, 1521645.7081840904, 1525230.0367940464, 1528822.953215502, 1532424.4638954368, 1536034.5752883116, 1539653.2938560292, 1543280.6260678968, 1546916.5784005867, 1550561.1573381014, 1554214.3693717318, 1557876.2210000234, 1561546.718728738, 1565225.8690708159, 1568913.6785463407, 1572610.1536825036, 1576315.3010135647, 1580029.127080819, 1583751.6384325593, 1587482.8416240423, 1591222.7432174508, 1594971.3497818636, 1598728.6678932142, 1602494.70413426, 1606269.4650945477, 1610052.9573703778, 1613845.187564771, 1617646.1622874353, 1621455.8881547314, 1625274.371789639, 1629101.6198217242, 1632937.6388871067, 1636782.4356284253, 1640636.0166948095, 1644498.388741842, 1648369.5584315283, 1652249.5324322656, 1656138.3174188107, 1660035.9200722463, 1663942.3470799546, 1667857.6051355794, 1671781.7009389992, 1675714.641196295, 1679656.432619721, 1683607.0819276704, 1687566.5958446509, 1691534.9811012489, 1695512.2444341022, 1699498.3925858699, 1703493.432305202, 1707497.37034671, 1711510.2134709407, 1715531.9684443418, 1719562.6420392366, 1723602.2410337934, 1727650.772211999, 1731708.2423636266, 1735774.6582842132, 1739850.0267750253, 1743934.3546430347, 1748027.6487008897, 1752129.9157668874, 1756241.1626649452, 1760361.3962245781, 1764490.623280865, 1768628.8506744246, 1772776.0852513907, 1776932.333863382, 1781097.6033674774, 1785271.9006261907, 1789455.2325074417, 1793647.6058845317, 1797849.0276361168, 1802059.5046461846, 1806279.0438040236, 1810507.6520042047, 1814745.3361465489, 1818992.1031361062, 1823247.9598831302, 1827512.9133030511, 1831786.9703164534, 1836070.137849051, 1840362.4228316613, 1844663.8322001805, 1848974.372895563, 1853294.051863793, 1857622.8760558618, 1861960.8524277485, 1866307.9879403892, 1870664.2895596572, 1875029.76425634, 1879404.4190061155, 1883788.2607895278, 1888181.296591967, 1892583.5334036432, 1896994.978219565, 1901415.6380395174, 1905845.5198680388, 1910284.6307143986, 1914732.977592577, 1919190.567521239, 1923657.407523715, 1928133.5046279796, 1932618.8658666275, 1937113.4982768532, 1941617.4089004323, 1946130.6047836943, 1950653.0929775056, 1955184.8805372468, 1959725.9745227934, 1964276.3819984917, 1968836.110033143, 1973405.1656999777, 1977983.5560766375, 1982571.2882451545, 1987168.3692919316, 1991774.8063077203, 1996390.6063876043, 2001015.776630975, 2005650.3241415152, 2010294.256027177, 2014947.5794001638, 2019610.3013769088, 2024282.4290780604, 2028963.969628456, 2033654.930157107, 2038355.3177971793, 2043065.1396859738, 2047784.4029649068, 2052513.114779494, 2057251.282279328, 2061998.912618062, 2066756.0129533906, 2071522.590447032, 2076298.6522647084, 2081084.2055761318, 2085879.257554979, 2090683.8153788806, 2095497.886229397, 2100321.477292006, 2105154.5957560814, 2109997.248814879, 2114849.443665514, 2119711.1875089477, 2124582.4875499685, 2129463.350997176, 2134353.7850629603, 2139253.796963492, 2144163.3939186977, 2149082.583152247, 2154011.371891535, 2158949.7673676657, 2163897.776815434, 2168855.4074733146, 2173822.666583438, 2178799.5613915785, 2183786.0991471373, 2188782.2871031268, 2193788.132516153, 2198803.6426464026, 2203828.8247576235, 2208863.6861171103, 2213908.233995689, 2218962.475667702, 2224026.4184109904, 2229100.0695068827, 2234183.436240173, 2239276.5258991118, 2244379.3457753872, 2249491.9031641106, 2254614.205363802, 2259746.2596763764, 2264888.073407125, 2270039.653864705, 2275201.0083611202, 2280372.144211711, 2285553.068735134, 2290743.7892533555, 2295944.31309163, 2301154.64757849, 2306374.800045727, 2311604.777828383, 2316844.588264731, 2322094.238696269, 2327353.7364676967, 2332623.088926904, 2337902.303424963, 2343191.387316105, 2348490.3479577163, 2353799.1927103186, 2359117.9289375553, 2364446.5640061805, 2369785.105286045, 2375133.5601500818, 2380491.9359742915, 2385860.2401377372, 2391238.4800225203, 2396626.6630137726, 2402024.796499644, 2407432.8878712896, 2412850.944522853, 2418278.9738514614, 2423716.9832572024, 2429164.9801431196, 2434622.9719151957, 2440090.965982342, 2445568.9697563853, 2451056.990652057, 2456555.0360869756, 2462063.1134816404, 2467581.2302594166, 2473109.393846523, 2478647.611672018, 2484195.891167796, 2489754.2397685633, 2495322.664911833, 2500901.1740379157, 2506489.774589899, 2512088.4740136443, 2517697.279757772, 2523316.199273648, 2528945.2400153754, 2534584.40943978, 2540233.7150063985, 2545893.1641774736, 2551562.7644179347, 2557242.52319539, 2562932.4479801143, 2568632.546245041, 2574342.8254657444, 2580063.29312044, 2585793.956689959, 2591534.823657748, 2597285.9015098545, 2603047.1977349157, 2608818.719824148, 2614600.47527134, 2620392.4715728345, 2626194.716227523, 2632007.2167368354, 2637829.980604725, 2643663.0153376632, 2649506.3284446285, 2655359.927437092, 2661223.81982901, 2667098.0131368143, 2672982.514879401, 2678877.332578119, 2684782.4737567645, 2690697.9459415656, 2696623.7566611744, 2702559.913446658, 2708506.423831487, 2714463.2953515267, 2720430.535545028, 2726408.1519526145, 2732396.1521172775, 2738394.543584361, 2744403.333901556, 2750422.5306188907, 2756452.1412887187, 2762492.1734657115, 2768542.6347068483, 2774603.5325714056, 2780674.8746209512, 2786756.6684193285, 2792848.9215326584, 2798951.6415293175, 2805064.8359799352, 2811188.512457385, 2817322.678536775, 2823467.341795435, 2829622.5098129166, 2835788.1901709735, 2841964.3904535584, 2848151.1182468142, 2854348.381139064, 2860556.1867208006, 2866774.5425846847, 2873003.456325527, 2879242.935540284, 2885492.9878280507, 2891753.62079005, 2898024.842029624, 2904306.6591522284, 2910599.07976542, 2916902.111478851, 2923215.7619042587, 2929540.03865546, 2935874.94934834, 2942220.501600846, 2948576.70303298, 2954943.561266787, 2961321.083926348, 2967709.2786377757, 2974108.153029201, 2980517.7147307713, 2986937.9713746347, 2993368.9305949383, 2999810.6000278187, 3006262.987311392, 3012726.100085747, 3019199.945992944, 3025684.5326769934, 3032179.8677838612, 3038685.958961452, 3045202.813859608, 3051730.440130096, 3058268.845426607, 3064818.0374047398, 3071378.023722, 3077948.812037788, 3084530.410013397, 3091122.8253120002, 3097726.065598648, 3104340.1385402577, 3110965.0518056066, 3117600.8130653244, 3124247.4299918883, 3130904.910259612, 3137573.2615446453, 3144252.491524958, 3150942.6078803404, 3157643.6182923904, 3164355.530444511, 3171078.352021901, 3177812.09071155, 3184556.7542022294, 3191312.350184485, 3198078.8863506317, 3204856.370394748, 3211644.810012665, 3218444.2129019666, 3225254.586761974, 3232075.939293744, 3238908.2782000634, 3245751.6111854403, 3252605.945956095, 3259471.2902199626, 3266347.6516866744, 3273235.038067558, 3280133.457075633, 3287042.916425598, 3293963.423833828, 3300894.987018372, 3307837.6136989375, 3314791.3115968904, 3321756.0884352475, 3328731.9519386706, 3335718.909833457, 3342716.96984754, 3349726.1397104757, 3356746.427153441, 3363777.839909225, 3370820.3857122255, 3377874.072298438, 3384938.9074054607, 3392014.898772474, 3399102.0541402427, 3406200.3812511107, 3413309.8878489905, 3420430.5816793647, 3427562.4704892696, 3434705.5620272984, 3441859.864043591, 3449025.3842898295, 3456202.1305192304, 3463390.1104865437, 3470589.331948042, 3477799.802661517, 3485021.530386274, 3492254.5228831246, 3499498.7879143828, 3506754.333243862, 3514021.166636861, 3521299.295860168, 3528588.728682049, 3535889.4728722437, 3543201.536201961, 3550524.9264438744, 3557859.6513721137, 3565205.7187622604, 3572563.1363913445, 3579931.9120378355, 3587312.053481641, 3594703.5685041007, 3602106.4648879766, 3609520.7504174532, 3616946.43287813, 3624383.520057015, 3631832.019742523, 3639291.939724467, 3646763.2877940554, 3654246.0717438846, 3661740.2993679363, 3669245.9784615696, 3676763.1168215186, 3684291.722245888, 3691831.802534144, 3699383.365487113, 3706946.418906975, 3714520.9705972583, 3722107.0283628353, 3729704.6000099215, 3737313.6933460617, 3744934.316180132, 3752566.476322333, 3760210.181584185, 3767865.4397785226, 3775532.2587194936, 3783210.6462225486, 3790900.610104438, 3798602.1581832096, 3806315.2982782032, 3814040.0382100428, 3821776.385800638, 3829524.3488731724, 3837283.935252103, 3845055.152763157, 3852838.0092333215, 3860632.5124908434, 3868438.6703652292, 3876256.4906872287, 3884085.9812888396, 3891927.1500033005, 3899780.004665086, 3907644.553109903, 3915520.8031746866, 3923408.762697596, 3931308.4395180065, 3939219.841476509, 3947142.9764149045, 3955077.8521761983, 3963024.4766046023, 3970982.8575455206, 3978953.0028455514, 3986934.920352482, 3994928.617915283, 4002934.103384105, 4010951.384610279, 4018980.4694463033, 4027021.3657458443, 4035074.081363732, 4043138.6241559577, 4051215.001979664, 4059303.222693151, 4067403.294155861, 4075515.2242283793, 4083639.0207724324, 4091774.6916508805, 4099922.244727713, 4108081.6878680517 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=71.12$", "textposition": "top center", "type": "scatter", "x": [ 71.12376830681889 ], "y": [ 705180.5956398706 ] }, { "name": "Total Power - 5km", "type": "scatter", "x": [ 76.11653856047897, 76.2405460293874, 76.36455349829583, 76.48856096720426, 76.6125684361127, 76.73657590502111, 76.86058337392954, 76.98459084283797, 77.1085983117464, 77.23260578065484, 77.35661324956327, 77.4806207184717, 77.60462818738013, 77.72863565628856, 77.85264312519699, 77.97665059410541, 78.10065806301384, 78.22466553192227, 78.3486730008307, 78.47268046973913, 78.59668793864756, 78.720695407556, 78.84470287646442, 78.96871034537286, 79.09271781428127, 79.2167252831897, 79.34073275209813, 79.46474022100656, 79.588747689915, 79.71275515882343, 79.83676262773186, 79.96077009664029, 80.08477756554872, 80.20878503445715, 80.33279250336557, 80.456799972274, 80.58080744118243, 80.70481491009086, 80.82882237899929, 80.95282984790772, 81.07683731681615, 81.20084478572458, 81.32485225463302, 81.44885972354143, 81.57286719244986, 81.6968746613583, 81.82088213026672, 81.94488959917516, 82.06889706808359, 82.19290453699202, 82.31691200590045, 82.44091947480888, 82.5649269437173, 82.68893441262573, 82.81294188153416, 82.93694935044259, 83.06095681935102, 83.18496428825945, 83.30897175716788, 83.43297922607631, 83.55698669498474, 83.68099416389317, 83.80500163280159, 83.92900910171002, 84.05301657061845, 84.17702403952688, 84.30103150843532, 84.42503897734375, 84.54904644625218, 84.67305391516061, 84.79706138406904, 84.92106885297747, 85.04507632188589, 85.16908379079432, 85.29309125970275, 85.41709872861118, 85.54110619751961, 85.66511366642804, 85.78912113533647, 85.9131286042449, 86.03713607315333, 86.16114354206175, 86.28515101097018, 86.40915847987861, 86.53316594878704, 86.65717341769547, 86.7811808866039, 86.90518835551234, 87.02919582442077, 87.1532032933292, 87.27721076223762, 87.40121823114605, 87.52522570005448, 87.64923316896291, 87.77324063787134, 87.89724810677977, 88.0212555756882, 88.14526304459663, 88.26927051350506, 88.39327798241348, 88.51728545132192, 88.64129292023034, 88.76530038913877, 88.8893078580472, 89.01331532695563, 89.13732279586407, 89.2613302647725, 89.38533773368093, 89.50934520258936, 89.63335267149779, 89.7573601404062, 89.88136760931464, 90.00537507822307, 90.1293825471315, 90.25339001603993, 90.37739748494836, 90.50140495385679, 90.62541242276522, 90.74941989167365, 90.87342736058207, 90.9974348294905, 91.12144229839893, 91.24544976730736, 91.3694572362158, 91.49346470512423, 91.61747217403266, 91.74147964294109, 91.86548711184952, 91.98949458075793, 92.11350204966637, 92.2375095185748, 92.36151698748323, 92.48552445639166, 92.60953192530009, 92.73353939420852, 92.85754686311695, 92.98155433202538, 93.1055618009338, 93.22956926984224, 93.35357673875066, 93.47758420765909, 93.60159167656752, 93.72559914547595, 93.84960661438438, 93.97361408329282, 94.09762155220125, 94.22162902110966, 94.34563649001811, 94.46964395892653, 94.59365142783496, 94.71765889674339, 94.84166636565182, 94.96567383456025, 95.08968130346868, 95.21368877237711, 95.33769624128554, 95.46170371019397, 95.58571117910239, 95.70971864801082, 95.83372611691925, 95.95773358582768, 96.08174105473611, 96.20574852364454, 96.32975599255298, 96.4537634614614, 96.57777093036984, 96.70177839927825, 96.8257858681867, 96.94979333709512, 97.07380080600355, 97.19780827491198, 97.32181574382041, 97.44582321272884, 97.56983068163727, 97.6938381505457, 97.81784561945412, 97.94185308836256, 98.06586055727098, 98.18986802617941, 98.31387549508784, 98.43788296399627, 98.5618904329047, 98.68589790181314, 98.80990537072157, 98.93391283962998, 99.05792030853843, 99.18192777744684, 99.30593524635528, 99.4299427152637, 99.55395018417214, 99.67795765308057, 99.801965121989, 99.92597259089743, 100.04998005980586, 100.17398752871429, 100.29799499762271, 100.42200246653114, 100.54600993543957, 100.670017404348, 100.79402487325643, 100.91803234216486, 101.0420398110733, 101.16604727998173, 101.29005474889016, 101.41406221779857, 101.53806968670702, 101.66207715561544, 101.78608462452387, 101.9100920934323, 102.03409956234073, 102.15810703124916, 102.28211450015759, 102.40612196906602, 102.53012943797444, 102.65413690688288, 102.7781443757913, 102.90215184469973, 103.02615931360816, 103.15016678251659, 103.27417425142502, 103.39818172033345, 103.52218918924189, 103.6461966581503, 103.77020412705875, 103.89421159596716, 104.0182190648756, 104.14222653378403, 104.26623400269246, 104.39024147160089, 104.51424894050932, 104.63825640941775, 104.76226387832618, 104.88627134723461, 105.01027881614303, 105.13428628505146, 105.25829375395989, 105.38230122286832, 105.50630869177675, 105.63031616068518, 105.75432362959361, 105.87833109850204, 106.00233856741048, 106.12634603631889, 106.25035350522732, 106.37436097413575, 106.49836844304419, 106.62237591195262, 106.74638338086105, 106.87039084976948, 106.99439831867791, 107.11840578758634, 107.24241325649476, 107.3664207254032, 107.49042819431162, 107.61443566322005, 107.73844313212848, 107.86245060103691, 107.98645806994534, 108.11046553885377, 108.2344730077622, 108.35848047667062, 108.48248794557907, 108.60649541448748, 108.73050288339593, 108.85451035230435, 108.97851782121278, 109.1025252901212, 109.22653275902964, 109.35054022793807, 109.47454769684649, 109.59855516575493, 109.72256263466335, 109.84657010357179, 109.97057757248021, 110.09458504138864, 110.21859251029707, 110.3425999792055, 110.46660744811393, 110.59061491702235, 110.7146223859308, 110.83862985483921, 110.96263732374766, 111.08664479265607, 111.2106522615645, 111.33465973047294, 111.45866719938137, 111.5826746682898, 111.70668213719821, 111.83068960610666, 111.95469707501508, 112.07870454392352, 112.20271201283194, 112.32671948174037, 112.4507269506488, 112.57473441955723, 112.69874188846566, 112.8227493573741, 112.94675682628252, 113.07076429519094, 113.19477176409939, 113.3187792330078, 113.44278670191625, 113.56679417082466, 113.6908016397331, 113.81480910864153, 113.93881657754996, 114.06282404645839, 114.1868315153668, 114.31083898427525, 114.43484645318367, 114.55885392209211, 114.68286139100053, 114.80686885990896, 114.93087632881739, 115.05488379772582, 115.17889126663425, 115.30289873554267, 115.42690620445111, 115.55091367335953, 115.67492114226798, 115.7989286111764, 115.92293608008482, 116.04694354899326, 116.17095101790169, 116.29495848681012, 116.41896595571853, 116.54297342462698, 116.6669808935354, 116.79098836244384, 116.91499583135226, 117.03900330026069, 117.16301076916912, 117.28701823807755, 117.41102570698598, 117.53503317589441, 117.65904064480284, 117.78304811371126, 117.9070555826197, 118.03106305152812, 118.15507052043655, 118.27907798934498, 118.40308545825341, 118.52709292716185, 118.65110039607028, 118.77510786497871, 118.89911533388712, 119.02312280279557, 119.14713027170399, 119.27113774061243, 119.39514520952085, 119.51915267842928, 119.64316014733771, 119.76716761624614, 119.89117508515457, 120.01518255406299, 120.13919002297143, 120.26319749187985, 120.3872049607883, 120.51121242969671, 120.63521989860514, 120.75922736751357, 120.883234836422, 121.00724230533044, 121.13124977423885, 121.2552572431473, 121.37926471205571, 121.50327218096416, 121.62727964987258, 121.75128711878101, 121.87529458768944, 121.99930205659787, 122.1233095255063, 122.24731699441473, 122.37132446332316, 122.49533193223158, 122.61933940114002, 122.74334687004844, 122.86735433895687, 122.9913618078653, 123.11536927677373, 123.23937674568216, 123.3633842145906, 123.48739168349903, 123.61139915240744, 123.73540662131589, 123.8594140902243, 123.98342155913275, 124.10742902804117, 124.2314364969496, 124.35544396585803, 124.47945143476646, 124.60345890367489, 124.72746637258331, 124.85147384149175, 124.97548131040017, 125.09948877930861, 125.22349624821703, 125.34750371712546, 125.4715111860339, 125.59551865494232, 125.71952612385076, 125.84353359275917, 125.96754106166762, 126.09154853057603, 126.21555599948448, 126.3395634683929, 126.46357093730133, 126.58757840620976, 126.71158587511819, 126.83559334402662, 126.95960081293505, 127.08360828184348, 127.2076157507519, 127.33162321966034, 127.45563068856876, 127.57963815747719, 127.70364562638562, 127.82765309529405, 127.95166056420248, 128.0756680331109, 128.19967550201935, 128.32368297092776, 128.4476904398362, 128.57169790874462, 128.69570537765307, 128.8197128465615, 128.94372031546993, 129.06772778437835, 129.19173525328677, 129.3157427221952, 129.43975019110363, 129.56375766001207, 129.6877651289205, 129.81177259782893, 129.93578006673735, 130.0597875356458, 130.1837950045542, 130.30780247346263, 130.43180994237107, 130.5558174112795, 130.67982488018794, 130.80383234909635, 130.9278398180048, 131.05184728691322, 131.17585475582166, 131.29986222473008, 131.4238696936385, 131.54787716254694, 131.67188463145538, 131.7958921003638, 131.91989956927222, 132.04390703818066, 132.16791450708908, 132.29192197599752, 132.41592944490594, 132.53993691381436, 132.6639443827228, 132.78795185163125, 132.91195932053967, 133.03596678944808, 133.15997425835653, 133.28398172726494, 133.4079891961734, 133.5319966650818, 133.65600413399022, 133.78001160289867, 133.9040190718071, 134.02802654071553, 134.15203400962395, 134.2760414785324, 134.4000489474408, 134.52405641634925, 134.64806388525767, 134.7720713541661, 134.89607882307453, 135.02008629198298, 135.1440937608914, 135.2681012297998, 135.39210869870826, 135.51611616761667, 135.64012363652512, 135.76413110543353, 135.88813857434195, 136.0121460432504, 136.13615351215884, 136.26016098106726, 136.38416844997568, 136.50817591888412, 136.63218338779254, 136.75619085670098, 136.8801983256094, 137.00420579451782, 137.12821326342626, 137.2522207323347, 137.37622820124312, 137.50023567015154, 137.62424313905998, 137.7482506079684, 137.87225807687685, 137.99626554578526, 138.1202730146937, 138.24428048360213, 138.36828795251057, 138.492295421419, 138.6163028903274, 138.74031035923585, 138.86431782814427, 138.9883252970527, 139.11233276596113, 139.23634023486957, 139.360347703778, 139.48435517268643, 139.60836264159485, 139.73237011050327, 139.8563775794117, 139.98038504832013, 140.10439251722858, 140.228399986137, 140.3524074550454, 140.47641492395385, 140.6004223928623, 140.72442986177072, 140.84843733067913, 140.97244479958758, 141.09645226849602, 141.22045973740444, 141.34446720631286, 141.46847467522127, 141.59248214412972, 141.71648961303816, 141.84049708194658, 141.964504550855, 142.08851201976344, 142.2125194886719, 142.3365269575803, 142.46053442648872, 142.58454189539714, 142.70854936430558, 142.83255683321403, 142.95656430212244, 143.08057177103086, 143.2045792399393, 143.32858670884775, 143.45259417775617, 143.57660164666459, 143.70060911557303, 143.82461658448145, 143.9486240533899, 144.0726315222983, 144.19663899120673, 144.32064646011517, 144.44465392902362, 144.56866139793203, 144.69266886684045, 144.8166763357489, 144.9406838046573, 145.06469127356576, 145.18869874247417, 145.3127062113826, 145.43671368029104, 145.56072114919948, 145.6847286181079, 145.8087360870163, 145.93274355592476, 146.0567510248332, 146.18075849374162, 146.30476596265004, 146.42877343155845, 146.5527809004669, 146.67678836937534, 146.80079583828376, 146.92480330719218, 147.04881077610062, 147.17281824500907, 147.29682571391749, 147.4208331828259, 147.54484065173432, 147.66884812064276, 147.7928555895512, 147.91686305845963, 148.04087052736804, 148.1648779962765, 148.28888546518493, 148.41289293409335, 148.53690040300177, 148.66090787191018, 148.78491534081863, 148.90892280972707, 149.0329302786355, 149.1569377475439, 149.28094521645235, 149.4049526853608, 149.5289601542692, 149.65296762317763, 149.77697509208605, 149.9009825609945, 150.02499002990294, 150.14899749881135, 150.27300496771977, 150.39701243662822, 150.52101990553666, 150.64502737444508, 150.7690348433535, 150.8930423122619, 151.01704978117036, 151.1410572500788, 151.26506471898722, 151.38907218789564, 151.51307965680408, 151.63708712571253, 151.76109459462094, 151.88510206352936, 152.00910953243778, 152.13311700134622, 152.25712447025467, 152.38113193916308, 152.5051394080715, 152.62914687697995, 152.7531543458884, 152.8771618147968, 153.00116928370522, 153.12517675261367, 153.24918422152209, 153.37319169043053, 153.49719915933895, 153.62120662824736, 153.7452140971558, 153.86922156606425, 153.99322903497267, 154.1172365038811, 154.24124397278953, 154.36525144169795, 154.4892589106064, 154.6132663795148, 154.73727384842323, 154.86128131733167, 154.98528878624012, 155.10929625514854, 155.23330372405695, 155.3573111929654, 155.48131866187381, 155.60532613078226, 155.72933359969068, 155.8533410685991, 155.97734853750754, 156.10135600641598, 156.2253634753244, 156.34937094423282, 156.47337841314126, 156.5973858820497, 156.72139335095812, 156.84540081986654, 156.96940828877496, 157.0934157576834, 157.21742322659185, 157.34143069550026, 157.46543816440868, 157.58944563331713, 157.71345310222557, 157.837460571134, 157.9614680400424, 158.08547550895082, 158.20948297785927, 158.3334904467677, 158.45749791567613, 158.58150538458455, 158.705512853493, 158.82952032240144, 158.95352779130985, 159.07753526021827, 159.2015427291267, 159.32555019803513, 159.44955766694358, 159.573565135852, 159.6975726047604, 159.82158007366885, 159.9455875425773, 160.06959501148572, 160.19360248039413, 160.31760994930255, 160.441617418211, 160.56562488711944, 160.68963235602786, 160.81363982493627, 160.93764729384472, 161.06165476275316, 161.18566223166158, 161.30966970057, 161.43367716947841, 161.55768463838686, 161.6816921072953, 161.80569957620372, 161.92970704511214, 162.05371451402058, 162.17772198292903, 162.30172945183745, 162.42573692074586, 162.54974438965428, 162.67375185856272, 162.79775932747117, 162.9217667963796, 163.045774265288, 163.16978173419645, 163.2937892031049, 163.4177966720133, 163.54180414092173, 163.66581160983017, 163.7898190787386, 163.91382654764703, 164.03783401655545, 164.16184148546387, 164.2858489543723, 164.40985642328076, 164.53386389218917, 164.6578713610976, 164.78187883000604, 164.90588629891445, 165.0298937678229, 165.15390123673131, 165.27790870563973, 165.40191617454818, 165.52592364345662, 165.64993111236504, 165.77393858127346, 165.8979460501819, 166.02195351909035, 166.14596098799876, 166.26996845690718, 166.3939759258156, 166.51798339472404, 166.6419908636325, 166.7659983325409, 166.89000580144932, 167.01401327035776, 167.1380207392662, 167.26202820817463, 167.38603567708304, 167.51004314599146, 167.6340506148999, 167.75805808380835, 167.88206555271677, 168.00607302162518, 168.13008049053363, 168.25408795944207, 168.3780954283505, 168.5021028972589, 168.62611036616732, 168.75011783507577, 168.87412530398421, 168.99813277289263, 169.12214024180105, 169.2461477107095, 169.37015517961794, 169.49416264852636, 169.61817011743477, 169.7421775863432, 169.86618505525163, 169.99019252416008, 170.1141999930685, 170.2382074619769, 170.36221493088536, 170.4862223997938, 170.61022986870222, 170.73423733761064, 170.85824480651905, 170.9822522754275, 171.10625974433594, 171.23026721324436, 171.35427468215278, 171.47828215106122, 171.60228961996967, 171.72629708887808, 171.8503045577865, 171.97431202669492, 172.09831949560336, 172.2223269645118, 172.34633443342022, 172.47034190232864, 172.5943493712371, 172.71835684014553, 172.84236430905395, 172.96637177796237, 173.0903792468708, 173.21438671577923, 173.33839418468767, 173.4624016535961, 173.5864091225045, 173.71041659141295, 173.8344240603214, 173.9584315292298, 174.08243899813823, 174.20644646704667, 174.3304539359551, 174.45446140486354, 174.57846887377195, 174.70247634268037, 174.82648381158882, 174.95049128049726, 175.07449874940568, 175.1985062183141, 175.32251368722254, 175.44652115613098, 175.5705286250394, 175.69453609394782, 175.81854356285623, 175.94255103176468, 176.06655850067312, 176.19056596958154, 176.31457343848996, 176.4385809073984, 176.56258837630685, 176.68659584521527, 176.81060331412368, 176.9346107830321, 177.05861825194054, 177.182625720849, 177.3066331897574, 177.43064065866582, 177.55464812757427, 177.6786555964827, 177.80266306539113, 177.92667053429955, 178.05067800320796, 178.1746854721164, 178.29869294102485, 178.42270040993327, 178.5467078788417, 178.67071534775013, 178.79472281665858, 178.918730285567, 179.0427377544754, 179.16674522338383, 179.29075269229227, 179.41476016120072, 179.53876763010913, 179.66277509901755, 179.786782567926, 179.91079003683444, 180.03479750574286, 180.15880497465128, 180.2828124435597, 180.40681991246814, 180.53082738137658, 180.654834850285, 180.77884231919342, 180.90284978810186, 181.0268572570103, 181.15086472591872, 181.27487219482714, 181.39887966373556, 181.522887132644, 181.64689460155245, 181.77090207046086, 181.89490953936928, 182.01891700827773, 182.14292447718617, 182.2669319460946, 182.390939415003, 182.51494688391145, 182.63895435281987, 182.7629618217283, 182.88696929063673, 183.01097675954514, 183.1349842284536, 183.25899169736203, 183.38299916627045, 183.50700663517887, 183.6310141040873, 183.75502157299573, 183.87902904190418, 184.0030365108126, 184.127043979721, 184.25105144862945, 184.3750589175379, 184.49906638644632, 184.62307385535473, 184.74708132426318, 184.87108879317162, 184.99509626208004, 185.11910373098846, 185.24311119989687, 185.36711866880532, 185.49112613771376, 185.61513360662218, 185.7391410755306, 185.86314854443904, 185.9871560133475, 186.1111634822559, 186.23517095116432, 186.35917842007274, 186.48318588898118, 186.60719335788963, 186.73120082679804, 186.85520829570646, 186.9792157646149, 187.10322323352335, 187.22723070243177, 187.35123817134019, 187.4752456402486, 187.59925310915705, 187.7232605780655, 187.8472680469739, 187.97127551588233, 188.09528298479077, 188.21929045369922, 188.34329792260763, 188.46730539151605, 188.59131286042447, 188.7153203293329, 188.83932779824136, 188.96333526714977, 189.0873427360582, 189.21135020496664, 189.33535767387508, 189.4593651427835, 189.5833726116919, 189.70738008060033, 189.83138754950878, 189.95539501841722, 190.07940248732564, 190.20340995623405, 190.3274174251425, 190.45142489405094, 190.57543236295936, 190.69943983186778, 190.8234473007762, 190.94745476968464, 191.07146223859309, 191.1954697075015, 191.31947717640992, 191.44348464531836, 191.5674921142268, 191.69149958313523, 191.81550705204364, 191.93951452095206, 192.0635219898605, 192.18752945876895, 192.31153692767737, 192.43554439658578, 192.55955186549423, 192.68355933440267, 192.8075668033111, 192.9315742722195, 193.05558174112795, 193.17958921003637, 193.3035966789448, 193.42760414785323, 193.55161161676165, 193.6756190856701, 193.79962655457854, 193.92363402348695, 194.04764149239537, 194.17164896130382, 194.29565643021223, 194.41966389912068, 194.5436713680291, 194.6676788369375, 194.79168630584596, 194.9156937747544, 195.03970124366282, 195.16370871257124, 195.28771618147968, 195.41172365038813, 195.53573111929654, 195.65973858820496, 195.78374605711338, 195.90775352602182, 196.03176099493027, 196.15576846383868, 196.2797759327471, 196.40378340165555, 196.527790870564, 196.6517983394724, 196.77580580838082, 196.89981327728924, 197.02382074619769, 197.14782821510613, 197.27183568401455, 197.39584315292296, 197.5198506218314, 197.64385809073985, 197.76786555964827, 197.8918730285567, 198.0158804974651, 198.13988796637355, 198.263895435282, 198.3879029041904, 198.51191037309883, 198.63591784200727, 198.75992531091572, 198.88393277982414, 199.00794024873255, 199.13194771764097, 199.25595518654941, 199.37996265545786, 199.50397012436628, 199.6279775932747, 199.75198506218314, 199.87599253109158, 200 ], "y": [ 951964.17559639, 951263.0265092279, 950568.2921917229, 949879.9548928784, 949197.9969984493, 948522.4010298371, 947853.149642994, 947190.2256273419, 946533.6119046969, 945883.2915282077, 945239.2476813019, 944601.4636766446, 943969.922955105, 943344.609084734, 942725.5057597511, 942112.5967995416, 941505.8661476625, 940905.2978708585, 940310.8761580869, 939722.5853195521, 939140.4097857494, 938564.3341065167, 937994.3429500969, 937430.4211022077, 936872.553465121, 936320.7250567499, 935774.921009746, 935235.1265706036, 934701.3270987724, 934173.5080657802, 933651.6550543604, 933135.753757592, 932625.7899780435, 932121.7496269274, 931623.6187232612, 931131.3833930374, 930645.0298683988, 930164.544486825, 929689.9136903227, 929221.1240246256, 928758.162138402, 928301.0147824674, 927849.6688090066, 927404.1111708019, 926964.3289204681, 926530.3092096953, 926102.0392884979, 925679.5065044704, 925262.6983020505, 924851.6022217887, 924446.2058996238, 924046.4970661658, 923652.4635459848, 923264.0932569067, 922881.374209315, 922504.2945054584, 922132.8423387655, 921767.005993165, 921406.7738424116, 921052.13434942, 920703.0760656013, 920359.5876302088, 920021.6577696875, 919689.2752970296, 919362.429111137, 919041.1081961878, 918725.3016210088, 918414.9985384548, 918110.188184792, 917810.8598790864, 917517.0030225996, 917228.6070981878, 916945.6616697074, 916668.1563814252, 916396.0809574331, 916129.42520107, 915868.1789943469, 915612.3322973766, 915361.8751478104, 915116.7976602779, 914877.0900258323, 914642.7425114005, 914413.7454592382, 914190.0892863886, 913971.7644841471, 913758.7616175301, 913551.0713247479, 913348.6843166826, 913151.591376371, 912959.7833584895, 912773.2511888474, 912591.9858638808, 912415.9784501528, 912245.2200838571, 912079.7019703265, 911919.415383545, 911764.351665664, 911614.5022265235, 911469.8585431753, 911330.4121594133, 911196.1546853045, 911067.0777967261, 910943.1732349059, 910824.4328059659, 910710.848380471, 910602.4118929801, 910499.115341602, 910400.9507875543, 910307.9103547264, 910219.9862292458, 910137.1706590485, 910059.4559534524, 909986.8344827341, 909919.2986777106, 909856.8410293218, 909799.4540882194, 909747.1304643576, 909699.8628265865, 909657.6439022503, 909620.466476789, 909588.3233933406, 909561.2075523501, 909539.11191118, 909522.0294837229, 909509.9533400197, 909502.8766058788, 909500.7924624996, 909503.6941460983, 909511.5749475376, 909524.4282119581, 909542.2473384141, 909565.0257795118, 909592.7570410488, 909625.4346816604, 909663.0523124642, 909705.6035967107, 909753.0822494355, 909805.482037114, 909862.7967773199, 909925.020338386, 909992.1466390662, 910064.1696482026, 910141.0833843948, 910222.8819156691, 910309.5593591542, 910401.1098807568, 910497.5276948411, 910598.80706391, 910704.9422982887, 910815.9277558124, 910931.7578415144, 911052.4270073178, 911177.9297517292, 911308.2606195355, 911443.4142015014, 911583.3851340718, 911728.1680990738, 911877.7578234235, 912032.1490788327, 912191.3366815203, 912355.3154919234, 912524.0804144132, 912697.6263970111, 912875.9484311077, 913059.0415511846, 913246.9008345373, 913439.5214010007, 913636.8984126768, 913839.0270736641, 914045.9026297902, 914257.5203683448, 914473.875617815, 914694.9637476249, 914920.7801678742, 915151.3203290802, 915386.5797219218, 915626.5538769849, 915871.2383645107, 916120.628794145, 916374.7208146893, 916633.5101138547, 916896.9924180169, 917165.1634919734, 917438.0191387021, 917715.5551991223, 917997.7675518572, 918284.6521129978, 918576.2048358698, 918872.4217108008, 919173.2987648892, 919478.8320617772, 919789.0177014223, 920103.8518198724, 920423.3305890423, 920747.4502164915, 921076.206945204, 921409.5970533692, 921747.6168541656, 922090.2626955444, 922437.5309600163, 922789.4180644386, 923145.9204598046, 923507.0346310348, 923872.7570967686, 924243.0844091587, 924618.0131536664, 924997.5399488573, 925381.6614462014, 925770.3743298717, 926163.6753165466, 926561.5611552107, 926964.0286269612, 927371.0745448117, 927782.6957535002, 928198.8891292969, 928619.6515798147, 929044.9800438195, 929474.8714910434, 929909.3229219979, 930348.3313677895, 930791.8938899369, 931240.0075801872, 931692.6695603365, 932149.8769820501, 932611.6270266834, 933077.916905106, 933548.7438575256, 934024.1051533129, 934503.9980908295, 934988.4199972549, 935477.3682284167, 935970.84016862, 936468.8332304801, 936971.3448547542, 937478.3725101767, 937989.9136932932, 938505.965928298, 939026.5267668704, 939551.5937880145, 940081.1645978985, 940615.2368296948, 941153.8081434241, 941696.8762257965, 942244.4387900567, 942796.4935758295, 943353.0383489656, 943914.0709013892, 944479.589050947, 945049.5906412578, 945624.0735415628, 946203.0356465767, 946786.4748763419, 947374.3891760814, 947966.7765160529, 948563.6348914062, 949164.9623220382, 949770.7568524522, 950381.016551615, 950995.7395128182, 951614.9238535373, 952238.567715295, 952866.6692635226, 953499.2266874233, 954136.2381998377, 954777.7020371085, 955423.6164589464, 956073.9797482984, 956728.7902112149, 957388.0461767191, 958051.7459966767, 958719.8880456674, 959392.4707208555, 960069.4924418628, 960750.9516506421, 961436.8468113518, 962127.1764102306, 962821.9389554724, 963521.1329771054, 964224.7570268672, 964932.8096780856, 965645.2895255553, 966362.1951854206, 967083.5252950536, 967809.278512938, 968539.4535185501, 969274.0490122435, 970013.0637151308, 970756.4963689707, 971504.3457360528, 972256.6105990827, 973013.2897610707, 973774.3820452188, 974539.8862948095, 975309.8013730947, 976084.1261631858, 976862.859567945, 977646.0005098764, 978433.5479310176, 979225.5007928334, 980021.8580761094, 980822.6187808453, 981627.7819261514, 982437.3465501425, 983251.3117098359, 984069.6764810474, 984892.4399582895, 985719.6012546693, 986551.1595017876, 987387.1138496398, 988227.4634665138, 989072.2075388937, 989921.3452713592, 990774.8758864894, 991632.7986247649, 992495.1127444713, 993361.817521604, 994232.9122497723, 995108.3962401052, 995988.2688211568, 996872.5293388139, 997761.177156202, 998654.2116535944, 999551.6322283195, 1000453.4382946701, 1001359.6292838131, 1002270.2046436993, 1003185.1638389751, 1004104.5063508921, 1005028.2316772207, 1005956.3393321608, 1006888.8288462562, 1007825.6997663076, 1008766.9516552861, 1009712.5840922486, 1010662.5966722528, 1011616.989006272, 1012575.7607211133, 1013538.9114593316, 1014506.4408791494, 1015478.3486543731, 1016454.6344743115, 1017435.2980436955, 1018420.3390825961, 1019409.7573263454, 1020403.5525254561, 1021401.7244455427, 1022404.272867243, 1023411.1975861397, 1024422.4984126829, 1025438.1751721117, 1026458.2277043799, 1027482.6558640776, 1028511.4595203563, 1029544.6385568534, 1030582.1928716174, 1031624.122377034, 1032670.4269997508, 1033721.1066806057, 1034776.1613745524, 1035835.5910505889, 1036899.3956916844, 1037967.5752947084, 1039040.1298703593, 1040117.0594430929, 1041198.3640510543, 1042284.0437460041, 1043374.0985932532, 1044468.5286715901, 1045567.3340732149, 1046670.5149036697, 1047778.0712817716, 1048890.003339544, 1050006.3112221502, 1051126.9950878287, 1052252.0551078236, 1053381.491466322, 1054515.304360386, 1055653.4939998898, 1056796.0606074543, 1057943.004418382, 1059094.3256805954, 1060250.0246545707, 1061410.1016132778, 1062574.556842115, 1063743.390638849, 1064916.6033135504, 1066094.1951885351, 1067276.1665983004, 1068462.5178894664, 1069653.2494207139, 1070848.3615627254, 1072047.8546981248, 1073251.7292214185, 1074459.985538936, 1075672.624068771, 1076889.6452407246, 1078111.0494962446, 1079336.8372883704, 1080567.009081675, 1081801.5653522073, 1083040.5065874364, 1084283.8332861948, 1085531.5459586233, 1086783.6451261132, 1088040.1313212547, 1089301.005087778, 1090566.2669805016, 1091835.9175652764, 1093109.9574189326, 1094388.3871292253, 1095671.2072947812, 1096958.418525047, 1098250.0214402338, 1099546.0166712683, 1100846.4048597373, 1102151.1866578376, 1103460.362728325, 1104773.9337444613, 1106091.9003899656, 1107414.2633589609, 1108741.0233559269, 1110072.1810956474, 1111407.7373031625, 1112747.6927137168, 1114092.0480727134, 1115440.804135662, 1116793.9616681323, 1118151.521445704, 1119513.4842539206, 1120879.8508882408, 1122250.62215399, 1123625.798866315, 1125005.381850135, 1126389.3719400975, 1127777.7699805286, 1129170.57682539, 1130567.7933382308, 1131969.4203921433, 1133375.458869717, 1134785.9096629939, 1136200.773673423, 1137620.051811816, 1139043.7449983032, 1140471.8541622893, 1141904.3802424103, 1143341.3241864874, 1144782.6869514869, 1146228.4695034751, 1147678.6728175757, 1149133.2978779275, 1150592.3456776422, 1152055.8172187624, 1153523.713512218, 1154996.0355777878, 1156472.784444054, 1157953.9611483645, 1159439.566736791, 1160929.6022640865, 1162424.0687936465, 1163922.9673974693, 1165426.2991561145, 1166934.0651586626, 1168446.2665026789, 1169962.9042941688, 1171483.9796475437, 1173009.4936855799, 1174539.447539378, 1176073.8423483274, 1177612.6792600672, 1179155.959430447, 1180703.6840234904, 1182255.854211356, 1183812.4711743009, 1185373.5361006432, 1186939.0501867253, 1188509.0146368758, 1190083.430663374, 1191662.2994864136, 1193245.6223340658, 1194833.4004422433, 1196425.6350546652, 1198022.327422819, 1199623.47880593, 1201229.0904709203, 1202839.1636923777, 1204453.699752519, 1206072.6999411557, 1207696.1655556606, 1209324.0979009317, 1210956.4982893593, 1212593.3680407912, 1214234.7084824997, 1215880.5209491486, 1217530.8067827574, 1219185.5673326703, 1220844.803955523, 1222508.5180152096, 1224176.7108828481, 1225849.3839367516, 1227526.5385623921, 1229208.1761523718, 1230894.2981063877, 1232584.9058312033, 1234280.0007406143, 1235979.5842554178, 1237683.6578033827, 1239392.2228192154, 1241105.2807445326, 1242822.8330278262, 1244544.8811244369, 1246271.4264965213, 1248002.470613022, 1249738.0149496372, 1251478.060988792, 1253222.6102196076, 1254971.6641378708, 1256725.2242460065, 1258483.2920530462, 1260245.8690746014, 1262012.9568328324, 1263784.5568564194, 1265560.6706805348, 1267341.299846815, 1269126.4459033306, 1270916.1104045592, 1272710.2949113557, 1274509.000990927, 1276312.2302168016, 1278119.984168804, 1279932.2644330251, 1281749.0726017957, 1283570.41027366, 1285396.279053348, 1287226.6805517478, 1289061.6163858788, 1290901.0881788672, 1292745.0975599166, 1294593.6461642834, 1296446.7356332494, 1298304.367614096, 1300166.5437600794, 1302033.2657304031, 1303904.535190193, 1305780.3538104706, 1307660.7232681299, 1309545.6452459106, 1311435.1214323717, 1313329.1535218696, 1315227.7432145292, 1317130.8922162228, 1319038.6022385436, 1320950.8749987807, 1322867.712219895, 1324789.1156304963, 1326715.086964818, 1328645.6279626912, 1330580.7403695253, 1332520.4259362791, 1334464.686419441, 1336413.523581004, 1338366.9391884413, 1340324.9350146838, 1342287.5128380978, 1344254.6744424617, 1346226.4216169403, 1348202.7561560655, 1350183.6798597116, 1352169.1945330738, 1354159.3019866452, 1356154.004036193, 1358153.3025027378, 1360157.1992125325, 1362165.695997038, 1364178.7946929014, 1366196.497141936, 1368218.8051910978, 1370245.720692465, 1372277.2455032163, 1374313.3814856084, 1376354.1305069558, 1378399.4944396096, 1380449.4751609368, 1382504.0745532978, 1384563.2945040264, 1386627.1369054094, 1388695.6036546666, 1390768.6966539281, 1392846.4178102156, 1394928.7690354204, 1397015.7522462858, 1399107.3693643853, 1401203.6223161016, 1403304.5130326077, 1405410.043449848, 1407520.2155085176, 1409635.0311540423, 1411754.4923365593, 1413878.6010108974, 1416007.359136559, 1418140.7686777003, 1420278.8316031105, 1422421.549886194, 1424568.925504953, 1426720.960441965, 1428877.6566843684, 1431039.016223839, 1433205.041056575, 1435375.7331832773, 1437551.0946091313, 1439731.1273437883, 1441915.8334013456, 1444105.2148003324, 1446299.2735636886, 1448498.0117187477, 1450701.431297218, 1452909.5343351658, 1455122.3228729984, 1457339.7989554452, 1459561.9646315395, 1461788.8219546033, 1464020.3729822277, 1466256.6197762578, 1468497.5644027728, 1470743.2089320717, 1472993.5554386538, 1475248.6060012034, 1477508.362702573, 1479772.8276297648, 1482042.0028739148, 1484315.8905302775, 1486594.4926982084, 1488877.8114811464, 1491165.8489865991, 1493458.6073261257, 1495756.0886153204, 1498058.2949737979, 1500365.2285251752, 1502676.8913970555, 1504993.2857210154, 1507314.413632587, 1509640.2772712393, 1511970.8787803687, 1514306.2203072773, 1516646.3040031614, 1518991.1320230947, 1521340.7065260124, 1523695.0296746956, 1526054.1036357584, 1528417.9305796302, 1530786.5126805415, 1533159.852116508, 1535537.9510693173, 1537920.811724514, 1540308.4362713832, 1542700.8269029364, 1545097.9858158962, 1547499.9152106836, 1549906.6172914035, 1552318.094265827, 1554734.3483453789, 1557155.381745125, 1559581.1966837556, 1562011.7953835728, 1564447.1800704747, 1566887.3529739412, 1569332.3163270229, 1571782.0723663252, 1574236.6233319934, 1576695.9714676994, 1579160.1190206304, 1581629.0682414724, 1584102.8213843983, 1586581.3807070516, 1589064.7484705362, 1591552.9269394015, 1594045.9183816302, 1596543.725068622, 1599046.349275183, 1601553.7932795123, 1604066.0593631887, 1606583.1498111568, 1609105.0669117144, 1611631.8129564994, 1614163.390240478, 1616699.8010619315, 1619241.0477224425, 1621787.1325268818, 1624338.0577833985, 1626893.8258034054, 1629454.438901567, 1632019.8993957853, 1634590.2096071902, 1637165.3718601256, 1639745.388482138, 1642330.261803963, 1644919.9941595127, 1647514.5878858664, 1650114.045323256, 1652718.3688150551, 1655327.5607077656, 1657941.6233510075, 1660560.5590975068, 1663184.3703030832, 1665813.0593266378, 1668446.6285301414, 1671085.0802786252, 1673728.416940168, 1676376.6408858807, 1679029.7544899026, 1681687.760129382, 1684350.6601844712, 1687018.4570383113, 1689691.1530770222, 1692368.7506896902, 1695051.252268359, 1697738.6602080192, 1700430.976906592, 1703128.2047649242, 1705830.3461867727, 1708537.4035787974, 1711249.3793505481, 1713966.275914454, 1716688.095685811, 1719414.8410827757, 1722146.5145263523, 1724883.1184403785, 1727624.6552515198, 1730371.1273892575, 1733122.5372858786, 1735878.8873764633, 1738640.1800988768, 1741406.4178937564, 1744177.6032045053, 1746953.73847728, 1749734.8261609771, 1752520.8687072287, 1755311.8685703888, 1758107.8282075243, 1760908.7500784062, 1763714.636645495, 1766525.4903739353, 1769341.3137315456, 1772162.1091888067, 1774987.8792188524, 1777818.6262974588, 1780654.3529030373, 1783495.0615166225, 1786340.7546218648, 1789191.4347050171, 1792047.1042549275, 1794907.7657630309, 1797773.4217233397, 1800644.0746324304, 1803519.7269894367, 1806400.3812960428, 1809286.0400564708, 1812176.705777471, 1815072.3809683153, 1817973.0681407847, 1820878.769809164, 1823789.4884902313, 1826705.2267032464, 1829625.9869699439, 1832551.771814525, 1835482.5837636483, 1838418.4253464197, 1841359.299094383, 1844305.2075415126, 1847256.1532242047, 1850212.138681269, 1853173.1664539175, 1856139.2390857567, 1859110.359122782, 1862086.5291133653, 1865067.751608249, 1868054.0291605347, 1871045.3643256768, 1874041.7596614745, 1877043.2177280623, 1880049.7410879012, 1883061.33230577, 1886077.99394876, 1889099.728586265, 1892126.5387899694, 1895158.427133847, 1898195.3961941462, 1901237.4485493866, 1904284.5867803495, 1907336.813470068, 1910394.1312038195, 1913456.542569122, 1916524.050155721, 1919596.656555581, 1922674.3643628848, 1925757.1761740157, 1928845.094587558, 1931938.1222042858, 1935036.261627154, 1938139.5154612912, 1941247.8863139953, 1944361.376794723, 1947479.9895150806, 1950603.727088818, 1953732.5921318245, 1956866.587262115, 1960005.715099828, 1963149.9782672147, 1966299.3793886309, 1969453.921090535, 1972613.6060014742, 1975778.4367520818, 1978948.415975065, 1982123.5463052045, 1985303.8303793403, 1988489.2708363705, 1991679.8703172384, 1994875.6314649284, 1998076.5569244595, 2001282.649342879, 2004493.9113692495, 2007710.3456546485, 2010931.9548521596, 2014158.7416168638, 2017390.7086058338, 2020627.8584781275, 2023870.1938947781, 2027117.7175187925, 2030370.4320151408, 2033628.3400507497, 2036891.4442944955, 2040159.7474171994, 2043433.2520916201, 2046711.9609924457, 2049995.8767962868, 2053285.0021816716, 2056579.3398290388, 2059878.892420732, 2063183.6626409902, 2066493.6531759421, 2069808.866713603, 2073129.3059438644, 2076454.9735584902, 2079785.872251107, 2083122.0047171996, 2086463.3736541073, 2089809.981761014, 2093161.831738942, 2096518.926290746, 2099881.2681211093, 2103248.8599365344, 2106621.7044453397, 2109999.80435765, 2113383.162385391, 2116771.781242287, 2120165.66364385, 2123564.8123073764, 2126969.2299519386, 2130378.9192983825, 2133793.883069319, 2137214.123989116, 2140639.644783899, 2144070.448181537, 2147506.5369116426, 2150947.913705565, 2154394.5812963806, 2157846.5424188916, 2161303.7998096175, 2164766.3562067924, 2168234.2143503525, 2171707.3769819397, 2175185.846844887, 2178669.626684219, 2182158.7192466445, 2185653.127280548, 2189152.8535359884, 2192657.900764689, 2196168.2717200387, 2199683.9691570774, 2203204.995832497, 2206731.3545046328, 2210263.047933462, 2213800.078880593, 2217342.4501092634, 2220890.1643843297, 2224443.2244722713, 2228001.633141177, 2231565.3931607413, 2235134.5073022586, 2238708.9783386225, 2242288.8090443155, 2245874.002195406, 2249464.5605695397, 2253060.4869459383, 2256661.784105395, 2260268.4548302656, 2263880.501904465, 2267497.9281134596, 2271120.7362442687, 2274748.9290854535, 2278382.5094271144, 2282021.4800608833, 2285665.8437799206, 2289315.6033789124, 2292970.7616540627, 2296631.321403086, 2300297.285425207, 2303968.656521155, 2307645.4374931557, 2311327.6311449306, 2315015.240281686, 2318708.2677101153, 2322406.7162383897, 2326110.5886761546, 2329819.8878345243, 2333534.616526076, 2337254.7775648492, 2340980.373766337, 2344711.4079474835, 2348447.882926676, 2352189.8015237423, 2355937.1665599486, 2359689.9808579925, 2363448.247241995, 2367211.9685375, 2370981.1475714715, 2374755.787172283, 2378535.890169719, 2382321.459394964, 2386112.497680603, 2389909.0078606172, 2393710.9927703766, 2397518.455246636, 2401331.3981275307, 2405149.8242525733, 2408973.7364626494, 2412803.137600012, 2416638.030508276, 2420478.4180324143, 2424324.3030187576, 2428175.688314985, 2432032.5767701203, 2435894.971234529, 2439762.874559914, 2443636.2895993134, 2447515.2192070894, 2451399.6662389324, 2455289.63355185, 2459185.1240041666, 2463086.14045552, 2466992.685766852, 2470904.7628004085, 2474822.374419737, 2478745.5234896783, 2482674.212876362, 2486608.445447207, 2490548.224070914, 2494493.5516174613, 2498444.430958104, 2502400.8649653643, 2506362.8565130313, 2510330.408476158, 2514303.5237310566, 2518282.2051552907, 2522266.455627674, 2526256.278028269, 2530251.675238379, 2534252.6501405477, 2538259.205618551, 2542271.344557395, 2546289.069843315, 2550312.384363769, 2554341.2910074317, 2558375.792664193, 2562415.892225158, 2566461.592582634, 2570512.896630138, 2574569.8072623825, 2578632.3273752746, 2582700.45986592, 2586774.2076326087, 2590853.573574816, 2594938.560593199, 2599029.1715895915, 2603125.4094670033, 2607227.2771296143, 2611334.777482767, 2615447.91343297, 2619566.6878878907, 2623691.103756353, 2627821.1639483306, 2631956.871374945, 2636098.228948467, 2640245.2395823044, 2644397.906191006, 2648556.2316902513, 2652720.218996851, 2656889.871028746, 2661065.1907049995, 2665246.180945793, 2669432.8446724257 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=91.73$", "textposition": "top center", "type": "scatter", "x": [ 91.73128534677784 ], "y": [ 909500.7756141338 ] }, { "name": "Total Power - 10km", "type": "scatter", "x": [ 101.57835515107976, 101.6768753160937, 101.77539548110764, 101.87391564612156, 101.9724358111355, 102.07095597614943, 102.16947614116337, 102.2679963061773, 102.36651647119123, 102.46503663620517, 102.56355680121911, 102.66207696623304, 102.76059713124697, 102.8591172962609, 102.95763746127484, 103.05615762628878, 103.1546777913027, 103.25319795631664, 103.35171812133058, 103.45023828634451, 103.54875845135845, 103.64727861637238, 103.74579878138631, 103.84431894640025, 103.94283911141419, 104.04135927642811, 104.13987944144205, 104.23839960645599, 104.33691977146992, 104.43543993648385, 104.53396010149778, 104.63248026651172, 104.73100043152566, 104.8295205965396, 104.92804076155352, 105.02656092656746, 105.1250810915814, 105.22360125659533, 105.32212142160927, 105.42064158662319, 105.51916175163713, 105.61768191665107, 105.716202081665, 105.81472224667893, 105.91324241169286, 106.0117625767068, 106.11028274172074, 106.20880290673466, 106.3073230717486, 106.40584323676254, 106.50436340177647, 106.60288356679041, 106.70140373180433, 106.79992389681827, 106.89844406183221, 106.99696422684615, 107.09548439186008, 107.194004556874, 107.29252472188794, 107.39104488690188, 107.48956505191582, 107.58808521692974, 107.68660538194368, 107.78512554695762, 107.88364571197155, 107.98216587698548, 108.08068604199941, 108.17920620701335, 108.27772637202729, 108.37624653704123, 108.47476670205515, 108.57328686706909, 108.67180703208302, 108.77032719709696, 108.86884736211088, 108.96736752712482, 109.06588769213876, 109.1644078571527, 109.26292802216663, 109.36144818718056, 109.4599683521945, 109.55848851720843, 109.65700868222237, 109.75552884723629, 109.85404901225023, 109.95256917726417, 110.0510893422781, 110.14960950729204, 110.24812967230596, 110.3466498373199, 110.44517000233384, 110.54369016734778, 110.6422103323617, 110.74073049737564, 110.83925066238957, 110.93777082740351, 111.03629099241743, 111.13481115743137, 111.23333132244531, 111.33185148745925, 111.43037165247318, 111.52889181748711, 111.62741198250104, 111.72593214751498, 111.82445231252892, 111.92297247754286, 112.02149264255678, 112.12001280757072, 112.21853297258465, 112.31705313759859, 112.41557330261251, 112.51409346762645, 112.61261363264039, 112.71113379765433, 112.80965396266825, 112.90817412768219, 113.00669429269612, 113.10521445771006, 113.203734622724, 113.30225478773792, 113.40077495275186, 113.4992951177658, 113.59781528277973, 113.69633544779367, 113.7948556128076, 113.89337577782153, 113.99189594283547, 114.0904161078494, 114.18893627286333, 114.28745643787727, 114.3859766028912, 114.48449676790514, 114.58301693291907, 114.681537097933, 114.78005726294694, 114.87857742796088, 114.97709759297481, 115.07561775798874, 115.17413792300268, 115.27265808801661, 115.37117825303055, 115.46969841804449, 115.56821858305841, 115.66673874807235, 115.76525891308629, 115.86377907810022, 115.96229924311415, 116.06081940812808, 116.15933957314202, 116.25785973815596, 116.35637990316988, 116.45490006818382, 116.55342023319776, 116.65194039821169, 116.75046056322563, 116.84898072823955, 116.94750089325349, 117.04602105826743, 117.14454122328137, 117.2430613882953, 117.34158155330923, 117.44010171832316, 117.5386218833371, 117.63714204835102, 117.73566221336496, 117.8341823783789, 117.93270254339284, 118.03122270840677, 118.1297428734207, 118.22826303843463, 118.32678320344857, 118.42530336846251, 118.52382353347645, 118.62234369849037, 118.7208638635043, 118.81938402851824, 118.91790419353218, 119.01642435854612, 119.11494452356004, 119.21346468857398, 119.31198485358792, 119.41050501860184, 119.50902518361578, 119.60754534862971, 119.70606551364365, 119.80458567865759, 119.90310584367151, 120.00162600868545, 120.10014617369939, 120.19866633871332, 120.29718650372726, 120.39570666874118, 120.49422683375512, 120.59274699876906, 120.69126716378298, 120.78978732879693, 120.88830749381086, 120.9868276588248, 121.08534782383873, 121.18386798885265, 121.28238815386659, 121.38090831888053, 121.47942848389447, 121.5779486489084, 121.67646881392233, 121.77498897893626, 121.8735091439502, 121.97202930896414, 122.07054947397808, 122.169069638992, 122.26758980400594, 122.36610996901987, 122.4646301340338, 122.56315029904773, 122.66167046406167, 122.76019062907561, 122.85871079408955, 122.95723095910347, 123.0557511241174, 123.15427128913134, 123.25279145414528, 123.35131161915922, 123.44983178417314, 123.54835194918708, 123.64687211420102, 123.74539227921495, 123.84391244422889, 123.94243260924281, 124.04095277425675, 124.13947293927069, 124.23799310428461, 124.33651326929855, 124.43503343431249, 124.53355359932642, 124.63207376434036, 124.73059392935428, 124.82911409436822, 124.92763425938216, 125.0261544243961, 125.12467458941003, 125.22319475442396, 125.3217149194379, 125.42023508445183, 125.51875524946577, 125.6172754144797, 125.71579557949363, 125.81431574450757, 125.9128359095215, 126.01135607453543, 126.10987623954937, 126.2083964045633, 126.30691656957724, 126.40543673459118, 126.5039568996051, 126.60247706461904, 126.70099722963297, 126.79951739464691, 126.89803755966085, 126.99655772467477, 127.09507788968871, 127.19359805470265, 127.29211821971658, 127.39063838473052, 127.48915854974445, 127.58767871475838, 127.68619887977232, 127.78471904478624, 127.88323920980018, 127.98175937481412, 128.08027953982804, 128.178799704842, 128.27731986985592, 128.37584003486987, 128.4743601998838, 128.5728803648977, 128.67140052991166, 128.7699206949256, 128.86844085993954, 128.96696102495346, 129.0654811899674, 129.16400135498134, 129.26252151999526, 129.36104168500918, 129.45956185002314, 129.55808201503706, 129.656602180051, 129.75512234506493, 129.85364251007886, 129.9521626750928, 130.05068284010673, 130.14920300512068, 130.2477231701346, 130.34624333514853, 130.44476350016248, 130.5432836651764, 130.64180383019033, 130.74032399520428, 130.8388441602182, 130.93736432523215, 131.03588449024608, 131.13440465526003, 131.23292482027395, 131.33144498528787, 131.42996515030183, 131.52848531531575, 131.62700548032967, 131.72552564534362, 131.82404581035755, 131.92256597537147, 132.02108614038542, 132.11960630539934, 132.2181264704133, 132.31664663542722, 132.41516680044117, 132.5136869654551, 132.61220713046902, 132.71072729548297, 132.8092474604969, 132.90776762551081, 133.00628779052477, 133.1048079555387, 133.20332812055264, 133.30184828556656, 133.4003684505805, 133.49888861559444, 133.59740878060836, 133.6959289456223, 133.79444911063624, 133.89296927565016, 133.9914894406641, 134.09000960567803, 134.18852977069196, 134.2870499357059, 134.38557010071983, 134.48409026573378, 134.5826104307477, 134.68113059576166, 134.77965076077558, 134.8781709257895, 134.97669109080346, 135.07521125581738, 135.1737314208313, 135.27225158584525, 135.37077175085918, 135.4692919158731, 135.56781208088705, 135.66633224590097, 135.76485241091493, 135.86337257592885, 135.9618927409428, 136.06041290595672, 136.15893307097065, 136.2574532359846, 136.35597340099852, 136.45449356601245, 136.5530137310264, 136.65153389604032, 136.75005406105424, 136.8485742260682, 136.94709439108212, 137.04561455609607, 137.14413472111, 137.24265488612394, 137.34117505113787, 137.4396952161518, 137.53821538116574, 137.63673554617966, 137.7352557111936, 137.83377587620754, 137.93229604122146, 138.03081620623541, 138.12933637124934, 138.2278565362633, 138.3263767012772, 138.42489686629114, 138.5234170313051, 138.621937196319, 138.72045736133293, 138.81897752634688, 138.9174976913608, 139.01601785637473, 139.11453802138868, 139.2130581864026, 139.31157835141656, 139.41009851643048, 139.50861868144443, 139.60713884645835, 139.70565901147228, 139.80417917648623, 139.90269934150015, 140.00121950651408, 140.09973967152803, 140.19825983654195, 140.29678000155587, 140.39530016656983, 140.49382033158375, 140.5923404965977, 140.69086066161162, 140.78938082662557, 140.8879009916395, 140.98642115665342, 141.08494132166737, 141.1834614866813, 141.28198165169522, 141.38050181670917, 141.4790219817231, 141.57754214673702, 141.67606231175097, 141.77458247676492, 141.87310264177884, 141.97162280679277, 142.07014297180672, 142.16866313682064, 142.26718330183456, 142.36570346684852, 142.46422363186244, 142.56274379687636, 142.6612639618903, 142.75978412690424, 142.8583042919182, 142.9568244569321, 143.05534462194606, 143.15386478695999, 143.2523849519739, 143.35090511698786, 143.44942528200178, 143.5479454470157, 143.64646561202966, 143.74498577704358, 143.8435059420575, 143.94202610707146, 144.04054627208538, 144.13906643709933, 144.23758660211325, 144.3361067671272, 144.43462693214113, 144.53314709715505, 144.631667262169, 144.73018742718293, 144.82870759219685, 144.9272277572108, 145.02574792222472, 145.12426808723865, 145.2227882522526, 145.32130841726652, 145.41982858228047, 145.5183487472944, 145.61686891230835, 145.71538907732227, 145.8139092423362, 145.91242940735015, 146.01094957236407, 146.109469737378, 146.20798990239194, 146.30651006740587, 146.4050302324198, 146.50355039743374, 146.6020705624477, 146.70059072746162, 146.79911089247554, 146.8976310574895, 146.9961512225034, 147.09467138751734, 147.1931915525313, 147.2917117175452, 147.39023188255914, 147.4887520475731, 147.587272212587, 147.68579237760096, 147.78431254261488, 147.88283270762884, 147.98135287264276, 148.07987303765668, 148.17839320267063, 148.27691336768456, 148.37543353269848, 148.47395369771243, 148.57247386272635, 148.67099402774028, 148.76951419275423, 148.86803435776815, 148.9665545227821, 149.06507468779603, 149.16359485280998, 149.2621150178239, 149.36063518283783, 149.45915534785178, 149.5576755128657, 149.65619567787962, 149.75471584289357, 149.8532360079075, 149.95175617292142, 150.05027633793537, 150.1487965029493, 150.24731666796325, 150.34583683297717, 150.44435699799112, 150.54287716300504, 150.64139732801897, 150.73991749303292, 150.83843765804684, 150.93695782306077, 151.03547798807472, 151.13399815308864, 151.2325183181026, 151.33103848311652, 151.42955864813047, 151.5280788131444, 151.6265989781583, 151.72511914317226, 151.8236393081862, 151.9221594732001, 152.02067963821406, 152.11919980322799, 152.2177199682419, 152.31624013325586, 152.41476029826978, 152.51328046328373, 152.61180062829766, 152.7103207933116, 152.80884095832553, 152.90736112333946, 153.0058812883534, 153.10440145336733, 153.20292161838125, 153.3014417833952, 153.39996194840913, 153.49848211342305, 153.597002278437, 153.69552244345093, 153.79404260846488, 153.8925627734788, 153.99108293849275, 154.08960310350668, 154.1881232685206, 154.28664343353455, 154.38516359854847, 154.4836837635624, 154.58220392857635, 154.68072409359027, 154.7792442586042, 154.87776442361815, 154.9762845886321, 155.07480475364602, 155.17332491865994, 155.2718450836739, 155.37036524868782, 155.46888541370174, 155.5674055787157, 155.66592574372962, 155.76444590874354, 155.8629660737575, 155.9614862387714, 156.06000640378537, 156.1585265687993, 156.25704673381324, 156.35556689882716, 156.4540870638411, 156.55260722885504, 156.65112739386896, 156.74964755888288, 156.84816772389684, 156.94668788891076, 157.04520805392468, 157.14372821893863, 157.24224838395256, 157.3407685489665, 157.43928871398043, 157.53780887899438, 157.6363290440083, 157.73484920902223, 157.83336937403618, 157.9318895390501, 158.03040970406403, 158.12892986907798, 158.2274500340919, 158.32597019910583, 158.42449036411978, 158.5230105291337, 158.62153069414765, 158.72005085916157, 158.81857102417553, 158.91709118918945, 159.01561135420337, 159.11413151921732, 159.21265168423125, 159.31117184924517, 159.40969201425912, 159.50821217927304, 159.606732344287, 159.70525250930092, 159.80377267431487, 159.9022928393288, 160.00081300434272, 160.09933316935667, 160.1978533343706, 160.29637349938452, 160.39489366439847, 160.4934138294124, 160.5919339944263, 160.69045415944026, 160.7889743244542, 160.88749448946814, 160.98601465448206, 161.084534819496, 161.18305498450994, 161.28157514952386, 161.3800953145378, 161.47861547955173, 161.57713564456566, 161.6756558095796, 161.77417597459353, 161.87269613960746, 161.9712163046214, 162.06973646963533, 162.16825663464928, 162.2667767996632, 162.36529696467716, 162.46381712969108, 162.562337294705, 162.66085745971895, 162.75937762473288, 162.8578977897468, 162.95641795476075, 163.05493811977468, 163.1534582847886, 163.25197844980255, 163.3504986148165, 163.44901877983042, 163.54753894484435, 163.6460591098583, 163.74457927487222, 163.84309943988615, 163.9416196049001, 164.04013976991402, 164.13865993492794, 164.2371800999419, 164.33570026495582, 164.43422042996977, 164.5327405949837, 164.63126075999764, 164.72978092501157, 164.8283010900255, 164.92682125503944, 165.02534142005337, 165.1238615850673, 165.22238175008124, 165.32090191509516, 165.4194220801091, 165.51794224512304, 165.616462410137, 165.71498257515088, 165.81350274016484, 165.9120229051788, 166.0105430701927, 166.10906323520663, 166.20758340022059, 166.3061035652345, 166.40462373024843, 166.50314389526238, 166.6016640602763, 166.70018422529023, 166.79870439030418, 166.89722455531813, 166.99574472033206, 167.09426488534598, 167.19278505035993, 167.29130521537385, 167.38982538038778, 167.48834554540173, 167.58686571041565, 167.68538587542957, 167.78390604044353, 167.88242620545745, 167.98094637047137, 168.07946653548532, 168.17798670049928, 168.2765068655132, 168.37502703052712, 168.47354719554107, 168.572067360555, 168.67058752556892, 168.76910769058287, 168.8676278555968, 168.96614802061072, 169.06466818562467, 169.16318835063862, 169.26170851565251, 169.36022868066647, 169.45874884568042, 169.55726901069434, 169.65578917570826, 169.75430934072222, 169.85282950573614, 169.95134967075006, 170.049869835764, 170.14839000077794, 170.24691016579186, 170.3454303308058, 170.44395049581976, 170.54247066083366, 170.6409908258476, 170.73951099086156, 170.83803115587548, 170.9365513208894, 171.03507148590336, 171.13359165091728, 171.2321118159312, 171.33063198094516, 171.42915214595908, 171.527672310973, 171.62619247598695, 171.7247126410009, 171.82323280601483, 171.92175297102875, 172.0202731360427, 172.11879330105663, 172.21731346607055, 172.3158336310845, 172.41435379609842, 172.51287396111235, 172.6113941261263, 172.70991429114025, 172.80843445615415, 172.9069546211681, 173.00547478618205, 173.10399495119597, 173.2025151162099, 173.30103528122385, 173.39955544623777, 173.4980756112517, 173.59659577626564, 173.69511594127957, 173.7936361062935, 173.89215627130744, 173.9906764363214, 174.0891966013353, 174.18771676634924, 174.2862369313632, 174.38475709637711, 174.48327726139104, 174.581797426405, 174.6803175914189, 174.77883775643284, 174.8773579214468, 174.9758780864607, 175.07439825147463, 175.17291841648859, 175.27143858150254, 175.36995874651643, 175.46847891153038, 175.56699907654433, 175.66551924155826, 175.76403940657218, 175.86255957158613, 175.96107973660006, 176.05959990161398, 176.15812006662793, 176.25664023164185, 176.35516039665578, 176.45368056166973, 176.55220072668368, 176.6507208916976, 176.74924105671153, 176.84776122172548, 176.9462813867394, 177.04480155175332, 177.14332171676728, 177.2418418817812, 177.34036204679512, 177.43888221180907, 177.53740237682302, 177.63592254183692, 177.73444270685087, 177.83296287186482, 177.93148303687875, 178.03000320189267, 178.12852336690662, 178.22704353192054, 178.32556369693447, 178.42408386194842, 178.52260402696234, 178.62112419197626, 178.71964435699022, 178.81816452200417, 178.91668468701806, 179.015204852032, 179.11372501704597, 179.2122451820599, 179.3107653470738, 179.40928551208776, 179.5078056771017, 179.6063258421156, 179.70484600712956, 179.80336617214348, 179.9018863371574, 180.00040650217136, 180.0989266671853, 180.19744683219923, 180.29596699721316, 180.3944871622271, 180.49300732724103, 180.59152749225495, 180.6900476572689, 180.78856782228283, 180.88708798729675, 180.9856081523107, 181.08412831732466, 181.18264848233855, 181.2811686473525, 181.37968881236645, 181.47820897738038, 181.5767291423943, 181.67524930740825, 181.77376947242217, 181.8722896374361, 181.97080980245005, 182.06932996746397, 182.1678501324779, 182.26637029749185, 182.3648904625058, 182.4634106275197, 182.56193079253364, 182.6604509575476, 182.75897112256152, 182.85749128757544, 182.9560114525894, 183.05453161760332, 183.15305178261724, 183.2515719476312, 183.35009211264511, 183.44861227765904, 183.547132442673, 183.64565260768694, 183.74417277270084, 183.8426929377148, 183.94121310272874, 184.03973326774266, 184.13825343275658, 184.23677359777054, 184.33529376278446, 184.43381392779838, 184.53233409281233, 184.63085425782626, 184.72937442284018, 184.82789458785413, 184.92641475286808, 185.024934917882, 185.12345508289593, 185.22197524790988, 185.3204954129238, 185.41901557793773, 185.51753574295168, 185.6160559079656, 185.71457607297953, 185.81309623799348, 185.91161640300743, 186.01013656802132, 186.10865673303528, 186.20717689804923, 186.30569706306315, 186.40421722807707, 186.50273739309102, 186.60125755810495, 186.69977772311887, 186.79829788813282, 186.89681805314675, 186.99533821816067, 187.09385838317462, 187.19237854818857, 187.29089871320247, 187.38941887821642, 187.48793904323037, 187.5864592082443, 187.68497937325822, 187.78349953827217, 187.8820197032861, 187.9805398683, 188.07906003331397, 188.1775801983279, 188.2761003633418, 188.37462052835576, 188.47314069336971, 188.57166085838364, 188.67018102339756, 188.7687011884115, 188.86722135342544, 188.96574151843936, 189.0642616834533, 189.16278184846723, 189.26130201348116, 189.3598221784951, 189.45834234350906, 189.55686250852295, 189.6553826735369, 189.75390283855086, 189.85242300356478, 189.9509431685787, 190.04946333359266, 190.14798349860658, 190.2465036636205, 190.34502382863445, 190.44354399364838, 190.5420641586623, 190.64058432367625, 190.7391044886902, 190.8376246537041, 190.93614481871805, 191.034664983732, 191.13318514874592, 191.23170531375985, 191.3302254787738, 191.42874564378772, 191.52726580880164, 191.6257859738156, 191.72430613882952, 191.82282630384344, 191.9213464688574, 192.01986663387135, 192.11838679888524, 192.2169069638992, 192.31542712891314, 192.41394729392707, 192.512467458941, 192.61098762395494, 192.70950778896886, 192.8080279539828, 192.90654811899674, 193.00506828401066, 193.10358844902458, 193.20210861403854, 193.3006287790525, 193.3991489440664, 193.49766910908033, 193.5961892740943, 193.6947094391082, 193.79322960412213, 193.89174976913608, 193.99026993415, 194.08879009916393, 194.18731026417788, 194.28583042919183, 194.38435059420573, 194.48287075921968, 194.58139092423363, 194.67991108924755, 194.77843125426148, 194.87695141927543, 194.97547158428935, 195.07399174930327, 195.17251191431723, 195.27103207933115, 195.36955224434507, 195.46807240935902, 195.56659257437298, 195.66511273938687, 195.76363290440082, 195.86215306941477, 195.9606732344287, 196.05919339944262, 196.15771356445657, 196.2562337294705, 196.35475389448442, 196.45327405949837, 196.5517942245123, 196.65031438952622, 196.74883455454017, 196.84735471955412, 196.94587488456804, 197.04439504958196, 197.14291521459592, 197.24143537960984, 197.33995554462376, 197.43847570963771, 197.53699587465164, 197.63551603966556, 197.7340362046795, 197.83255636969346, 197.93107653470736, 198.0295966997213, 198.12811686473526, 198.22663702974918, 198.3251571947631, 198.42367735977706, 198.52219752479098, 198.6207176898049, 198.71923785481886, 198.81775801983278, 198.9162781848467, 199.01479834986065, 199.1133185148746, 199.2118386798885, 199.31035884490245, 199.4088790099164, 199.50739917493033, 199.60591933994425, 199.7044395049582, 199.80295966997213, 199.90147983498605, 200 ], "y": [ 1270406.6284228377, 1269848.5542642106, 1269293.5175035305, 1268741.5131191355, 1268192.5361124366, 1267646.5815078095, 1267103.6443524808, 1266563.7197164185, 1266026.8026922252, 1265492.8883950252, 1264961.9719623593, 1264434.0485540763, 1263909.1133522266, 1263387.1615609543, 1262868.1884063934, 1262352.1891365615, 1261839.1590212558, 1261329.0933519488, 1260821.9874416855, 1260317.8366249804, 1259816.6362577155, 1259318.3817170386, 1258823.0684012612, 1258330.6917297614, 1257841.2471428805, 1257354.7301018257, 1256871.1360885696, 1256390.4606057554, 1255912.6991765962, 1255437.847344779, 1254965.9006743678, 1254496.8547497091, 1254030.705175335, 1253567.447575869, 1253107.077595931, 1252649.5909000451, 1252194.9831725445, 1251743.2501174794, 1251294.3874585256, 1250848.3909388916, 1250405.2563212283, 1249964.9793875378, 1249527.555939083, 1249092.981796299, 1248661.252798703, 1248232.3648048055, 1247806.3136920233, 1247383.0953565903, 1246962.7057134714, 1246545.140696275, 1246130.3962571681, 1245718.4683667885, 1245309.3530141616, 1244903.0462066138, 1244499.5439696899, 1244098.8423470678, 1243700.9374004754, 1243305.8252096088, 1242913.5018720475, 1242523.9635031752, 1242137.206236096, 1241753.226221554, 1241372.0196278528, 1240993.5826407757, 1240617.9114635037, 1240245.0023165394, 1239874.8514376255, 1239507.455081667, 1239142.8095206537, 1238780.911043582, 1238421.7559563783, 1238065.3405818203, 1237711.6612594635, 1237360.7143455632, 1237012.4962129989, 1236667.0032512005, 1236324.2318660722, 1235984.1784799187, 1235646.839531372, 1235312.2114753164, 1234980.2907828165, 1234651.073941043, 1234324.5574532037, 1234000.7378384664, 1233679.611631892, 1233361.1753843608, 1233045.4256625024, 1232732.3590486257, 1232421.9721406472, 1232114.2615520237, 1231809.2239116807, 1231506.8558639453, 1231207.1540684768, 1230910.1152001978, 1230615.7359492276, 1230324.013020815, 1230034.943135269, 1229748.5230278943, 1229464.7494489243, 1229183.6191634538, 1228905.1289513754, 1228629.275607312, 1228356.0559405538, 1228085.4667749922, 1227817.504949056, 1227552.1673156472, 1227289.4507420782, 1227029.3521100068, 1226771.868315375, 1226516.996268345, 1226264.7328932383, 1226015.0751284722, 1225768.019926499, 1225523.564253745, 1225281.7050905477, 1225042.4394310976, 1224805.7642833765, 1224571.6766690966, 1224340.173623643, 1224111.2521960116, 1223884.9094487522, 1223661.1424579085, 1223439.94831296, 1223221.3241167634, 1223005.266985495, 1222791.7740485938, 1222580.842448702, 1222372.4693416108, 1222166.6518962013, 1221963.38729439, 1221762.6727310703, 1221564.50541406, 1221368.8825640427, 1221175.8014145135, 1220985.2592117246, 1220797.2532146308, 1220611.780694833, 1220428.838936527, 1220248.4252364472, 1220070.5369038146, 1219895.171260282, 1219722.3256398833, 1219551.997388978, 1219384.1838662003, 1219218.8824424068, 1219056.090500624, 1218895.805435997, 1218738.024655738, 1218582.7455790748, 1218429.965637201, 1218279.682273223, 1218131.892942113, 1217986.595110655, 1217843.7862573983, 1217703.4638726062, 1217565.6254582063, 1217430.268527742, 1217297.3906063244, 1217166.989230582, 1217039.0619486133, 1216913.6063199386, 1216790.6199154514, 1216670.1003173722, 1216552.0451191997, 1216436.4519256635, 1216323.3183526788, 1216212.6420272975, 1216104.420587664, 1215998.6516829666, 1215895.3329733936, 1215794.4621300856, 1215696.0368350917, 1215600.0547813228, 1215506.5136725076, 1215415.411223147, 1215326.7451584693, 1215240.5132143858, 1215156.713137448, 1215075.3426848014, 1214996.3996241433, 1214919.881733678, 1214845.7868020756, 1214774.1126284257, 1214704.857022198, 1214638.0178031954, 1214573.5928015166, 1214511.5798575094, 1214451.9768217306, 1214394.7815549048, 1214339.9919278799, 1214287.60582159, 1214237.6211270096, 1214190.0357451155, 1214144.8475868453, 1214102.054573056, 1214061.6546344843, 1214023.6457117063, 1213988.0257550967, 1213954.79272479, 1213923.94459064, 1213895.4793321812, 1213869.3949385877, 1213845.689408637, 1213824.3607506678, 1213805.4069825446, 1213788.8261316163, 1213774.616234679, 1213762.775337939, 1213753.3014969726, 1213746.1927766902, 1213741.447251298, 1213739.0630042597, 1213739.038128261, 1213741.370725171, 1213746.0589060062, 1213753.1007908941, 1213762.4945090348, 1213774.2381986675, 1213788.3300070316, 1213804.7680903326, 1213823.5506137053, 1213844.6757511778, 1213868.141685638, 1213893.9466087956, 1213922.0887211487, 1213952.5662319483, 1213985.377359164, 1214020.520329448, 1214057.9933781023, 1214097.794749043, 1214139.922694767, 1214184.375476318, 1214231.1513632515, 1214280.248633603, 1214331.665573853, 1214385.4004788948, 1214441.4516519995, 1214499.8174047852, 1214560.4960571823, 1214623.4859374017, 1214688.7853819025, 1214756.3927353588, 1214826.3063506274, 1214898.5245887167, 1214973.0458187533, 1215049.8684179517, 1215128.990771582, 1215210.411272937, 1215294.1283233035, 1215380.140331929, 1215468.445715992, 1215559.042900569, 1215651.930318607, 1215747.1064108894, 1215844.5696260077, 1215944.3184203305, 1216046.3512579734, 1216150.6666107683, 1216257.2629582346, 1216366.1387875495, 1216477.2925935152, 1216590.7228785343, 1216706.4281525773, 1216824.406933153, 1216944.6577452815, 1217067.179121464, 1217191.9696016535, 1217319.0277332272, 1217448.3520709574, 1217579.941176983, 1217713.7936207808, 1217849.9079791384, 1217988.2828361252, 1218128.9167830653, 1218271.8084185082, 1218416.9563482031, 1218564.3591850698, 1218714.0155491726, 1218865.9240676914, 1219020.083374896, 1219176.492112119, 1219335.1489277268, 1219496.0524770962, 1219659.201422585, 1219824.5944335063, 1219992.2301861027, 1220162.1073635188, 1220334.2246557768, 1220508.580759748, 1220685.1743791285, 1220864.004224414, 1221045.0690128717, 1221228.367468517, 1221413.8983220872, 1221601.6603110158, 1221791.6521794074, 1221983.8726780126, 1222178.320564204, 1222374.9946019487, 1222573.8935617872, 1222775.016220805, 1222978.3613626105, 1223183.9277773097, 1223391.7142614815, 1223601.7196181545, 1223813.9426567813, 1224028.3821932164, 1224245.0370496905, 1224463.9060547878, 1224684.9880434219, 1224908.2818568123, 1225133.7863424607, 1225361.5003541277, 1225591.4227518102, 1225823.5524017166, 1226057.8881762456, 1226294.428953962, 1226533.173619574, 1226774.1210639111, 1227017.2701839004, 1227262.619882545, 1227510.1690689009, 1227759.9166580548, 1228011.8615711017, 1228266.002735124, 1228522.3390831663, 1228780.8695542174, 1229041.5930931855, 1229304.508650877, 1229569.615183977, 1229836.9116550232, 1230106.3970323899, 1230378.0702902616, 1230651.9304086154, 1230927.9763731975, 1231206.207175503, 1231486.6218127552, 1231769.2192878835, 1232053.9986095037, 1232340.9587918974, 1232630.0988549895, 1232921.4178243298, 1233214.9147310716, 1233510.5886119506, 1233808.4385092661, 1234108.46347086, 1234410.6625500962, 1234715.034805841, 1235021.5793024441, 1235330.2951097167, 1235641.1813029137, 1235954.2369627126, 1236269.461175195, 1236586.853031826, 1236906.4116294356, 1237228.136070199, 1237552.0254616174, 1237878.078916499, 1238206.2955529392, 1238536.6744943024, 1238869.2148692026, 1239203.9158114851, 1239540.7764602066, 1239879.795959618, 1240220.9734591441, 1240564.308113367, 1240909.7990820059, 1241257.445529899, 1241607.2466269871, 1241959.2015482928, 1242313.3094739036, 1242669.5695889536, 1243027.9810836066, 1243388.543153036, 1243751.2549974087, 1244116.1158218672, 1244483.124836511, 1244852.2812563798, 1245223.5843014359, 1245597.0331965457, 1245972.6271714647, 1246350.3654608175, 1246730.247304082, 1247112.271945572, 1247496.4386344205, 1247882.7466245617, 1248271.195174715, 1248661.7835483677, 1249054.5110137584, 1249449.3768438597, 1249846.3803163627, 1250245.5207136588, 1250646.7973228248, 1251050.2094356054, 1251455.7563483978, 1251863.4373622334, 1252273.2517827642, 1252685.1989202446, 1253099.2780895163, 1253515.4886099917, 1253933.8298056386, 1254354.301004964, 1254776.9015409974, 1255201.6307512766, 1255628.487977831, 1256057.4725671657, 1256488.583870247, 1256921.8212424861, 1257357.1840437236, 1257794.671638214, 1258234.283394612, 1258676.0186859546, 1259119.8768896481, 1259565.8573874522, 1260013.959565464, 1260464.182814105, 1260916.5265281044, 1261370.9901064853, 1261827.5729525487, 1262286.274473861, 1262747.094082236, 1263210.0311937234, 1263675.0852285922, 1264142.2556113172, 1264611.5417705649, 1265082.943139177, 1265556.4591541588, 1266032.0892566633, 1266509.832891977, 1266989.6895095059, 1267471.6585627631, 1267955.7395093513, 1268441.9318109523, 1268930.2349333102, 1269420.64834622, 1269913.1715235119, 1270407.803943039, 1270904.545086662, 1271403.3944402374, 1271904.3514936024, 1272407.4157405621, 1272912.5866788758, 1273419.863810244, 1273929.2466402939, 1274440.7346785674, 1274954.3274385077, 1275470.0244374445, 1275987.8251965833, 1276507.7292409902, 1277029.7360995803, 1277553.8453051038, 1278080.056394133, 1278608.3689070507, 1279138.7823880357, 1279671.2963850508, 1280205.9104498303, 1280742.6241378677, 1281281.4370084007, 1281822.3486244017, 1282365.3585525637, 1282910.466363288, 1283457.671630671, 1284006.973932494, 1284558.372850209, 1285111.8679689262, 1285667.4588774038, 1286225.145168033, 1286784.926436829, 1287346.8022834158, 1287910.772311017, 1288476.8361264414, 1289044.9933400727, 1289615.2435658572, 1290187.5864212918, 1290762.0215274114, 1291338.548508779, 1291917.1669934725, 1292497.8766130735, 1293080.6770026563, 1293665.5678007745, 1294252.5486494517, 1294841.619194169, 1295432.7790838536, 1296026.0279708665, 1296621.3655109936, 1297218.791363432, 1297818.3051907804, 1298419.906659026, 1299023.5954375353, 1299629.3711990423, 1300237.2336196373, 1300847.1823787552, 1301459.2171591665, 1302073.3376469635, 1302689.543531553, 1303307.834505641, 1303928.2102652267, 1304550.670509587, 1305175.214941271, 1305801.8432660839, 1306430.55519308, 1307061.350434551, 1307694.2287060153, 1308329.1897262074, 1308966.2332170685, 1309605.3589037342, 1310246.5665145256, 1310889.8557809386, 1311535.226437633, 1312182.6782224234, 1312832.2108762672, 1313483.8241432565, 1314137.5177706068, 1314793.291508646, 1315451.1451108065, 1316111.078333613, 1316773.0909366743, 1317437.182682672, 1318103.3533373515, 1318771.602669511, 1319441.9304509934, 1320114.3364566742, 1320788.8204644546, 1321465.3822552483, 1322144.0216129757, 1322824.7383245504, 1323507.5321798725, 1324192.4029718176, 1324879.3504962279, 1325568.3745519016, 1326259.474940585, 1326952.6514669617, 1327647.9039386446, 1328345.232166164, 1329044.6359629622, 1329746.1151453808, 1330449.6695326525, 1331155.2989468921, 1331863.003213088, 1332572.782159091, 1333284.6356156075, 1333998.5634161895, 1334714.5653972246, 1335432.6413979281, 1336152.7912603342, 1336875.0148292864, 1337599.3119524284, 1338325.6824801967, 1339054.1262658094, 1339784.6431652594, 1340517.2330373048, 1341251.8957434609, 1341988.6311479895, 1342727.4391178929, 1343468.3195229028, 1344211.2722354745, 1344956.2971307747, 1345703.3940866766, 1346452.562983749, 1347203.803705248, 1347957.1161371102, 1348712.5001679426, 1349469.9556890149, 1350229.4825942505, 1350991.08078022, 1351754.7501461303, 1352520.4905938187, 1353288.3020277428, 1354058.1843549737, 1354830.137485187, 1355604.1613306557, 1356380.2558062405, 1357158.4208293825, 1357938.6563200955, 1358720.9622009587, 1359505.3383971062, 1360291.784836221, 1361080.3014485277, 1361870.888166782, 1362663.5449262657, 1363458.2716647766, 1364255.0683226222, 1365053.9348426117, 1365854.8711700467, 1366657.877252716, 1367462.9530408862, 1368270.0984872943, 1369079.31354714, 1369890.5981780791, 1370703.9523402145, 1371519.3759960893, 1372336.8691106797, 1373156.4316513864, 1373978.0635880283, 1374801.7648928347, 1375627.5355404373, 1376455.3755078637, 1377285.2847745297, 1378117.2633222307, 1378951.311135137, 1379787.4281997848, 1380625.6145050689, 1381465.8700422356, 1382308.1948048766, 1383152.5887889205, 1383999.0519926255, 1384847.5844165739, 1385698.1860636636, 1386550.8569391018, 1387405.5970503967, 1388262.4064073528, 1389121.2850220609, 1389982.2329088938, 1390845.2500844984, 1391710.336567788, 1392577.4923799369, 1393446.7175443717, 1394318.0120867665, 1395191.376035035, 1396066.8094193228, 1396944.3122720034, 1397823.8846276682, 1398705.5265231216, 1399589.2379973752, 1400475.019091638, 1401362.869849313, 1402252.7903159899, 1403144.7805394358, 1404038.8405695925, 1404934.9704585674, 1405833.1702606285, 1406733.4400321962, 1407635.7798318383, 1408540.1897202635, 1409446.6697603134, 1410355.220016958, 1411265.8405572888, 1412178.5314505117, 1413093.2927679408, 1414010.1245829929, 1414929.026971181, 1415850.0000101067, 1416773.0437794563, 1417698.158360993, 1418625.3438385502, 1419554.6002980266, 1420485.9278273801, 1421419.32651662, 1422354.7964578033, 1423292.337745027, 1424231.950474421, 1425173.6347441445, 1426117.39065438, 1427063.2183073242, 1428011.1178071848, 1428961.089260174, 1429913.132774502, 1430867.2484603715, 1431823.4364299714, 1432781.696797472, 1433742.0296790167, 1434704.43519272, 1435668.913458658, 1436635.4645988648, 1437604.0887373248, 1438574.78599997, 1439547.556514671, 1440522.4004112338, 1441499.3178213919, 1442478.3088788032, 1443459.3737190412, 1444442.5124795923, 1445427.7252998492, 1446415.0123211036, 1447404.3736865437, 1448395.8095412462, 1449389.320032172, 1450384.905308159, 1451382.5655199203, 1452382.300820035, 1453384.1113629434, 1454387.997304943, 1455393.958804183, 1456401.9960206565, 1457412.1091161985, 1458424.298254478, 1459438.5636009937, 1460454.9053230681, 1461473.3235898442, 1462493.8185722767, 1463516.390443129, 1464541.0393769685, 1465567.76555016, 1466596.5691408608, 1467627.4503290155, 1468660.4092963515, 1469695.4462263728, 1470732.561304356, 1471771.754717344, 1472813.0266541415, 1473856.37730531, 1474901.8068631627, 1475949.315521759, 1476998.9034769, 1478050.5709261228, 1479104.3180686976, 1480160.1451056188, 1481218.0522396038, 1482278.0396750865, 1483340.1076182113, 1484404.2562768308, 1485470.485860499, 1486538.7965804664, 1487609.1886496753, 1488681.6622827563, 1489756.2176960218, 1490832.8551074616, 1491911.5747367388, 1492992.3768051842, 1494075.2615357917, 1495160.2291532136, 1496247.2798837568, 1497336.4139553765, 1498427.6315976714, 1499520.9330418822, 1500616.3185208829, 1501713.7882691775, 1502813.342522897, 1503914.9815197927, 1505018.7054992323, 1506124.5147021953, 1507232.4093712699, 1508342.3897506446, 1509454.456086108, 1510568.6086250418, 1511684.8476164176, 1512803.1733107893, 1513923.5859602941, 1515046.0858186432, 1516170.6731411186, 1517297.3481845702, 1518426.1112074107, 1519556.962469609, 1520689.9022326893, 1521824.9307597245, 1522962.0483153318, 1524101.2551656698, 1525242.5515784335, 1526385.9378228486, 1527531.4141696682, 1528678.9808911714, 1529828.638261153, 1530980.3865549243, 1532134.2260493068, 1533290.1570226285, 1534448.1797547191, 1535608.2945269058, 1536770.501622011, 1537934.8013243447, 1539101.1939197034, 1540269.6796953646, 1541440.2589400825, 1542612.9319440848, 1543787.6989990673, 1544964.5603981912, 1546143.5164360781, 1547324.5674088062, 1548507.7136139069, 1549692.9553503585, 1550880.2929185848, 1552069.7266204515, 1553261.256759258, 1554454.8836397375, 1555650.6075680526, 1556848.4288517893, 1558048.3477999545, 1559250.3647229713, 1560454.4799326777, 1561660.6937423176, 1562869.006466542, 1564079.4184214023, 1565291.9299243467, 1566506.5412942176, 1567723.2528512469, 1568942.0649170517, 1570162.9778146304, 1571385.9918683614, 1572611.1074039964, 1573838.3247486562, 1575067.644230831, 1576299.0661803721, 1577532.5909284912, 1578768.2188077546, 1580005.9501520812, 1581245.7852967372, 1582487.724578334, 1583731.7683348241, 1584977.916905496, 1586226.170630972, 1587476.5298532036, 1588728.9949154705, 1589983.566162373, 1591240.243939831, 1592499.0285950792, 1593759.9204766653, 1595022.9199344437, 1596288.027319575, 1597555.2429845193, 1598824.5672830343, 1600096.0005701738, 1601369.54320228, 1602645.195536982, 1603922.957933194, 1605202.8307511092, 1606484.8143521969, 1607768.9090992007, 1609055.1153561329, 1610343.4334882726, 1611633.8638621606, 1612926.4068455994, 1614221.0628076447, 1615517.8321186057, 1616816.7151500424, 1618117.712274759, 1619420.8238668018, 1620726.0503014575, 1622033.3919552483, 1623342.8492059284, 1624654.4224324808, 1625968.112015116, 1627283.918335265, 1628601.8417755798, 1629921.8827199275, 1631244.0415533877, 1632568.3186622495, 1633894.71443401, 1635223.2292573666, 1636553.863522218, 1637886.6176196602, 1639221.491941981, 1640558.486882659, 1641897.6028363598, 1643238.8401989336, 1644582.19936741, 1645927.680739997, 1647275.2847160771, 1648625.0116962034, 1649976.8620820972, 1651330.8362766458, 1652686.934683897, 1654045.1577090593, 1655405.505758495, 1656767.979239721, 1658132.5785614022, 1659499.304133351, 1660868.1563665234, 1662239.1356730156, 1663612.2424660604, 1664987.4771600282, 1666364.8401704177, 1667744.3319138568, 1669125.9528080998, 1670509.7032720237, 1671895.5837256238, 1673283.5945900127, 1674673.7362874174, 1676066.0092411747, 1677460.4138757293, 1678856.9506166314, 1680255.6198905334, 1681656.4221251844, 1683059.3577494333, 1684464.4271932207, 1685871.6308875766, 1687280.96926462, 1688692.4427575548, 1690106.0518006654, 1691521.7968293168, 1692939.6782799496, 1694359.6965900771, 1695781.8521982846, 1697206.145544225, 1698632.577068615, 1700061.1472132343, 1701491.8564209226, 1702924.705135576, 1704359.693802144, 1705796.8228666272, 1707236.0927760764, 1708677.5039785858, 1710121.0569232944, 1711566.752060381, 1713014.5898410613, 1714464.5707175862, 1715916.69514324, 1717370.963572335, 1718827.376460211, 1720285.9342632312, 1721746.6374387827, 1723209.4864452686, 1724674.4817421096, 1726141.6237897412, 1727610.9130496075, 1729082.3499841623, 1730555.9350568657, 1732031.66873218, 1733509.5514755675, 1734989.5837534918, 1736471.7660334078, 1737956.098783765, 1739442.5824740042, 1740931.217574553, 1742422.0045568245, 1743914.9438932133, 1745410.036057097, 1746907.2815228272, 1748406.6807657338, 1749908.2342621179, 1751411.942489251, 1752917.8059253704, 1754425.8250496835, 1755936.0003423546, 1757448.332284512, 1758962.8213582402, 1760479.4680465807, 1761998.2728335252, 1763519.2362040184, 1765042.3586439514, 1766567.6406401617, 1768095.0826804298, 1769624.6852534777, 1771156.4488489642, 1772690.3739574847, 1774226.4610705692, 1775764.710680679, 1777305.1232812018, 1778847.699366455, 1780392.439431678, 1781939.3439730331, 1783488.4134876016, 1785039.6484733827, 1786593.0494292893, 1788148.6168551464, 1789706.3512516918, 1791266.2531205686, 1792828.3229643262, 1794392.5612864178, 1795958.9685911976, 1797527.5453839174, 1799098.292170727, 1800671.2094586696, 1802246.2977556805, 1803823.5575705841, 1805402.9894130942, 1806984.5937938076, 1808568.3712242036, 1810154.3222166463, 1811742.447284374, 1813332.7469415031, 1814925.2217030243, 1816519.8720848006, 1818116.6986035635, 1819715.7017769127, 1821316.8821233145, 1822920.240162096, 1824525.7764134477, 1826133.4913984179, 1827743.3856389113, 1829355.4596576882, 1830969.7139783602, 1832586.1491253912, 1834204.765624091, 1835825.5640006172, 1837448.5447819717, 1839073.7084959955, 1840701.0556713731, 1842330.5868376244, 1843962.302525106, 1845596.2032650057, 1847232.2895893473, 1848870.56203098, 1850511.0211235816, 1852153.6674016549, 1853798.501400528, 1855445.5236563468, 1857094.7347060787, 1858746.1350875082, 1860399.7253392339, 1862055.5060006676, 1863713.4776120335, 1865373.6407143627, 1867035.9958494948, 1868700.543560075, 1870367.2843895508, 1872036.2188821696, 1873707.34758298, 1875380.6710378276, 1877056.189793351, 1878733.9043969843, 1880413.815396953 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=122.42$", "textposition": "top center", "type": "scatter", "x": [ 122.41640591704551 ], "y": [ 1213738.755633368 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 122.41640591704551 ], "y": [ 0, 1213738.755633368 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Variation of Total Power with Altitude - CD0 = 0.016, K=0.045, S=50m^2, W=160.0" }, "xaxis": { "range": [ 0, 200 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 4000000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "fig = go.Figure()\n", "\n", "for alt in [0, 5, 10]: # Altitude\n", "\n", " mosphere = Atmosphere(alt*1000)\n", " rho = mosphere.density\n", "\n", " # Determine stall speed\n", " Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", " # Determine A and B\n", " A = CD0 * 0.5 * rho * S\n", " B = K * W ** 2 / 0.5 / rho / S\n", "\n", " # Flight speed vector\n", " Vs = np.linspace(Vstall[0], 200, 1000)\n", "\n", "\n", " # Define power\n", " Pind = B * Vs**-1\n", " Pprof = A * Vs**3\n", " P = Pind + Pprof\n", "\n", " # Get minimum drag speed and associated power\n", " Vmd = (B/A)**.25\n", " mdp = A * Vmd**3 + B * Vmd**-1\n", "\n", " # Get minimum power\n", " Vmp = (B/3/A)**.25\n", " mp = A * Vmp**3 + B * Vmp**-1\n", "\n", "\n", "# fig.add_trace(go.Scatter(x=Vs, y=Dind, name=\"Induced Power\"))\n", "# fig.add_trace(go.Scatter(x=Vs, y=Dprof, name=\"Profile Power\"))\n", " fig.add_trace(go.Scatter(x=Vs, y=P, name=f\"Total Power - {alt}km\"))\n", "\n", "\n", "\n", " fig.add_trace(go.Scatter(x=Vmp, y=mp, mode=\"markers+text\", text=f\"$V_{{mp}}={Vmp[0]:1.2f}$\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "\n", "\n", "\n", "\n", "\n", "fig.add_trace(go.Scatter(x=[0, Vmp[0]], y=[0, mp[0]], name=\"Annotation\", mode='lines'))\n", "\n", "\n", " \n", "fig.update_xaxes(range=[0, 200])\n", "fig.update_yaxes(range=[0, 4e6])\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "\n", "fig.update_layout(\n", " title=f\"Variation of Total Power with Altitude - CD0 = {CD0}, K={K}, S={S}m^2, W={W/1e3}\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "scrolled": false }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "Total Power - 160000.0kN", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 738104.5540302985, 737308.3334750122, 736522.8140222791, 735747.9523871784, 734983.7057731765, 734230.0318663565, 733486.8888297307, 732754.235297631, 732032.0303701797, 731320.2336078384, 730618.8050260318, 729927.7050898474, 729246.8947088107, 728576.3352317293, 727915.9884416123, 727265.816550659, 726625.7821953148, 725995.8484313985, 725375.9787292948, 724766.1369692126, 724166.2874365083, 723576.3948170753, 722996.424192792, 722426.3410370353, 721866.1112102544, 721315.7009556022, 720775.0768946294, 720244.2060230331, 719723.055706465, 719211.5936763949, 718709.7880260288, 718217.6072062837, 717735.0200218138, 717261.9956270908, 716798.5035225356, 716344.513550702, 715899.9958925095, 715464.9210635275, 715039.2599103068, 714622.9836067597, 714216.0636505887, 713818.4718597594, 713430.1803690223, 713051.161626477, 712681.3883901834, 712320.8337248154, 711969.470998358, 711627.2738788477, 711294.2163311542, 710970.2726138032, 710655.4172758411, 710349.6251537383, 710052.8713683332, 709765.1313218146, 709486.3806947423, 709216.5954431058, 708955.75179542, 708703.8262498579, 708460.7955714191, 708226.6367891334, 708001.3271933015, 707784.8443327673, 707577.1660122264, 707378.2702895682, 707188.1354732495, 707006.7401197018, 706834.0630307717, 706670.0832511899, 706514.7800660752, 706368.1329984663, 706230.1218068857, 706100.7264829322, 705979.9272489045, 705867.7045554512, 705764.039079253, 705668.9117207295, 705582.3036017767, 705504.1960635299, 705434.5706641553, 705373.4091766663, 705320.6935867686, 705276.4060907287, 705240.5290932696, 705213.0452054911, 705193.9372428153, 705183.1882229554, 705180.7813639111, 705186.700081985, 705200.9279898243, 705223.4488944856, 705254.2467955215, 705293.3058830905, 705340.6105360893, 705396.1453203066, 705459.894986599, 705531.8444690866, 705611.978883373, 705700.2835247822, 705796.7438666185, 705901.3455584458, 706014.0744243872, 706134.9164614432, 706263.8578378307, 706400.8848913398, 706545.984127711, 706699.1422190294, 706860.346002138, 707029.5824770702, 707206.8388054976, 707392.1023091979, 707585.3604685394, 707786.6009209818, 707995.811459596, 708212.9800315978, 708438.0947369008, 708671.1438266843, 708912.1157019773, 709160.9989122583, 709417.7821540715, 709682.4542696577, 709955.0042456007, 710235.4212114888, 710523.6944385914, 710819.8133385491, 711123.7674620812, 711435.546497703, 711755.1402704616, 712082.5387406829, 712417.7320027336, 712760.7102837962, 713111.4639426573, 713469.9834685103, 713836.2594797693, 714210.2827228977, 714592.044071248, 714981.534523916, 715378.7452046047, 715783.6673605038, 716196.2923611786, 716616.6116974717, 717044.6169804177, 717480.2999401676, 717923.6524249255, 718374.6663998975, 718833.3339462507, 719299.647260084, 719773.5986514088, 720255.1805431421, 720744.3854701093, 721241.206078057, 721745.6351226778, 722257.665468644, 722777.290088652, 723304.5020624769, 723839.2945760365, 724381.6609204657, 724931.5944911999, 725489.0887870691, 726054.1374093997, 726626.7340611272, 727206.8725459173, 727794.5467672969, 728389.7507277923, 728992.4785280789, 729602.7243661372, 730220.4825364191, 730845.747429022, 731478.5135288718, 732118.7754149138, 732766.5277593123, 733421.765326658, 734084.482973184, 734754.6756459886, 735432.3383822679, 736117.4663085544, 736810.0546399645, 737510.098679452, 738217.5938170715, 738932.535529247, 739654.9193780496, 740384.7410104806, 741121.996157764, 741866.6806346434, 742618.7903386889, 743378.3212496082, 744145.2694285666, 744919.6310175122, 745701.402238509, 746490.5793930757, 747287.1588615319, 748091.1371023497, 748902.5106515125, 749721.2761218802, 750547.4302025598, 751380.9696582828, 752221.8913287886, 753070.192128214, 753925.8690444883, 754788.9191387347, 755659.3395446771, 756537.1274680533, 757422.2801860329, 758314.7950466422, 759214.6694681933, 760121.9009387188, 761036.4870154143, 761958.4253240819, 762887.7135585832, 763824.3494802956, 764768.3309175731, 765719.6557652147, 766678.3219839355, 767644.3275998435, 768617.6707039222, 769598.3494515171, 770586.3620618279, 771581.7068174041, 772584.382063648, 773594.3862083186, 774611.7177210441, 775636.3751328365, 776668.357035611, 777707.6620817115, 778754.2889834375, 779808.2365125797, 780869.5034999552, 781938.0888349509, 783013.9914650691, 784097.2103954782, 785187.7446885658, 786285.5934634996, 787390.7558957879, 788503.2312168477, 789623.0187135747, 790750.117727919, 791884.5276564623, 793026.2479500008, 794175.2781131326, 795331.6177038455, 796495.2663331134, 797666.2236644919, 798844.4894137201, 800030.063348325, 801222.9452872311, 802423.1351003705, 803630.6327082999, 804845.4380818189, 806067.5512415918, 807296.9722577743, 808533.7012496421, 809777.738385223, 811029.0838809337, 812287.7380012181, 813553.701058189, 814826.9734112745, 816107.5554668661, 817395.4476779702, 818690.6505438637, 819993.1646097512, 821302.9904664257, 822620.1287499329, 823944.5801412382, 825276.3453658961, 826615.4251937231, 827961.8204384738, 829315.5319575181, 830676.5606515235, 832044.9074641388, 833420.5733816809, 834803.5594328244, 836193.8666882943, 837591.4962605599, 838996.4493035332, 840408.7270122686, 841828.3306226663, 843255.2614111772, 844689.5206945115, 846131.1098293478, 847580.0302120475, 849036.2832783691, 850499.8705031871, 851970.7934002113, 853449.0535217103, 854934.652458236, 856427.5918383508, 857927.8733283583, 859435.498632034, 860950.4694903614, 862472.7876812664, 864002.4550193578, 865539.4733556677, 867083.8445773942, 868635.5706076478, 870194.6534051984, 871761.0949642248, 873334.8973140668, 874916.0625189784, 876504.5926778847, 878100.4899241389, 879703.7564252828, 881314.3943828093, 882932.4060319248, 884557.7936413167, 886190.5595129202, 887830.705981689, 889478.2354153662, 891133.150214259, 892795.4528110125, 894465.1456703888, 896142.231289045, 897826.7121953145, 899518.5909489904, 901217.8701411095, 902924.5523937382, 904638.6403597612, 906360.1367226718, 908089.0441963626, 909825.3655249188, 911569.1034824143, 913320.2608727061, 915078.8405292351, 916844.8453148238, 918618.2781214793, 920399.1418701962, 922187.4395107604, 923983.1740215563, 925786.3484093747, 927596.9657092213, 929415.0289841287, 931240.5413249679, 933073.5058502636, 934913.9257060081, 936761.8040654788, 938617.1441290573, 940479.9491240481, 942350.2223045005, 944227.9669510319, 946113.1863706504, 948005.8838965811, 949906.0628880935, 951813.7267303286, 953728.8788341298, 955651.522635873, 957581.6615972989, 959519.2992053467, 961464.4389719893, 963417.084434069, 965377.239153136, 967344.906715286, 969320.0907310003, 971302.7948349883, 973293.0226860284, 975290.7779668127, 977296.0643837925, 979308.8856670228, 981329.2455700112, 983357.1478695656, 985392.5963656441, 987435.5948812057, 989486.1472620631, 991544.2573767353, 993609.9291163012, 995683.1663942566, 997763.9731463691, 999852.3533305365, 1001948.3109266462, 1004051.8499364341, 1006162.974383345, 1008281.6883123957, 1010407.9957900377, 1012541.90090402, 1014683.4077632565, 1016832.52049769, 1018989.2432581602, 1021153.5802162716, 1023325.5355642625, 1025505.1135148755, 1027692.3183012286, 1029887.1541766864, 1032089.6254147342, 1034299.7363088512, 1036517.4911723856, 1038742.8943384306, 1040975.9501597008, 1043216.6630084112, 1045465.0372761536, 1047721.077373778, 1049984.7877312717, 1052256.1727976424, 1054535.237040798, 1056821.9849474318, 1059116.421022905, 1061418.5497911319, 1063728.3757944661, 1066045.9035935868, 1068371.1377673848, 1070704.0829128525, 1073044.7436449726, 1075393.124596606, 1077749.230418385, 1080113.0657786028, 1082484.6353631068, 1084863.9438751913, 1087250.9960354909, 1089645.796581875, 1092048.350269344, 1094458.6618699247, 1096876.7361725671, 1099302.5779830422, 1101736.19212384, 1104177.5834340695, 1106626.7567693566, 1109083.717001747, 1111548.4690196058, 1114021.01772752, 1116501.3680462006, 1118989.5249123871, 1121485.4932787502, 1123989.2781137975, 1126500.8844017787, 1129020.3171425916, 1131547.5813516886, 1134082.6820599847, 1136625.6243137647, 1139176.4131745934, 1141735.0537192237, 1144301.551039507, 1146875.9102423042, 1149458.1364493964, 1152048.2347973974, 1154646.2104376666, 1157252.0685362204, 1159865.814273649, 1162487.4528450272, 1165116.9894598322, 1167754.4293418587, 1170399.7777291338, 1173053.039873835, 1175714.2210422072, 1178383.326514481, 1181060.3615847903, 1183745.3315610914, 1186438.241765085, 1189139.0975321329, 1191847.9042111817, 1194564.667164682, 1197289.3917685119, 1200022.0834118975, 1202762.747497339, 1205511.38944053, 1208268.0146702854, 1211032.6286284633, 1213805.236769891, 1216585.844562291, 1219374.457486206, 1222171.0810349272, 1224975.7207144191, 1227788.3820432492, 1230609.0705525144, 1233437.7917857708, 1236274.5512989615, 1239119.3546603492, 1241972.2074504416, 1244833.1152619252, 1247702.0836995956, 1250579.1183802886, 1253464.2249328112, 1256357.4089978775, 1259258.6762280366, 1262168.0322876095, 1265085.4828526215, 1268011.033610737, 1270944.6902611915, 1273886.4585147323, 1276836.3440935488, 1279794.3527312095, 1282760.4901726, 1285734.762173859, 1288717.1745023138, 1291707.7329364226, 1294706.4432657068, 1297713.3112906928, 1300728.3428228507, 1303751.543684533, 1306782.9197089132, 1309822.4767399295, 1312870.2206322209, 1315926.1572510705, 1318990.2924723467, 1322062.6321824437, 1325143.1822782247, 1328231.9486669654, 1331328.937266293, 1334434.1540041333, 1337547.6048186522, 1340669.2956581998, 1343799.2324812552, 1346937.4212563722, 1350083.8679621222, 1353238.5785870394, 1356401.5591295694, 1359572.8155980129, 1362752.354010472, 1365940.1803947994, 1369136.3007885432, 1372340.7212388949, 1375553.4478026368, 1378774.4865460922, 1382003.8435450713, 1385241.524884823, 1388487.5366599807, 1391741.8849745132, 1395004.5759416756, 1398275.6156839589, 1401555.0103330384, 1404842.7660297283, 1408138.8889239302, 1411443.3851745839, 1414756.260949621, 1418077.522425916, 1421407.1757892384, 1424745.227234208, 1428091.6829642428, 1431446.549191516, 1434809.832136909, 1438181.5380299645, 1441561.6731088404, 1444950.2436202667, 1448347.2558194962, 1451752.715970263, 1455166.6303447345, 1458589.0052234712, 1462019.8468953783, 1465459.1616576654, 1468906.9558158002, 1472363.235683466, 1475828.0075825197, 1479301.277842947, 1482783.0528028212, 1486273.3388082627, 1489772.1422133935, 1493279.4693802968, 1496795.3266789766, 1500319.7204873157, 1503852.6571910337, 1507394.14318365, 1510944.1848664382, 1514502.7886483893, 1518069.960946172, 1521645.7081840904, 1525230.0367940464, 1528822.953215502, 1532424.4638954368, 1536034.5752883116, 1539653.2938560292, 1543280.6260678968, 1546916.5784005867, 1550561.1573381014, 1554214.3693717318, 1557876.2210000234, 1561546.718728738, 1565225.8690708159, 1568913.6785463407, 1572610.1536825036, 1576315.3010135647, 1580029.127080819, 1583751.6384325593, 1587482.8416240423, 1591222.7432174508, 1594971.3497818636, 1598728.6678932142, 1602494.70413426, 1606269.4650945477, 1610052.9573703778, 1613845.187564771, 1617646.1622874353, 1621455.8881547314, 1625274.371789639, 1629101.6198217242, 1632937.6388871067, 1636782.4356284253, 1640636.0166948095, 1644498.388741842, 1648369.5584315283, 1652249.5324322656, 1656138.3174188107, 1660035.9200722463, 1663942.3470799546, 1667857.6051355794, 1671781.7009389992, 1675714.641196295, 1679656.432619721, 1683607.0819276704, 1687566.5958446509, 1691534.9811012489, 1695512.2444341022, 1699498.3925858699, 1703493.432305202, 1707497.37034671, 1711510.2134709407, 1715531.9684443418, 1719562.6420392366, 1723602.2410337934, 1727650.772211999, 1731708.2423636266, 1735774.6582842132, 1739850.0267750253, 1743934.3546430347, 1748027.6487008897, 1752129.9157668874, 1756241.1626649452, 1760361.3962245781, 1764490.623280865, 1768628.8506744246, 1772776.0852513907, 1776932.333863382, 1781097.6033674774, 1785271.9006261907, 1789455.2325074417, 1793647.6058845317, 1797849.0276361168, 1802059.5046461846, 1806279.0438040236, 1810507.6520042047, 1814745.3361465489, 1818992.1031361062, 1823247.9598831302, 1827512.9133030511, 1831786.9703164534, 1836070.137849051, 1840362.4228316613, 1844663.8322001805, 1848974.372895563, 1853294.051863793, 1857622.8760558618, 1861960.8524277485, 1866307.9879403892, 1870664.2895596572, 1875029.76425634, 1879404.4190061155, 1883788.2607895278, 1888181.296591967, 1892583.5334036432, 1896994.978219565, 1901415.6380395174, 1905845.5198680388, 1910284.6307143986, 1914732.977592577, 1919190.567521239, 1923657.407523715, 1928133.5046279796, 1932618.8658666275, 1937113.4982768532, 1941617.4089004323, 1946130.6047836943, 1950653.0929775056, 1955184.8805372468, 1959725.9745227934, 1964276.3819984917, 1968836.110033143, 1973405.1656999777, 1977983.5560766375, 1982571.2882451545, 1987168.3692919316, 1991774.8063077203, 1996390.6063876043, 2001015.776630975, 2005650.3241415152, 2010294.256027177, 2014947.5794001638, 2019610.3013769088, 2024282.4290780604, 2028963.969628456, 2033654.930157107, 2038355.3177971793, 2043065.1396859738, 2047784.4029649068, 2052513.114779494, 2057251.282279328, 2061998.912618062, 2066756.0129533906, 2071522.590447032, 2076298.6522647084, 2081084.2055761318, 2085879.257554979, 2090683.8153788806, 2095497.886229397, 2100321.477292006, 2105154.5957560814, 2109997.248814879, 2114849.443665514, 2119711.1875089477, 2124582.4875499685, 2129463.350997176, 2134353.7850629603, 2139253.796963492, 2144163.3939186977, 2149082.583152247, 2154011.371891535, 2158949.7673676657, 2163897.776815434, 2168855.4074733146, 2173822.666583438, 2178799.5613915785, 2183786.0991471373, 2188782.2871031268, 2193788.132516153, 2198803.6426464026, 2203828.8247576235, 2208863.6861171103, 2213908.233995689, 2218962.475667702, 2224026.4184109904, 2229100.0695068827, 2234183.436240173, 2239276.5258991118, 2244379.3457753872, 2249491.9031641106, 2254614.205363802, 2259746.2596763764, 2264888.073407125, 2270039.653864705, 2275201.0083611202, 2280372.144211711, 2285553.068735134, 2290743.7892533555, 2295944.31309163, 2301154.64757849, 2306374.800045727, 2311604.777828383, 2316844.588264731, 2322094.238696269, 2327353.7364676967, 2332623.088926904, 2337902.303424963, 2343191.387316105, 2348490.3479577163, 2353799.1927103186, 2359117.9289375553, 2364446.5640061805, 2369785.105286045, 2375133.5601500818, 2380491.9359742915, 2385860.2401377372, 2391238.4800225203, 2396626.6630137726, 2402024.796499644, 2407432.8878712896, 2412850.944522853, 2418278.9738514614, 2423716.9832572024, 2429164.9801431196, 2434622.9719151957, 2440090.965982342, 2445568.9697563853, 2451056.990652057, 2456555.0360869756, 2462063.1134816404, 2467581.2302594166, 2473109.393846523, 2478647.611672018, 2484195.891167796, 2489754.2397685633, 2495322.664911833, 2500901.1740379157, 2506489.774589899, 2512088.4740136443, 2517697.279757772, 2523316.199273648, 2528945.2400153754, 2534584.40943978, 2540233.7150063985, 2545893.1641774736, 2551562.7644179347, 2557242.52319539, 2562932.4479801143, 2568632.546245041, 2574342.8254657444, 2580063.29312044, 2585793.956689959, 2591534.823657748, 2597285.9015098545, 2603047.1977349157, 2608818.719824148, 2614600.47527134, 2620392.4715728345, 2626194.716227523, 2632007.2167368354, 2637829.980604725, 2643663.0153376632, 2649506.3284446285, 2655359.927437092, 2661223.81982901, 2667098.0131368143, 2672982.514879401, 2678877.332578119, 2684782.4737567645, 2690697.9459415656, 2696623.7566611744, 2702559.913446658, 2708506.423831487, 2714463.2953515267, 2720430.535545028, 2726408.1519526145, 2732396.1521172775, 2738394.543584361, 2744403.333901556, 2750422.5306188907, 2756452.1412887187, 2762492.1734657115, 2768542.6347068483, 2774603.5325714056, 2780674.8746209512, 2786756.6684193285, 2792848.9215326584, 2798951.6415293175, 2805064.8359799352, 2811188.512457385, 2817322.678536775, 2823467.341795435, 2829622.5098129166, 2835788.1901709735, 2841964.3904535584, 2848151.1182468142, 2854348.381139064, 2860556.1867208006, 2866774.5425846847, 2873003.456325527, 2879242.935540284, 2885492.9878280507, 2891753.62079005, 2898024.842029624, 2904306.6591522284, 2910599.07976542, 2916902.111478851, 2923215.7619042587, 2929540.03865546, 2935874.94934834, 2942220.501600846, 2948576.70303298, 2954943.561266787, 2961321.083926348, 2967709.2786377757, 2974108.153029201, 2980517.7147307713, 2986937.9713746347, 2993368.9305949383, 2999810.6000278187, 3006262.987311392, 3012726.100085747, 3019199.945992944, 3025684.5326769934, 3032179.8677838612, 3038685.958961452, 3045202.813859608, 3051730.440130096, 3058268.845426607, 3064818.0374047398, 3071378.023722, 3077948.812037788, 3084530.410013397, 3091122.8253120002, 3097726.065598648, 3104340.1385402577, 3110965.0518056066, 3117600.8130653244, 3124247.4299918883, 3130904.910259612, 3137573.2615446453, 3144252.491524958, 3150942.6078803404, 3157643.6182923904, 3164355.530444511, 3171078.352021901, 3177812.09071155, 3184556.7542022294, 3191312.350184485, 3198078.8863506317, 3204856.370394748, 3211644.810012665, 3218444.2129019666, 3225254.586761974, 3232075.939293744, 3238908.2782000634, 3245751.6111854403, 3252605.945956095, 3259471.2902199626, 3266347.6516866744, 3273235.038067558, 3280133.457075633, 3287042.916425598, 3293963.423833828, 3300894.987018372, 3307837.6136989375, 3314791.3115968904, 3321756.0884352475, 3328731.9519386706, 3335718.909833457, 3342716.96984754, 3349726.1397104757, 3356746.427153441, 3363777.839909225, 3370820.3857122255, 3377874.072298438, 3384938.9074054607, 3392014.898772474, 3399102.0541402427, 3406200.3812511107, 3413309.8878489905, 3420430.5816793647, 3427562.4704892696, 3434705.5620272984, 3441859.864043591, 3449025.3842898295, 3456202.1305192304, 3463390.1104865437, 3470589.331948042, 3477799.802661517, 3485021.530386274, 3492254.5228831246, 3499498.7879143828, 3506754.333243862, 3514021.166636861, 3521299.295860168, 3528588.728682049, 3535889.4728722437, 3543201.536201961, 3550524.9264438744, 3557859.6513721137, 3565205.7187622604, 3572563.1363913445, 3579931.9120378355, 3587312.053481641, 3594703.5685041007, 3602106.4648879766, 3609520.7504174532, 3616946.43287813, 3624383.520057015, 3631832.019742523, 3639291.939724467, 3646763.2877940554, 3654246.0717438846, 3661740.2993679363, 3669245.9784615696, 3676763.1168215186, 3684291.722245888, 3691831.802534144, 3699383.365487113, 3706946.418906975, 3714520.9705972583, 3722107.0283628353, 3729704.6000099215, 3737313.6933460617, 3744934.316180132, 3752566.476322333, 3760210.181584185, 3767865.4397785226, 3775532.2587194936, 3783210.6462225486, 3790900.610104438, 3798602.1581832096, 3806315.2982782032, 3814040.0382100428, 3821776.385800638, 3829524.3488731724, 3837283.935252103, 3845055.152763157, 3852838.0092333215, 3860632.5124908434, 3868438.6703652292, 3876256.4906872287, 3884085.9812888396, 3891927.1500033005, 3899780.004665086, 3907644.553109903, 3915520.8031746866, 3923408.762697596, 3931308.4395180065, 3939219.841476509, 3947142.9764149045, 3955077.8521761983, 3963024.4766046023, 3970982.8575455206, 3978953.0028455514, 3986934.920352482, 3994928.617915283, 4002934.103384105, 4010951.384610279, 4018980.4694463033, 4027021.3657458443, 4035074.081363732, 4043138.6241559577, 4051215.001979664, 4059303.222693151, 4067403.294155861, 4075515.2242283793, 4083639.0207724324, 4091774.6916508805, 4099922.244727713, 4108081.6878680517 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=71.12$", "textposition": "top center", "type": "scatter", "x": [ 71.12376830681889 ], "y": [ 705180.5956398706 ] }, { "name": "Total Power - 200000.0kN", "type": "scatter", "x": [ 65.98288741926626, 66.11703868311083, 66.25118994695542, 66.3853412108, 66.51949247464458, 66.65364373848915, 66.78779500233374, 66.92194626617831, 67.0560975300229, 67.19024879386747, 67.32440005771204, 67.45855132155663, 67.5927025854012, 67.72685384924578, 67.86100511309036, 67.99515637693494, 68.12930764077952, 68.26345890462409, 68.39761016846867, 68.53176143231325, 68.66591269615783, 68.8000639600024, 68.93421522384699, 69.06836648769156, 69.20251775153613, 69.33666901538072, 69.4708202792253, 69.60497154306988, 69.73912280691445, 69.87327407075904, 70.00742533460361, 70.1415765984482, 70.27572786229277, 70.40987912613734, 70.54403038998193, 70.6781816538265, 70.81233291767109, 70.94648418151566, 71.08063544536024, 71.21478670920482, 71.3489379730494, 71.48308923689397, 71.61724050073855, 71.75139176458313, 71.8855430284277, 72.01969429227229, 72.15384555611686, 72.28799681996145, 72.42214808380602, 72.5562993476506, 72.69045061149518, 72.82460187533975, 72.95875313918434, 73.09290440302891, 73.2270556668735, 73.36120693071807, 73.49535819456264, 73.62950945840723, 73.7636607222518, 73.89781198609639, 74.03196324994096, 74.16611451378554, 74.30026577763012, 74.43441704147469, 74.56856830531927, 74.70271956916386, 74.83687083300843, 74.971022096853, 75.10517336069759, 75.23932462454216, 75.37347588838675, 75.50762715223132, 75.64177841607591, 75.77592967992048, 75.91008094376505, 76.04423220760964, 76.17838347145421, 76.3125347352988, 76.44668599914337, 76.58083726298796, 76.71498852683253, 76.8491397906771, 76.98329105452169, 77.11744231836626, 77.25159358221084, 77.38574484605542, 77.5198961099, 77.65404737374458, 77.78819863758915, 77.92234990143373, 78.0565011652783, 78.19065242912289, 78.32480369296746, 78.45895495681205, 78.59310622065662, 78.7272574845012, 78.86140874834578, 78.99556001219037, 79.12971127603494, 79.26386253987951, 79.3980138037241, 79.53216506756867, 79.66631633141326, 79.80046759525783, 79.93461885910241, 80.06877012294699, 80.20292138679156, 80.33707265063614, 80.47122391448072, 80.6053751783253, 80.73952644216988, 80.87367770601446, 81.00782896985903, 81.1419802337036, 81.27613149754819, 81.41028276139276, 81.54443402523735, 81.67858528908192, 81.81273655292651, 81.94688781677108, 82.08103908061565, 82.21519034446024, 82.34934160830483, 82.4834928721494, 82.61764413599397, 82.75179539983856, 82.88594666368313, 83.0200979275277, 83.15424919137229, 83.28840045521687, 83.42255171906145, 83.55670298290602, 83.6908542467506, 83.82500551059518, 83.95915677443975, 84.09330803828433, 84.22745930212892, 84.36161056597349, 84.49576182981806, 84.62991309366265, 84.76406435750722, 84.89821562135181, 85.03236688519638, 85.16651814904097, 85.30066941288554, 85.43482067673011, 85.5689719405747, 85.70312320441927, 85.83727446826386, 85.97142573210843, 86.10557699595302, 86.23972825979759, 86.37387952364216, 86.50803078748675, 86.64218205133133, 86.7763333151759, 86.91048457902048, 87.04463584286506, 87.17878710670963, 87.3129383705542, 87.4470896343988, 87.58124089824338, 87.71539216208795, 87.84954342593252, 87.98369468977711, 88.11784595362168, 88.25199721746625, 88.38614848131084, 88.52029974515543, 88.654451009, 88.78860227284457, 88.92275353668916, 89.05690480053373, 89.19105606437832, 89.32520732822289, 89.45935859206747, 89.59350985591205, 89.72766111975662, 89.8618123836012, 89.99596364744578, 90.13011491129036, 90.26426617513494, 90.39841743897952, 90.5325687028241, 90.66671996666867, 90.80087123051325, 90.93502249435784, 91.06917375820241, 91.20332502204698, 91.33747628589157, 91.47162754973614, 91.60577881358071, 91.7399300774253, 91.87408134126989, 92.00823260511446, 92.14238386895903, 92.27653513280362, 92.41068639664819, 92.54483766049276, 92.67898892433735, 92.81314018818193, 92.9472914520265, 93.08144271587108, 93.21559397971566, 93.34974524356024, 93.48389650740482, 93.6180477712494, 93.75219903509398, 93.88635029893855, 94.02050156278312, 94.15465282662771, 94.28880409047228, 94.42295535431687, 94.55710661816144, 94.69125788200603, 94.8254091458506, 94.95956040969517, 95.09371167353976, 95.22786293738434, 95.36201420122892, 95.49616546507349, 95.63031672891807, 95.76446799276265, 95.89861925660722, 96.0327705204518, 96.16692178429639, 96.30107304814096, 96.43522431198554, 96.56937557583012, 96.7035268396747, 96.83767810351927, 96.97182936736385, 97.10598063120844, 97.24013189505301, 97.37428315889758, 97.50843442274217, 97.64258568658674, 97.77673695043133, 97.9108882142759, 98.04503947812049, 98.17919074196506, 98.31334200580963, 98.44749326965422, 98.5816445334988, 98.71579579734338, 98.84994706118795, 98.98409832503253, 99.1182495888771, 99.25240085272168, 99.38655211656626, 99.52070338041085, 99.65485464425542, 99.7890059081, 99.92315717194458, 100.05730843578915, 100.19145969963373, 100.32561096347831, 100.4597622273229, 100.59391349116747, 100.72806475501204, 100.86221601885663, 100.9963672827012, 101.13051854654577, 101.26466981039036, 101.39882107423495, 101.53297233807952, 101.66712360192409, 101.80127486576868, 101.93542612961325, 102.06957739345782, 102.2037286573024, 102.33787992114699, 102.47203118499156, 102.60618244883614, 102.74033371268072, 102.87448497652531, 103.00863624036988, 103.14278750421445, 103.27693876805904, 103.41109003190361, 103.54524129574818, 103.67939255959277, 103.81354382343736, 103.94769508728193, 104.0818463511265, 104.21599761497109, 104.35014887881566, 104.48430014266023, 104.61845140650482, 104.7526026703494, 104.88675393419398, 105.02090519803855, 105.15505646188313, 105.2892077257277, 105.42335898957228, 105.55751025341686, 105.69166151726145, 105.82581278110602, 105.9599640449506, 106.09411530879518, 106.22826657263975, 106.36241783648433, 106.49656910032891, 106.6307203641735, 106.76487162801807, 106.89902289186264, 107.03317415570723, 107.16732541955182, 107.30147668339639, 107.43562794724096, 107.56977921108555, 107.70393047493012, 107.83808173877469, 107.97223300261928, 108.10638426646386, 108.24053553030843, 108.374686794153, 108.5088380579976, 108.64298932184217, 108.77714058568674, 108.91129184953132, 109.04544311337591, 109.17959437722048, 109.31374564106505, 109.44789690490964, 109.58204816875421, 109.71619943259878, 109.85035069644337, 109.98450196028796, 110.11865322413253, 110.2528044879771, 110.38695575182169, 110.52110701566626, 110.65525827951083, 110.78940954335542, 110.9235608072, 111.05771207104458, 111.19186333488915, 111.32601459873374, 111.46016586257832, 111.5943171264229, 111.72846839026747, 111.86261965411205, 111.99677091795662, 112.1309221818012, 112.26507344564578, 112.39922470949037, 112.53337597333494, 112.66752723717951, 112.8016785010241, 112.93582976486867, 113.06998102871324, 113.20413229255783, 113.33828355640242, 113.47243482024699, 113.60658608409156, 113.74073734793615, 113.87488861178072, 114.00903987562529, 114.14319113946988, 114.27734240331446, 114.41149366715904, 114.54564493100361, 114.6797961948482, 114.81394745869277, 114.94809872253734, 115.08224998638192, 115.21640125022651, 115.35055251407108, 115.48470377791566, 115.61885504176024, 115.75300630560483, 115.8871575694494, 116.02130883329397, 116.15546009713856, 116.28961136098313, 116.4237626248277, 116.55791388867229, 116.69206515251688, 116.82621641636145, 116.96036768020602, 117.0945189440506, 117.22867020789518, 117.36282147173975, 117.49697273558434, 117.63112399942892, 117.7652752632735, 117.89942652711807, 118.03357779096265, 118.16772905480722, 118.3018803186518, 118.43603158249638, 118.57018284634097, 118.70433411018554, 118.83848537403011, 118.9726366378747, 119.10678790171927, 119.24093916556384, 119.37509042940843, 119.50924169325302, 119.64339295709759, 119.77754422094216, 119.91169548478675, 120.04584674863133, 120.1799980124759, 120.31414927632048, 120.44830054016506, 120.58245180400964, 120.71660306785421, 120.8507543316988, 120.98490559554338, 121.11905685938795, 121.25320812323253, 121.38735938707711, 121.52151065092168, 121.65566191476626, 121.78981317861084, 121.92396444245543, 122.0581157063, 122.19226697014457, 122.32641823398916, 122.46056949783373, 122.5947207616783, 122.72887202552289, 122.86302328936748, 122.99717455321205, 123.13132581705662, 123.2654770809012, 123.39962834474578, 123.53377960859035, 123.66793087243494, 123.80208213627952, 123.9362334001241, 124.07038466396867, 124.20453592781325, 124.33868719165784, 124.47283845550241, 124.60698971934698, 124.74114098319157, 124.87529224703614, 125.00944351088071, 125.1435947747253, 125.27774603856989, 125.41189730241446, 125.54604856625903, 125.68019983010362, 125.81435109394819, 125.94850235779276, 126.08265362163735, 126.21680488548193, 126.3509561493265, 126.48510741317108, 126.61925867701567, 126.75340994086024, 126.88756120470481, 127.0217124685494, 127.15586373239398, 127.29001499623855, 127.42416626008313, 127.55831752392771, 127.69246878777228, 127.82662005161686, 127.96077131546144, 128.09492257930603, 128.22907384315062, 128.36322510699517, 128.49737637083976, 128.63152763468435, 128.7656788985289, 128.8998301623735, 129.03398142621808, 129.16813269006263, 129.30228395390722, 129.4364352177518, 129.5705864815964, 129.70473774544098, 129.83888900928554, 129.97304027313012, 130.1071915369747, 130.24134280081927, 130.37549406466385, 130.50964532850844, 130.643796592353, 130.77794785619758, 130.91209912004217, 131.04625038388673, 131.18040164773134, 131.3145529115759, 131.4487041754205, 131.58285543926507, 131.71700670310963, 131.85115796695422, 131.9853092307988, 132.11946049464336, 132.25361175848795, 132.38776302233254, 132.5219142861771, 132.65606555002168, 132.79021681386627, 132.92436807771082, 133.05851934155544, 133.1926706054, 133.32682186924458, 133.46097313308917, 133.59512439693373, 133.7292756607783, 133.8634269246229, 133.99757818846746, 134.13172945231204, 134.26588071615663, 134.4000319800012, 134.5341832438458, 134.66833450769036, 134.80248577153492, 134.93663703537953, 135.0707882992241, 135.20493956306868, 135.33909082691326, 135.47324209075782, 135.6073933546024, 135.741544618447, 135.87569588229155, 136.00984714613614, 136.14399840998072, 136.27814967382528, 136.4123009376699, 136.54645220151446, 136.68060346535904, 136.81475472920363, 136.9489059930482, 137.08305725689277, 137.21720852073736, 137.35135978458192, 137.4855110484265, 137.6196623122711, 137.75381357611565, 137.88796483996023, 138.02211610380482, 138.15626736764938, 138.290418631494, 138.42456989533855, 138.55872115918314, 138.69287242302772, 138.82702368687228, 138.96117495071687, 139.09532621456145, 139.229477478406, 139.3636287422506, 139.49778000609518, 139.63193126993974, 139.76608253378436, 139.9002337976289, 140.0343850614735, 140.1685363253181, 140.30268758916264, 140.43683885300723, 140.57099011685182, 140.70514138069638, 140.83929264454096, 140.97344390838555, 141.1075951722301, 141.2417464360747, 141.37589769991928, 141.51004896376384, 141.64420022760845, 141.778351491453, 141.9125027552976, 142.04665401914218, 142.18080528298674, 142.31495654683133, 142.4491078106759, 142.58325907452047, 142.71741033836506, 142.85156160220964, 142.9857128660542, 143.11986412989882, 143.25401539374337, 143.38816665758793, 143.52231792143255, 143.6564691852771, 143.7906204491217, 143.92477171296628, 144.05892297681083, 144.19307424065542, 144.3272255045, 144.46137676834456, 144.59552803218915, 144.72967929603374, 144.8638305598783, 144.9979818237229, 145.13213308756747, 145.26628435141205, 145.40043561525664, 145.5345868791012, 145.66873814294578, 145.80288940679037, 145.93704067063493, 146.07119193447951, 146.2053431983241, 146.33949446216866, 146.47364572601325, 146.60779698985783, 146.7419482537024, 146.876099517547, 147.01025078139156, 147.14440204523615, 147.27855330908073, 147.4127045729253, 147.54685583676988, 147.68100710061447, 147.81515836445902, 147.9493096283036, 148.0834608921482, 148.21761215599275, 148.35176341983737, 148.48591468368193, 148.6200659475265, 148.7542172113711, 148.88836847521566, 149.02251973906024, 149.15667100290483, 149.2908222667494, 149.42497353059397, 149.55912479443856, 149.69327605828312, 149.8274273221277, 149.9615785859723, 150.09572984981685, 150.22988111366146, 150.36403237750602, 150.4981836413506, 150.6323349051952, 150.76648616903975, 150.90063743288434, 151.03478869672892, 151.16893996057348, 151.30309122441807, 151.43724248826265, 151.5713937521072, 151.70554501595183, 151.83969627979639, 151.97384754364094, 152.10799880748556, 152.24215007133012, 152.3763013351747, 152.5104525990193, 152.64460386286385, 152.77875512670843, 152.91290639055302, 153.04705765439758, 153.18120891824216, 153.31536018208675, 153.4495114459313, 153.58366270977592, 153.71781397362048, 153.85196523746507, 153.98611650130965, 154.1202677651542, 154.2544190289988, 154.38857029284338, 154.52272155668794, 154.65687282053253, 154.7910240843771, 154.92517534822167, 155.05932661206626, 155.19347787591084, 155.3276291397554, 155.46178040360002, 155.59593166744457, 155.73008293128916, 155.86423419513375, 155.9983854589783, 156.1325367228229, 156.26668798666748, 156.40083925051204, 156.53499051435662, 156.6691417782012, 156.80329304204577, 156.93744430589038, 157.07159556973494, 157.20574683357952, 157.3398980974241, 157.47404936126867, 157.60820062511326, 157.74235188895784, 157.8765031528024, 158.010654416647, 158.14480568049157, 158.27895694433613, 158.41310820818072, 158.5472594720253, 158.68141073586986, 158.81556199971448, 158.94971326355903, 159.08386452740362, 159.2180157912482, 159.35216705509276, 159.48631831893735, 159.62046958278194, 159.7546208466265, 159.88877211047108, 160.02292337431567, 160.15707463816022, 160.29122590200484, 160.4253771658494, 160.55952842969396, 160.69367969353857, 160.82783095738313, 160.96198222122771, 161.0961334850723, 161.23028474891686, 161.36443601276144, 161.49858727660603, 161.6327385404506, 161.76688980429518, 161.90104106813976, 162.03519233198432, 162.16934359582893, 162.3034948596735, 162.43764612351808, 162.57179738736266, 162.70594865120722, 162.8400999150518, 162.9742511788964, 163.10840244274095, 163.24255370658554, 163.37670497043013, 163.51085623427468, 163.64500749811927, 163.77915876196386, 163.9133100258084, 164.04746128965303, 164.1816125534976, 164.31576381734217, 164.44991508118676, 164.58406634503132, 164.7182176088759, 164.8523688727205, 164.98652013656505, 165.12067140040963, 165.25482266425422, 165.38897392809878, 165.5231251919434, 165.65727645578795, 165.79142771963254, 165.92557898347712, 166.05973024732168, 166.19388151116627, 166.32803277501085, 166.4621840388554, 166.5963353027, 166.73048656654458, 166.86463783038914, 166.99878909423373, 167.13294035807832, 167.26709162192287, 167.4012428857675, 167.53539414961205, 167.66954541345663, 167.80369667730122, 167.93784794114578, 168.07199920499036, 168.20615046883495, 168.3403017326795, 168.4744529965241, 168.60860426036868, 168.74275552421324, 168.87690678805785, 169.0110580519024, 169.14520931574697, 169.27936057959158, 169.41351184343614, 169.54766310728073, 169.6818143711253, 169.81596563496987, 169.95011689881446, 170.08426816265904, 170.2184194265036, 170.3525706903482, 170.48672195419277, 170.62087321803733, 170.75502448188195, 170.8891757457265, 171.0233270095711, 171.15747827341568, 171.29162953726023, 171.42578080110482, 171.5599320649494, 171.69408332879397, 171.82823459263855, 171.96238585648314, 172.0965371203277, 172.23068838417228, 172.36483964801687, 172.49899091186143, 172.63314217570604, 172.7672934395506, 172.90144470339519, 173.03559596723977, 173.16974723108433, 173.30389849492892, 173.4380497587735, 173.57220102261806, 173.70635228646265, 173.84050355030723, 173.9746548141518, 174.1088060779964, 174.24295734184096, 174.37710860568555, 174.51125986953014, 174.6454111333747, 174.77956239721928, 174.91371366106387, 175.04786492490842, 175.182016188753, 175.3161674525976, 175.45031871644215, 175.58446998028674, 175.71862124413133, 175.85277250797589, 175.9869237718205, 176.12107503566506, 176.25522629950964, 176.38937756335423, 176.5235288271988, 176.65768009104337, 176.79183135488796, 176.92598261873252, 177.0601338825771, 177.1942851464217, 177.32843641026625, 177.46258767411086, 177.59673893795542, 177.73089020179998, 177.8650414656446, 177.99919272948915, 178.13334399333374, 178.26749525717833, 178.40164652102288, 178.53579778486747, 178.66994904871206, 178.8041003125566, 178.9382515764012, 179.0724028402458, 179.20655410409034, 179.34070536793496, 179.47485663177952, 179.6090078956241, 179.7431591594687, 179.87731042331325, 180.01146168715783, 180.14561295100242, 180.27976421484698, 180.41391547869156, 180.54806674253615, 180.6822180063807, 180.8163692702253, 180.95052053406988, 181.08467179791444, 181.21882306175905, 181.3529743256036, 181.4871255894482, 181.62127685329278, 181.75542811713734, 181.88957938098193, 182.02373064482651, 182.15788190867107, 182.29203317251566, 182.42618443636024, 182.5603357002048, 182.69448696404942, 182.82863822789398, 182.96278949173856, 183.09694075558315, 183.2310920194277, 183.3652432832723, 183.49939454711688, 183.63354581096144, 183.76769707480602, 183.9018483386506, 184.03599960249517, 184.17015086633975, 184.30430213018434, 184.4384533940289, 184.5726046578735, 184.70675592171807, 184.84090718556266, 184.97505844940724, 185.1092097132518, 185.2433609770964, 185.37751224094097, 185.51166350478553, 185.64581476863012, 185.7799660324747, 185.91411729631926, 186.04826856016388, 186.18241982400843, 186.316571087853, 186.4507223516976, 186.58487361554216, 186.71902487938675, 186.85317614323134, 186.9873274070759, 187.12147867092048, 187.25562993476507, 187.38978119860963, 187.5239324624542, 187.6580837262988, 187.79223499014336, 187.92638625398797, 188.06053751783253, 188.19468878167712, 188.3288400455217, 188.46299130936626, 188.59714257321085, 188.73129383705543, 188.8654451009, 188.99959636474458, 189.13374762858916, 189.26789889243372, 189.4020501562783, 189.5362014201229, 189.67035268396745, 189.80450394781207, 189.93865521165662, 190.0728064755012, 190.2069577393458, 190.34110900319035, 190.47526026703494, 190.60941153087953, 190.74356279472408, 190.87771405856867, 191.01186532241326, 191.14601658625782, 191.28016785010243, 191.414319113947, 191.54847037779157, 191.68262164163616, 191.81677290548072, 191.9509241693253, 192.0850754331699, 192.21922669701445, 192.35337796085904, 192.48752922470362, 192.62168048854818, 192.75583175239277, 192.88998301623735, 193.0241342800819, 193.15828554392652, 193.29243680777108, 193.42658807161567, 193.56073933546026, 193.6948905993048, 193.8290418631494, 193.96319312699399, 194.09734439083854, 194.23149565468313, 194.36564691852772, 194.4997981823723, 194.63394944621686, 194.76810071006145, 194.90225197390603, 195.0364032377506, 195.17055450159518, 195.30470576543976, 195.43885702928435, 195.5730082931289, 195.7071595569735, 195.84131082081808, 195.97546208466264, 196.10961334850722, 196.2437646123518, 196.3779158761964, 196.51206714004095, 196.64621840388554, 196.78036966773013, 196.9145209315747, 197.04867219541927, 197.18282345926386, 197.31697472310844, 197.451125986953, 197.5852772507976, 197.71942851464217, 197.85357977848676, 197.98773104233132, 198.1218823061759, 198.2560335700205, 198.39018483386505, 198.52433609770964, 198.65848736155422, 198.7926386253988, 198.92678988924337, 199.06094115308795, 199.19509241693254, 199.3292436807771, 199.46339494462168, 199.59754620846627, 199.73169747231086, 199.8658487361554, 200 ], "y": [ 1031532.4733211963, 1030585.4207032628, 1029649.1857653998, 1028723.7312322726, 1027809.0201865002, 1026905.0160650536, 1026011.6826556968, 1025128.984093471, 1024256.88485722, 1023395.3497661594, 1022544.3439764843, 1021703.8329780191, 1020873.7825909071, 1020054.1589623378, 1019244.9285633159, 1018446.058185466, 1017657.514937876, 1016879.2662439782, 1016111.2798384656, 1015353.5237642473, 1014605.9663694352, 1013868.5763043708, 1013141.322518683, 1012424.1742583821, 1011717.1010629869, 1011020.0727626851, 1010333.0594755277, 1009656.0316046538, 1008988.9598355497, 1008331.8151333374, 1007684.5687400966, 1007047.1921722146, 1006419.6572177698, 1005801.9359339423, 1005194.0006444557, 1004595.8239370473, 1004007.3786609672, 1003428.6379245067, 1002859.575092552, 1002300.1637841697, 1001750.3778702157, 1001210.1914709723, 1000679.5789538139, 1000158.514930895, 999646.9742568675, 999144.9320266219, 998652.3635730541, 998169.2444648559, 997695.5505043331, 997231.2577252442, 996776.3423906649, 996330.780990877, 995894.550241278, 995467.6270803167, 995049.9886674487, 994641.6123811173, 994242.4758167531, 993852.5567847989, 993471.8333087534, 993100.2836232377, 992737.8861720829, 992384.6196064373, 992040.462782895, 991705.3947616448, 991379.3948046388, 991062.4423737808, 990754.5171291335, 990455.5989271465, 990165.6678189021, 989884.7040483799, 989612.6880507399, 989349.6004506256, 989095.4220604822, 988850.1338788944, 988613.7170889429, 988386.1530565757, 988167.4233289981, 987957.5096330807, 987756.3938737812, 987564.0581325858, 987380.4846659658, 987205.6559038492, 987039.5544481105, 986882.1630710748, 986733.4647140373, 986593.4424857993, 986462.0796612191, 986339.3596797766, 986225.2661441546, 986119.7828188338, 986022.8936287024, 985934.5826576799, 985854.8341473553, 985783.6324956393, 985720.96225543, 985666.8081332925, 985621.1549881516, 985583.9878299986, 985555.2918186106, 985535.0522622825, 985523.2546165728, 985519.8844830615, 985524.9276081208, 985538.3698816978, 985560.1973361099, 985590.3961448518, 985628.9526214155, 985675.8532181205, 985731.0845249576, 985794.6332684424, 985866.4863104814, 985946.6306472496, 986035.0534080783, 986131.7418543536, 986236.6833784283, 986349.8655025412, 986471.2758777499, 986600.9022828719, 986738.7326234381, 986884.754930655, 987038.9573603774, 987201.328192093, 987371.8558279133, 987550.5287915776, 987737.3357274655, 987932.2653996191, 988135.3066907739, 988346.4486014007, 988565.6802487553, 988792.9908659385, 989028.3698009639, 989271.8065158363, 989523.2905856374, 989782.8116976215, 990050.359650319, 990325.9243526487, 990609.4958230392, 990901.0641885581, 991200.6196840489, 991508.1526512777, 991823.6535380866, 992147.1128975556, 992478.5213871727, 992817.8697680116, 993165.1489039168, 993520.349760697, 993883.4634053262, 994254.481005151, 994633.3938271075, 995020.1932369426, 995414.8706984461, 995817.4177726868, 996227.8261172579, 996646.0874855283, 997072.1937259005, 997506.1367810774, 997947.908687333, 998397.5015737924, 998854.9076617172, 999320.1192637968, 999793.1287834492, 1000273.9287141233, 1000762.5116386131, 1001258.8702283736, 1001762.9972428458, 1002274.8855287873, 1002794.5280196073, 1003321.9177347106, 1003857.0477788448, 1004399.911341455, 1004950.5016960441, 1005508.8121995388, 1006074.8362916606, 1006648.5674943039, 1007229.9994109187, 1007819.1257258989, 1008415.940203977, 1009020.4366896225, 1009632.6091064473, 1010252.4514566154, 1010879.95782026, 1011515.1223549009, 1012157.9392948741, 1012808.4029507593, 1013466.5077088177, 1014132.248030433, 1014805.6184515563, 1015486.6135821573, 1016175.2281056806, 1016871.4567785051, 1017575.2944294093, 1018286.7359590423, 1019005.776339397, 1019732.4106132898, 1020466.6338938442, 1021208.4413639792, 1021957.8282759017, 1022714.7899506034, 1023479.3217773628, 1024251.4192132507, 1025031.0777826402, 1025818.2930767209, 1026613.0607530179, 1027415.3765349137, 1028225.2362111759, 1029042.6356354875, 1029867.5707259816, 1030700.0374647808, 1031540.0318975397, 1032387.5501329922, 1033242.5883425007, 1034105.1427596128, 1034975.2096796173, 1035852.7854591077, 1036737.8665155473, 1037630.4493268391, 1038530.5304308982, 1039438.1064252293, 1040353.1739665063, 1041275.7297701563, 1042205.7706099469, 1043143.2933175778, 1044088.2947822735, 1045040.7719503818, 1046000.7218249756, 1046968.1414654556, 1047943.0279871591, 1048925.3785609705, 1049915.190412936, 1050912.46082388, 1051917.1871290267, 1052929.366717623, 1053948.9970325665, 1054976.0755700336, 1056010.599879114, 1057052.5675614465, 1058101.9762708573, 1059158.823713003, 1060223.1076450143, 1061294.825875145, 1062373.976262422, 1063460.5567162992, 1064554.5651963146, 1065655.9997117473, 1066764.858321282, 1067881.139132673, 1069004.8403024105, 1070135.9600353925, 1071274.496584597, 1072420.4482507568, 1073573.8133820384, 1074734.5903737228, 1075902.777667889, 1077078.373753098, 1078261.3771640845, 1079451.7864814443, 1080649.6003313307, 1081854.8173851478, 1083067.4363592505, 1084287.4560146444, 1085514.8751566887, 1086749.6926348028, 1087991.9073421725, 1089241.518215461, 1090498.5242345212, 1091762.92442211, 1093034.7178436061, 1094313.9036067282, 1095600.4808612568, 1096894.448798758, 1098195.806652309, 1099504.5536962254, 1100820.689245793, 1102144.2126569983, 1103475.1233262639, 1104813.420690183, 1106159.104225261, 1107512.1734476527, 1108872.627912907, 1110240.46721571, 1111615.6909896324, 1112998.2989068779, 1114388.2906780322, 1115785.6660518171, 1117190.424814844, 1118602.5667913705, 1120022.0918430567, 1121448.9998687275, 1122883.290804133, 1124324.964621712, 1125774.021330357, 1127230.4609751832, 1128694.2836372957, 1130165.4894335603, 1131644.0785163771, 1133130.0510734539, 1134623.4073275817, 1136124.1475364133, 1137632.2719922422, 1139147.781021784, 1140670.6749859576, 1142200.9542796714, 1143738.619331608, 1145283.6706040124, 1146836.10859248, 1148395.9338257494, 1149963.1468654932, 1151537.748306111, 1153119.738774527, 1154709.1189299864, 1156305.8894638517, 1157910.051099406, 1159521.6045916518, 1161140.5507271155, 1162766.890323651, 1164400.6242302458, 1166041.7533268281, 1167690.2785240766, 1169346.2007632288, 1171009.5210158944, 1172680.2402838669, 1174358.3595989388, 1176043.8800227162, 1177736.8026464377, 1179437.1285907913, 1181144.8590057339, 1182859.9950703145, 1184582.5379924935, 1186312.4890089692, 1188049.8493849998, 1189794.6204142333, 1191546.8034185325, 1193306.3997478033, 1195073.410779827, 1196847.8379200897, 1198629.6826016153, 1200418.9462847991, 1202215.630457243, 1204019.7366335914, 1205831.2663553683, 1207650.2211908158, 1209476.6027347338, 1211310.412608321, 1213151.652459016, 1215000.3239603415, 1216856.4288117473, 1218719.9687384563, 1220590.9454913097, 1222469.3608466173, 1224355.216606003, 1226248.5145962553, 1228149.2566691793, 1230057.4447014474, 1231973.0805944514, 1233896.1662741583, 1235826.7036909629, 1237764.6948195468, 1239710.1416587322, 1241663.0462313408, 1243623.4105840551, 1245591.2367872745, 1247566.526934979, 1249549.28314459, 1251539.507556834, 1253537.2023356054, 1255542.3696678323, 1257555.0117633417, 1259575.1308547258, 1261602.7291972102, 1263637.8090685233, 1265680.3727687637, 1267730.4226202723, 1269787.9609675023, 1271852.9901768926, 1273925.5126367402, 1276005.5307570735, 1278093.0469695288, 1280188.0637272242, 1282290.5835046368, 1284400.6087974804, 1286518.1421225828, 1288643.1860177666, 1290775.7430417268, 1292915.8157739132, 1295063.4068144113, 1297218.5187838248, 1299381.1543231579, 1301551.316093701, 1303729.0067769135, 1305914.229074311, 1308106.98570735, 1310307.2794173164, 1312515.1129652122, 1314730.4891316444, 1316953.4107167148, 1319183.8805399106, 1321421.9014399927, 1323667.4762748901, 1325920.6079215913, 1328181.2992760367, 1330449.553253012, 1332725.372786045, 1335008.7608272987, 1337299.7203474669, 1339598.254335672, 1341904.3657993618, 1344218.0577642082, 1346539.3332740038, 1348868.1953905635, 1351204.6471936232, 1353548.6917807404, 1355900.3322671957, 1358259.5717858956, 1360626.4134872742, 1363000.860539196, 1365382.9161268612, 1367772.583452709, 1370169.8657363232, 1372574.7662143381, 1374987.2881403451, 1377407.434784799, 1379835.209434926, 1382270.6153946328, 1384713.6559844138, 1387164.334541261, 1389622.6544185756, 1392088.6189860767, 1394562.2316297134, 1397043.495751576, 1399532.4147698095, 1402028.9921185253, 1404533.2312477152, 1407045.135623165, 1409564.7087263702, 1412091.954054451, 1414626.8751200663, 1417169.4754513314, 1419719.758591735, 1422277.7281000563, 1424843.3875502818, 1427416.7405315256, 1429997.7906479468, 1432586.541518669, 1435182.9967777017, 1437787.160073859, 1440399.0350706815, 1443018.6254463578, 1445645.9348936465, 1448280.9671197983, 1450923.7258464794, 1453574.214809694, 1456232.4377597102, 1458898.398460983, 1461572.1006920787, 1464253.548245602, 1466942.744928121, 1469639.6945600933, 1472344.4009757922, 1475056.8680232363, 1477777.0995641146, 1480505.0994737167, 1483240.8716408596, 1485984.419967819, 1488735.7483702563, 1491494.8607771506, 1494261.7611307276, 1497036.4533863927, 1499818.9415126597, 1502609.2294910825, 1505407.321316192, 1508213.2209954206, 1511026.932549042, 1513848.460010103, 1516677.8074243541, 1519514.9788501875, 1522359.9783585707, 1525212.8100329796, 1528073.477969338, 1530941.9862759486, 1533818.3390734324, 1536702.5404946655, 1539594.5946847142, 1542494.5058007725, 1545402.2780121032, 1548317.9154999712, 1551241.422457585, 1554172.803090038, 1557112.0616142391, 1560059.2022588642, 1563014.2292642868, 1565977.146882522, 1568947.959377169, 1571926.6710233486, 1574913.2861076463, 1577907.8089280569, 1580910.243793921, 1583920.5950258723, 1586938.8669557793, 1589965.0639266868, 1592999.190292761, 1596041.2504192358, 1599091.24868235, 1602149.1894693007, 1605215.0771781818, 1608288.9162179315, 1611370.7110082798, 1614460.4659796902, 1617558.185573309, 1620663.8742409125, 1623777.5364448512, 1626899.1766579978, 1630028.799363698, 1633166.4090557117, 1636312.0102381688, 1639465.6074255132, 1642627.2051424498, 1645796.8079239004, 1648974.420314945, 1652160.0468707772, 1655353.6921566527, 1658555.3607478389, 1661765.0572295638, 1664982.7861969725, 1668208.5522550717, 1671442.360018685, 1674684.2141124057, 1677934.1191705423, 1681192.079837081, 1684458.1007656287, 1687732.186619371, 1691014.3420710252, 1694304.5718027912, 1697602.8805063071, 1700909.272882604, 1704223.753642057, 1707546.3275043422, 1710876.9991983925, 1714215.7734623495, 1717562.6550435196, 1720917.6486983332, 1724280.7591922928, 1727651.9912999393, 1731031.3498047995, 1734418.8394993455, 1737814.465184955, 1741218.2316718628, 1744630.143779121, 1748050.206334558, 1751478.424174733, 1754914.8021448946, 1758359.3450989448, 1761812.0578993862, 1765272.9454172929, 1768742.0125322614, 1772219.264132372, 1775704.7051141523, 1779198.340382529, 1782700.1748507943, 1786210.213440565, 1789728.4610817395, 1793254.9227124618, 1796789.6032790826, 1800332.507736118, 1803883.6410462104, 1807443.0081800963, 1811010.6141165558, 1814586.4638423892, 1818170.5623523681, 1821762.9146492018, 1825363.5257435015, 1828972.40065374, 1832589.5444062152, 1836214.962035017, 1839848.6585819847, 1843490.639096675, 1847140.9086363274, 1850799.4722658189, 1854466.3350576407, 1858141.5020918571, 1861824.9784560637, 1865516.7692453652, 1869216.8795623295, 1872925.3145169572, 1876642.0792266498, 1880367.1788161695, 1884100.6184176079, 1887842.403170354, 1891592.538221057, 1895351.0287235929, 1899117.879839036, 1902893.0967356162, 1906676.6845886975, 1910468.648580735, 1914268.9939012472, 1918077.7257467853, 1921894.849320895, 1925720.3698340876, 1929554.292503812, 1933396.622554414, 1937247.3652171115, 1941106.5257299626, 1944974.1093378305, 1948850.121292355, 1952734.5668519244, 1956627.4512816346, 1960528.7798532736, 1964438.5578452775, 1968356.7905427064, 1972283.4832372162, 1976218.6412270232, 1980162.269816877, 1984114.374318034, 1988074.960048222, 1992044.0323316138, 1996021.596498801, 2000007.657886757, 2004002.2218388193, 2008005.2937046506, 2012016.8788402148, 2016036.9826077512, 2020065.6103757403, 2024102.7675188791, 2028148.4594180556, 2032202.6914603165, 2036265.4690388392, 2040336.7975529125, 2044416.682407898, 2048505.1290152099, 2052602.1427922894, 2056707.7291625692, 2060821.8935554577, 2064944.641406305, 2069075.9781563773, 2073215.909252835, 2077364.4401487012, 2081521.5763028376, 2085687.3231799216, 2089861.6862504147, 2094044.6709905416, 2098236.282882265, 2102436.5274132537, 2106645.4100768664, 2110862.9363721227, 2115089.111803673, 2119323.9418817842, 2123567.432122307, 2127819.588046651, 2132080.4151817686, 2136349.919060121, 2140628.1052196585, 2144914.9792037983, 2149210.5465613967, 2153514.8128467263, 2157827.7836194565, 2162149.4644446205, 2166479.860892605, 2170818.978539115, 2175166.822965156, 2179523.399757013, 2183888.714506223, 2188262.7728095525, 2192645.5802689814, 2197037.142491671, 2201437.465089947, 2205846.5536812786, 2210264.413888252, 2214691.0513385483, 2219126.4716649293, 2223570.6805052026, 2228023.683502212, 2232485.4863038096, 2236956.0945628337, 2241435.5139370924, 2245923.750089336, 2250420.8086872394, 2254926.695403383, 2259441.415915227, 2263964.9759050915, 2268497.38106014, 2273038.637072352, 2277588.7496385104, 2282147.7244601725, 2286715.5672436547, 2291292.283700015, 2295877.8795450255, 2300472.3604991552, 2305075.7322875564, 2309688.0006400337, 2314309.1712910314, 2318939.2499796157, 2323578.2424494475, 2328226.1544487695, 2332882.9917303864, 2337548.7600516384, 2342223.4651743947, 2346907.1128650224, 2351599.7088943734, 2356301.259037767, 2361011.769074966, 2365731.2447901624, 2370459.6919719568, 2375197.11641334, 2379943.523911675, 2384698.9202686814, 2389463.311290408, 2394236.702787228, 2399019.1005738126, 2403810.51046911, 2408610.938296339, 2413420.3898829594, 2418238.87106066, 2423066.3876653435, 2427902.945537103, 2432748.5505202073, 2437603.2084630867, 2442466.9252183093, 2447339.706642569, 2452221.558596669, 2457112.486945497, 2462012.497558021, 2466921.596307259, 2471839.789070273, 2476767.081728148, 2481703.4801659724, 2486648.990272827, 2491603.6179417674, 2496567.3690698044, 2501540.24955789, 2506522.265310902, 2511513.4222376286, 2516513.7262507463, 2521523.1832668157, 2526541.799206249, 2531569.579993313, 2536606.5315561, 2541652.6598265152, 2546707.9707402666, 2551772.4702368397, 2556846.164259492, 2561929.058755234, 2567021.1596748084, 2572122.472972684, 2577233.004607038, 2582352.760539734, 2587481.746736317, 2592619.969165993, 2597767.433801615, 2602924.146619669, 2608090.1136002606, 2613265.3407270936, 2618449.833987467, 2623643.599372251, 2628846.642875875, 2634058.9704963174, 2639280.588235085, 2644511.502097203, 2649751.718091203, 2655001.2422290985, 2660260.080526387, 2665528.239002021, 2670805.7236784026, 2676092.54058137, 2681388.695740179, 2686694.195187491, 2692009.0449593645, 2697333.2510952335, 2702666.8196378974, 2708009.7566335155, 2713362.068131575, 2718723.760184898, 2724094.83884962, 2729475.310185168, 2734865.1802542657, 2740264.4551229025, 2745673.1408603326, 2751091.243539059, 2756518.7692348184, 2761955.724026568, 2767402.1139964787, 2772857.9452299154, 2778323.2238154286, 2783797.9558447427, 2789282.147412737, 2794775.804617442, 2800278.933560022, 2805791.5403447626, 2811313.6310790624, 2816845.211873416, 2822386.288841403, 2827936.868099682, 2833496.9557679677, 2839066.557969028, 2844645.6808286696, 2850234.330475724, 2855832.513042037, 2861440.234662461, 2867057.501474833, 2872684.3196199764, 2878320.69524168, 2883966.6344866864, 2889622.1435046885, 2895287.228448311, 2900961.895473099, 2906646.1507375105, 2912340.000402905, 2918043.4506335263, 2923756.507596503, 2929479.1774618197, 2935211.4664023276, 2940953.3805937157, 2946704.926214507, 2952466.1094460515, 2958236.9364725067, 2964017.413480832, 2969807.546660779, 2975607.3422048786, 2981416.806308428, 2987235.9451694875, 2993064.764988863, 2998903.2719700956, 3004751.4723194595, 3010609.372245937, 3016476.9779612273, 3022354.295679717, 3028241.331618481, 3034138.091997273, 3040044.583038508, 3045960.8109672563, 3051886.782011239, 3057822.502400807, 3063767.978368937, 3069723.2161512263, 3075688.2219858672, 3081663.0021136594, 3087647.5627779844, 3093641.910224794, 3099646.0507026156, 3105659.9904625267, 3111683.7357581537, 3117717.2928456655, 3123760.6679837513, 3129813.8674336225, 3135876.8974590017, 3141949.7643261086, 3148032.4743036525, 3154125.033662829, 3160227.448677297, 3166339.7256231867, 3172461.870779076, 3178593.8904259885, 3184735.7908473862, 3190887.5783291515, 3197049.259159586, 3203220.8396294033, 3209402.326031712, 3215593.724662009, 3221795.041818179, 3228006.283800475, 3234227.4569115113, 3240458.567456265, 3246699.6217420497, 3252950.626078525, 3259211.5867776754, 3265482.510153805, 3271763.4025235334, 3278054.270205781, 3284355.1195217604, 3290665.956794977, 3296986.78835121, 3303317.6205185065, 3309658.4596271818, 3316009.3120097937, 3322370.1840011547, 3328741.081938309, 3335122.0121605285, 3341512.981009308, 3347913.9948283527, 3354325.05996357, 3360746.1827630694, 3367177.36957714, 3373618.626758256, 3380069.9606610634, 3386531.3776423708, 3393002.884061143, 3399484.4862784958, 3405976.1906576804, 3412478.003564086, 3418989.9313652245, 3425511.980430724, 3432044.157132326, 3438586.4678438716, 3445138.918941295, 3451701.5168026206, 3458274.26780795, 3464857.178339455, 3471450.2547813794, 3478053.503520012, 3484666.9309437005, 3491290.5434428356, 3497924.3474098323, 3504568.3492391454, 3511222.5553272422, 3517886.972072605, 3524561.605875724, 3531246.4631390865, 3537941.550267168, 3544646.873666435, 3551362.4397453256, 3558088.2549142498, 3564824.3255855837, 3571570.658173653, 3578327.259094739, 3585094.134767062, 3591871.291610777, 3598658.736047971, 3605456.474502649, 3612264.5134007316, 3619082.8591700494, 3625911.518240331, 3632750.497043201, 3639599.8020121725, 3646459.439582639, 3653329.4161918666, 3660209.7382789953, 3667100.4122850164, 3674001.444652785, 3680912.8418269986, 3687834.610254199, 3694766.756382763, 3701709.2866628943, 3708662.2075466197, 3715625.5254877843, 3722599.246942038, 3729583.378366836, 3736577.926221433, 3743582.8969668676, 3750598.297065969, 3757624.132983341, 3764660.4111853577, 3771707.1381401657, 3778764.320317663, 3785831.9641895024, 3792910.07622909, 3799998.662911565, 3807097.7307138043, 3814207.2861144166, 3821327.3355937307, 3828457.8856337904, 3835598.942718358, 3842750.5133328894, 3849912.60396455, 3857085.221102194, 3864268.37123636, 3871462.0608592764, 3878666.296464839, 3885881.0845486163, 3893106.431607844, 3900342.3441414125, 3907588.8286498664, 3914845.8916353947, 3922113.5396018326, 3929391.779054648, 3936680.616500936, 3943980.058449424, 3951290.1114104507, 3958610.781895972, 3965942.0764195486, 3973284.001496348, 3980636.563643131, 3987999.7693782486, 3995373.6252216427, 4002758.1376948315, 4010153.313320908, 4017559.158624537, 4024975.6801319476, 4032402.884370927, 4039840.7778708143, 4047289.3671624996, 4054748.658778417, 4062218.6592525356, 4069699.375120357, 4077190.812918915, 4084692.97918676, 4092205.880463962, 4099729.5232921015, 4107263.9142142707, 4114809.059775057, 4122364.966520547, 4129931.640998321, 4137509.089757445, 4145097.319348464, 4152696.3363233996, 4160306.1472357507, 4167926.758640477, 4175558.1770940004, 4183200.4091542033, 4190853.4613804165, 4198517.34033342, 4206192.052575431, 4213877.604670113 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=79.52$", "textposition": "top center", "type": "scatter", "x": [ 79.51879037499609 ], "y": [ 985519.8426653391 ] }, { "name": "Total Power - 240000.0kN", "type": "scatter", "x": [ 72.28063169771194, 72.40847891322974, 72.53632612874755, 72.66417334426535, 72.79202055978317, 72.91986777530097, 73.04771499081878, 73.17556220633658, 73.30340942185438, 73.43125663737219, 73.55910385289, 73.68695106840781, 73.81479828392561, 73.94264549944342, 74.07049271496122, 74.19833993047902, 74.32618714599684, 74.45403436151464, 74.58188157703245, 74.70972879255025, 74.83757600806805, 74.96542322358586, 75.09327043910366, 75.22111765462148, 75.34896487013928, 75.47681208565709, 75.60465930117489, 75.7325065166927, 75.8603537322105, 75.98820094772832, 76.11604816324612, 76.24389537876392, 76.37174259428173, 76.49958980979953, 76.62743702531733, 76.75528424083515, 76.88313145635296, 77.01097867187076, 77.13882588738856, 77.26667310290637, 77.39452031842417, 77.52236753394197, 77.65021474945979, 77.7780619649776, 77.9059091804954, 78.0337563960132, 78.161603611531, 78.28945082704881, 78.41729804256661, 78.54514525808443, 78.67299247360224, 78.80083968912004, 78.92868690463784, 79.05653412015565, 79.18438133567345, 79.31222855119127, 79.44007576670907, 79.56792298222688, 79.69577019774468, 79.82361741326248, 79.95146462878029, 80.0793118442981, 80.20715905981591, 80.33500627533371, 80.46285349085151, 80.59070070636932, 80.71854792188712, 80.84639513740493, 80.97424235292274, 81.10208956844055, 81.22993678395835, 81.35778399947615, 81.48563121499396, 81.61347843051176, 81.74132564602957, 81.86917286154738, 81.99702007706519, 82.12486729258299, 82.2527145081008, 82.3805617236186, 82.50840893913642, 82.63625615465422, 82.76410337017202, 82.89195058568983, 83.01979780120763, 83.14764501672543, 83.27549223224324, 83.40333944776106, 83.53118666327886, 83.65903387879666, 83.78688109431447, 83.91472830983227, 84.04257552535007, 84.17042274086788, 84.2982699563857, 84.4261171719035, 84.5539643874213, 84.6818116029391, 84.80965881845691, 84.93750603397473, 85.06535324949253, 85.19320046501034, 85.32104768052814, 85.44889489604594, 85.57674211156375, 85.70458932708155, 85.83243654259937, 85.96028375811717, 86.08813097363497, 86.21597818915278, 86.34382540467058, 86.47167262018839, 86.59951983570619, 86.72736705122401, 86.85521426674181, 86.98306148225961, 87.11090869777742, 87.23875591329522, 87.36660312881304, 87.49445034433084, 87.62229755984865, 87.75014477536645, 87.87799199088425, 88.00583920640206, 88.13368642191986, 88.26153363743768, 88.38938085295548, 88.51722806847329, 88.64507528399109, 88.7729224995089, 88.9007697150267, 89.0286169305445, 89.15646414606232, 89.28431136158012, 89.41215857709793, 89.54000579261573, 89.66785300813353, 89.79570022365135, 89.92354743916914, 90.05139465468696, 90.17924187020476, 90.30708908572257, 90.43493630124037, 90.56278351675817, 90.69063073227599, 90.8184779477938, 90.9463251633116, 91.0741723788294, 91.2020195943472, 91.32986680986501, 91.45771402538281, 91.58556124090063, 91.71340845641843, 91.84125567193624, 91.96910288745404, 92.09695010297185, 92.22479731848966, 92.35264453400745, 92.48049174952527, 92.60833896504307, 92.73618618056088, 92.86403339607868, 92.99188061159649, 93.1197278271143, 93.24757504263209, 93.37542225814991, 93.50326947366771, 93.63111668918552, 93.75896390470332, 93.88681112022113, 94.01465833573894, 94.14250555125675, 94.27035276677455, 94.39819998229235, 94.52604719781016, 94.65389441332796, 94.78174162884577, 94.90958884436358, 95.03743605988139, 95.16528327539919, 95.293130490917, 95.4209777064348, 95.54882492195262, 95.6766721374704, 95.80451935298822, 95.93236656850603, 96.06021378402383, 96.18806099954163, 96.31590821505944, 96.44375543057726, 96.57160264609506, 96.69944986161286, 96.82729707713067, 96.95514429264847, 97.08299150816627, 97.21083872368408, 97.3386859392019, 97.4665331547197, 97.5943803702375, 97.7222275857553, 97.85007480127311, 97.97792201679093, 98.10576923230872, 98.23361644782653, 98.36146366334434, 98.48931087886214, 98.61715809437995, 98.74500530989775, 98.87285252541557, 99.00069974093337, 99.12854695645117, 99.25639417196898, 99.38424138748678, 99.51208860300459, 99.63993581852239, 99.7677830340402, 99.89563024955801, 100.02347746507581, 100.15132468059362, 100.27917189611142, 100.40701911162924, 100.53486632714703, 100.66271354266485, 100.79056075818265, 100.91840797370045, 101.04625518921826, 101.17410240473606, 101.30194962025388, 101.42979683577167, 101.55764405128949, 101.68549126680729, 101.8133384823251, 101.9411856978429, 102.0690329133607, 102.19688012887852, 102.32472734439632, 102.45257455991413, 102.58042177543193, 102.70826899094973, 102.83611620646754, 102.96396342198534, 103.09181063750316, 103.21965785302096, 103.34750506853877, 103.47535228405657, 103.60319949957437, 103.73104671509219, 103.85889393060998, 103.9867411461278, 104.1145883616456, 104.2424355771634, 104.37028279268121, 104.49813000819901, 104.62597722371683, 104.75382443923462, 104.88167165475244, 105.00951887027024, 105.13736608578805, 105.26521330130586, 105.39306051682365, 105.52090773234147, 105.64875494785927, 105.77660216337708, 105.90444937889488, 106.03229659441268, 106.1601438099305, 106.28799102544829, 106.41583824096611, 106.54368545648391, 106.67153267200172, 106.79937988751952, 106.92722710303732, 107.05507431855514, 107.18292153407293, 107.31076874959075, 107.43861596510855, 107.56646318062636, 107.69431039614418, 107.82215761166196, 107.95000482717978, 108.07785204269759, 108.20569925821539, 108.3335464737332, 108.461393689251, 108.58924090476881, 108.7170881202866, 108.84493533580442, 108.97278255132223, 109.10062976684003, 109.22847698235783, 109.35632419787564, 109.48417141339345, 109.61201862891124, 109.73986584442906, 109.86771305994687, 109.99556027546467, 110.12340749098247, 110.25125470650028, 110.3791019220181, 110.50694913753588, 110.6347963530537, 110.7626435685715, 110.89049078408931, 111.01833799960713, 111.14618521512492, 111.27403243064273, 111.40187964616054, 111.52972686167834, 111.65757407719614, 111.78542129271395, 111.91326850823177, 112.04111572374956, 112.16896293926737, 112.29681015478518, 112.42465737030298, 112.55250458582078, 112.68035180133859, 112.8081990168564, 112.9360462323742, 113.06389344789201, 113.19174066340982, 113.31958787892762, 113.44743509444544, 113.57528230996323, 113.70312952548105, 113.83097674099885, 113.95882395651665, 114.08667117203446, 114.21451838755226, 114.34236560307008, 114.47021281858787, 114.59806003410569, 114.72590724962349, 114.8537544651413, 114.9816016806591, 115.1094488961769, 115.23729611169472, 115.36514332721251, 115.49299054273033, 115.62083775824813, 115.74868497376593, 115.87653218928375, 116.00437940480154, 116.13222662031936, 116.26007383583716, 116.38792105135497, 116.51576826687277, 116.64361548239057, 116.77146269790839, 116.89930991342618, 117.027157128944, 117.1550043444618, 117.2828515599796, 117.41069877549741, 117.53854599101521, 117.66639320653303, 117.79424042205082, 117.92208763756864, 118.04993485308644, 118.17778206860424, 118.30562928412205, 118.43347649963985, 118.56132371515767, 118.68917093067546, 118.81701814619328, 118.94486536171108, 119.07271257722888, 119.2005597927467, 119.32840700826449, 119.45625422378231, 119.58410143930011, 119.71194865481792, 119.83979587033572, 119.96764308585352, 120.09549030137134, 120.22333751688913, 120.35118473240695, 120.47903194792475, 120.60687916344256, 120.73472637896036, 120.86257359447816, 120.99042080999598, 121.11826802551377, 121.24611524103159, 121.37396245654939, 121.5018096720672, 121.62965688758501, 121.7575041031028, 121.88535131862062, 122.01319853413843, 122.14104574965623, 122.26889296517403, 122.39674018069184, 122.52458739620965, 122.65243461172744, 122.78028182724526, 122.90812904276306, 123.03597625828087, 123.16382347379867, 123.29167068931648, 123.4195179048343, 123.54736512035208, 123.6752123358699, 123.8030595513877, 123.93090676690551, 124.05875398242333, 124.18660119794112, 124.31444841345893, 124.44229562897674, 124.57014284449454, 124.69799006001234, 124.82583727553015, 124.95368449104797, 125.08153170656576, 125.20937892208357, 125.33722613760138, 125.46507335311918, 125.59292056863698, 125.72076778415479, 125.8486149996726, 125.9764622151904, 126.10430943070821, 126.23215664622602, 126.36000386174382, 126.48785107726162, 126.61569829277943, 126.74354550829725, 126.87139272381503, 126.99923993933285, 127.12708715485066, 127.25493437036846, 127.38278158588628, 127.51062880140407, 127.63847601692189, 127.76632323243969, 127.89417044795749, 128.0220176634753, 128.1498648789931, 128.27771209451092, 128.4055593100287, 128.53340652554652, 128.66125374106434, 128.78910095658213, 128.91694817209992, 129.04479538761774, 129.17264260313556, 129.30048981865335, 129.42833703417116, 129.55618424968895, 129.68403146520677, 129.8118786807246, 129.93972589624238, 130.0675731117602, 130.195420327278, 130.3232675427958, 130.45111475831362, 130.5789619738314, 130.70680918934923, 130.83465640486702, 130.96250362038484, 131.09035083590265, 131.21819805142044, 131.34604526693823, 131.47389248245605, 131.60173969797387, 131.72958691349166, 131.85743412900948, 131.98528134452727, 132.11312856004508, 132.2409757755629, 132.3688229910807, 132.4966702065985, 132.6245174221163, 132.75236463763412, 132.88021185315193, 133.00805906866972, 133.13590628418754, 133.26375349970533, 133.39160071522315, 133.51944793074097, 133.64729514625876, 133.77514236177655, 133.90298957729436, 134.03083679281218, 134.15868400832997, 134.2865312238478, 134.41437843936558, 134.5422256548834, 134.6700728704012, 134.797920085919, 134.92576730143682, 135.0536145169546, 135.18146173247243, 135.30930894799025, 135.43715616350804, 135.56500337902585, 135.69285059454364, 135.82069781006146, 135.94854502557928, 136.07639224109707, 136.20423945661486, 136.33208667213268, 136.4599338876505, 136.5877811031683, 136.7156283186861, 136.8434755342039, 136.9713227497217, 137.09916996523953, 137.22701718075731, 137.35486439627513, 137.48271161179292, 137.61055882731074, 137.73840604282856, 137.86625325834635, 137.99410047386414, 138.12194768938195, 138.24979490489977, 138.3776421204176, 138.50548933593538, 138.63333655145317, 138.761183766971, 138.8890309824888, 139.01687819800662, 139.1447254135244, 139.2725726290422, 139.40041984456002, 139.52826706007784, 139.65611427559563, 139.78396149111342, 139.91180870663123, 140.03965592214905, 140.16750313766687, 140.29535035318466, 140.42319756870245, 140.55104478422027, 140.67889199973808, 140.8067392152559, 140.9345864307737, 141.06243364629148, 141.1902808618093, 141.31812807732712, 141.44597529284493, 141.57382250836272, 141.7016697238805, 141.82951693939833, 141.95736415491615, 142.08521137043394, 142.21305858595173, 142.34090580146955, 142.46875301698736, 142.59660023250518, 142.72444744802297, 142.85229466354076, 142.98014187905858, 143.1079890945764, 143.23583631009421, 143.363683525612, 143.4915307411298, 143.6193779566476, 143.74722517216543, 143.87507238768325, 144.00291960320104, 144.13076681871883, 144.25861403423664, 144.38646124975446, 144.51430846527225, 144.64215568079004, 144.77000289630786, 144.89785011182568, 145.0256973273435, 145.15354454286128, 145.28139175837907, 145.4092389738969, 145.5370861894147, 145.66493340493253, 145.79278062045032, 145.9206278359681, 146.04847505148592, 146.17632226700374, 146.30416948252153, 146.43201669803935, 146.55986391355714, 146.68771112907496, 146.81555834459277, 146.94340556011056, 147.07125277562835, 147.19909999114617, 147.326947206664, 147.4547944221818, 147.5826416376996, 147.71048885321738, 147.8383360687352, 147.96618328425302, 148.09403049977084, 148.22187771528863, 148.34972493080642, 148.47757214632423, 148.60541936184205, 148.73326657735984, 148.86111379287766, 148.98896100839545, 149.11680822391327, 149.24465543943109, 149.37250265494887, 149.50034987046666, 149.62819708598448, 149.7560443015023, 149.88389151702012, 150.0117387325379, 150.1395859480557, 150.26743316357351, 150.39528037909133, 150.52312759460915, 150.65097481012694, 150.77882202564473, 150.90666924116255, 151.03451645668036, 151.16236367219815, 151.29021088771597, 151.41805810323376, 151.54590531875158, 151.6737525342694, 151.8015997497872, 151.92944696530498, 152.0572941808228, 152.1851413963406, 152.31298861185843, 152.44083582737622, 152.568683042894, 152.69653025841183, 152.82437747392964, 152.95222468944746, 153.08007190496525, 153.20791912048304, 153.33576633600086, 153.46361355151868, 153.59146076703647, 153.71930798255428, 153.84715519807207, 153.9750024135899, 154.1028496291077, 154.2306968446255, 154.3585440601433, 154.4863912756611, 154.61423849117892, 154.74208570669674, 154.86993292221453, 154.99778013773232, 155.12562735325014, 155.25347456876796, 155.38132178428577, 155.50916899980356, 155.63701621532135, 155.76486343083917, 155.892710646357, 156.02055786187478, 156.14840507739257, 156.27625229291039, 156.4040995084282, 156.53194672394602, 156.6597939394638, 156.7876411549816, 156.91548837049942, 157.04333558601724, 157.17118280153505, 157.29903001705284, 157.42687723257063, 157.55472444808845, 157.68257166360627, 157.8104188791241, 157.93826609464188, 158.06611331015966, 158.19396052567748, 158.3218077411953, 158.4496549567131, 158.57750217223088, 158.7053493877487, 158.83319660326652, 158.96104381878433, 159.08889103430212, 159.2167382498199, 159.34458546533773, 159.47243268085555, 159.60027989637337, 159.72812711189115, 159.85597432740894, 159.98382154292676, 160.11166875844458, 160.2395159739624, 160.3673631894802, 160.49521040499798, 160.6230576205158, 160.7509048360336, 160.8787520515514, 161.0065992670692, 161.134446482587, 161.26229369810483, 161.39014091362264, 161.51798812914043, 161.64583534465822, 161.77368256017604, 161.90152977569386, 162.02937699121168, 162.15722420672947, 162.28507142224726, 162.41291863776507, 162.5407658532829, 162.66861306880068, 162.7964602843185, 162.9243074998363, 163.0521547153541, 163.18000193087192, 163.3078491463897, 163.4356963619075, 163.56354357742532, 163.69139079294314, 163.81923800846096, 163.94708522397875, 164.07493243949654, 164.20277965501435, 164.33062687053217, 164.45847408605, 164.58632130156778, 164.71416851708557, 164.8420157326034, 164.9698629481212, 165.097710163639, 165.2255573791568, 165.3534045946746, 165.48125181019242, 165.60909902571024, 165.73694624122803, 165.86479345674582, 165.99264067226363, 166.12048788778145, 166.24833510329927, 166.37618231881706, 166.50402953433485, 166.63187674985267, 166.75972396537048, 166.8875711808883, 167.0154183964061, 167.14326561192388, 167.2711128274417, 167.39896004295952, 167.5268072584773, 167.65465447399512, 167.7825016895129, 167.91034890503073, 168.03819612054855, 168.16604333606634, 168.29389055158413, 168.42173776710194, 168.54958498261976, 168.67743219813758, 168.80527941365537, 168.93312662917316, 169.06097384469098, 169.1888210602088, 169.3166682757266, 169.4445154912444, 169.5723627067622, 169.70020992228, 169.82805713779783, 169.95590435331562, 170.08375156883343, 170.21159878435122, 170.33944599986904, 170.46729321538686, 170.59514043090465, 170.72298764642244, 170.85083486194026, 170.97868207745807, 171.1065292929759, 171.23437650849368, 171.36222372401147, 171.4900709395293, 171.6179181550471, 171.74576537056492, 171.87361258608271, 172.0014598016005, 172.12930701711832, 172.25715423263614, 172.38500144815393, 172.51284866367172, 172.64069587918954, 172.76854309470735, 172.89639031022517, 173.02423752574296, 173.15208474126075, 173.27993195677857, 173.4077791722964, 173.5356263878142, 173.663473603332, 173.79132081884978, 173.9191680343676, 174.04701524988542, 174.17486246540324, 174.30270968092103, 174.43055689643882, 174.55840411195663, 174.68625132747445, 174.81409854299224, 174.94194575851003, 175.06979297402785, 175.19764018954567, 175.32548740506348, 175.45333462058127, 175.58118183609906, 175.70902905161688, 175.8368762671347, 175.96472348265252, 176.0925706981703, 176.2204179136881, 176.3482651292059, 176.47611234472373, 176.60395956024155, 176.73180677575934, 176.85965399127713, 176.98750120679495, 177.11534842231276, 177.24319563783055, 177.37104285334834, 177.49889006886616, 177.62673728438398, 177.7545844999018, 177.88243171541959, 178.01027893093737, 178.1381261464552, 178.265973361973, 178.39382057749083, 178.52166779300862, 178.6495150085264, 178.77736222404423, 178.90520943956204, 179.03305665507983, 179.16090387059765, 179.28875108611544, 179.41659830163326, 179.54444551715108, 179.67229273266886, 179.80013994818665, 179.92798716370447, 180.0558343792223, 180.1836815947401, 180.3115288102579, 180.4393760257757, 180.5672232412935, 180.69507045681132, 180.82291767232914, 180.95076488784693, 181.07861210336472, 181.20645931888254, 181.33430653440035, 181.46215374991814, 181.59000096543596, 181.71784818095375, 181.84569539647157, 181.9735426119894, 182.10138982750718, 182.22923704302497, 182.35708425854278, 182.4849314740606, 182.61277868957842, 182.7406259050962, 182.868473120614, 182.99632033613182, 183.12416755164963, 183.25201476716745, 183.37986198268524, 183.50770919820303, 183.63555641372085, 183.76340362923867, 183.89125084475646, 184.01909806027427, 184.14694527579206, 184.27479249130988, 184.4026397068277, 184.5304869223455, 184.65833413786328, 184.7861813533811, 184.9140285688989, 185.04187578441673, 185.16972299993452, 185.2975702154523, 185.42541743097013, 185.55326464648795, 185.68111186200576, 185.80895907752355, 185.93680629304134, 186.06465350855916, 186.19250072407698, 186.32034793959477, 186.4481951551126, 186.57604237063038, 186.7038895861482, 186.831736801666, 186.9595840171838, 187.0874312327016, 187.2152784482194, 187.34312566373723, 187.47097287925504, 187.59882009477283, 187.72666731029062, 187.85451452580844, 187.98236174132626, 188.11020895684408, 188.23805617236187, 188.36590338787965, 188.49375060339747, 188.6215978189153, 188.74944503443308, 188.87729224995087, 189.0051394654687, 189.1329866809865, 189.26083389650432, 189.3886811120221, 189.5165283275399, 189.64437554305772, 189.77222275857554, 189.90006997409336, 190.02791718961114, 190.15576440512893, 190.28361162064675, 190.41145883616457, 190.5393060516824, 190.66715326720018, 190.79500048271797, 190.92284769823578, 191.0506949137536, 191.1785421292714, 191.30638934478918, 191.434236560307, 191.56208377582482, 191.68993099134264, 191.81777820686042, 191.9456254223782, 192.07347263789603, 192.20131985341385, 192.32916706893167, 192.45701428444946, 192.58486149996725, 192.71270871548506, 192.84055593100288, 192.9684031465207, 193.0962503620385, 193.22409757755628, 193.3519447930741, 193.47979200859191, 193.6076392241097, 193.7354864396275, 193.8633336551453, 193.99118087066313, 194.11902808618095, 194.24687530169874, 194.37472251721653, 194.50256973273434, 194.63041694825216, 194.75826416376998, 194.88611137928777, 195.01395859480556, 195.14180581032338, 195.2696530258412, 195.39750024135898, 195.5253474568768, 195.6531946723946, 195.7810418879124, 195.90888910343023, 196.03673631894802, 196.1645835344658, 196.29243074998362, 196.42027796550144, 196.54812518101926, 196.67597239653705, 196.80381961205484, 196.93166682757266, 197.05951404309047, 197.1873612586083, 197.31520847412608, 197.44305568964387, 197.5709029051617, 197.6987501206795, 197.8265973361973, 197.9544445517151, 198.0822917672329, 198.21013898275072, 198.33798619826854, 198.46583341378633, 198.59368062930412, 198.72152784482194, 198.84937506033975, 198.97722227585757, 199.10506949137536, 199.23291670689315, 199.36076392241097, 199.48861113792879, 199.6164583534466, 199.7443055689644, 199.87215278448218, 200 ], "y": [ 1355984.650649076, 1354900.786943236, 1353827.6906926134, 1352765.3295730394, 1351713.6715305955, 1350672.6847792417, 1349642.3377984753, 1348622.599331008, 1347613.4383804742, 1346614.8242091564, 1345626.726335739, 1344649.1145330847, 1343681.9588260313, 1342725.2294892152, 1341778.897044915, 1340842.9322609177, 1339917.3061484075, 1339001.9899598763, 1338096.9551870546, 1337202.1735588661, 1336317.6170393997, 1335443.257825906, 1334579.0683468112, 1333725.0212597533, 1332881.0894496378, 1332047.2460267115, 1331223.464324659, 1330409.717898715, 1329605.9805237995, 1328812.2261926678, 1328028.429114082, 1327254.563710999, 1326490.6046187798, 1325736.5266834132, 1324992.3049597577, 1324257.9147098039, 1323533.3314009516, 1322818.5307043046, 1322113.488492983, 1321418.1808404508, 1320732.5840188635, 1320056.6744974265, 1319390.428940776, 1318733.8242073713, 1318086.8373479042, 1317449.445603725, 1316821.6264052833, 1316203.3573705824, 1315594.616303653, 1314995.3811930376, 1314405.6302102904, 1313825.3417084953, 1313254.4942207944, 1312693.0664589298, 1312141.037311807, 1311598.3858440614, 1311065.0912946484, 1310541.1330754405, 1310026.490769842, 1309521.144131413, 1309025.0730825127, 1308538.2577129484, 1308060.6782786422, 1307592.3152003097, 1307133.1490621506, 1306683.160610552, 1306242.3307528025, 1305810.6405558228, 1305388.0712449034, 1304974.6042024568, 1304570.2209667808, 1304174.903230835, 1303788.632841026, 1303411.3917960061, 1303043.1622454827, 1302683.926489039, 1302333.6669749657, 1301992.3662991025, 1301660.007203693, 1301336.5725762472, 1301022.0454484168, 1300716.4089948805, 1300419.6465322387, 1300131.7415179189, 1299852.677549092, 1299582.4383615977, 1299321.0078288796, 1299068.3699609314, 1298824.508903251, 1298589.4089358067, 1298363.0544720085, 1298145.4300576947, 1297936.5203701225, 1297736.3102169705, 1297544.7845353507, 1297361.928390827, 1297187.726976444, 1297022.1656117674, 1296865.2297419263, 1296716.9049366717, 1296577.1768894382, 1296446.0314164157, 1296323.4544556316, 1296209.432066037, 1296103.9504266055, 1296006.9958354363, 1295918.5547088678, 1295838.6135805992, 1295767.1591008168, 1295704.1780353328, 1295649.6572647272, 1295603.5837835013, 1295565.944699235, 1295536.7272317545, 1295515.9187123056, 1295503.5065827356, 1295499.4783946811, 1295503.821808763, 1295516.5245937905, 1295537.5746259694, 1295566.9598881197, 1295604.6684688975, 1295650.6885620265, 1295705.0084655343, 1295767.6165809962, 1295838.501412784, 1295917.6515673245, 1296005.0557523614, 1296100.7027762241, 1296204.581547105, 1296316.6810723396, 1296436.9904576968, 1296565.4989066706, 1296702.195719783, 1296847.070293888, 1297000.1121214859, 1297161.31079004, 1297330.6559813016, 1297508.1374706381, 1297693.7451263708, 1297887.4689091141, 1298089.298871123, 1298299.2251556455, 1298517.2379962802, 1298743.3277163382, 1298977.4847282143, 1299219.6995327582, 1299469.9627186554, 1299728.2649618103, 1299994.5970247372, 1300268.9497559532, 1300551.3140893797, 1300841.6810437455, 1301140.0417219982, 1301446.387310717, 1301760.709079534, 1302082.9983805567, 1302413.2466477992, 1302751.4453966143, 1303097.5862231327, 1303451.6608037069, 1303813.6608943571, 1304183.5783302262, 1304561.4050250344, 1304947.1329705412, 1305340.7542360118, 1305742.260967686, 1306151.645388255, 1306568.8997963362, 1306994.0165659606, 1307426.9881460576, 1307867.807059946, 1308316.465904832, 1308772.9573513055, 1309237.2741428474, 1309709.4090953344, 1310189.3550965525, 1310677.1051057128, 1311172.6521529686, 1311675.989338942, 1312187.10983425, 1312706.006879035, 1313232.6737824995, 1313767.1039224467, 1314309.2907448206, 1314859.2277632528, 1315416.9085586118, 1315982.3267785572, 1316555.476137095, 1317136.3504141383, 1317724.9434550714, 1318321.249170317, 1318925.2615349067, 1319536.9745880542, 1320156.3824327341, 1320783.479235262, 1321418.2592248782, 1322060.7166933354, 1322710.8459944893, 1323368.6415438917, 1324034.097818389, 1324707.2093557206, 1325387.9707541224, 1326076.376671934, 1326772.421827208, 1327476.1009973215, 1328187.4090185922, 1328906.340785897, 1329632.8912522928, 1330367.0554286416, 1331108.8283832374, 1331858.2052414357, 1332615.1811852874, 1333379.7514531743, 1334151.9113394478, 1334931.6561940701, 1335718.9814222578, 1336513.8824841303, 1337316.3548943577, 1338126.3942218143, 1338943.9960892333, 1339769.1561728627, 1340601.8702021283, 1341442.1339592948, 1342289.9432791302, 1343145.294048576, 1344008.182206415, 1344878.6037429473, 1345756.554699662, 1346642.0311689177, 1347535.0292936217, 1348435.5452669123, 1349343.5753318449, 1350259.1157810786, 1351182.1629565654, 1352112.7132492438, 1353050.7630987314, 1353996.3089930238, 1354949.3474681904, 1355909.875108079, 1356877.888544016, 1357853.3844545146, 1358836.3595649807, 1359826.8106474243, 1360824.7345201704, 1361830.1280475738, 1362842.9881397355, 1363863.311752221, 1364891.095885781, 1365926.337586074, 1366969.0339433898, 1368019.182092378, 1369076.7792117754, 1370141.8225241369, 1371214.3092955686, 1372294.2368354616, 1373381.6024962282, 1374476.4036730423, 1375578.6378035778, 1376688.3023677506, 1377805.3948874653, 1378929.9129263575, 1380061.854089545, 1381201.2160233746, 1382347.996415176, 1383502.1929930132, 1384663.8035254402, 1385832.8258212581, 1387009.2577292728, 1388193.097138056, 1389384.3419757073, 1390582.9902096172, 1391789.0398462322, 1393002.4889308233, 1394223.3355472547, 1395451.577817751, 1396687.2139026741, 1397930.242000293, 1399180.6603465602, 1400438.4672148903, 1401703.6609159352, 1402976.239797367, 1404256.2022436578, 1405543.5466758637, 1406838.2715514088, 1408140.3753638717, 1409449.8566427738, 1410766.7139533674, 1412090.9458964264, 1413422.5511080394, 1414761.5282594024, 1416107.8760566139, 1417461.593240472, 1418822.6785862716, 1420191.1309036035, 1421566.9490361563, 1422950.1318615167, 1424340.6782909746, 1425738.5872693274, 1427143.8577746851, 1428556.4888182804, 1429976.4794442735, 1431403.8287295667, 1432838.535783613, 1434280.5997482296, 1435730.0197974127, 1437186.7951371514, 1438650.9250052462, 1440122.4086711248, 1441601.2454356635, 1443087.4346310056, 1444580.9756203834, 1446081.8677979428, 1447590.110588564, 1449105.7034476912, 1450628.645861154, 1452158.937344999, 1453696.577445317, 1455241.5657380724, 1456793.9018289358, 1458353.5853531146, 1459920.6159751879, 1461494.9933889394, 1463076.7173171947, 1464665.787511657, 1466262.2037527452, 1467865.9658494324, 1469477.0736390867, 1471095.5269873114, 1472721.325787789, 1474354.4699621208, 1475994.9594596755, 1477642.7942574308, 1479297.9743598222, 1480960.4997985894, 1482630.3706326247, 1484307.586947822, 1485992.1488569276, 1487684.0564993925, 1489383.3100412227, 1491089.9096748342, 1492803.8556189071, 1494525.1481182394, 1496253.7874436062, 1497989.7738916134, 1499733.1077845583, 1501483.7894702875, 1503241.819322058, 1505007.1977383965, 1506779.9251429616, 1508560.001984409, 1510347.4287362506, 1512142.205896723, 1513944.3339886512, 1515753.8135593145, 1517570.6451803152, 1519394.829447444, 1521226.3669805527, 1523065.2584234197, 1524911.504443624, 1526765.105732414, 1528626.0630045815, 1530494.3769983347, 1532370.0484751705, 1534253.0782197516, 1536143.4670397793, 1538041.215765872, 1539946.3252514414, 1541858.7963725706, 1543778.630027892, 1545705.827138469, 1547640.3886476727, 1549582.3155210665, 1551531.608746285, 1553488.2693329188, 1555452.2983123958, 1557423.6967378668, 1559402.4656840893, 1561388.606247313, 1563382.1195451673, 1565383.0067165452, 1567391.2689214952, 1569406.9073411054, 1571429.9231773964, 1573460.3176532076, 1575498.09201209, 1577543.247518197, 1579595.7854561745, 1581655.707131057, 1583723.0138681564, 1585797.7070129593, 1587879.78793102, 1589969.2580078556, 1592066.118648843, 1594170.371279113, 1596282.0173434517, 1598401.0583061932, 1600527.4956511217, 1602661.3308813686, 1604802.565519314, 1606951.201106485, 1609107.2392034575, 1611270.6813897588, 1613441.5292637676, 1615619.7844426185, 1617805.4485621047, 1619998.523276582, 1622199.0102588735, 1624406.911200174, 1626622.2278099572, 1628844.9618158806, 1631075.1149636933, 1633312.6890171429, 1635557.685757883, 1637810.1069853837, 1640069.954516838, 1642337.230187075, 1644611.9358484661, 1646894.0733708395, 1649183.6446413882, 1651480.651564585, 1653785.0960620935, 1656096.9800726792, 1658416.3055521268, 1660743.0744731515, 1663077.2888253138, 1665418.9506149357, 1667768.0618650143, 1670124.6246151405, 1672488.6409214134, 1674860.1128563583, 1677239.0425088436, 1679625.4319839992, 1682019.283403137, 1684420.5989036658, 1686829.3806390143, 1689245.6307785506, 1691669.3515075003, 1694100.5450268714, 1696539.2135533714, 1698985.3593193337, 1701438.984572636, 1703900.0915766247, 1706368.6826100396, 1708844.7599669362, 1711328.325956609, 1713819.382903518, 1716317.933147213, 1718823.9790422586, 1721337.5229581622, 1723858.5672792974, 1726387.1144048327, 1728923.1667486602, 1731466.726739319, 1734017.7968199286, 1736576.3794481135, 1739142.4770959327, 1741716.0922498123, 1744297.2274104706, 1746885.8850928533, 1749482.0678260585, 1752085.7781532728, 1754697.0186317, 1757315.7918324945, 1759942.100340692, 1762575.946755142, 1765217.3336884442, 1767866.2637668764, 1770522.7396303338, 1773186.7639322588, 1775858.339339578, 1778537.468532638, 1781224.1542051365, 1783918.3990640638, 1786620.2058296343, 1789329.5772352242, 1792046.51602731, 1794771.0249654017, 1797503.106821987, 1800242.7643824616, 1802990.000445072, 1805744.8178208536, 1808507.219333569, 1811277.2078196467, 1814054.7861281214, 1816839.957120576, 1819632.7236710764, 1822433.0886661196, 1825241.0550045683, 1828056.6255975955, 1830879.8033686262, 1833710.5912532767, 1836548.9921993022, 1839395.0091665331, 1842248.6451268222, 1845109.9030639878, 1847978.7859737547, 1850855.2968637026, 1853739.4387532044, 1856631.2146733757, 1859530.6276670182, 1862437.680788566, 1865352.3771040263, 1868274.7196909324, 1871204.7116382832, 1874142.3560464955, 1877087.6560273468, 1880040.6147039228, 1883001.235210565, 1885969.5206928207, 1888945.4743073862, 1891929.0992220598, 1894920.3986156876, 1897919.3756781109, 1900926.0336101197, 1903940.3756233994, 1906962.4049404792, 1909992.124794683, 1913029.5384300807, 1916074.6491014385, 1919127.4600741686, 1922187.97462428, 1925256.1960383304, 1928332.1276133778, 1931415.7726569325, 1934507.1344869095, 1937606.216431579, 1940713.0218295201, 1943827.5540295746, 1946949.8163907998, 1950079.8122824202, 1953217.5450837822, 1956363.018184308, 1959516.2349834505, 1962677.1988906479, 1965845.9133252753, 1969022.3817166027, 1972206.6075037483, 1975398.5941356355, 1978598.3450709493, 1981805.8637780878, 1985021.1537351212, 1988244.2184297491, 1991475.0613592556, 1994713.6860304677, 1997960.0959597086, 2001214.2946727579, 2004476.2857048102, 2007746.0726004313, 2011023.658913514, 2014309.0482072397, 2017602.2440540348, 2020903.250035531, 2024212.0697425236, 2027528.7067749281, 2030853.1647417431, 2034185.4472610066, 2037525.5579597591, 2040873.5004740027, 2044229.2784486571, 2047592.8955375259, 2050964.355403252, 2054343.6617172835, 2057730.8181598312, 2061125.8284198302, 2064528.6961949007, 2067939.425191313, 2071358.0191239465, 2074784.481716251, 2078218.8167002103, 2081661.0278163045, 2085111.1188134742, 2088569.0934490806, 2092034.955488869, 2095508.7087069324, 2098990.3568856753, 2102479.903815779, 2105977.3532961616, 2109482.7091339435, 2112995.9751444133, 2116517.15515099, 2120046.2529851873, 2123583.272486582, 2127128.2175027733, 2130681.0918893516, 2134241.899509865, 2137810.6442357805, 2141387.3299464523, 2144971.960529087, 2148564.53987871, 2152165.0718981316, 2155773.560497914, 2159390.009596335, 2163014.423119358, 2166646.805000596, 2170287.159181283, 2173935.4896102357, 2177591.8002438247, 2181256.0950459396, 2184928.3779879613, 2188608.653048721, 2192296.9242144804, 2195993.1954788878, 2199697.4708429533, 2203409.7543150177, 2207130.0499107195, 2210858.3616529615, 2214594.6935718823, 2218339.049704827, 2222091.434096313, 2225851.850798004, 2229620.3038686723, 2233396.7973741773, 2237181.335387428, 2240973.921988358, 2244774.5612638956, 2248583.257307931, 2252400.0142212864, 2256224.8361116936, 2260057.7270937567, 2263898.6912889276, 2267747.7328254767, 2271604.8558384613, 2275470.064469702, 2279343.3628677507, 2283224.7551878626, 2287114.245591969, 2291011.8382486477, 2294917.5373330987, 2298831.3470271137, 2302753.271519048, 2306683.3150037946, 2310621.481682755, 2314567.775763816, 2318522.20146132, 2322484.7629960356, 2326455.4645951344, 2330434.310492165, 2334421.304927023, 2338416.4521459294, 2342419.756401398, 2346431.221952214, 2350450.8530634083, 2354478.65400623, 2358514.6290581203, 2362558.782502686, 2366611.1186296777, 2370671.641734962, 2374740.356120498, 2378817.266094308, 2382902.3759704563, 2386995.690069025, 2391097.212716086, 2395206.948243681, 2399324.9009897914, 2403451.075298316, 2407585.475519051, 2411728.106007661, 2415878.9711256563, 2420038.0752403685, 2424205.422724927, 2428381.017958238, 2432564.8653249578, 2436756.9692154704, 2440957.3340258636, 2445165.9641579054, 2449382.864019024, 2453608.038022284, 2457841.490586358, 2462083.226135512, 2466333.249099576, 2470591.5639139265, 2474858.175019462, 2479133.0868625804, 2483416.303895156, 2487707.830574519, 2492007.671363436, 2496315.8307300825, 2500632.313148022, 2504957.12309619, 2509290.2650588667, 2513631.7435256587, 2517981.5629914766, 2522339.7279565106, 2526706.242926215, 2531081.1124112844, 2535464.340927634, 2539855.932996375, 2544255.893143798, 2548664.2259013504, 2553080.9358056164, 2557506.0273982985, 2561939.5052261925, 2566381.3738411698, 2570831.637800159, 2575290.301665125, 2579757.3700030455, 2584232.847385896, 2588716.738390626, 2593209.0475991424, 2597709.779598291, 2602218.9389798306, 2606736.5303404196, 2611262.558281595, 2615797.027409753, 2620339.942336131, 2624891.3076767856, 2629451.1280525746, 2634019.408089143, 2638596.152416897, 2643181.36567099, 2647775.0524913026, 2652377.2175224223, 2656987.8654136294, 2661607.000818876, 2666234.628396767, 2670870.7528105415, 2675515.378728058, 2680168.510821775, 2684830.153768732, 2689500.312250532, 2694178.9909533234, 2698866.1945677833, 2703561.9277890995, 2708266.1953169564, 2712979.00185551, 2717700.3521133745, 2722430.2508036103, 2727168.702643697, 2731915.7123555252, 2736671.2846653727, 2741435.42430389, 2746208.136006087, 2750989.4245113116, 2755779.294563234, 2760577.7509098295, 2765384.7983033652, 2770200.4415003806, 2775024.6852616724, 2779857.534352278, 2784698.9935414563, 2789549.067602677, 2794407.7613136005, 2799275.079456066, 2804151.0268160678, 2809035.6081837476, 2813928.828353375, 2818830.6921233316, 2823741.204296097, 2828660.369678231, 2833588.1930803573, 2838524.679317154, 2843469.8332073335, 2848423.6595736267, 2853386.1632427676, 2858357.349045481, 2863337.221816466, 2868325.7863943833, 2873323.047621834, 2878329.010345349, 2883343.679415374, 2888367.0596862575, 2893399.156016229, 2898439.973267392, 2903489.516305701, 2908547.790000957, 2913614.7992267855, 2918690.5488606254, 2923775.043783713, 2928868.288881068, 2933970.289041483, 2939081.049157504, 2944200.574125421, 2949328.868845247, 2954465.9382207133, 2959611.787159249, 2964766.420571974, 2969929.8433736735, 2975102.060482797, 2980283.076821435, 2985472.8973153136, 2990671.526893776, 2995878.9704897692, 3001095.2330398303, 3006320.3194840774, 3011554.234766193, 3016796.983833411, 3022048.571636501, 3027309.0031297603, 3032578.2832709993, 3037856.4170215293, 3043143.4093461437, 3048439.2652131123, 3053743.9895941643, 3059057.58746448, 3064380.0638026744, 3069711.423590783, 3075051.6718142545, 3080400.813461931, 3085758.853526046, 3091125.7970022033, 3096501.6488893665, 3101886.4141898463, 3107280.097909294, 3112682.705056682, 3118094.2406442952, 3123514.7096877173, 3128944.117205818, 3134382.468220748, 3139829.7677579187, 3145286.0208459934, 3150751.232516876, 3156225.407805696, 3161708.5517508048, 3167200.669393757, 3172701.7657792983, 3178211.8459553584, 3183730.9149730345, 3189258.977886588, 3194796.0397534235, 3200342.105634084, 3205897.180592234, 3211461.2696946543, 3217034.37801123, 3222616.5106149325, 3228207.672581817, 3233807.8689910043, 3239417.104924676, 3245035.385468062, 3250662.715709424, 3256299.1007400514, 3261944.545654247, 3267599.055549318, 3273262.635525566, 3278935.290686271, 3284617.0261376863, 3290307.846989028, 3296007.758352458, 3301716.7653430835, 3307434.8730789367, 3313162.0866809697, 3318898.4112730445, 3324643.851981922, 3330398.413937248, 3336162.1022715475, 3341934.922120213, 3347716.878621494, 3353507.97691649, 3359308.2221491328, 3365117.6194661856, 3370936.1740172235, 3376763.8909546346, 3382600.7754336027, 3388446.8326120963, 3394302.067650863, 3400166.485713421, 3406040.0919660404, 3411922.8915777467, 3417814.889720299, 3423716.091568186, 3429626.5022986196, 3435546.1270915195, 3441474.9711295045, 3447413.039597886, 3453360.337684655, 3459316.8705804786, 3465282.643478685, 3471257.661575255, 3477241.930068815, 3483235.4541606237, 3489238.2390545704, 3495250.2899571606, 3501271.6120775035, 3507302.21062731, 3513342.09082088, 3519391.2578750947, 3525449.7170094065, 3531517.473445831, 3537594.532408935, 3543680.899125834, 3549776.578826181, 3555881.5767421513, 3561995.8981084423, 3568119.5481622587, 3574252.532143311, 3580394.855293801, 3586546.522858413, 3592707.540084307, 3598877.912221111, 3605057.6445209123, 3611246.7422382487, 3617445.2106300974, 3623653.0549558704, 3629870.2804774065, 3636096.8924589567, 3642332.896167187, 3648578.2968711588, 3654833.0998423244, 3661097.3103545248, 3667370.9336839756, 3673653.9751092563, 3679946.4399113096, 3686248.3333734265, 3692559.660781245, 3698880.427422739, 3705210.6385882064, 3711550.299570266, 3717899.4156638486, 3724257.9921661904, 3730626.0343768233, 3737003.5475975666, 3743390.5371325174, 3749787.0082880524, 3756192.9663728094, 3762608.4166976837, 3769033.364575821, 3775467.8153226078, 3781911.774255669, 3788365.246694856, 3794828.237962236, 3801300.753382093, 3807782.7982809115, 3814274.3779873764, 3820775.4978323653, 3827286.1631489326, 3833806.379272311, 3840336.1515398994, 3846875.4852912608, 3853424.385868111, 3859982.8586143097, 3866550.908875857, 3873128.5420008847, 3879715.763339653, 3886312.578244535, 3892918.9920700165, 3899535.0101726856, 3906160.6379112303, 3912795.880646428, 3919440.7437411356, 3926095.2325602886, 3932759.3524708883, 3939433.108842002, 3946116.5070447535, 3952809.552452309, 3959512.250439881, 3966224.6063847123, 3972946.6256660805, 3979678.3136652824, 3986419.675765626, 3993170.7173524285, 3999931.443813013, 4006701.8605366945, 4013481.9729147754, 4020271.7863405407, 4027071.3062092494, 4033880.5379181323, 4040699.486866383, 4047528.1584551455, 4054366.5580875184, 4061214.691168539, 4068072.5631051864, 4074940.1793063674, 4081817.5451829126, 4088704.666147569, 4095601.5476149986, 4102508.1950017647, 4109424.6137263337, 4116350.809209062, 4123286.7868721914, 4130232.5521398466, 4137188.1104380284, 4144153.467194602, 4151128.6278392957, 4158113.597803693, 4165108.38252123, 4172112.9874271885, 4179127.4179586843, 4186151.679554665, 4193185.7776559056, 4200229.717705004, 4207283.505146371, 4214347.145426225, 4221420.643992584, 4228504.006295271, 4235597.237785893, 4242700.343917845, 4249813.330146302, 4256936.2019282095, 4264068.964722285, 4271211.62398901, 4278364.185190617, 4285526.653791093, 4292699.035256168, 4299881.335053314, 4307073.558651742, 4314275.711522383, 4321487.799137893, 4328709.82697265, 4335941.800502742, 4343183.725205964 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{mp}=87.11$", "textposition": "top center", "type": "scatter", "x": [ 87.10847046782008 ], "y": [ 1295499.476872196 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Variation of Total Power with Aircraft Weight - CD0 = 0.016, K=0.045, sea level, S=50m^2" }, "xaxis": { "range": [ 0, 200 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 4000000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "fig = go.Figure()\n", "\n", "alt = 0\n", "\n", "for W in [160e3, 200e3, 240e3]: # Weight\n", "\n", " mosphere = Atmosphere(alt*1000)\n", " rho = mosphere.density\n", "\n", " # Determine stall speed\n", " Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", " # Determine A and B\n", " A = CD0 * 0.5 * rho * S\n", " B = K * W ** 2 / 0.5 / rho / S\n", "\n", " # Flight speed vector\n", " Vs = np.linspace(Vstall[0], 200, 1000)\n", "\n", "\n", " # Define power\n", " Pind = B * Vs**-1\n", " Pprof = A * Vs**3\n", " P = Pind + Pprof\n", "\n", " # Get minimum drag speed and associated power\n", " Vmd = (B/A)**.25\n", " mdp = A * Vmd**3 + B * Vmd**-1\n", "\n", " # Get minimum power\n", " Vmp = (B/3/A)**.25\n", " mp = A * Vmp**3 + B * Vmp**-1\n", "\n", "\n", "# fig.add_trace(go.Scatter(x=Vs, y=Dind, name=\"Induced Power\"))\n", "# fig.add_trace(go.Scatter(x=Vs, y=Dprof, name=\"Profile Power\"))\n", " fig.add_trace(go.Scatter(x=Vs, y=P, name=f\"Total Power - {W}kN\"))\n", "\n", "\n", "\n", " fig.add_trace(go.Scatter(x=Vmp, y=mp, mode=\"markers+text\", text=f\"$V_{{mp}}={Vmp[0]:1.2f}$\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", "fig.update_xaxes(range=[0, 200])\n", "fig.update_yaxes(range=[0, 4e6])\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "\n", "fig.update_layout(\n", " title=f\"Variation of Total Power with Aircraft Weight - CD0 = {CD0}, K={K}, sea level, S={S}m^2\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Variation of aircraft power in cruise: summary\n", "\n", "In the power equation, the combination of $V^3$ and $V^{-1}$ terms gives a minima in the total drag curve that is lower than minimum drag speed. This is the minimum power speed, $V_{mp}$ which can be determined directly from $V_{mp}=\\left[\\frac{B}{3\\,A}\\right]^{\\frac{1}{4}}$.\n", "\n", "Answer the following questions:\n", "\n", "\n", "```{admonition} Describe the effect of *altitude* on power curves.\n", ":class: dropdown\n", "\n", "An increase in altitude causes a decrease in density. This causes the induced power to increase, and the profile drag to decrease - but the profile power rises with the cube of speed, whilst induced power falls with the inverse of forward speed. The minimum power speed increases with altitude, but and the minimum power rises linearly.\n", "\n", "The visual effect is that total drag curves are shifted to the right and up.\n", "```\n", "\n", "```{admonition} Describe the effect of *aircraft weight* on drag curves.\n", ":class: dropdown\n", "\n", "Similarly to drag, an increase in aircraft weight affects *only* the induced power, which is increased.\n", "\n", "The visual effect is that total drag curves are shifted to the right, and up - the minimum power *and* the minimum power speed are increased.\n", "```" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Removing the Altitude Dependency - EAS\n", "\n", "To plot power vs equivalent airspeed as performed before for drag, one has to be careful with definitions. If you take the power equation, and simply replace $V$ with $V_E$, and plot against $V_E$, then we are not representing true power vs. EAS due to the velocity term outside the brackets. What we are actually showing is a parameter that can be considered *density-scaled power*:\n", "\n", "$$\\begin{aligned}\n", " P\\sqrt{\\sigma}&=\\left[A_EV_E^2 + \\frac{B_E}{V_E^2}\\right]\\cdot V_E\\\\ \n", "\\text{since}\\\\\n", " P&=\\left[A_EV_E^2 + \\frac{B_E}{V_E^2}\\right]\\cdot V\\\\\n", " &=\\left[A_EV_E^2 + \\frac{B_E}{V_E^2}\\right]\\cdot \\frac{V_E}{\\sqrt{\\sigma}}\\end{aligned}$$\n", "\n", "Similar to plotting drag vs. EAS, plotting $P\\sqrt{\\sigma}$ vs EAS collapses the curves for different altitudes onto one another, creating a single power curve vs. EAS. However, caution must be taken as the ordinate is not actual power, unlike for the drag plot, where the ordinate is dimensional true drag.\n", "\n", "It is left as an exercise for the reader to show this plot based upon those already given." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Thrust Available vs. Thrust Required\n", "\n", "As stated previously, the aircraft total drag is analogous to the *total thrust force required* to maintain a condition. The total power is analogous to the *total propulsive power required* to maintain the condition.\n", "\n", "The aircraft powerplant creates thrust and power (more on the distinction, shortly), and this sets the range of possible flight speeds.\n", "\n", "Consider an aircraft engine capable of producing a thrust that is constant with forward speed (which isn't realistic, as we will see), this can be overlaid on the thrust OR power required curve.\n", "\n", "```{figure} ../Images/TrandTa.png\n", "---\n", "height: 300px\n", "name: TrandTa\n", "---\n", "Thrust Available and Thrust Required\n", "```\n", "Denoting the thrust produced by the powerplant as $T_A$, meaning *thrust available* and the total drag as $T_R$, meaning *thrust required*, the intersection between the $T_A$ and $T_R$ curves gives the possible flight speeds.\n", "\n", "$T_A$ is simply a number, whilst the $T_R$ curve is a polynomial so the intersection can be determined from:\n", "\n", "$$T_R=A\\cdot V^2 + B\\cdot V^{-2}$$\n", "\n", "Which is equal to the thrust available:\n", "\n", "$$T_R=A\\cdot V^2 + B\\cdot V^{-2}=T_A$$\n", "$$A\\cdot V^4 + B - T_A\\cdot V^2=0$$\n", "\n", "hence a quadratic in $V^2$ or \n", "\n", "$$a\\cdot (V^2)^2 + b\\cdot (V^2) + c=0$$\n", "with $a=A$, $b=-T_A$ and $c=B$\n", "\n", "$$V=\\sqrt{\\frac{T_A\\pm\\sqrt{T_A^2-4\\cdot A\\cdot B}}{2\\cdot A}}$$\n", "\n", "which yields the two velocities from the graph, $V_1$ and $V_2$.\n", "\n", "### Example\n", "\n", "For an aircraft with a drag equation described by:\n", "\n", "$$C_D = 0.016 + 0.045\\cdot C_L^2$$\n", "\n", "with a wing area of 50m$^2$, a weight of 160kN, a $C_{L,max}=1.5$, flying at sea-level **determine the maximum and minimum flight speeds for a constant thrust of 10kN**\n", "\n", "```{admonition} Solution procedure - attempt the question before looking at the answer.\n", ":class: dropdown\n", "\n", "The drag equation gives you the constants $C_{D0}=0.016$ and $K=0.045$, and the remaining constants are provided in the question.\n", "\n", "This enables you to determine the profile drag factor A=0.49000001 and the induced drag factor B=37616325.974.\n", "\n", "With $T_A=10,000N$, you now have everything to solve the quadratic equation to yield $v_1=70.53m/s$ and $v_2=124.43m/s$.\n", "\n", "Look at the plot below, and see if you could reproduce is _without_ looking at the source code.\n", "```\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "scrolled": false, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "mode": "lines", "name": "$T_A$", "type": "scatter", "x": [ 59.01688864847802, 200 ], "y": [ 10000, 10000 ] }, { "name": "$T_R$", "type": "scatter", "x": [ 59.01688864847802, 59.15801288406513, 59.299137119652244, 59.44026135523935, 59.58138559082646, 59.72250982641357, 59.86363406200068, 60.004758297587784, 60.1458825331749, 60.287006768762005, 60.42813100434911, 60.569255239936226, 60.71037947552333, 60.85150371111044, 60.99262794669755, 61.13375218228466, 61.274876417871766, 61.41600065345888, 61.55712488904599, 61.698249124633094, 61.83937336022021, 61.980497595807314, 62.12162183139442, 62.262746066981535, 62.40387030256864, 62.54499453815575, 62.68611877374286, 62.82724300932997, 62.968367244917076, 63.10949148050419, 63.250615716091296, 63.3917399516784, 63.53286418726552, 63.673988422852624, 63.81511265843973, 63.956236894026844, 64.09736112961394, 64.23848536520106, 64.37960960078817, 64.52073383637529, 64.66185807196238, 64.8029823075495, 64.9441065431366, 65.08523077872371, 65.22635501431083, 65.36747924989794, 65.50860348548504, 65.64972772107215, 65.79085195665925, 65.93197619224637, 66.07310042783348, 66.21422466342058, 66.3553488990077, 66.49647313459481, 66.63759737018191, 66.77872160576902, 66.91984584135614, 67.06097007694325, 67.20209431253035, 67.34321854811746, 67.48434278370456, 67.62546701929168, 67.76659125487879, 67.9077154904659, 68.048839726053, 68.18996396164012, 68.33108819722722, 68.47221243281433, 68.61333666840144, 68.75446090398856, 68.89558513957566, 69.03670937516277, 69.17783361074987, 69.31895784633699, 69.4600820819241, 69.60120631751121, 69.74233055309831, 69.88345478868543, 70.02457902427253, 70.16570325985964, 70.30682749544675, 70.44795173103387, 70.58907596662097, 70.73020020220808, 70.87132443779518, 71.0124486733823, 71.15357290896941, 71.29469714455652, 71.43582138014362, 71.57694561573074, 71.71806985131784, 71.85919408690495, 72.00031832249206, 72.14144255807918, 72.28256679366628, 72.42369102925339, 72.56481526484049, 72.7059395004276, 72.84706373601472, 72.98818797160182, 73.12931220718893, 73.27043644277605, 73.41156067836314, 73.55268491395026, 73.69380914953737, 73.83493338512447, 73.97605762071159, 74.1171818562987, 74.2583060918858, 74.39943032747291, 74.54055456306003, 74.68167879864713, 74.82280303423424, 74.96392726982135, 75.10505150540845, 75.24617574099557, 75.38729997658268, 75.5284242121698, 75.6695484477569, 75.81067268334401, 75.95179691893111, 76.09292115451822, 76.23404539010534, 76.37516962569245, 76.51629386127955, 76.65741809686666, 76.79854233245376, 76.93966656804088, 77.08079080362799, 77.2219150392151, 77.3630392748022, 77.50416351038932, 77.64528774597642, 77.78641198156353, 77.92753621715065, 78.06866045273776, 78.20978468832486, 78.35090892391197, 78.49203315949907, 78.63315739508619, 78.7742816306733, 78.91540586626041, 79.05653010184751, 79.19765433743463, 79.33877857302173, 79.47990280860884, 79.62102704419596, 79.76215127978307, 79.90327551537017, 80.04439975095728, 80.18552398654438, 80.3266482221315, 80.46777245771861, 80.60889669330572, 80.75002092889282, 80.89114516447994, 81.03226940006704, 81.17339363565415, 81.31451787124126, 81.45564210682838, 81.59676634241548, 81.73789057800259, 81.87901481358969, 82.0201390491768, 82.16126328476392, 82.30238752035103, 82.44351175593813, 82.58463599152525, 82.72576022711235, 82.86688446269946, 83.00800869828657, 83.14913293387369, 83.29025716946079, 83.4313814050479, 83.572505640635, 83.71362987622211, 83.85475411180923, 83.99587834739634, 84.13700258298344, 84.27812681857056, 84.41925105415766, 84.56037528974477, 84.70149952533188, 84.842623760919, 84.9837479965061, 85.12487223209321, 85.26599646768031, 85.40712070326742, 85.54824493885454, 85.68936917444165, 85.83049341002875, 85.97161764561586, 86.11274188120296, 86.25386611679008, 86.39499035237719, 86.53611458796429, 86.6772388235514, 86.81836305913852, 86.95948729472562, 87.10061153031273, 87.24173576589985, 87.38286000148695, 87.52398423707406, 87.66510847266117, 87.80623270824827, 87.94735694383539, 88.0884811794225, 88.2296054150096, 88.37072965059672, 88.51185388618383, 88.65297812177093, 88.79410235735804, 88.93522659294516, 89.07635082853226, 89.21747506411937, 89.35859929970648, 89.49972353529358, 89.6408477708807, 89.78197200646781, 89.92309624205491, 90.06422047764202, 90.20534471322914, 90.34646894881624, 90.48759318440335, 90.62871741999047, 90.76984165557757, 90.91096589116468, 91.05209012675178, 91.19321436233889, 91.334338597926, 91.47546283351312, 91.61658706910023, 91.75771130468733, 91.89883554027443, 92.03995977586155, 92.18108401144866, 92.32220824703577, 92.46333248262289, 92.60445671820999, 92.74558095379709, 92.8867051893842, 93.02782942497132, 93.16895366055843, 93.31007789614554, 93.45120213173264, 93.59232636731974, 93.73345060290686, 93.87457483849397, 94.01569907408108, 94.1568233096682, 94.2979475452553, 94.4390717808424, 94.58019601642951, 94.72132025201662, 94.86244448760374, 95.00356872319085, 95.14469295877795, 95.28581719436505, 95.42694142995217, 95.56806566553928, 95.7091899011264, 95.85031413671351, 95.9914383723006, 96.1325626078877, 96.27368684347482, 96.41481107906193, 96.55593531464905, 96.69705955023616, 96.83818378582326, 96.97930802141036, 97.12043225699747, 97.26155649258459, 97.4026807281717, 97.54380496375882, 97.68492919934592, 97.82605343493302, 97.96717767052013, 98.10830190610724, 98.24942614169436, 98.39055037728147, 98.53167461286857, 98.67279884845567, 98.81392308404278, 98.9550473196299, 99.09617155521701, 99.23729579080413, 99.37842002639123, 99.51954426197833, 99.66066849756544, 99.80179273315255, 99.94291696873967, 100.08404120432678, 100.22516543991388, 100.36628967550098, 100.5074139110881, 100.64853814667521, 100.78966238226232, 100.93078661784944, 101.07191085343653, 101.21303508902363, 101.35415932461075, 101.49528356019786, 101.63640779578498, 101.77753203137209, 101.91865626695919, 102.05978050254629, 102.2009047381334, 102.34202897372052, 102.48315320930763, 102.62427744489474, 102.76540168048184, 102.90652591606894, 103.04765015165606, 103.18877438724317, 103.32989862283029, 103.4710228584174, 103.6121470940045, 103.7532713295916, 103.89439556517871, 104.03551980076583, 104.17664403635294, 104.31776827194005, 104.45889250752715, 104.60001674311425, 104.74114097870137, 104.88226521428848, 105.0233894498756, 105.16451368546271, 105.30563792104981, 105.44676215663691, 105.58788639222402, 105.72901062781114, 105.87013486339825, 106.01125909898536, 106.15238333457246, 106.29350757015956, 106.43463180574668, 106.57575604133379, 106.7168802769209, 106.85800451250802, 106.99912874809512, 107.14025298368222, 107.28137721926933, 107.42250145485644, 107.56362569044356, 107.70474992603067, 107.84587416161777, 107.98699839720487, 108.12812263279199, 108.2692468683791, 108.41037110396621, 108.55149533955333, 108.69261957514043, 108.83374381072753, 108.97486804631464, 109.11599228190175, 109.25711651748887, 109.39824075307598, 109.53936498866308, 109.68048922425018, 109.8216134598373, 109.96273769542441, 110.10386193101152, 110.24498616659864, 110.38611040218574, 110.52723463777284, 110.66835887335995, 110.80948310894706, 110.95060734453418, 111.09173158012129, 111.23285581570839, 111.37398005129549, 111.5151042868826, 111.65622852246972, 111.79735275805683, 111.93847699364395, 112.07960122923105, 112.22072546481814, 112.36184970040526, 112.50297393599237, 112.64409817157949, 112.7852224071666, 112.9263466427537, 113.0674708783408, 113.20859511392791, 113.34971934951503, 113.49084358510214, 113.63196782068924, 113.77309205627635, 113.91421629186345, 114.05534052745057, 114.19646476303768, 114.3375889986248, 114.4787132342119, 114.61983746979901, 114.76096170538611, 114.90208594097322, 115.04321017656034, 115.18433441214745, 115.32545864773455, 115.46658288332166, 115.60770711890876, 115.74883135449588, 115.88995559008299, 116.0310798256701, 116.1722040612572, 116.31332829684432, 116.45445253243142, 116.59557676801853, 116.73670100360565, 116.87782523919276, 117.01894947477986, 117.16007371036697, 117.30119794595407, 117.44232218154119, 117.5834464171283, 117.72457065271541, 117.86569488830251, 118.00681912388963, 118.14794335947673, 118.28906759506384, 118.43019183065095, 118.57131606623807, 118.71244030182517, 118.85356453741228, 118.99468877299938, 119.1358130085865, 119.27693724417361, 119.41806147976072, 119.55918571534782, 119.70030995093494, 119.84143418652204, 119.98255842210915, 120.12368265769626, 120.26480689328338, 120.40593112887048, 120.54705536445759, 120.68817960004469, 120.8293038356318, 120.97042807121892, 121.11155230680603, 121.25267654239313, 121.39380077798025, 121.53492501356735, 121.67604924915446, 121.81717348474157, 121.95829772032869, 122.09942195591579, 122.2405461915029, 122.38167042709, 122.52279466267711, 122.66391889826423, 122.80504313385134, 122.94616736943844, 123.08729160502554, 123.22841584061266, 123.36954007619977, 123.51066431178688, 123.651788547374, 123.79291278296111, 123.9340370185482, 124.07516125413531, 124.21628548972242, 124.35740972530954, 124.49853396089665, 124.63965819648377, 124.78078243207085, 124.92190666765796, 125.06303090324508, 125.20415513883219, 125.3452793744193, 125.48640361000642, 125.6275278455935, 125.76865208118062, 125.90977631676773, 126.05090055235485, 126.19202478794196, 126.33314902352907, 126.47427325911616, 126.61539749470327, 126.75652173029039, 126.8976459658775, 127.03877020146462, 127.17989443705173, 127.32101867263881, 127.46214290822593, 127.60326714381304, 127.74439137940016, 127.88551561498727, 128.02663985057438, 128.16776408616147, 128.30888832174858, 128.4500125573357, 128.5911367929228, 128.73226102850992, 128.87338526409704, 129.01450949968412, 129.15563373527124, 129.29675797085835, 129.43788220644547, 129.57900644203258, 129.7201306776197, 129.86125491320678, 130.0023791487939, 130.143503384381, 130.28462761996812, 130.42575185555523, 130.56687609114235, 130.70800032672943, 130.84912456231655, 130.99024879790366, 131.13137303349077, 131.2724972690779, 131.413621504665, 131.5547457402521, 131.6958699758392, 131.83699421142632, 131.97811844701343, 132.11924268260054, 132.26036691818766, 132.40149115377474, 132.54261538936186, 132.68373962494897, 132.82486386053608, 132.9659880961232, 133.1071123317103, 133.2482365672974, 133.3893608028845, 133.53048503847162, 133.67160927405874, 133.81273350964585, 133.95385774523297, 134.09498198082005, 134.23610621640717, 134.37723045199428, 134.5183546875814, 134.6594789231685, 134.80060315875562, 134.9417273943427, 135.08285162992982, 135.22397586551693, 135.36510010110405, 135.50622433669116, 135.64734857227828, 135.78847280786536, 135.92959704345247, 136.0707212790396, 136.2118455146267, 136.35296975021382, 136.49409398580093, 136.63521822138802, 136.77634245697513, 136.91746669256224, 137.05859092814936, 137.19971516373647, 137.34083939932358, 137.48196363491067, 137.62308787049778, 137.7642121060849, 137.905336341672, 138.04646057725913, 138.18758481284624, 138.32870904843332, 138.46983328402044, 138.61095751960755, 138.75208175519467, 138.89320599078178, 139.0343302263689, 139.17545446195598, 139.3165786975431, 139.4577029331302, 139.59882716871732, 139.73995140430443, 139.88107563989155, 140.02219987547863, 140.16332411106575, 140.30444834665286, 140.44557258223998, 140.5866968178271, 140.7278210534142, 140.8689452890013, 141.0100695245884, 141.15119376017552, 141.29231799576263, 141.43344223134974, 141.57456646693686, 141.71569070252394, 141.85681493811106, 141.99793917369817, 142.13906340928528, 142.2801876448724, 142.4213118804595, 142.5624361160466, 142.7035603516337, 142.84468458722083, 142.98580882280794, 143.12693305839505, 143.26805729398217, 143.40918152956925, 143.55030576515637, 143.69143000074348, 143.8325542363306, 143.9736784719177, 144.11480270750482, 144.2559269430919, 144.39705117867902, 144.53817541426614, 144.67929964985325, 144.82042388544036, 144.96154812102748, 145.10267235661456, 145.24379659220168, 145.3849208277888, 145.5260450633759, 145.66716929896302, 145.80829353455013, 145.94941777013722, 146.09054200572433, 146.23166624131144, 146.37279047689856, 146.51391471248567, 146.6550389480728, 146.79616318365987, 146.93728741924699, 147.0784116548341, 147.2195358904212, 147.36066012600833, 147.50178436159544, 147.64290859718253, 147.78403283276964, 147.92515706835675, 148.06628130394387, 148.20740553953098, 148.3485297751181, 148.48965401070518, 148.6307782462923, 148.7719024818794, 148.91302671746652, 149.05415095305364, 149.19527518864075, 149.33639942422784, 149.47752365981495, 149.61864789540206, 149.75977213098918, 149.9008963665763, 150.0420206021634, 150.1831448377505, 150.3242690733376, 150.46539330892472, 150.60651754451183, 150.74764178009895, 150.88876601568606, 151.02989025127314, 151.17101448686026, 151.31213872244737, 151.4532629580345, 151.5943871936216, 151.7355114292087, 151.8766356647958, 152.0177599003829, 152.15888413597003, 152.30000837155714, 152.44113260714425, 152.58225684273137, 152.72338107831845, 152.86450531390557, 153.00562954949268, 153.1467537850798, 153.2878780206669, 153.42900225625402, 153.5701264918411, 153.71125072742822, 153.85237496301534, 153.99349919860245, 154.13462343418956, 154.27574766977668, 154.41687190536376, 154.55799614095088, 154.699120376538, 154.8402446121251, 154.98136884771222, 155.12249308329933, 155.26361731888642, 155.40474155447353, 155.54586579006065, 155.68699002564776, 155.82811426123487, 155.969238496822, 156.11036273240907, 156.2514869679962, 156.3926112035833, 156.5337354391704, 156.67485967475753, 156.81598391034464, 156.95710814593173, 157.09823238151884, 157.23935661710595, 157.38048085269307, 157.52160508828018, 157.6627293238673, 157.80385355945438, 157.9449777950415, 158.0861020306286, 158.22722626621572, 158.36835050180284, 158.50947473738995, 158.65059897297704, 158.79172320856415, 158.93284744415126, 159.07397167973838, 159.2150959153255, 159.3562201509126, 159.4973443864997, 159.6384686220868, 159.77959285767392, 159.92071709326103, 160.06184132884815, 160.20296556443526, 160.34408980002235, 160.48521403560946, 160.62633827119657, 160.7674625067837, 160.9085867423708, 161.04971097795791, 161.190835213545, 161.3319594491321, 161.47308368471923, 161.61420792030634, 161.75533215589346, 161.89645639148057, 162.03758062706765, 162.17870486265477, 162.31982909824188, 162.460953333829, 162.6020775694161, 162.74320180500322, 162.8843260405903, 163.02545027617742, 163.16657451176454, 163.30769874735165, 163.44882298293876, 163.58994721852588, 163.73107145411296, 163.87219568970008, 164.0133199252872, 164.1544441608743, 164.29556839646142, 164.43669263204853, 164.57781686763562, 164.71894110322273, 164.86006533880985, 165.00118957439696, 165.14231380998407, 165.2834380455712, 165.42456228115827, 165.5656865167454, 165.7068107523325, 165.84793498791961, 165.98905922350673, 166.13018345909384, 166.27130769468093, 166.41243193026804, 166.55355616585516, 166.69468040144227, 166.83580463702938, 166.9769288726165, 167.11805310820358, 167.2591773437907, 167.4003015793778, 167.54142581496492, 167.68255005055204, 167.82367428613912, 167.96479852172624, 168.10592275731335, 168.24704699290047, 168.38817122848758, 168.5292954640747, 168.67041969966178, 168.8115439352489, 168.952668170836, 169.09379240642312, 169.23491664201023, 169.37604087759735, 169.51716511318443, 169.65828934877155, 169.79941358435866, 169.94053781994577, 170.0816620555329, 170.22278629112, 170.3639105267071, 170.5050347622942, 170.64615899788132, 170.78728323346843, 170.92840746905554, 171.06953170464266, 171.21065594022974, 171.35178017581686, 171.49290441140397, 171.63402864699108, 171.7751528825782, 171.9162771181653, 172.0574013537524, 172.1985255893395, 172.33964982492662, 172.48077406051374, 172.62189829610085, 172.76302253168797, 172.90414676727505, 173.04527100286217, 173.18639523844928, 173.3275194740364, 173.4686437096235, 173.60976794521062, 173.7508921807977, 173.89201641638482, 174.03314065197193, 174.17426488755905, 174.31538912314616, 174.45651335873328, 174.59763759432036, 174.73876182990747, 174.8798860654946, 175.0210103010817, 175.16213453666882, 175.30325877225593, 175.44438300784302, 175.58550724343013, 175.72663147901724, 175.86775571460436, 176.00887995019147, 176.15000418577858, 176.29112842136567, 176.43225265695278, 176.5733768925399, 176.714501128127, 176.85562536371413, 176.99674959930124, 177.13787383488832, 177.27899807047544, 177.42012230606255, 177.56124654164967, 177.70237077723678, 177.8434950128239, 177.98461924841098, 178.1257434839981, 178.2668677195852, 178.40799195517232, 178.54911619075943, 178.69024042634655, 178.83136466193363, 178.97248889752075, 179.11361313310786, 179.25473736869498, 179.3958616042821, 179.5369858398692, 179.6781100754563, 179.8192343110434, 179.96035854663052, 180.10148278221763, 180.24260701780474, 180.38373125339186, 180.52485548897894, 180.66597972456606, 180.80710396015317, 180.94822819574028, 181.0893524313274, 181.2304766669145, 181.3716009025016, 181.5127251380887, 181.65384937367583, 181.79497360926294, 181.93609784485005, 182.07722208043717, 182.21834631602425, 182.35947055161137, 182.50059478719848, 182.6417190227856, 182.7828432583727, 182.92396749395982, 183.0650917295469, 183.20621596513402, 183.34734020072113, 183.48846443630825, 183.62958867189536, 183.77071290748248, 183.91183714306956, 184.05296137865668, 184.1940856142438, 184.3352098498309, 184.47633408541802, 184.61745832100513, 184.75858255659222, 184.89970679217933, 185.04083102776644, 185.18195526335356, 185.32307949894067, 185.46420373452779, 185.60532797011487, 185.74645220570198, 185.8875764412891, 186.0287006768762, 186.16982491246333, 186.31094914805044, 186.45207338363753, 186.59319761922464, 186.73432185481175, 186.87544609039887, 187.01657032598598, 187.15769456157307, 187.29881879716018, 187.4399430327473, 187.5810672683344, 187.72219150392152, 187.86331573950864, 188.00443997509572, 188.14556421068283, 188.28668844626995, 188.42781268185706, 188.56893691744418, 188.7100611530313, 188.85118538861838, 188.9923096242055, 189.1334338597926, 189.27455809537972, 189.41568233096683, 189.55680656655395, 189.69793080214103, 189.83905503772814, 189.98017927331526, 190.12130350890237, 190.2624277444895, 190.4035519800766, 190.54467621566369, 190.6858004512508, 190.8269246868379, 190.96804892242503, 191.10917315801214, 191.25029739359925, 191.39142162918634, 191.53254586477345, 191.67367010036057, 191.81479433594768, 191.9559185715348, 192.0970428071219, 192.238167042709, 192.3792912782961, 192.52041551388322, 192.66153974947034, 192.80266398505745, 192.94378822064456, 193.08491245623165, 193.22603669181876, 193.36716092740588, 193.508285162993, 193.6494093985801, 193.79053363416722, 193.9316578697543, 194.07278210534142, 194.21390634092853, 194.35503057651565, 194.49615481210276, 194.63727904768987, 194.77840328327696, 194.91952751886407, 195.0606517544512, 195.2017759900383, 195.3429002256254, 195.48402446121253, 195.6251486967996, 195.76627293238673, 195.90739716797384, 196.04852140356095, 196.18964563914807, 196.33076987473518, 196.47189411032227, 196.61301834590938, 196.7541425814965, 196.8952668170836, 197.03639105267072, 197.17751528825784, 197.31863952384492, 197.45976375943204, 197.60088799501915, 197.74201223060626, 197.88313646619338, 198.0242607017805, 198.16538493736758, 198.3065091729547, 198.4476334085418, 198.58875764412892, 198.72988187971603, 198.87100611530315, 199.01213035089023, 199.15325458647735, 199.29437882206446, 199.43550305765157, 199.5766272932387, 199.7177515288258, 199.8588757644129, 200 ], "y": [ 12506.666666666668, 12463.37220487699, 12420.464273133397, 12377.939390105425, 12335.794115643046, 12294.025050193512, 12252.628834227795, 12211.602147676478, 12170.941709374867, 12130.64427651723, 12090.706644119902, 12051.125644493166, 12011.898146721716, 11973.021056153519, 11934.491313896984, 11896.305896326221, 11858.46181459426, 11820.956114154125, 11783.785874287552, 11746.948207641255, 11710.440259770601, 11674.259208690539, 11638.402264433655, 11602.86666861525, 11567.649694005297, 11532.748644107109, 11498.160852742698, 11463.883683644617, 11429.914530054175, 11396.250814325987, 11362.889987538654, 11329.829529111508, 11297.06694642733, 11264.599774460887, 11232.425575413241, 11200.541938351671, 11168.946478855163, 11137.63683866534, 11106.610685342719, 11075.86571192828, 11045.399636610124, 11015.21020239527, 10985.295176786425, 10955.652351463623, 10926.279541970716, 10897.17458740659, 10868.335350121019, 10839.759715415099, 10811.445591246185, 10783.390907937228, 10755.593617890458, 10728.051695305347, 10700.76313590074, 10673.725956641138, 10646.938195467019, 10620.39791102914, 10594.103182426772, 10568.052108949776, 10542.24280982447, 10516.673423963213, 10491.34210971767, 10466.247044635651, 10441.386425221515, 10416.758466700041, 10392.361402783732, 10368.193485443468, 10344.252984682513, 10320.538188313722, 10297.047401740003, 10273.778947737903, 10250.731166244297, 10227.902414146134, 10205.291065073176, 10182.895509193686, 10160.71415301303, 10138.745419175124, 10116.98774626669, 10095.43958862428, 10074.099416144029, 10052.965714094054, 10032.03698292953, 10011.311738110322, 9990.788509921174, 9970.465843294412, 9950.342297635125, 9930.416446648745, 9910.686878171062, 9891.15219400055, 9871.811009733035, 9852.661954598632, 9833.70367130094, 9814.934815858414, 9796.354057447954, 9777.960078250595, 9759.751573299338, 9741.727250329013, 9723.885829628234, 9706.226043893315, 9688.746638084205, 9671.446369282346, 9654.324006550452, 9637.378330794196, 9620.608134625727, 9604.01222222904, 9587.589409227145, 9571.338522551006, 9555.258400310231, 9539.347891665484, 9523.605856702594, 9508.031166308334, 9492.62270204784, 9477.37935604366, 9462.300030856386, 9447.383639366864, 9432.629104659954, 9418.035359909814, 9403.601348266675, 9389.326022745117, 9375.20834611378, 9361.24729078652, 9347.441838714987, 9333.790981282582, 9320.2937191998, 9306.949062400916, 9293.756029942004, 9280.713649900277, 9267.820959274715, 9255.077003887965, 9242.480838289506, 9230.031525660035, 9217.728137717098, 9205.5697546219, 9193.555464887311, 9181.68436528703, 9169.95556076592, 9158.368164351443, 9146.921297066252, 9135.614087841848, 9124.44567343335, 9113.415198335319, 9102.521814698635, 9091.764682248438, 9081.142968203052, 9070.65584719396, 9060.302501186754, 9050.082119403061, 9039.993898243458, 9030.037041211323, 9020.210758837628, 9010.514268606672, 9000.946794882715, 8991.507568837516, 8982.195828378768, 8973.0108180794, 8963.951789107743, 8955.017999158561, 8946.208712384898, 8937.523199330788, 8928.960736864743, 8920.520608114075, 8912.202102400006, 8904.004515173552, 8895.927147952192, 8887.969308257292, 8880.130309552282, 8872.40947118158, 8864.806118310233, 8857.3195818643, 8849.949198471928, 8842.694310405135, 8835.5542655223, 8828.5284172113, 8821.616124333374, 8814.816751167582, 8808.129667356008, 8801.554247849512, 8795.089872854194, 8788.735927778464, 8782.491803180717, 8776.356894717643, 8770.330603093127, 8764.412334007759, 8758.601498108916, 8752.89751094144, 8747.299792898879, 8741.807769175293, 8736.420869717633, 8731.138529178641, 8725.960186870328, 8720.885286717963, 8715.913277214597, 8711.043611376119, 8706.275746696812, 8701.609145105427, 8697.043272921765, 8692.577600813729, 8688.2116037549, 8683.944760982567, 8679.776555956247, 8675.706476316675, 8671.73401384525, 8667.85866442394, 8664.079927995663, 8660.397308525071, 8656.81031395981, 8653.318456192203, 8649.921251021362, 8646.618218115716, 8643.408880975985, 8640.292766898523, 8637.269406939115, 8634.338335877143, 8631.499092180167, 8628.751217968895, 8626.09425898253, 8623.527764544526, 8621.051287528686, 8618.664384325662, 8616.366614809813, 8614.157542306428, 8612.036733559296, 8610.00375869866, 8608.05819120949, 8606.199607900118, 8604.42758887122, 8602.741717485113, 8601.141580335412, 8599.626767216998, 8598.19687109632, 8596.851488082006, 8595.590217395813, 8594.412661343868, 8593.318425288227, 8592.307117618748, 8591.378349725243, 8590.531735969955, 8589.766893660311, 8589.083443021978, 8588.481007172191, 8587.959212093374, 8587.517686607052, 8587.15606234802, 8586.873973738795, 8586.67105796434, 8586.546954947054, 8586.501307322018, 8586.533760412518, 8586.643962205811, 8586.831563329148, 8587.09621702605, 8587.437579132842, 8587.855308055416, 8588.349064746235, 8588.918512681608, 8589.563317839158, 8590.283148675551, 8591.077676104458, 8591.946573474723, 8592.889516548788, 8593.906183481307, 8594.99625479801, 8596.159413374766, 8597.39534441687, 8598.703735438537, 8600.08427624262, 8601.536658900508, 8603.060577732262, 8604.655729286927, 8606.321812323069, 8608.058527789482, 8609.865578806122, 8611.742670645206, 8613.689510712522, 8615.705808528917, 8617.791275711985, 8619.945625957927, 8622.16857502359, 8624.45984070871, 8626.819142838309, 8629.246203245275, 8631.740745753132, 8634.302496158954, 8636.931182216484, 8639.626533619381, 8642.388281984679, 8645.216160836364, 8648.10990558916, 8651.069253532438, 8654.093943814307, 8657.18371742585, 8660.338317185526, 8663.557487723716, 8666.84097546743, 8670.18852862516, 8673.599897171876, 8677.074832834183, 8680.613089075614, 8684.214421082064, 8687.878585747374, 8691.605341659051, 8695.394449084135, 8699.245669955184, 8703.158767856421, 8707.133508009993, 8711.169657262377, 8715.266984070915, 8719.425258490472, 8723.64425216023, 8727.923738290603, 8732.263491650294, 8736.66328855345, 8741.122906846958, 8745.642125897872, 8750.220726580925, 8754.858491266199, 8759.555203806893, 8764.310649527202, 8769.124615210338, 8773.996889086633, 8778.927260821769, 8783.915521505127, 8788.961463638228, 8794.06488112331, 8799.22556925198, 8804.443324693999, 8809.717945486163, 8815.049231021285, 8820.436982037285, 8825.881000606383, 8831.381090124396, 8836.937055300119, 8842.548702144828, 8848.215837961865, 8853.938271336323, 8859.715812124832, 8865.548271445437, 8871.435461667568, 8877.377196402103, 8883.373290491527, 8889.423560000172, 8895.527822204567, 8901.685895583852, 8907.897599810303, 8914.162755739922, 8920.481185403132, 8926.852711995549, 8933.27715986884, 8939.754354521661, 8946.28412259069, 8952.866291841714, 8959.500691160838, 8966.187150545737, 8972.925501097003, 8979.715575009579, 8986.557205564255, 8993.450227119247, 9000.394475101848, 9007.389786000169, 9014.435997354938, 9021.532947751379, 9028.680476811165, 9035.87842518444, 9043.12663454192, 9050.424947567053, 9057.77320794826, 9065.171260371235, 9072.618950511329, 9080.116125025987, 9087.662631547257, 9095.258318674363, 9102.903035966357, 9110.59663393482, 9118.33896403663, 9126.12987866681, 9133.969231151412, 9141.85687574049, 9149.792667601118, 9157.776462810481, 9165.808118349016, 9173.887492093614, 9182.014442810896, 9190.18883015053, 9198.410514638614, 9206.67935767112, 9214.995221507395, 9223.357969263703, 9231.767464906849, 9240.223573247833, 9248.726159935582, 9257.275091450727, 9265.87023509941, 9274.5114590072, 9283.198632112999, 9291.931624163046, 9300.710305704955, 9309.534548081803, 9318.404223426265, 9327.319204654825, 9336.279365461995, 9345.28458031462, 9354.334724446217, 9363.429673851355, 9372.569305280105, 9381.753496232504, 9390.982124953109, 9400.255070425545, 9409.572212367157, 9418.93343122366, 9428.338608163858, 9437.787625074403, 9447.280364554597, 9456.816709911234, 9466.396545153499, 9476.01975498789, 9485.68622481321, 9495.395840715559, 9505.148489463418, 9514.944058502733, 9524.782435952076, 9534.663510597802, 9544.587171889292, 9554.553309934203, 9564.561815493778, 9574.612579978186, 9584.705495441895, 9594.840454579098, 9605.017350719163, 9615.23607782213, 9625.49653047424, 9635.798603883506, 9646.142193875314, 9656.527196888059, 9666.953509968833, 9677.42103076913, 9687.929657540592, 9698.47928913079, 9709.069824979048, 9719.701165112285, 9730.373210140904, 9741.085861254714, 9751.839020218873, 9762.632589369874, 9773.466471611575, 9784.340570411223, 9795.254789795568, 9806.209034346946, 9817.203209199442, 9828.237220035062, 9839.310973079933, 9850.424375100554, 9861.577333400051, 9872.76975581448, 9884.001550709152, 9895.272626974998, 9906.582894024941, 9917.932261790333, 9929.320640717371, 9940.747941763591, 9952.21407639436, 9963.718956579407, 9975.262494789373, 9986.844603992407, 9998.465197650767, 10010.124189717451, 10021.82149463288, 10033.557027321573, 10045.330703188865, 10057.142438117668, 10068.99214846521, 10080.87975105985, 10092.805163197896, 10104.768302640432, 10116.769087610211, 10128.807436788538, 10140.88326931218, 10152.996504770315, 10165.147063201508, 10177.33486509068, 10189.559831366132, 10201.821883396598, 10214.12094298827, 10226.456932381905, 10238.82977424993, 10251.239391693558, 10263.685708239937, 10276.168647839346, 10288.688134862357, 10301.24409409707, 10313.836450746345, 10326.465130425058, 10339.130059157387, 10351.83116337411, 10364.568369909915, 10377.341606000762, 10390.150799281228, 10402.995877781897, 10415.87676992676, 10428.793404530645, 10441.745710796644, 10454.733618313585, 10467.757057053515, 10480.815957369188, 10493.910249991593, 10507.039866027499, 10520.20473695699, 10533.404794631062, 10546.6399712692, 10559.910199457, 10573.215412143794, 10586.555542640299, 10599.930524616284, 10613.340292098246, 10626.784779467118, 10640.263921455982, 10653.777653147798, 10667.32590997318, 10680.908627708131, 10694.52574247185, 10708.177190724522, 10721.862909265154, 10735.58283522938, 10749.336906087348, 10763.12505964155, 10776.947234024734, 10790.80336769778, 10804.693399447631, 10818.617268385204, 10832.574913943363, 10846.56627587484, 10860.591294250244, 10874.649909456035, 10888.74206219252, 10902.86769347189, 10917.026744616258, 10931.219157255673, 10945.444873326222, 10959.703835068081, 10973.995985023623, 10988.3212660355, 11002.679621244793, 11017.070994089116, 11031.49532830078, 11045.95256790494, 11060.442657217776, 11074.965540844678, 11089.52116367845, 11104.109470897505, 11118.73040796411, 11133.383920622613, 11148.069954897703, 11162.788457092656, 11177.539373787644, 11192.322651837982, 11207.138238372461, 11221.986080791647, 11236.866126766206, 11251.778324235249, 11266.722621404679, 11281.698966745544, 11296.707308992416, 11311.747597141777, 11326.819780450414, 11341.923808433818, 11357.059630864627, 11372.227197771024, 11387.426459435195, 11402.657366391784, 11417.91986942635, 11433.213919573845, 11448.539468117095, 11463.896466585302, 11479.28486675254, 11494.704620636283, 11510.155680495925, 11525.63799883132, 11541.151528381337, 11556.696222122406, 11572.272033267089, 11587.87891526267, 11603.51682178973, 11619.185706760747, 11634.885524318719, 11650.616228835763, 11666.377774911747, 11682.170117372938, 11697.993211270634, 11713.84701187983, 11729.731474697888, 11745.646555443189, 11761.592210053843, 11777.568394686368, 11793.575065714396, 11809.612179727379, 11825.679693529322, 11841.777564137497, 11857.905748781188, 11874.064204900438, 11890.252890144797, 11906.471762372094, 11922.72077964721, 11938.999900240851, 11955.30908262834, 11971.648285488413, 11988.017467702024, 12004.416588351167, 12020.84560671769, 12037.304482282121, 12053.793174722516, 12070.311643913294, 12086.8598499241, 12103.437753018656, 12120.045313653653, 12136.68249247759, 12153.349250329693, 12170.045548238788, 12186.771347422207, 12203.526609284692, 12220.311295417316, 12237.125367596394, 12253.968787782425, 12270.84151811901, 12287.743520931817, 12304.674758727506, 12321.635194192719, 12338.624790193013, 12355.643509771848, 12372.691316149563, 12389.768172722355, 12406.874043061282, 12424.008890911256, 12441.172680190044, 12458.36537498728, 12475.586939563493, 12492.837338349127, 12510.116535943569, 12527.424497114189, 12544.761186795387, 12562.126570087641, 12579.520612256569, 12596.943278731977, 12614.394535106947, 12631.87434713691, 12649.38268073872, 12666.91950198973, 12684.484777126921, 12702.07847254597, 12719.700554800365, 12737.35099060053, 12755.02974681291, 12772.736790459132, 12790.472088715112, 12808.235608910189, 12826.027318526269, 12843.84718519698, 12861.695176706817, 12879.571260990286, 12897.47540613108, 12915.40758036125, 12933.367752060369, 12951.35588975472, 12969.371962116467, 12987.415937962855, 13005.487786255402, 13023.587476099094, 13041.714976741598, 13059.870257572471, 13078.053288122364, 13096.264038062256, 13114.50247720267, 13132.768575492912, 13151.06230302029, 13169.383630009379, 13187.732526821244, 13206.108963952702, 13224.512912035565, 13242.944341835911, 13261.403224253345, 13279.889530320268, 13298.403231201148, 13316.944298191795, 13335.51270271865, 13354.108416338073, 13372.731410735627, 13391.381657725391, 13410.059129249237, 13428.763797376148, 13447.495634301535, 13466.254612346536, 13485.04070395734, 13503.853881704523, 13522.694118282348, 13541.56138650812, 13560.455659321506, 13579.376909783889, 13598.325111077691, 13617.300236505751, 13636.30225949065, 13655.33115357407, 13674.386892416172, 13693.469449794939, 13712.578799605557, 13731.714915859791, 13750.877772685342, 13770.067344325242, 13789.283605137236, 13808.526529593166, 13827.79609227836, 13847.092267891041, 13866.415031241704, 13885.764357252532, 13905.140220956811, 13924.542597498317, 13943.97146213074, 13963.426790217123, 13982.908557229244, 14002.416738747064, 14021.951310458153, 14041.512248157118, 14061.099527745038, 14080.713125228905, 14100.35301672107, 14120.019178438668, 14139.711586703095, 14159.43021793944, 14179.175048675947, 14198.946055543483, 14218.743215274979, 14238.566504704917, 14258.415900768781, 14278.291380502542, 14298.192921042126, 14318.1204996229, 14338.074093579145, 14358.053680343543, 14378.059237446665, 14398.090742516462, 14418.14817327776, 14438.231507551765, 14458.340723255544, 14478.475798401541, 14498.636711097086, 14518.82343954389, 14539.035962037573, 14559.274256967174, 14579.538302814664, 14599.828078154469, 14620.14356165299, 14640.484732068151, 14660.851568248885, 14681.24404913472, 14701.662153755275, 14722.105861229804, 14742.575150766746, 14763.070001663275, 14783.590393304814, 14804.13630516463, 14824.707716803347, 14845.30460786851, 14865.926958094158, 14886.574747300361, 14907.247955392793, 14927.946562362305, 14948.670548284475, 14969.419893319184, 14990.194577710196, 15010.994581784722, 15031.819885952998, 15052.670470707888, 15073.546316624426, 15094.447404359431, 15115.373714651087, 15136.325228318523, 15157.301926261429, 15178.303789459616, 15199.330798972644, 15220.382935939402, 15241.460181577717, 15262.56251718396, 15283.689924132652, 15304.842383876063, 15326.019877943829, 15347.222387942571, 15368.449895555505, 15389.702382542047, 15410.979830737471, 15432.282222052481, 15453.609538472869, 15474.961762059133, 15496.338874946101, 15517.740859342563, 15539.16769753092, 15560.619371866786, 15582.09586477866, 15603.597158767532, 15625.123236406562, 15646.67408034068, 15668.249673286278, 15689.849998030815, 15711.475037432498, 15733.124774419906, 15754.799191991673, 15776.498273216113, 15798.222001230912, 15819.970359242754, 15841.743330526999, 15863.540898427344, 15885.363046355487, 15907.2097577908, 15929.081016279995, 15950.97680543678, 15972.89710894156, 15994.841910541087, 16016.811194048149, 16038.804943341238, 16060.823142364257, 16082.865775126162, 16104.932825700678, 16127.024278225968, 16149.140116904326, 16171.280326001859, 16193.444889848199, 16215.63379283617, 16237.847019421495, 16260.084554122492, 16282.346381519763, 16304.632486255905, 16326.942853035216, 16349.277466623378, 16371.636311847167, 16394.01937359418, 16416.426636812506, 16438.858086510474, 16461.31370775635, 16483.793485678027, 16506.29740546277, 16528.825452356923, 16551.37761166562, 16573.9538687525, 16596.554209039452, 16619.178618006317, 16641.8270811906, 16664.499584187233, 16687.196112648264, 16709.9166522826, 16732.661188855756, 16755.42970818955, 16778.222196161856, 16801.038638706348, 16823.879021812212, 16846.74333152389, 16869.631553940846, 16892.543675217268, 16915.479681561825, 16938.439559237413, 16961.4232945609, 16984.430873902857, 17007.462283687342, 17030.51751039159, 17053.596540545823, 17076.69936073296, 17099.825957588386, 17122.9763177997, 17146.1504281065, 17169.34827530008, 17192.569846223243, 17215.815127770027, 17239.08410688549, 17262.376770565454, 17285.693105856273, 17309.03309985461, 17332.396739707172, 17355.78401261051, 17379.19490581078, 17402.629406603482, 17426.087502333292, 17449.569180393763, 17473.07442822716, 17496.60323332419, 17520.155583223794, 17543.731465512945, 17567.33086782639, 17590.953777846447, 17614.600183302795, 17638.270071972234, 17661.963431678483, 17685.680250291953, 17709.42051572956, 17733.18421595447, 17756.971338975916, 17780.781872848976, 17804.615805674373, 17828.473125598237, 17852.35382081195, 17876.25787955188, 17900.185290099205, 17924.13604077972, 17948.11011996361, 17972.107516065247, 17996.128217543024, 18020.172212899102, 18044.239490679258, 18068.330039472654, 18092.443847911647, 18116.580904671613, 18140.74119847074, 18164.92471806981, 18189.131452272042, 18213.36138992288, 18237.614519909814, 18261.89083116217, 18286.190312650953, 18310.512953388617, 18334.85874242892, 18359.227668866708, 18383.619721837742, 18408.034890518527, 18432.4731641261, 18456.934531917854, 18481.418983191397, 18505.92650728431, 18530.457093574005, 18555.010731477556, 18579.587410451488, 18604.18711999162, 18628.809849632886, 18653.45558894918, 18678.12432755313, 18702.816055096, 18727.530761267437, 18752.268435795366, 18777.02906844578, 18801.812649022595, 18826.61916736746, 18851.44861335962, 18876.300976915696, 18901.176247989584, 18926.07441657225, 18950.995472691564, 18975.939406412162, 19000.90620783527, 19025.895867098523, 19050.90837437584, 19075.943719877243, 19101.001893848694, 19126.08288657196, 19151.186688364432, 19176.313289578968, 19201.462680603763, 19226.634851862156, 19251.82979381252, 19277.04749694806, 19302.287951796705, 19327.55114892093, 19352.837078917604, 19378.145732417855, 19403.477100086908, 19428.831172623937, 19454.20794076194, 19479.60739526754, 19505.029526940896, 19530.474326615516, 19555.94178515814, 19581.43189346857, 19606.944642479553, 19632.480023156615, 19658.03802649793, 19683.618643534177, 19709.2218653284, 19734.847682975862, 19760.496087603922, 19786.16707037188, 19811.86062247083, 19837.576735123566, 19863.315399584386, 19889.076607139006, 19914.8603491044, 19940.666616828676, 19966.495401690918, 19992.346695101092, 20018.220488499894, 20044.116773358597, 20070.03554117896, 20095.97678349308, 20121.940491863235, 20147.92665788181, 20173.93527317112, 20199.966329383296, 20226.01981820019, 20252.095731333193, 20278.19406052314, 20304.314797540188, 20330.457934183687, 20356.62346228204, 20382.811373692613, 20409.021660301572, 20435.25431402379, 20461.509326802712, 20487.78669061024, 20514.0863974466, 20540.40843934026 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": "$V_{md}$", "textposition": "top center", "type": "scatter", "x": [ 93.60414317185844 ], "y": [ 8586.501033599194 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "V1=70.53", "V2=124.23" ], "textposition": "bottom center", "type": "scatter", "x": [ 70.52556356904445, 124.23488981211815 ], "y": [ 10000, 10000 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Graphical Solution" }, "xaxis": { "range": [ 0, 200 ], "title": { "text": "TAS / (m/s)" } }, "yaxis": { "range": [ 0, 20000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "import cmath\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "alt=0; # Altitude\n", "\n", "mosphere = Atmosphere(alt*1000)\n", "rho = mosphere.density\n", "\n", "# Determine stall speed\n", "Vstall = np.sqrt(W / (0.5 * rho * S * Clmax))\n", "\n", "\n", "# Determine A and B\n", "A = CD0 * 0.5 * rho * S\n", "B = K * W ** 2 / 0.5 / rho / S\n", "\n", "\n", "\n", "# Flight speed vector\n", "Vs = np.linspace(Vstall[0], 200, 1000)\n", "\n", "\n", "# Define drags\n", "Dind = B * Vs**-2\n", "Dprof = A * Vs**2\n", "D = Dind + Dprof\n", "\n", "# Get minimum drag\n", "Vmd = (B/A)**.25\n", "md = A * Vmd**2 + B * Vmd**-2\n", "\n", "\n", "fig = go.Figure()\n", "# Thrust available\n", "TA = 10e3\n", "fig.add_trace(go.Scatter(x=[min(Vs), max(Vs)], y=[TA, TA], name=\"$T_A$\", mode=\"lines\"))\n", "\n", "# Get the intersection\n", "a = A\n", "b = -TA\n", "c = B\n", "flight_limit_speeds = np.sort(np.sqrt(np.roots([a, b, c])))\n", "\n", "\n", "\n", "fig.add_trace(go.Scatter(x=Vs, y=D, name=\"$T_R$\"))\n", "fig.add_trace(go.Scatter(x=Vmd, y=md, mode=\"markers+text\", text=\"$V_{md}$\", textposition=\"top center\", name=\"Annotation\"))\n", "\n", "fig.add_trace(go.Scatter(x=flight_limit_speeds, y=[TA, TA], mode=\"markers+text\", text=[f\"V1={flight_limit_speeds[0]:1.2f}\", f\"V2={flight_limit_speeds[1]:1.2f}\"], textposition=\"bottom center\", name=\"Annotation\"))\n", "\n", "\n", "\n", "fig.update_layout(\n", " title=f\"Graphical Solution\",\n", " xaxis_title=\"TAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "fig.update_xaxes(range=[0, 200])\n", "fig.update_yaxes(range=[0, 20e3])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Speed stability in cruise\n", "\n", "In the figure above, for a fixed throttle setting of 10kN, _steady_ flight is possible at $V_1$ or $V_2$. At speeds $V_1$ or $V_2$ *only* $T_A=T_R$ and there is no *excess thrust*.\n", "\n", "At speeds $V_1 < v < V_2$, there is *positive excess thrust* and at speeds $vV_1$ there is *negative excess thrust* (sometimes called *excess drag*). With positive excess thrust, the aircraft *accelerates*. With negative excess thrust the aircraft *decellerates*.\n", "\n", "#### Flight at v1\n", "\n", "Consider flight at $V_1$ - *any* velocity perturbation (e.g., due to a gust) will move the aircraft into a condition of *excess thrust*. \n", "\n", "For the case with **no pilot input**, if the aircraft speeds up, there will be positive excess thrust leading to acceleration all the way to $V_2$. If the aircraft slows down, there will be negative excess thrust leading to decelleration all the way to $V_{stall}$.\n", "\n", "**This is speed instability, and leads to increased pilot workload (requires continual throttle adjustments)**\n", "\n", "#### Flight at v2\n", "\n", "Consider flight at $V_2$ - *any* velocity perturbation (e.g., due to a gust) will move the aircraft into a condition of *excess thrust*. \n", "\n", "For the case with **no pilot input**, if the aircraft speeds up, there will be negative excess thrust leading to decelleration back to $V_2$. If the aircraft slows down, there will be postitive excess thrust leading to acceleration back to $V_{2}$.\n", "\n", "**This is a stable system, with reduced pilot workload (no required throttle adjustments)**\n", "\n", "#### Stability boundary\n", "\n", "Consider that the pilot may adjust the throttle to increase or decrease the thrust. Accordingly, if in the example given above the $T_A$ line represents the _maximum_ thrust, then the throttle could be adjusted to allow cruise to be possible at all speeds $V_1\\le v\\le V_2$.\n", "\n", "Using the reasoning above, though, it can be seen that cruise at any velocity $V\\leq V_{md}$ will be subject to a speed instability.\n", "\n", "```{admonition} Caution - the above is a simplification.\n", ":class: dropdown\n", "\n", "The description of what happens with excess thrust as described above is a *simplification* (you'll read this phrase a *lot* in Flight Mechanics).\n", "\n", "In reality, whenever there is positive excess thrust, the resulting acceleration will result in a speed increase which, for a given attitude will result in an increase in lift and hence *climb*. \n", "\n", "If the pilot wishes to maintain constant speed, they may intuitively adjust attitude via the stick/yoke which will take the aircraft out of equilibrium.\n", "```\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Aircraft Propulsion - thrust or power available\n", "\n", "In the question above, it was assumed that the thrust was constant with forward speed. This is only the case for a pure turbojet or a high bypass-ratio turbofan. Before we can go further with the methodology, a broad comparison between aircraft powerplant types needs to be made.\n", "\n", "With infinite thrust/power available, our aircraft could fly anywhere on the D vs. TAS curve, but this is not the case in reality. Thrust and power are provided by the aircraft powerplant, so some understanding of what it means to produce thrust is required.\n", "\n", "Newton's second law states that \"*force is equal to the rate of change of momentum*\". The momentum change in question is that of the fluid before and the effect of the propulsor.\n", "\n", "```{admonition} A revision of aircraft propulsion.\n", ":class: dropdown\n", "Recall that the fluid accelerates before and after the propulsor, and reaches the ultimate velocity at some downstream distance. \n", "\n", "All generalised jets, meaning any propulsor that works by accelerating a fluid provide a \\textsl{streamwise pressure discontinuity} which creates a continuous streamwise velocity variation. You may resolve the force as $F=\\Delta P\\cdot A$ or $F=\\dot{m}\\Delta V$, and these are equal to each other - they are not summative.\n", "```\n", "\n", "Defining a *jet efflux velocity*, $v_j$, as the velocity of the air when it is fully accelerated by the propulsor. Newton's second law is then:\n", "\n", "$$\\begin{aligned}\n", " T &= \\frac{\\text{d}}{\\text{d}t}\\left({m}\\cdot\\Delta v\\right)\\\\\n", " \\text{in steady flight, }\\Delta v=0\\\\\n", " &= \\dot{m}\\cdot\\Delta v \\\\\n", " &= \\dot{m}\\Delta v\\\\\n", " &= \\dot{m}\\left(v_j - V\\right)\\end{aligned}$$\n", "\n", "Considering *work done*; the work that the propulsor performs on the airframe is **useful work**, whilst any work done in providing the streamtube with velocity is **waste work**.\n", "\n", "Work is force $\\times$ displacement in the direction of the force, and power is the rate of doing work, so:\\\n", "Useful power\n", "\n", "$$\\begin{aligned}\n", " P &= T\\cdot V\\\\\n", " &= \\dot{m}\\cdot\\left(v_j - V\\right)\\cdot V \\end{aligned}$$\n", "\n", "Waste power is the rate of change of kinetic energy of the air:\n", "\n", "$$\\begin{aligned}\n", " P_{waste}=\\frac{1}{2}\\dot{m}\\left(v_j-V\\right)^2 \\end{aligned}$$\n", "\n", "Which allows the definition of *propulsive efficiency* as a measure of the propulsive power to the total power required.\n", "\n", "$$\\begin{aligned}\n", " \\eta&=\\frac{\\text{Useful (Propulsive) Power}}{\\text{Total Power Output}}\\\\\n", " &= \\frac{T\\cdot V}{T\\cdot V + \\frac{1}{2}\\dot{m}\\left(v_j-V\\right)^2 }\\\\ \n", " &= \\frac{\\dot{m}\\cdot\\left(v_j - V\\right)\\cdot V}{\\dot{m}\\cdot\\left(v_j - V\\right)\\cdot V + \\frac{1}{2}\\dot{m}\\left(v_j-V\\right)^2 }\\end{aligned}$$\n", "\n", "Noting that propulsive power is a function of the aerodynamics of the propulsor and does not include any effects such as losses in the powerplant itself.\n", "\n", "\n", "***Propellers and High Bypass-Ratio Turbofans*** have a high $\\dot{m}$ due to a large disc area, but a small $v_j$. This means:\n", "\n", "- Lower fuel consumption due to small KE increase\n", "\n", "- Rapid loss of thrust with forward speed due to small $v_j-V$\n", "\n", "These engines may be defined as **power engines** as their fuel consumption is generally linear with the power they produce. They have an associated **specific fuel consumption (SFC)** which has units of kg/s/W or lb/h/hP or equivalents.\n", "\n", "***Turbojets and Low Bypass-Ratio Turbofans*** have a small $\\dot{m}$ due to a small disc area, but a large $v_j$. This means:\n", "\n", "- High fuel consumption due to large KE increase\n", "\n", "- Little loss of thrust with forward speed due to small $v_j>>V$\n", "\n", "These engines are defined as **thrust engines** as their fuel consumption is generally linear with the thrust they produce. They have an associated **thrust specific fuel consumption (TSFC)** which has units of kg/s/N or lb/h/lbf or equivalents.\n", "\n", "#### Thrust and Power Model\n", "\n", "Since all aircraft propulsors accelerate a mass of air, it follows that their output is a function of air density/altitude - but also of many, many other factors. \n", "\n", "```{admonition} Validity of this model\n", ":class: dropdown\n", "\n", "In reality, the relationships for thrust and power for different types of engines are functions of forward speed, Mach number, density, temperature, and engine-specific factors relating to efficiency.\n", "\n", "For a detailed discussion of these effects, see Chapter 3 in \"Aircraft Performance and Design\" {cite}`Anderson:1999AP`. The summary on page 186 results in the altitude model used in \n", "\n", "```\n", "\n", "There are a myriad of different thrust and power models used for aircraft performance, but for this course, the simplest one will be used.\n", "\n", "For *thrust engines*, the altitude variation is described by:\n", "\n", "$$\\begin{aligned}\n", " \\frac{T}{T_{SL}} &= k\\cdot\\sigma^n\\label{eq:thrustmodel}\\\\\n", "\\text{where}\\\\\n", " k &: \\text{Throttle setting = 0 to 1}\\\\\n", " T_{SL} &: \\text{Thrust produced at ISA SL}\\\\\n", " \\sigma &: \\text{Density ratio} - \\frac{\\rho}{\\rho_{SL}}\\\\\n", " n &: \\text{1 if not indicated otherwise} \\end{aligned}$$\n", "\n", "For *power engines*, the altitude variation is described by:\n", "\n", "$$\\begin{aligned}\n", " \\frac{P}{P_{SL}} &= k\\cdot\\sigma^n\\\\\n", "\\text{where}\\\\\n", " k &: \\text{Throttle setting = 0 to 1}\\\\\n", " P_{SL} &: \\text{Power produced at ISA SL}\\\\\n", " \\sigma &: \\text{Density ratio} - \\frac{\\rho}{\\rho_{SL}}\\\\\n", " n &: \\text{1 if not indicated otherwise} \\end{aligned}$$\n", "\n", "Some sources list $n$ as an altitude dependent parameter that accounts for the change of lapse rate at the tropopause, whilst other list it as an engine-specific parameter. In this course, it will be used as a parameter that encompasses both - you will be able to assume $n=1.0$ unless otherwise directed." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### v1 and v2 with altitude\n", "\n", "With the thrust or power model now giving the variation of *available thrust* with altitude (with the change in density), the range of possible speeds can be determined for different altitudes.\n", "\n", "It can be appreciated that it is easier to perform this exercise in EAS rather than TAS, as there is a single $T_R$ curve in EAS.\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "scrolled": true, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/papermill.record/text/plain": "93.60414386431086" }, "metadata": { "scrapbook": { "mime_prefix": "application/papermill.record/", "name": "Vemd" } }, "output_type": "display_data" }, { "data": { "application/papermill.record/text/plain": "159.71914124998497" }, "metadata": { "scrapbook": { "mime_prefix": "application/papermill.record/", "name": "Vmd" } }, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "name": "$T_R$", "type": "scatter", "x": [ 59.016889085065394, 59.25811342031558, 59.49933775556576, 59.74056209081595, 59.98178642606613, 60.22301076131632, 60.464235096566505, 60.705459431816685, 60.94668376706687, 61.18790810231706, 61.42913243756724, 61.67035677281743, 61.91158110806761, 62.152805443317796, 62.39402977856798, 62.63525411381816, 62.87647844906835, 63.11770278431854, 63.35892711956872, 63.600151454818906, 63.84137579006909, 64.08260012531927, 64.32382446056945, 64.56504879581965, 64.80627313106983, 65.04749746632001, 65.2887218015702, 65.52994613682039, 65.77117047207057, 66.01239480732075, 66.25361914257094, 66.49484347782112, 66.7360678130713, 66.9772921483215, 67.21851648357168, 67.45974081882186, 67.70096515407205, 67.94218948932223, 68.18341382457241, 68.42463815982259, 68.66586249507279, 68.90708683032297, 69.14831116557315, 69.38953550082334, 69.63075983607352, 69.8719841713237, 70.1132085065739, 70.35443284182408, 70.59565717707426, 70.83688151232445, 71.07810584757463, 71.31933018282481, 71.56055451807501, 71.80177885332519, 72.04300318857537, 72.28422752382556, 72.52545185907574, 72.76667619432592, 73.0079005295761, 73.2491248648263, 73.49034920007648, 73.73157353532666, 73.97279787057685, 74.21402220582704, 74.45524654107722, 74.6964708763274, 74.93769521157759, 75.17891954682777, 75.42014388207795, 75.66136821732815, 75.90259255257833, 76.1438168878285, 76.3850412230787, 76.62626555832888, 76.86748989357906, 77.10871422882926, 77.34993856407944, 77.59116289932962, 77.83238723457981, 78.07361156982999, 78.31483590508017, 78.55606024033037, 78.79728457558055, 79.03850891083073, 79.27973324608092, 79.5209575813311, 79.76218191658128, 80.00340625183146, 80.24463058708166, 80.48585492233184, 80.72707925758202, 80.9683035928322, 81.2095279280824, 81.45075226333257, 81.69197659858276, 81.93320093383295, 82.17442526908313, 82.41564960433331, 82.6568739395835, 82.89809827483369, 83.13932261008387, 83.38054694533406, 83.62177128058424, 83.86299561583442, 84.10421995108462, 84.3454442863348, 84.58666862158498, 84.82789295683517, 85.06911729208535, 85.31034162733553, 85.55156596258573, 85.79279029783591, 86.03401463308609, 86.27523896833627, 86.51646330358646, 86.75768763883664, 86.99891197408682, 87.240136309337, 87.4813606445872, 87.72258497983738, 87.96380931508756, 88.20503365033775, 88.44625798558793, 88.68748232083811, 88.92870665608831, 89.16993099133849, 89.41115532658867, 89.65237966183886, 89.89360399708904, 90.13482833233923, 90.37605266758942, 90.6172770028396, 90.85850133808978, 91.09972567333998, 91.34095000859016, 91.58217434384034, 91.82339867909053, 92.06462301434071, 92.30584734959089, 92.54707168484109, 92.78829602009125, 93.02952035534145, 93.27074469059164, 93.51196902584181, 93.753193361092, 93.99441769634218, 94.23564203159236, 94.47686636684256, 94.71809070209274, 94.95931503734292, 95.20053937259311, 95.4417637078433, 95.68298804309347, 95.92421237834367, 96.16543671359385, 96.40666104884403, 96.64788538409422, 96.8891097193444, 97.13033405459458, 97.37155838984478, 97.61278272509496, 97.85400706034514, 98.09523139559533, 98.33645573084551, 98.5776800660957, 98.81890440134589, 99.06012873659606, 99.30135307184625, 99.54257740709645, 99.78380174234661, 100.0250260775968, 100.266250412847, 100.50747474809717, 100.74869908334736, 100.98992341859754, 101.23114775384772, 101.47237208909792, 101.7135964243481, 101.95482075959828, 102.19604509484847, 102.43726943009865, 102.67849376534883, 102.91971810059903, 103.16094243584921, 103.40216677109939, 103.64339110634958, 103.88461544159976, 104.12583977684994, 104.36706411210014, 104.60828844735032, 104.8495127826005, 105.0907371178507, 105.33196145310086, 105.57318578835105, 105.81441012360125, 106.05563445885142, 106.29685879410161, 106.5380831293518, 106.77930746460197, 107.02053179985217, 107.26175613510235, 107.50298047035253, 107.74420480560272, 107.9854291408529, 108.22665347610308, 108.46787781135328, 108.70910214660346, 108.95032648185364, 109.19155081710383, 109.43277515235401, 109.67399948760419, 109.91522382285439, 110.15644815810457, 110.39767249335475, 110.63889682860494, 110.88012116385512, 111.1213454991053, 111.3625698343555, 111.60379416960568, 111.84501850485586, 112.08624284010605, 112.32746717535622, 112.56869151060641, 112.80991584585661, 113.05114018110677, 113.29236451635697, 113.53358885160715, 113.77481318685733, 114.01603752210752, 114.2572618573577, 114.49848619260788, 114.73971052785808, 114.98093486310826, 115.22215919835844, 115.46338353360863, 115.70460786885882, 115.945832204109, 116.18705653935919, 116.42828087460937, 116.66950520985955, 116.91072954510975, 117.15195388035993, 117.3931782156101, 117.6344025508603, 117.87562688611048, 118.11685122136066, 118.35807555661086, 118.59929989186102, 118.84052422711122, 119.08174856236141, 119.32297289761158, 119.56419723286177, 119.80542156811197, 120.04664590336213, 120.28787023861233, 120.52909457386251, 120.77031890911269, 121.01154324436288, 121.25276757961306, 121.49399191486324, 121.73521625011344, 121.97644058536362, 122.2176649206138, 122.458889255864, 122.70011359111417, 122.94133792636435, 123.18256226161455, 123.42378659686472, 123.66501093211491, 123.9062352673651, 124.14745960261527, 124.38868393786547, 124.62990827311566, 124.87113260836583, 125.11235694361602, 125.35358127886622, 125.59480561411638, 125.83602994936658, 126.07725428461677, 126.31847861986694, 126.55970295511713, 126.80092729036733, 127.04215162561749, 127.28337596086769, 127.52460029611788, 127.76582463136805, 128.00704896661824, 128.24827330186844, 128.4894976371186, 128.7307219723688, 128.97194630761896, 129.21317064286916, 129.45439497811935, 129.69561931336952, 129.9368436486197, 130.1780679838699, 130.41929231912007, 130.66051665437027, 130.90174098962046, 131.14296532487063, 131.38418966012082, 131.62541399537102, 131.86663833062119, 132.10786266587138, 132.34908700112157, 132.59031133637174, 132.83153567162194, 133.07276000687213, 133.3139843421223, 133.5552086773725, 133.79643301262269, 134.03765734787285, 134.27888168312305, 134.52010601837324, 134.7613303536234, 135.0025546888736, 135.2437790241238, 135.48500335937396, 135.72622769462416, 135.96745202987432, 136.20867636512452, 136.4499007003747, 136.69112503562488, 136.93234937087507, 137.17357370612527, 137.41479804137543, 137.65602237662563, 137.89724671187582, 138.138471047126, 138.37969538237618, 138.62091971762638, 138.86214405287654, 139.10336838812674, 139.34459272337693, 139.5858170586271, 139.8270413938773, 140.0682657291275, 140.30949006437766, 140.55071439962785, 140.79193873487804, 141.0331630701282, 141.2743874053784, 141.5156117406286, 141.75683607587877, 141.99806041112896, 142.23928474637913, 142.48050908162932, 142.72173341687952, 142.96295775212968, 143.20418208737988, 143.44540642263007, 143.68663075788024, 143.92785509313043, 144.16907942838063, 144.4103037636308, 144.651528098881, 144.89275243413118, 145.13397676938135, 145.37520110463154, 145.61642543988174, 145.8576497751319, 146.0988741103821, 146.3400984456323, 146.58132278088246, 146.82254711613265, 147.06377145138285, 147.30499578663301, 147.5462201218832, 147.7874444571334, 148.02866879238357, 148.26989312763376, 148.51111746288393, 148.75234179813413, 148.99356613338432, 149.2347904686345, 149.47601480388468, 149.71723913913488, 149.95846347438504, 150.19968780963524, 150.44091214488543, 150.6821364801356, 150.9233608153858, 151.164585150636, 151.40580948588615, 151.64703382113635, 151.88825815638654, 152.1294824916367, 152.3707068268869, 152.6119311621371, 152.85315549738726, 153.09437983263746, 153.33560416788765, 153.57682850313782, 153.818052838388, 154.0592771736382, 154.30050150888837, 154.54172584413857, 154.78295017938876, 155.02417451463893, 155.26539884988912, 155.5066231851393, 155.74784752038948, 155.98907185563968, 156.23029619088985, 156.47152052614004, 156.71274486139023, 156.9539691966404, 157.1951935318906, 157.4364178671408, 157.67764220239096, 157.91886653764115, 158.16009087289135, 158.4013152081415, 158.6425395433917, 158.8837638786419, 159.12498821389207, 159.36621254914226, 159.60743688439246, 159.84866121964262, 160.08988555489282, 160.331109890143, 160.57233422539318, 160.81355856064337, 161.05478289589357, 161.29600723114373, 161.53723156639393, 161.7784559016441, 162.0196802368943, 162.26090457214448, 162.50212890739465, 162.74335324264484, 162.98457757789504, 163.2258019131452, 163.4670262483954, 163.7082505836456, 163.94947491889576, 164.19069925414595, 164.43192358939615, 164.67314792464632, 164.9143722598965, 165.1555965951467, 165.39682093039687, 165.63804526564707, 165.87926960089726, 166.12049393614743, 166.36171827139762, 166.60294260664782, 166.84416694189798, 167.08539127714818, 167.32661561239837, 167.56783994764854, 167.80906428289873, 168.0502886181489, 168.2915129533991, 168.5327372886493, 168.77396162389945, 169.01518595914965, 169.25641029439984, 169.49763462965, 169.7388589649002, 169.9800833001504, 170.22130763540056, 170.46253197065076, 170.70375630590095, 170.94498064115112, 171.1862049764013, 171.4274293116515, 171.66865364690167, 171.90987798215187, 172.15110231740206, 172.39232665265223, 172.63355098790242, 172.87477532315262, 173.11599965840279, 173.35722399365298, 173.59844832890317, 173.83967266415334, 174.08089699940354, 174.32212133465373, 174.5633456699039, 174.8045700051541, 175.04579434040426, 175.28701867565445, 175.52824301090465, 175.7694673461548, 176.010691681405, 176.2519160166552, 176.49314035190537, 176.73436468715556, 176.97558902240576, 177.21681335765592, 177.45803769290612, 177.6992620281563, 177.94048636340648, 178.18171069865667, 178.42293503390687, 178.66415936915703, 178.90538370440723, 179.14660803965742, 179.3878323749076, 179.62905671015778, 179.87028104540798, 180.11150538065814, 180.35272971590834, 180.59395405115853, 180.8351783864087, 181.0764027216589, 181.31762705690906, 181.55885139215926, 181.80007572740945, 182.04130006265962, 182.2825243979098, 182.52374873316, 182.76497306841017, 183.00619740366037, 183.24742173891056, 183.48864607416073, 183.72987040941092, 183.97109474466112, 184.21231907991128, 184.45354341516148, 184.69476775041167, 184.93599208566184, 185.17721642091203, 185.41844075616223, 185.6596650914124, 185.9008894266626, 186.14211376191278, 186.38333809716295, 186.62456243241314, 186.86578676766334, 187.1070111029135, 187.3482354381637, 187.5894597734139, 187.83068410866406, 188.07190844391425, 188.31313277916445, 188.55435711441461, 188.7955814496648, 189.036805784915, 189.27803012016517, 189.51925445541536, 189.76047879066556, 190.00170312591572, 190.24292746116592, 190.4841517964161, 190.72537613166628, 190.96660046691647, 191.20782480216667, 191.44904913741684, 191.69027347266703, 191.93149780791722, 192.1727221431674, 192.41394647841759, 192.65517081366775, 192.89639514891795, 193.13761948416814, 193.3788438194183, 193.6200681546685, 193.8612924899187, 194.10251682516886, 194.34374116041906, 194.58496549566925, 194.82618983091942, 195.0674141661696, 195.3086385014198, 195.54986283666997, 195.79108717192017, 196.03231150717036, 196.27353584242053, 196.51476017767072, 196.75598451292092, 196.99720884817108, 197.23843318342128, 197.47965751867147, 197.72088185392164, 197.96210618917183, 198.20333052442203, 198.4445548596722, 198.6857791949224, 198.92700353017256, 199.16822786542275, 199.40945220067294, 199.6506765359231, 199.8919008711733, 200.1331252064235, 200.37434954167367, 200.61557387692386, 200.85679821217406, 201.09802254742422, 201.33924688267442, 201.5804712179246, 201.82169555317478, 202.06291988842497, 202.30414422367517, 202.54536855892533, 202.78659289417553, 203.02781722942572, 203.2690415646759, 203.51026589992608, 203.75149023517628, 203.99271457042644, 204.23393890567664, 204.47516324092683, 204.716387576177, 204.9576119114272, 205.1988362466774, 205.44006058192755, 205.68128491717775, 205.92250925242791, 206.1637335876781, 206.4049579229283, 206.64618225817847, 206.88740659342866, 207.12863092867886, 207.36985526392903, 207.61107959917922, 207.85230393442941, 208.09352826967958, 208.33475260492978, 208.57597694017997, 208.81720127543014, 209.05842561068033, 209.29964994593053, 209.5408742811807, 209.7820986164309, 210.02332295168108, 210.26454728693125, 210.50577162218144, 210.74699595743164, 210.9882202926818, 211.229444627932, 211.4706689631822, 211.71189329843236, 211.95311763368255, 212.19434196893272, 212.4355663041829, 212.6767906394331, 212.91801497468327, 213.15923930993347, 213.40046364518366, 213.64168798043383, 213.88291231568402, 214.12413665093422, 214.36536098618438, 214.60658532143458, 214.84780965668477, 215.08903399193494, 215.33025832718513, 215.57148266243533, 215.8127069976855, 216.0539313329357, 216.29515566818588, 216.53638000343605, 216.77760433868625, 217.01882867393644, 217.2600530091866, 217.5012773444368, 217.742501679687, 217.98372601493716, 218.22495035018736, 218.46617468543752, 218.70739902068772, 218.9486233559379, 219.18984769118808, 219.43107202643827, 219.67229636168847, 219.91352069693863, 220.15474503218883, 220.39596936743902, 220.6371937026892, 220.87841803793938, 221.11964237318958, 221.36086670843974, 221.60209104368994, 221.84331537894013, 222.0845397141903, 222.3257640494405, 222.5669883846907, 222.80821271994085, 223.04943705519105, 223.29066139044124, 223.5318857256914, 223.7731100609416, 224.0143343961918, 224.25555873144197, 224.49678306669216, 224.73800740194235, 224.97923173719252, 225.22045607244272, 225.46168040769288, 225.70290474294308, 225.94412907819327, 226.18535341344344, 226.42657774869363, 226.66780208394383, 226.909026419194, 227.1502507544442, 227.39147508969438, 227.63269942494455, 227.87392376019474, 228.11514809544494, 228.3563724306951, 228.5975967659453, 228.8388211011955, 229.08004543644566, 229.32126977169585, 229.56249410694605, 229.8037184421962, 230.0449427774464, 230.2861671126966, 230.52739144794677, 230.76861578319696, 231.00984011844716, 231.25106445369732, 231.49228878894752, 231.73351312419769, 231.97473745944788, 232.21596179469807, 232.45718612994824, 232.69841046519844, 232.93963480044863, 233.1808591356988, 233.422083470949, 233.66330780619919, 233.90453214144935, 234.14575647669955, 234.38698081194974, 234.6282051471999, 234.8694294824501, 235.1106538177003, 235.35187815295046, 235.59310248820066, 235.83432682345085, 236.07555115870102, 236.3167754939512, 236.5579998292014, 236.79922416445157, 237.04044849970177, 237.28167283495196, 237.52289717020213, 237.76412150545232, 238.0053458407025, 238.24657017595268, 238.48779451120288, 238.72901884645304, 238.97024318170324, 239.21146751695343, 239.4526918522036, 239.6939161874538, 239.935140522704, 240.17636485795416, 240.41758919320435, 240.65881352845454, 240.9000378637047, 241.1412621989549, 241.3824865342051, 241.62371086945527, 241.86493520470546, 242.10615953995566, 242.34738387520582, 242.58860821045602, 242.8298325457062, 243.07105688095638, 243.31228121620657, 243.55350555145677, 243.79472988670693, 244.03595422195713, 244.2771785572073, 244.5184028924575, 244.75962722770768, 245.00085156295785, 245.24207589820804, 245.48330023345824, 245.7245245687084, 245.9657489039586, 246.2069732392088, 246.44819757445896, 246.68942190970915, 246.93064624495935, 247.17187058020951, 247.4130949154597, 247.6543192507099, 247.89554358596007, 248.13676792121026, 248.37799225646046, 248.61921659171063, 248.86044092696082, 249.10166526221101, 249.34288959746118, 249.58411393271138, 249.82533826796157, 250.06656260321174, 250.30778693846193, 250.54901127371213, 250.7902356089623, 251.0314599442125, 251.27268427946265, 251.51390861471285, 251.75513294996304, 251.9963572852132, 252.2375816204634, 252.4788059557136, 252.72003029096376, 252.96125462621396, 253.20247896146415, 253.44370329671432, 253.6849276319645, 253.9261519672147, 254.16737630246487, 254.40860063771507, 254.64982497296526, 254.89104930821543, 255.13227364346562, 255.37349797871582, 255.61472231396598, 255.85594664921618, 256.09717098446635, 256.33839531971654, 256.57961965496673, 256.82084399021693, 257.06206832546707, 257.30329266071726, 257.54451699596746, 257.78574133121765, 258.02696566646785, 258.268190001718, 258.5094143369682, 258.7506386722184, 258.99186300746857, 259.23308734271876, 259.47431167796896, 259.7155360132191, 259.9567603484693, 260.1979846837195, 260.4392090189697, 260.6804333542199, 260.92165768947007, 261.1628820247202, 261.4041063599704, 261.6453306952206, 261.8865550304708, 262.127779365721, 262.3690037009712, 262.6102280362213, 262.8514523714715, 263.0926767067217, 263.3339010419719, 263.5751253772221, 263.81634971247223, 264.0575740477224, 264.2987983829726, 264.5400227182228, 264.781247053473, 265.0224713887232, 265.26369572397334, 265.50492005922354, 265.74614439447373, 265.9873687297239, 266.2285930649741, 266.4698174002243, 266.71104173547445, 266.95226607072465, 267.19349040597484, 267.43471474122504, 267.67593907647523, 267.9171634117254, 268.15838774697556, 268.39961208222576, 268.64083641747595, 268.88206075272615, 269.12328508797634, 269.36450942322654, 269.6057337584767, 269.84695809372687, 270.08818242897706, 270.32940676422726, 270.57063109947745, 270.8118554347276, 271.0530797699778, 271.294304105228, 271.5355284404782, 271.77675277572837, 272.01797711097856, 272.2592014462287, 272.5004257814789, 272.7416501167291, 272.9828744519793, 273.2240987872295, 273.4653231224797, 273.7065474577298, 273.94777179298, 274.1889961282302, 274.4302204634804, 274.6714447987306, 274.9126691339808, 275.1538934692309, 275.3951178044811, 275.6363421397313, 275.8775664749815, 276.1187908102317, 276.3600151454819, 276.60123948073203, 276.8424638159822, 277.0836881512324, 277.3249124864826, 277.5661368217328, 277.80736115698295, 278.04858549223314, 278.28980982748334, 278.53103416273353, 278.7722584979837, 279.0134828332339, 279.25470716848406, 279.49593150373425, 279.73715583898445, 279.97838017423464, 280.21960450948484, 280.46082884473503, 280.70205317998517, 280.94327751523537, 281.18450185048556, 281.42572618573575, 281.66695052098595, 281.90817485623614, 282.1493991914863, 282.3906235267365, 282.63184786198667, 282.87307219723687, 283.11429653248706, 283.3555208677372, 283.5967452029874, 283.8379695382376, 284.0791938734878, 284.320418208738, 284.56164254398817, 284.8028668792383, 285.0440912144885, 285.2853155497387, 285.5265398849889, 285.7677642202391, 286.0089885554893, 286.2502128907394, 286.4914372259896, 286.7326615612398, 286.97388589649, 287.2151102317402, 287.4563345669904, 287.69755890224053, 287.9387832374907, 288.1800075727409, 288.4212319079911, 288.6624562432413, 288.9036805784915, 289.14490491374164, 289.38612924899184, 289.62735358424203, 289.8685779194922, 290.1098022547424, 290.35102658999256, 290.59225092524275, 290.83347526049295, 291.07469959574314, 291.31592393099334, 291.55714826624353, 291.79837260149367, 292.03959693674386, 292.28082127199406, 292.52204560724425, 292.76326994249445, 293.00449427774464, 293.2457186129948, 293.486942948245, 293.72816728349517, 293.96939161874536, 294.21061595399556, 294.45184028924575, 294.6930646244959, 294.9342889597461, 295.1755132949963, 295.4167376302465, 295.65796196549667, 295.89918630074686, 296.140410635997, 296.3816349712472, 296.6228593064974, 296.8640836417476, 297.1053079769978, 297.3465323122479, 297.5877566474981, 297.8289809827483, 298.0702053179985, 298.3114296532487, 298.5526539884989, 298.793878323749, 299.0351026589992, 299.2763269942494, 299.5175513294996, 299.7587756647498, 300 ], "y": [ 12506.666666666666, 12432.897758554724, 12360.250976317275, 12288.709151804478, 12218.255461390341, 12148.873417709352, 12080.546861623454, 12013.259954411995, 11946.99717017762, 11881.743288461363, 11817.483387060302, 11754.202835041478, 11691.88728594601, 11630.52267117746, 11570.095193568783, 11510.591321122383, 11451.99778091794, 11394.301553182919, 11337.489865520796, 11281.550187292243, 11226.470224144632, 11172.237912685421, 11118.841415295114, 11066.269115075596, 11014.5096109299, 10963.551712769384, 10913.38443684471, 10863.997001196878, 10815.378821224818, 10767.519505366185, 10720.40885088801, 10674.03683978408, 10628.393634775883, 10583.469575414238, 10539.25517427867, 10495.741113271728, 10452.918240005572, 10410.777564278222, 10369.310254636886, 10328.50763502598, 10288.361181517408, 10248.86251912084, 10210.003418671731, 10171.775793794963, 10134.171697941958, 10097.183321499295, 10060.80298896683, 10025.02315620344, 9989.836407738509, 9955.23545414741, 9921.213129489244, 9887.762388805098, 9854.876305675278, 9822.548069833867, 9790.770984839113, 9759.538465798134, 9728.844037144525, 9698.681330467434, 9669.044082390776, 9639.926132501245, 9611.321421323883, 9583.223988343885, 9555.627970073547, 9528.52759816307, 9501.917197554172, 9475.79118467537, 9450.144065677843, 9424.970434710875, 9400.264972235835, 9376.022443377726, 9352.237696313357, 9328.905660695193, 9306.021346109985, 9283.579840571343, 9261.576309045333, 9240.005992008326, 9218.864204036301, 9198.146332424763, 9177.84783583859, 9157.964242991002, 9138.491151351, 9119.424225878529, 9100.759197786712, 9082.491863330473, 9064.618082620942, 9047.133778464984, 9030.034935229254, 9013.317597728204, 8996.977870135448, 8981.01191491793, 8965.415951792362, 8950.186256703366, 8935.319160822872, 8920.8110495702, 8906.658361652371, 8892.857588124172, 8879.405271467514, 8866.298004689606, 8853.532430439538, 8841.105240142839, 8829.013173153562, 8817.253015923543, 8805.821601188403, 8794.715807169898, 8783.932556794283, 8773.468816926295, 8763.3215976184, 8753.487951374971, 8743.964972431044, 8734.749796045335, 8725.839597807184, 8717.23159295714, 8708.923035720825, 8700.911218655863, 8693.193472011493, 8685.76716310067, 8678.6296956843, 8671.7785093674, 8665.211079006884, 8658.92491413075, 8652.917558368381, 8647.186588891744, 8641.72961586725, 8636.544281918033, 8631.628261596416, 8626.979260866361, 8622.595016595686, 8618.473296057822, 8614.611896442919, 8611.008644378106, 8607.661395456686, 8604.568033776113, 8601.726471484535, 8599.134648335717, 8596.790531252214, 8594.692113896546, 8592.837416250286, 8591.224484200833, 8589.851389135747, 8588.716227544468, 8587.817120627285, 8587.152213911377, 8586.719676873814, 8586.517702571335, 8586.544507276813, 8586.79833012222, 8587.277432747986, 8587.980098958622, 8588.904634384482, 8590.049366149502, 8591.41264254487, 8592.992832708413, 8594.788326309676, 8596.797533240515, 8599.018883311115, 8601.45082595135, 8604.091829917314, 8606.940383003004, 8609.994991756976, 8613.254181203913, 8616.71649457103, 8620.380493019164, 8624.244755378491, 8628.307877888803, 8632.568473944186, 8637.02517384209, 8641.676624536662, 8646.521489396255, 8651.55844796506, 8656.786195728766, 8662.203443884162, 8667.808919112624, 8673.601363357397, 8679.57953360461, 8685.742201667941, 8692.088153976878, 8698.616191368492, 8705.325128882672, 8712.213795560732, 8719.281034247364, 8726.52570139582, 8733.946666876334, 8741.542813787648, 8749.313038271635, 8757.256249330952, 8765.371368649645, 8773.657330416678, 8782.113081152309, 8790.7375795373, 8799.529796244833, 8808.488713775178, 8817.61332629298, 8826.902639467175, 8836.355670313449, 8845.97144703921, 8855.749008891033, 8865.687406004517, 8875.785699256525, 8886.04296011975, 8896.458270519593, 8907.030722693258, 8917.759419051092, 8928.643472040076, 8939.682004009444, 8950.874147078426, 8962.219043006005, 8973.715843062728, 8985.363707904486, 8997.161807448252, 9009.109320749732, 9021.205435882881, 9033.449349821303, 9045.840268321428, 9058.377405807512, 9071.059985258351, 9083.887238095753, 9096.85840407468, 9109.972731175061, 9123.22947549525, 9136.627901147076, 9150.167280152476, 9163.846892341682, 9177.666025252944, 9191.62397403373, 9205.720041343417, 9219.953537257432, 9234.323779172799, 9248.830091715114, 9263.471806646867, 9278.248262777142, 9293.15880587263, 9308.20278856996, 9323.379570289313, 9338.6885171493, 9354.129001883082, 9369.700403755724, 9385.402108482725, 9401.233508149773, 9417.194001133616, 9433.282992024107, 9449.499891547373, 9465.844116490067, 9482.315089624733, 9498.912239636247, 9515.635001049264, 9532.482814156763, 9549.455124949567, 9566.551385046876, 9583.771051627806, 9601.113587363861, 9618.578460352388, 9636.165144050972, 9653.873117212728, 9671.70186382253, 9689.650873034127, 9707.719639108123, 9725.907661350848, 9744.214444054065, 9762.639496435522, 9781.182332580323, 9799.842471383123, 9818.619436491103, 9837.512756247765, 9856.52196363746, 9875.646596230708, 9894.886196130266, 9914.240309917917, 9933.708488602002, 9953.290287565667, 9972.985266515805, 9992.792989432697, 10012.713024520346, 10032.744944157466, 10052.888324849133, 10073.142747179121, 10093.507795762825, 10113.983059200862, 10134.56813003328, 10155.262604694366, 10176.066083468073, 10196.978170444047, 10217.998473474212, 10239.126604129959, 10260.362177659892, 10281.704812948134, 10303.154132473164, 10324.70976226725, 10346.37133187635, 10368.138474320573, 10390.010826055175, 10411.988026932027, 10434.069720161613, 10456.255552275503, 10478.54517308934, 10500.93823566629, 10523.434396280962, 10546.033314383803, 10568.73465256596, 10591.538076524579, 10614.443255028551, 10637.44985988472, 10660.557565904504, 10683.766050870929, 10707.074995506133, 10730.48408343923, 10753.993001174611, 10777.601438060661, 10801.309086258827, 10825.11564071312, 10849.020799119999, 10873.02426189859, 10897.12573216135, 10921.324915685043, 10945.621520882098, 10970.01525877233, 10994.505842955023, 11019.092989581333, 11043.776417327055, 11068.55584736574, 11093.431003342106, 11118.40161134583, 11143.467399885609, 11168.628099863585, 11193.883444550074, 11219.233169558589, 11244.677012821185, 11270.214714564107, 11295.846017283726, 11321.570665722777, 11347.388406846885, 11373.298989821378, 11399.302165988367, 11425.397688844141, 11451.585314016791, 11477.864799244124, 11504.235904351855, 11530.698391232056, 11557.252023821833, 11583.896568082317, 11610.631791977848, 11637.457465455454, 11664.373360424548, 11691.379250736874, 11718.474912166686, 11745.660122391191, 11772.93466097118, 11800.298309331918, 11827.750850744256, 11855.29207030595, 11882.921754923236, 11910.639693292569, 11938.445675882629, 11966.3394949165, 11994.320944354076, 12022.389819874672, 12050.545918859838, 12078.789040376345, 12107.118985159424, 12135.535555596158, 12164.03855570907, 12192.627791139905, 12221.303069133628, 12250.064198522552, 12278.910989710681, 12307.843254658255, 12336.860806866413, 12365.963461362086, 12395.151034683038, 12424.423344863082, 12453.780211417454, 12483.221455328385, 12512.746899030788, 12542.356366398173, 12572.049682728635, 12601.826674731092, 12631.687170511615, 12661.630999559935, 12691.657992736093, 12721.767982257265, 12751.960801684696, 12782.236285910803, 12812.594271146441, 12843.034594908253, 12873.55709600623, 12904.161614531364, 12934.847991843442, 12965.616070559001, 12996.465694539393, 13027.396708878983, 13058.408959893484, 13089.502295108443, 13120.676563247785, 13151.931614222574, 13183.267299119821, 13214.68347019146, 13246.179980843417, 13277.75668562483, 13309.41344021735, 13341.150101424579, 13372.966527161627, 13404.862576444766, 13436.838109381217, 13468.89298715902, 13501.027072037032, 13533.240227335054, 13565.532317424002, 13597.903207716237, 13630.352764656007, 13662.88085570993, 13695.487349357634, 13728.172115082492, 13760.935023362419, 13793.775945660807, 13826.694754417547, 13859.691323040117, 13892.765525894805, 13925.917238298018, 13959.146336507645, 13992.452697714558, 14025.836200034182, 14059.296722498148, 14092.834145046045, 14126.448348517253, 14160.139214642875, 14193.90662603771, 14227.750466192381, 14261.670619465474, 14295.66697107581, 14329.739407094765, 14363.887814438682, 14398.11208086138, 14432.412094946696, 14466.78774610115, 14501.238924546664, 14535.765521313344, 14570.367428232366, 14605.044537928921, 14639.796743815219, 14674.623940083577, 14709.526021699596, 14744.502884395366, 14779.554424662778, 14814.680539746889, 14849.881127639346, 14885.156087071891, 14920.50531750994, 14955.928719146184, 14991.426192894316, 15026.99764038277, 15062.64296394855, 15098.362066631109, 15134.154852166314, 15170.021224980417, 15205.961090184162, 15241.974353566882, 15278.060921590682, 15314.22070138472, 15350.453600739453, 15386.759528101033, 15423.138392565717, 15459.590103874309, 15496.114572406706, 15532.711709176483, 15569.381425825495, 15606.123634618583, 15642.938248438311, 15679.825180779744, 15716.784345745285, 15753.815658039592, 15790.91903296448, 15828.09438641393, 15865.341634869143, 15902.660695393603, 15940.051485628202, 15977.51392378648, 16015.047928649781, 16052.653419562575, 16090.330316427779, 16128.078539702092, 16165.898010391433, 16203.788650046405, 16241.750380757754, 16279.783125151967, 16317.886806386801, 16356.061348146955, 16394.306674639723, 16432.6227105907, 16471.00938123954, 16509.466612335757, 16547.99433013455, 16586.592461392665, 16625.260933364338, 16663.999673797207, 16702.80861092833, 16741.68767348021, 16780.63679065684, 16819.655892139832, 16858.744908084525, 16897.903769116194, 16937.13240632623, 16976.43075126841, 17015.79873595517, 17055.236292853908, 17094.743354883372, 17134.31985541, 17173.965728244373, 17213.68090763766, 17253.465328278075, 17293.31892528746, 17333.24163421775, 17373.23339104763, 17413.294132179108, 17453.42379443417, 17493.62231505146, 17533.889631682992, 17574.22568239087, 17614.630405644057, 17655.103740315204, 17695.645625677436, 17736.256001401223, 17776.93480755128, 17817.681984583443, 17858.49747334164, 17899.38121505487, 17940.333151334147, 17981.35322416959, 18022.441375927418, 18063.597549347054, 18104.82168753823, 18146.113733978123, 18187.47363250848, 18228.901327332824, 18270.396763013658, 18311.959884469707, 18353.590636973146, 18395.288966146913, 18437.05481796199, 18478.888138734746, 18520.7888751243, 18562.756974129876, 18604.792383088217, 18646.895049671017, 18689.06492188234, 18731.30194805612, 18773.606076853644, 18815.97725726106, 18858.415438586908, 18900.9205704597, 18943.49260282548, 18986.13148594543, 19028.837170393497, 19071.609607054026, 19114.448747119433, 19157.354542087898, 19200.326943761036, 19243.365904241662, 19286.471375931502, 19329.64331152897, 19372.88166402698, 19416.186386710688, 19459.557433155358, 19502.994757224216, 19546.49831306626, 19590.068055114156, 19633.70393808218, 19677.40591696407, 19721.173947030988, 19765.007983829462, 19808.907983179375, 19852.87390117192, 19896.905694167624, 19941.003318794355, 19985.166731945377, 20029.395890777385, 20073.690752708582, 20118.05127541676, 20162.47741683744, 20206.96913516192, 20251.52638883547, 20296.149136555476, 20340.837337269582, 20385.59095017389, 20430.409934711155, 20475.294250568975, 20520.24385767809, 20565.258716210526, 20610.338786577926, 20655.4840294298, 20700.694405651804, 20745.969876364044, 20791.310402919426, 20836.715946901917, 20882.186470124936, 20927.721934629728, 20973.322302683686, 21018.987536778768, 21064.717599629887, 21110.512454173324, 21156.372063565144, 21202.296391179654, 21248.285400607838, 21294.339055655804, 21340.457320343317, 21386.640158902213, 21432.887535774957, 21479.199415613144, 21525.575763276003, 21572.016543828948, 21618.52172254216, 21665.091264889077, 21711.725136545047, 21758.42330338585, 21805.185731486337, 21852.012387119008, 21898.903236752667, 21945.858247050997, 21992.877384871274, 22039.960617262965, 22087.1079114664, 22134.319234911476, 22181.59455521631, 22228.933840185942, 22276.33705781107, 22323.80417626672, 22371.33516391101, 22418.929989283875, 22466.588621105817, 22514.31102827664, 22562.097179874272, 22609.94704515349, 22657.86059354472, 22705.837794652856, 22753.87861825605, 22801.983034304514, 22850.15101291938, 22898.382524391505, 22946.67753918034, 22995.036027912738, 23043.457961381893, 23091.94331054613, 23140.492046527837, 23189.104140612337, 23237.7795642468, 23286.518289039126, 23335.320286756858, 23384.185529326165, 23433.11398883068, 23482.10563751051, 23531.160447761187, 23580.278392132575, 23629.459443327858, 23678.703574202562, 23728.010757763444, 23777.380967167563, 23826.814175721232, 23876.310356879047, 23925.869484242874, 23975.4915315609, 24025.176472726635, 24074.924281777956, 24124.73493289618, 24174.608400405035, 24224.54465876983, 24274.543682596417, 24324.60544663031, 24374.729925755782, 24424.91709499491, 24475.16692950669, 24525.479404586145, 24575.854495663418, 24626.29217830288, 24676.79242820228, 24727.35522119184, 24777.980533233404, 24828.668340419594, 24879.418618972915, 24930.23134524496, 24981.106495715532, 25032.04404699183, 25083.043975807603, 25134.106259022366, 25185.230873620538, 25236.41779671067, 25287.667005524632, 25338.978477416804, 25390.3521898633, 25441.78812046119, 25493.286246927706, 25544.846547099445, 25596.46899893169, 25648.15358049754, 25699.900269987236, 25751.709045707357, 25803.57988608012, 25855.51276964261, 25907.507675046058, 25959.564581055107, 26011.683466547118, 26063.8643105114, 26116.107092048544, 26168.41179036972, 26220.778384795914, 26273.206854757318, 26325.697179792573, 26378.249339548118, 26430.86331377748, 26483.53908234065, 26536.276625203347, 26589.075922436394, 26641.93695421506, 26694.859700818386, 26747.84414262852, 26800.89026013012, 26853.998033909662, 26907.167444654817, 26960.398473153848, 27013.691100294945, 27067.045307065622, 27120.461074552084, 27173.93838393861, 27227.477216506988, 27281.077553635852, 27334.73937680009, 27388.462667570304, 27442.24740761214, 27496.09357868574, 27550.001162645185, 27603.970141437836, 27658.00049710384, 27712.09221177553, 27766.245267676823, 27820.45964712271, 27874.73533251868, 27929.072306360136, 27983.470551231883, 28037.930049807568, 28092.45078484912, 28147.032739206228, 28201.675895815813, 28256.38023770148, 28311.14574797298, 28365.972409825725, 28420.86020654022, 28475.80912148159, 28530.81913809904, 28585.890239925327, 28641.02241057632, 28696.215633750428, 28751.469893228143, 28806.785172871525, 28862.16145662372, 28917.598728508452, 28973.096972629584, 29028.65617317059, 29084.276314394083, 29139.957380641372, 29195.69935633195, 29251.50222596306, 29307.365974109212, 29363.29058542171, 29419.27604462822, 29475.322336532317, 29531.429446012986, 29587.597358024217, 29643.826057594575, 29700.11552982669, 29756.465759896866, 29812.87673305467, 29869.348434622407, 29925.880849994795, 29982.473964638466, 30039.127764091558, 30095.842233963318, 30152.617359933643, 30209.453127752695, 30266.349523240486, 30323.306532286446, 30380.324140849025, 30437.402334955306, 30494.541100700582, 30551.740424247957, 30609.00029182797, 30666.320689738182, 30723.701604342776, 30781.143022072203, 30838.644929422764, 30896.20731295624, 30953.83015929952, 31011.51345514419, 31069.257187246196, 31127.061342425462, 31184.925907565503, 31242.85086961306, 31300.836215577758, 31358.881932531713, 31416.988007609187, 31475.154428006237, 31533.38118098034, 31591.66825385006, 31650.015633994677, 31708.423308853842, 31766.891265927265, 31825.419492774312, 31884.007977013698, 31942.65670632318, 32001.365668439135, 32060.134851156294, 32118.964242327405, 32177.85382986286, 32236.803601730404, 32295.813545954814, 32354.883650617543, 32414.0139038564, 32473.20429386528, 32532.45480889379, 32591.76543724696, 32651.136167284923, 32710.566987422608, 32770.05788612942, 32829.60885192897, 32889.219873398695, 32948.89093916962, 33008.62203792608, 33068.41315840532, 33128.264289397266, 33188.17541974424, 33248.14653834063, 33308.177634132655, 33368.268696117964, 33428.41971334549, 33488.63067491504, 33548.9015699771, 33609.232387732474, 33669.62311743212, 33730.073748376766, 33790.58426991662, 33851.15467145119, 33911.78494242898, 33972.47507234714, 34033.225050751316, 34094.03486723529, 34154.90451144077, 34215.83397305707, 34276.82324182093, 34337.87230751614, 34398.981159973424, 34460.149789070056, 34521.37818472964, 34582.66633692192, 34644.01423566241, 34705.42187101229, 34766.88923307799, 34828.4163120111, 34890.003098008, 34951.649581309684, 35013.35575220148, 35075.12160101291, 35136.947118117234, 35198.83229393144, 35260.777118915896, 35322.78158357411, 35384.845678452504, 35446.96939414024, 35509.1527212689, 35571.39565051233, 35633.69817258635, 35696.06027824857, 35758.481958298136, 35820.96320357558, 35883.504004962466, 35946.10435338127, 36008.76423979515, 36071.48365520768, 36134.26259066267, 36197.101037243985, 36259.99898607524, 36322.95642831963, 36385.97335517977, 36449.049757897374, 36512.18562775319, 36575.38095606667, 36638.6357341958, 36701.949953536896, 36765.32360552444, 36828.7566816308, 36892.24917336614, 36955.80107227806, 37019.41236995156, 37083.08305800874, 37146.81312810864, 37210.60257194701, 37274.451381256236, 37338.35954780496, 37402.327063398014, 37466.35391987621, 37530.440109116156, 37594.58562303, 37658.79045356536, 37723.05459270503, 37787.37803246688, 37851.76076490356, 37916.20278210247, 37980.70407618544, 38045.26463930864, 38109.884463662376, 38174.563541470874, 38239.30186499214, 38304.09942651778, 38368.95621837285, 38433.87223291563, 38498.84746253748, 38563.88189966266, 38628.97553674816, 38694.12836628355, 38759.3403807908, 38824.611572824106, 38889.9419349697, 38955.331459845744, 39020.7801401021, 39086.28796842021, 39151.85493751298, 39217.48104012445, 39283.16626902983, 39348.910617035224, 39414.7140769775, 39480.576641724125, 39546.498304173045, 39612.47905725248, 39678.5188939208, 39744.61780716635, 39810.7757900073, 39876.99283549153, 39943.26893669644, 40009.604086728796, 40075.99827872458, 40142.451505848905, 40208.96376129575, 40275.535038287955, 40342.165330076954, 40408.85462994267, 40475.602931193396, 40542.41022716564, 40609.27651122395, 40676.20177676081, 40743.18601719651, 40810.229225978925, 40877.3313965835, 40944.492522512985, 41011.71259729738, 41078.99161449381, 41146.329567686305, 41213.726450485745, 41281.18225652966, 41348.69697948217, 41416.270613033776, 41483.903150901315, 41551.594586827734, 41619.34491458203, 41687.15412795906, 41755.02222077947, 41822.94918688958, 41890.93502016116, 41958.97971449138, 42027.083263802684, 42095.24566204263, 42163.46690318378, 42231.7469812236, 42300.08589018431, 42368.48362411275, 42436.94017708029, 42505.45554318269, 42574.02971653996, 42642.66269129634, 42711.35446162003, 42780.105021703166, 42848.9143657617, 42917.782488035264, 42986.70938278702, 43055.69504430364, 43124.739466895095, 43193.842644894576, 43263.0045726584, 43332.22524456587, 43401.504655019155, 43470.84279844322, 43540.23966928571, 43609.69526201675, 43679.209571128966, 43748.78259113728, 43818.41431657886, 43888.104742013, 43957.85386202094, 44027.661671205875, 44097.52816419277, 44167.45333562829, 44237.43718018069, 44307.47969253969, 44377.58086741638, 44447.74069954312, 44517.959183673476 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 25000.000369883423, 25000.000369883423 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=0.0km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 25000.000369883423 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=39.39", "v2=222.42" ], "textposition": "bottom center", "type": "scatter", "x": [ 39.393588355953085, 222.41527401365929 ], "y": [ 25000.000369883423, 25000.000369883423 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 20541.913338992574, 20541.913338992574 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=2.0km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 20541.913338992574 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=43.81", "v2=200.01" ], "textposition": "bottom center", "type": "scatter", "x": [ 43.80691194367951, 200.00806630321617 ], "y": [ 20541.913338992574, 20541.913338992574 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 16721.359161608078, 16721.359161608078 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=4.0km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 16721.359161608078 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=49.21", "v2=178.06" ], "textposition": "bottom center", "type": "scatter", "x": [ 49.2078537384258, 178.0556371173058 ], "y": [ 16721.359161608078, 16721.359161608078 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 13471.659601484218, 13471.659601484218 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=6.0km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 13471.659601484218 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=56.16", "v2=156.01" ], "textposition": "bottom center", "type": "scatter", "x": [ 56.16142172765143, 156.00986369361635 ], "y": [ 13471.659601484218, 13471.659601484218 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 10730.326669737937, 10730.326669737937 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=8.0km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 10730.326669737937 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=66.20", "v2=132.35" ], "textposition": "bottom center", "type": "scatter", "x": [ 66.20251871310116, 132.34746832731454 ], "y": [ 10730.326669737937, 10730.326669737937 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 0, 250 ], "y": [ 8586.69190171847, 8586.69190171847 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "h=9.85924379390416km", "textposition": "middle right", "type": "scatter", "x": [ 250 ], "y": [ 8586.69190171847 ] }, { "mode": "markers+text", "name": "Annotation", "showlegend": false, "text": [ "v1=v2=93.29" ], "textposition": "bottom center", "type": "scatter", "x": [ 93.29260364077146 ], "y": [ 8586.69190171847 ] }, { "mode": "lines", "name": "Annotation", "showlegend": false, "type": "scatter", "x": [ 59.016889085065394, 59.016889085065394 ], "y": [ 0, 30000 ] }, { "mode": "text", "name": "Annotation", "showlegend": false, "text": "Stall Speed", "textposition": "middle right", "type": "scatter", "x": [ 59.016889085065394 ], "y": [ 27000 ] } ], "layout": { "legend": { "title": { "text": "Drag Breakdown" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "$T_R \\text{ and } T_A \\text{ for different altitudes}$" }, "xaxis": { "range": [ 0, 260 ], "title": { "text": "EAS / (m/s)" } }, "yaxis": { "range": [ 0, 30000 ], "title": { "text": "Drag / N" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly.io as pio\n", "import plotly.express as px\n", "import plotly.offline as py\n", "import plotly.graph_objects as go\n", "from ambiance import Atmosphere\n", "import numpy as np\n", "import cmath\n", "from myst_nb import glue\n", "\n", "\n", "# Define constants\n", "CD0=0.016 # Zero incidence drag\n", "K=0.045 # Induced drag factor\n", "S=50 # Wing area, m^2\n", "W=160e3 # Aircarft weight, Newtons\n", "Clmax = 1.5\n", "\n", "rho_sl = 1.225\n", "\n", "TSL = 25e3\n", "\n", "fig = go.Figure()\n", "\n", "\n", "# Determine A and B - EAS\n", "AE = CD0 * 0.5 * rho_sl * S\n", "BE = K * W ** 2 / 0.5 / rho_sl / S\n", "\n", "# Find mimimum drag as this sets the ceiling\n", "Vemd = (BE/AE)**.25\n", "Dmin = AE * Vemd**2 + BE * Vemd**-2\n", "sig_dmin = Dmin/TSL\n", "rho_dmin = sig_dmin * rho_sl\n", "\n", "# Need to find the altitude for this - this isn't an efficient way to calculate it. But it'll work\n", "ceiling_found = False\n", "alt = 0\n", "iteration = 0\n", "dH = 1\n", "while not ceiling_found:\n", " mosphere = Atmosphere(alt*1000)\n", " rho = mosphere.density\n", " drho = rho - rho_dmin\n", " dH = drho\n", " \n", " alt = alt + drho\n", " \n", " if abs(drho) < 1e-5:\n", " ceiling_found = True\n", " \n", "ceiling = alt\n", "altvec = np.arange(0, ceiling, 2)\n", "altvec = np.concatenate((altvec, ceiling))\n", "\n", "# Get minimum drag\n", "Vemd = (BE/AE)**.25\n", "md = AE * Vemd**2 + BE * Vemd**-2\n", "\n", "# Turn this into TAS\n", "Vmd = Vemd * sig_dmin**-.5\n", "\n", "# Save these values for later\n", "glue(\"Vemd\", Vemd, display=False);\n", "glue(\"Vmd\", Vmd, display=False);\n", "\n", "\n", "\n", "\n", "# Flight speed vector\n", "# Determine stall speed\n", "Vstall = np.sqrt(W / (0.5 * rho_sl * S * Clmax))\n", "Vs = np.linspace(Vstall, 300, 1000)\n", "\n", "# Define drags\n", "Dind = BE * Vs**-2\n", "Dprof = AE * Vs**2\n", "D = Dind + Dprof\n", "\n", "fig.add_trace(go.Scatter(x=Vs, y=D, name=\"$T_R$\")) \n", "\n", "\n", "\n", "for alt in altvec:\n", "\n", " mosphere = Atmosphere(alt*1000)\n", " rho = mosphere.density\n", "\n", " # Thrust available at this altitude\n", " sigma = rho/rho_sl\n", " TA = TSL * sigma[0]\n", "\n", " # Plot available thrust\n", " fig.add_trace(go.Scatter(x=[0, 250], y=[TA, TA], name=\"Annotation\", mode=\"lines\"))\n", " fig.add_trace(go.Scatter(x=[250], y=[TA], mode=\"text\", text=f\"h={alt}km\", textposition=\"middle right\", name=\"Annotation\"))\n", " \n", " # Get the intersection\n", " a = AE\n", " b = -TA\n", " c = BE\n", " flight_limit_speeds = np.sort(np.sqrt(np.roots([a, b, c])))\n", " \n", " # Is this in the envelope (this code is redundant now, but might be handy for later)\n", " in_envelope = not (isinstance(flight_limit_speeds[0], complex))\n", " \n", " # Add v1 and v2 annotations \n", " if in_envelope and not (alt == ceiling):\n", " fig.add_trace(go.Scatter(x=flight_limit_speeds, y=[TA, TA], mode=\"markers+text\", text=[f\"v1={flight_limit_speeds[0]:1.2f}\", f\"v2={flight_limit_speeds[1]:1.2f}\"], textposition=\"bottom center\", name=\"Annotation\"))\n", " elif in_envelope:\n", " fig.add_trace(go.Scatter(x=[flight_limit_speeds[0]], y=[TA], mode=\"markers+text\", text=[f\"v1=v2={flight_limit_speeds[0]:1.2f}\"], textposition=\"bottom center\", name=\"Annotation\"))\n", "\n", "\n", "# Add the stall speed\n", "fig.add_trace(go.Scatter(x=[Vstall, Vstall], y=[0, 30e3], mode=\"lines\", name=\"Annotation\")) \n", "fig.add_trace(go.Scatter(x=[Vstall], y=[27e3], mode=\"text\", text=\"Stall Speed\", textposition=\"middle right\", name=\"Annotation\"))\n", "\n", "fig.update_layout(\n", " title=f\"$T_R \\\\text{{ and }} T_A \\\\text{{ for different altitudes}}$\",\n", " xaxis_title=\"EAS / (m/s)\",\n", " yaxis_title=\"Drag / N\",\n", " legend_title=\"Drag Breakdown\",\n", ")\n", "\n", "for trace in fig['data']: \n", " if(trace['name'] == \"Annotation\"): trace['showlegend'] = False\n", "\n", "fig.update_xaxes(range=[0, 260])\n", "fig.update_yaxes(range=[0, 30e3])\n", "\n", "fig.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Look at the graph above, observe the following:\n", "- There is a single $T_R$ curve since the graph has been plotted in EAS\n", "- At sea-level the $T_A$ curve is highest as the air density is lowest, hence there is the greatest available thrust\n", "- As altitude increases, the *available thrust* decreases, and hence the minimum flight speed $v_1$ increases whilst the maximum flight speed $v_2$ increases\n", "- For many altitudes, the minimum flight speed is lower than the stall speed hence the value has no physical significance - since flight would not be *possible at these speeds*\n", "- Altitudes have been plotted in 2km intervals, which is an arbitrary interval.\n", "- As $v_1$ and $v_2$ get closer together, they finally meet at the *minimum drag speed* - the physical significance here is that at this altitude the engine can only produce sufficient thrust (*i.e.,* at maximum throttle) to enable cruise at a single speed (that which requires the minimum thrust, $V_{md}$) - {glue:text}`Vemd:1.3f`m/s EAS or {glue:text}`Vmd:1.3f`m/s TAS\n", "\n", "#### Plotting flight speeds\n", "\n", "From the above, it is possible to plot the maximum and minimum flight speeds with altitude\n" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": true, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "mode": "lines", "name": "EAS", "type": "scatter", "x": [ 39.393588355953085, 39.59580346522217, 39.799780176686156, 40.005545261496984, 40.213126179505316, 40.42255110534176, 40.63384895578609, 40.84704941850259, 41.062182982225075, 41.27928096848105, 41.498375564951466, 41.7194998605693, 41.94268788246818, 42.16797463490047, 42.395396140253986, 42.62498948230562, 42.85679285186206, 43.090845594948824, 43.32718826372279, 43.56586267029652, 43.80691194367951, 44.050380590057586, 44.296314556651126, 44.54476129941302, 44.795769854850256, 45.04939091627786, 45.305676914841456, 45.56468210567556, 45.826462659597816, 46.09107676077696, 46.35858471085395, 46.62904904004102, 46.90253462577469, 47.179108819556106, 47.458841582674324, 47.74180563158056, 48.02807659375924, 48.3177331750312, 48.6108573393246, 48.90753450206031, 49.2078537384258, 49.5119080079543, 49.81979439698718, 50.13161438078147, 50.44747410723157, 50.76748470441222, 51.09176261442003, 51.42042995629972, 51.753614921196956, 52.09145220328713, 52.434083470499935, 52.781657879602385, 53.134332640834465, 53.49227363802217, 53.855656110947805, 54.224665407756795, 54.59949781635151, 54.980361485105355, 55.367477444862836, 55.761080746127625, 56.16142172765143, 56.56876743539544, 56.98340321415718, 57.405634498159394, 57.83578883175855, 58.27421815735403, 58.72130141484132, 59.17744750590566, 59.6430986875544, 60.11873447314355, 60.60487613656686, 61.10209193731165, 61.61100321218922, 62.13229151568429, 62.66670703773466, 63.21507858911971, 63.778325525790926, 64.35747209198685, 64.95366480876525, 65.56819373571905, 66.20251871310116, 66.85830208581179, 67.5374499762209, 68.24216499911982, 68.9750145444857, 69.7390206342166, 70.53778030304099, 71.37563019901373, 72.25787700587873, 73.19112898018314, 74.18378868858797, 75.24681438094049, 76.39495386424986, 77.64886733169058, 79.03907402380175, 80.6141026921851, 82.46008925120894, 84.76104980320143, 88.10834820745774, 93.29260364077146, 93.91672444160922, 99.44274211043472, 103.36983518861126, 106.25425982596965, 108.68738168588439, 110.85321857303265, 112.83790800377463, 114.68998023272302, 116.43995590582625, 118.10849652544722, 119.71035111294549, 121.25647903906405, 122.7552838992891, 124.21337488830609, 125.63605953869337, 127.02767525941859, 128.39181975958132, 129.73151565028738, 131.04933082693344, 132.34746832731454, 133.62783461575737, 134.8920922994362, 136.14170140255598, 137.3779520916945, 138.6019909192778, 139.81484208664, 141.01742483389407, 142.2105677843786, 143.39502087031326, 144.5714653195055, 145.7405220744405, 146.9027589339334, 148.05869664615423, 149.20881413496988, 150.35355300541084, 151.4933214459659, 152.62849762337407, 153.75943264816803, 154.88645317536702, 156.00986369361635, 157.1299485471158, 158.24697372741772, 159.3611884662532, 160.4728266556809, 161.58210811785375, 162.68923974337235, 163.79441651444003, 164.89782242672018, 165.99963132186113, 167.1000076410235, 168.199107108358, 169.2970773522145, 170.3940584708621, 171.49018354864333, 172.58557912775848, 173.68036564024166, 174.77465780414832, 175.86856498750353, 176.9621915431535, 178.0556371173058, 179.14899693423516, 180.2423620593633, 181.3358196426802, 182.42945314426981, 183.5233425435177, 184.61756453341724, 185.71219270124908, 186.80729769677956, 187.90294738901449, 188.99920701244392, 190.09613930362227, 191.19380462885368, 192.292261103677, 193.3915647047841, 194.49176937494826, 195.59292712148638, 196.69508810873478, 197.79830074497747, 198.9026117642256, 200.00806630321617, 201.11470797396626, 202.2225789321915, 203.33171994187245, 204.44217043623038, 205.553968575353, 206.66715130069105, 207.7817543866317, 208.8978124893365, 210.01535919301986, 211.134427053828, 212.25504764147078, 213.3772515787426, 214.50106857906306, 215.6265274821564, 216.75365628798124, 217.88248218901307, 219.01303160097822, 220.14533019212598, 221.27940291112466, 222.41527401365929 ], "y": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004, 4, 4.1000000000000005, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.800000000000001, 4.9, 5, 5.1000000000000005, 5.2, 5.300000000000001, 5.4, 5.5, 5.6000000000000005, 5.7, 5.800000000000001, 5.9, 6, 6.1000000000000005, 6.2, 6.300000000000001, 6.4, 6.5, 6.6000000000000005, 6.7, 6.800000000000001, 6.9, 7, 7.1000000000000005, 7.2, 7.300000000000001, 7.4, 7.5, 7.6000000000000005, 7.7, 7.800000000000001, 7.9, 8, 8.1, 8.200000000000001, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.600000000000001, 9.700000000000001, 9.8, 9.85924379390416, 9.85924379390416, 9.8, 9.700000000000001, 9.600000000000001, 9.5, 9.4, 9.3, 9.200000000000001, 9.1, 9, 8.9, 8.8, 8.700000000000001, 8.6, 8.5, 8.4, 8.3, 8.200000000000001, 8.1, 8, 7.9, 7.800000000000001, 7.7, 7.6000000000000005, 7.5, 7.4, 7.300000000000001, 7.2, 7.1000000000000005, 7, 6.9, 6.800000000000001, 6.7, 6.6000000000000005, 6.5, 6.4, 6.300000000000001, 6.2, 6.1000000000000005, 6, 5.9, 5.800000000000001, 5.7, 5.6000000000000005, 5.5, 5.4, 5.300000000000001, 5.2, 5.1000000000000005, 5, 4.9, 4.800000000000001, 4.7, 4.6000000000000005, 4.5, 4.4, 4.3, 4.2, 4.1000000000000005, 4, 3.9000000000000004, 3.8000000000000003, 3.7, 3.6, 3.5, 3.4000000000000004, 3.3000000000000003, 3.2, 3.1, 3, 2.9000000000000004, 2.8000000000000003, 2.7, 2.6, 2.5, 2.4000000000000004, 2.3000000000000003, 2.2, 2.1, 2, 1.9000000000000001, 1.8, 1.7000000000000002, 1.6, 1.5, 1.4000000000000001, 1.3, 1.2000000000000002, 1.1, 1, 0.9, 0.8, 0.7000000000000001, 0.6000000000000001, 0.5, 0.4, 0.30000000000000004, 0.2, 0.1, 0 ] }, { "mode": "lines", "name": "TAS", "type": "scatter", "x": [ 39.39358806453238, 39.78653827196527, 40.18456970701099, 40.58776870031462, 40.99622358320464, 41.41002475237272, 41.82926473739761, 42.25403827127405, 42.68444236411901, 43.12057638023877, 43.5625421187542, 44.01044389799565, 44.464388643893294, 44.924485982606505, 45.39084833765338, 45.863591031820654, 46.3428323941568, 46.82869387237285, 47.321300151002795, 47.82077927570056, 48.327262784083885, 48.84088584356583, 49.361787396652886, 49.89011031422745, 50.42600155737672, 50.969612348378014, 51.52109835150325, 52.08061986436457, 52.648342020586355, 53.224435004660776, 53.809074279923564, 54.40244083067259, 55.00472141955001, 55.616108861416585, 56.236802315066, 56.867007594262596, 57.506937499733915, 58.156812173917636, 58.816859480451335, 59.4873154106023, 60.16842451907358, 60.86044039188934, 61.563626149364396, 62.278254987506116, 63.00461076158244, 63.74298861603341, 64.49369566540464, 65.25705173155477, 66.03339014304704, 66.82305860338869, 67.62642013564985, 68.44385411199455, 69.27575737781736, 70.12254548152197, 70.98465402254594, 71.86254013206573, 72.75668410295722, 73.66759118811171, 74.59579358918141, 75.54185266135259, 76.50636136394291, 77.48994699162351, 78.49327422708238, 79.5170485631857, 80.5620201514707, 81.62898814448384, 82.71880561254899, 83.83238513164507, 84.97070515899345, 86.13481733778772, 87.3258549036526, 88.54504240478504, 89.79370699786081, 91.07329164615241, 92.38537062965042, 93.73166788595377, 95.11407884458387, 96.5346966094841, 97.99584360395376, 99.50011014728989, 101.0504019249495, 102.64999900782695, 104.30263006999056, 106.01256690409616, 107.78474649285253, 109.62493118461776, 111.53992266386888, 113.5378536838948, 115.62859529971333, 117.82434114729463, 120.14047336518036, 122.5968968502989, 125.22019547706482, 128.04733137888965, 131.13250312732532, 134.5612687752558, 138.4844065356004, 143.2217417618027, 149.79344285547077, 159.1857829607576, 160.25072438661823, 169.06310254094507, 174.66522507351257, 178.44460571770685, 181.42125870156084, 183.91485743905332, 186.07603040158108, 187.9901880629704, 189.71138354337748, 191.27643561833668, 192.7117868644034, 194.03720290779395, 195.26792861122843, 196.41602229808916, 197.49122164297106, 198.50152792040873, 199.45361320785798, 200.35311208900146, 201.2048355953664, 202.01293135359296, 202.7810056290837, 203.5122178141026, 204.2093546186858, 204.87488906357356, 205.51102792449498, 206.11975028339089, 206.70283914837785, 207.26190761171628, 207.79842066002362, 208.31371349148262, 208.80900700269433, 209.28542096392837, 209.7439852925581, 210.1856497511156, 210.61129233204244, 211.0217265410823, 211.41770775189403, 211.79993877330875, 212.16907474582783, 212.5257274640298, 212.87046920546726, 213.20383613355912, 213.5263313313057, 213.8384275138774, 214.14056946088604, 214.43317620313502, 214.71664299363752, 214.99134308849528, 215.2576293597077, 215.51583575900372, 215.7662786492676, 216.00925801798738, 216.24505858532464, 216.4739508178374, 216.69619185754402, 216.91202637485728, 217.12168735291385, 217.32539680996007, 217.52336646569856, 217.71579835684375, 217.90288540656093, 218.08481195196092, 218.26175423338134, 218.43388084879822, 218.60135317636843, 218.7643257678031, 218.92294671500372, 219.07735799215538, 219.22769577526114, 219.37409074091448, 219.51666834593667, 219.655549089361, 219.7908487581065, 219.92267865756824, 220.05114582824007, 220.1763532493913, 220.2984000307299, 220.41738159290642, 220.5333898376413, 220.64651330819484, 220.75683734083987, 220.86444420794402, 220.96941325322126, 221.07182101966862, 221.1717413706624, 221.2692456046557, 221.36440256388084, 221.4572787374353, 221.547938359098, 221.63644350019936, 221.72285415784566, 221.80722833877508, 221.88962213910548, 221.97008982021433, 222.0486838809751, 222.1254551265595, 222.2004527340011, 222.27372431470093, 222.3453159740469, 222.41527236830484 ], "y": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004, 4, 4.1000000000000005, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.800000000000001, 4.9, 5, 5.1000000000000005, 5.2, 5.300000000000001, 5.4, 5.5, 5.6000000000000005, 5.7, 5.800000000000001, 5.9, 6, 6.1000000000000005, 6.2, 6.300000000000001, 6.4, 6.5, 6.6000000000000005, 6.7, 6.800000000000001, 6.9, 7, 7.1000000000000005, 7.2, 7.300000000000001, 7.4, 7.5, 7.6000000000000005, 7.7, 7.800000000000001, 7.9, 8, 8.1, 8.200000000000001, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.600000000000001, 9.700000000000001, 9.8, 9.85924379390416, 9.85924379390416, 9.8, 9.700000000000001, 9.600000000000001, 9.5, 9.4, 9.3, 9.200000000000001, 9.1, 9, 8.9, 8.8, 8.700000000000001, 8.6, 8.5, 8.4, 8.3, 8.200000000000001, 8.1, 8, 7.9, 7.800000000000001, 7.7, 7.6000000000000005, 7.5, 7.4, 7.300000000000001, 7.2, 7.1000000000000005, 7, 6.9, 6.800000000000001, 6.7, 6.6000000000000005, 6.5, 6.4, 6.300000000000001, 6.2, 6.1000000000000005, 6, 5.9, 5.800000000000001, 5.7, 5.6000000000000005, 5.5, 5.4, 5.300000000000001, 5.2, 5.1000000000000005, 5, 4.9, 4.800000000000001, 4.7, 4.6000000000000005, 4.5, 4.4, 4.3, 4.2, 4.1000000000000005, 4, 3.9000000000000004, 3.8000000000000003, 3.7, 3.6, 3.5, 3.4000000000000004, 3.3000000000000003, 3.2, 3.1, 3, 2.9000000000000004, 2.8000000000000003, 2.7, 2.6, 2.5, 2.4000000000000004, 2.3000000000000003, 2.2, 2.1, 2, 1.9000000000000001, 1.8, 1.7000000000000002, 1.6, 1.5, 1.4000000000000001, 1.3, 1.2000000000000002, 1.1, 1, 0.9, 0.8, 0.7000000000000001, 0.6000000000000001, 0.5, 0.4, 0.30000000000000004, 0.2, 0.1, 0 ] } ], "layout": { "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Possible airspeeds for different altitudes in EAS and TAS" }, "xaxis": { "title": { "text": "Airspeed / (m/s)" } }, "yaxis": { "title": { "text": "Altitude / km" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Make a vector for the altitude in 100m intervals\n", "alt_vector = np.arange(0, ceiling, 0.1)\n", "alt_vector = np.concatenate((alt_vector, ceiling))\n", "\n", "# AE and BE are already available from before - we'll introduce two new arrays to store V1 and V2\n", "#EAS\n", "VE1 = np.zeros(alt_vector.shape)\n", "VE2 = np.zeros(alt_vector.shape)\n", "\n", "#TAS\n", "V1 = np.zeros(alt_vector.shape)\n", "V2 = np.zeros(alt_vector.shape)\n", "\n", "# iterate over the altitudes\n", "for i, altitude in enumerate(alt_vector):\n", " mosphere = Atmosphere(altitude*1000)\n", " rho = mosphere.density\n", "\n", " # Thrust available at this altitude\n", " sigma = rho/rho_sl\n", " TA = TSL * sigma[0]\n", " \n", " # Get the intersection\n", " a = AE\n", " b = -TA\n", " c = BE\n", " flight_limit_speeds = np.sort(np.sqrt(np.roots([a, b, c])))\n", " \n", " # Store these in the array\n", " VE1[i] = flight_limit_speeds[0]\n", " VE2[i] = flight_limit_speeds[1]\n", " \n", " # And for EAS\n", " V1[i] = VE1[i] * sigma ** -.5\n", " V2[i] = VE2[i] * sigma ** -.5\n", " \n", " \n", "# Sort these into an array for plotting\n", "VEs = np.concatenate((VE1, np.flip(VE2)))\n", "Vs = np.concatenate((V1, np.flip(V2)))\n", "alt_vector = np.concatenate((alt_vector, np.flip(alt_vector)))\n", "\n", "# \n", "\n", "\n", "\n", "fig = go.Figure()\n", "\n", "fig.add_trace(go.Scatter(x=VEs, y=alt_vector, mode=\"lines\", name=\"EAS\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=alt_vector, mode=\"lines\", name=\"TAS\"))\n", "\n", "fig.update_layout(\n", " title=f\"Possible airspeeds for different altitudes in EAS and TAS\",\n", " xaxis_title=\"Airspeed / (m/s)\",\n", " yaxis_title=\"Altitude / km\",\n", ")\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now - the plot above show the *possible flight speeds* from the solution of the quadratic, but it was shown in the previous plot that for lower altitudes, $v_1$ was below the stall speed.\n", "\n", "If this is taken into consideration, then the plot is modified to:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "scrolled": true, "tags": [ "remove-input" ] }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "mode": "lines", "name": "EAS", "type": "scatter", "x": [ 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.016889085065394, 59.17744750590566, 59.6430986875544, 60.11873447314355, 60.60487613656686, 61.10209193731165, 61.61100321218922, 62.13229151568429, 62.66670703773466, 63.21507858911971, 63.778325525790926, 64.35747209198685, 64.95366480876525, 65.56819373571905, 66.20251871310116, 66.85830208581179, 67.5374499762209, 68.24216499911982, 68.9750145444857, 69.7390206342166, 70.53778030304099, 71.37563019901373, 72.25787700587873, 73.19112898018314, 74.18378868858797, 75.24681438094049, 76.39495386424986, 77.64886733169058, 79.03907402380175, 80.6141026921851, 82.46008925120894, 84.76104980320143, 88.10834820745774, 93.29260364077146, 93.91672444160922, 99.44274211043472, 103.36983518861126, 106.25425982596965, 108.68738168588439, 110.85321857303265, 112.83790800377463, 114.68998023272302, 116.43995590582625, 118.10849652544722, 119.71035111294549, 121.25647903906405, 122.7552838992891, 124.21337488830609, 125.63605953869337, 127.02767525941859, 128.39181975958132, 129.73151565028738, 131.04933082693344, 132.34746832731454, 133.62783461575737, 134.8920922994362, 136.14170140255598, 137.3779520916945, 138.6019909192778, 139.81484208664, 141.01742483389407, 142.2105677843786, 143.39502087031326, 144.5714653195055, 145.7405220744405, 146.9027589339334, 148.05869664615423, 149.20881413496988, 150.35355300541084, 151.4933214459659, 152.62849762337407, 153.75943264816803, 154.88645317536702, 156.00986369361635, 157.1299485471158, 158.24697372741772, 159.3611884662532, 160.4728266556809, 161.58210811785375, 162.68923974337235, 163.79441651444003, 164.89782242672018, 165.99963132186113, 167.1000076410235, 168.199107108358, 169.2970773522145, 170.3940584708621, 171.49018354864333, 172.58557912775848, 173.68036564024166, 174.77465780414832, 175.86856498750353, 176.9621915431535, 178.0556371173058, 179.14899693423516, 180.2423620593633, 181.3358196426802, 182.42945314426981, 183.5233425435177, 184.61756453341724, 185.71219270124908, 186.80729769677956, 187.90294738901449, 188.99920701244392, 190.09613930362227, 191.19380462885368, 192.292261103677, 193.3915647047841, 194.49176937494826, 195.59292712148638, 196.69508810873478, 197.79830074497747, 198.9026117642256, 200.00806630321617, 201.11470797396626, 202.2225789321915, 203.33171994187245, 204.44217043623038, 205.553968575353, 206.66715130069105, 207.7817543866317, 208.8978124893365, 210.01535919301986, 211.134427053828, 212.25504764147078, 213.3772515787426, 214.50106857906306, 215.6265274821564, 216.75365628798124, 217.88248218901307, 219.01303160097822, 220.14533019212598, 221.27940291112466, 222.41527401365929 ], "y": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004, 4, 4.1000000000000005, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.800000000000001, 4.9, 5, 5.1000000000000005, 5.2, 5.300000000000001, 5.4, 5.5, 5.6000000000000005, 5.7, 5.800000000000001, 5.9, 6, 6.1000000000000005, 6.2, 6.300000000000001, 6.4, 6.5, 6.6000000000000005, 6.7, 6.800000000000001, 6.9, 7, 7.1000000000000005, 7.2, 7.300000000000001, 7.4, 7.5, 7.6000000000000005, 7.7, 7.800000000000001, 7.9, 8, 8.1, 8.200000000000001, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.600000000000001, 9.700000000000001, 9.8, 9.85924379390416, 9.85924379390416, 9.8, 9.700000000000001, 9.600000000000001, 9.5, 9.4, 9.3, 9.200000000000001, 9.1, 9, 8.9, 8.8, 8.700000000000001, 8.6, 8.5, 8.4, 8.3, 8.200000000000001, 8.1, 8, 7.9, 7.800000000000001, 7.7, 7.6000000000000005, 7.5, 7.4, 7.300000000000001, 7.2, 7.1000000000000005, 7, 6.9, 6.800000000000001, 6.7, 6.6000000000000005, 6.5, 6.4, 6.300000000000001, 6.2, 6.1000000000000005, 6, 5.9, 5.800000000000001, 5.7, 5.6000000000000005, 5.5, 5.4, 5.300000000000001, 5.2, 5.1000000000000005, 5, 4.9, 4.800000000000001, 4.7, 4.6000000000000005, 4.5, 4.4, 4.3, 4.2, 4.1000000000000005, 4, 3.9000000000000004, 3.8000000000000003, 3.7, 3.6, 3.5, 3.4000000000000004, 3.3000000000000003, 3.2, 3.1, 3, 2.9000000000000004, 2.8000000000000003, 2.7, 2.6, 2.5, 2.4000000000000004, 2.3000000000000003, 2.2, 2.1, 2, 1.9000000000000001, 1.8, 1.7000000000000002, 1.6, 1.5, 1.4000000000000001, 1.3, 1.2000000000000002, 1.1, 1, 0.9, 0.8, 0.7000000000000001, 0.6000000000000001, 0.5, 0.4, 0.30000000000000004, 0.2, 0.1, 0 ] }, { "mode": "lines", "name": "TAS", "type": "scatter", "x": [ 59.01688864847802, 59.30117615463088, 59.58747216194323, 59.87579541634583, 60.16616488149626, 60.45859974180694, 60.753119405522334, 61.04974350784588, 61.34849191411823, 61.64938472304703, 61.95244226998969, 62.25768513029003, 62.56513412266963, 62.87481031267513, 63.186735016182496, 63.50092980295911, 63.81741650028522, 64.13621719663523, 64.45735424542085, 64.78085026879613, 65.10672816152689, 65.4350110949245, 65.7657225208463, 66.0988861757631, 66.43452608489577, 66.77266656642163, 67.11333223575241, 67.45654800988514, 67.8023391118271, 68.15073107509643, 68.50174974830023, 68.85542129979095, 69.21177222240334, 69.57082933827293, 69.93261980373808, 70.29717111432717, 70.66451110983246, 71.03466797947235, 71.40767026714411, 71.78354687676847, 72.16232707772825, 72.54404051040267, 72.9287171917994, 73.31638752128642, 73.70708228642533, 74.10083266890867, 74.49767025060298, 74.89762701969994, 75.30073537697773, 75.70702814217485, 76.11653856047896, 76.52930030913248, 76.94534750415826, 77.364714707207, 77.78743693252923, 78.2135496540749, 78.64308881272227, 79.07609082363965, 79.51259258378262, 79.95263147952893, 80.39624539445518, 80.84347271725689, 81.29435234981621, 81.74892371541954, 82.2072267671288, 82.66930199630947, 83.13519044131833, 83.83238513164507, 84.97070515899345, 86.13481733778772, 87.3258549036526, 88.54504240478504, 89.79370699786081, 91.07329164615241, 92.38537062965042, 93.73166788595377, 95.11407884458387, 96.5346966094841, 97.99584360395376, 99.50011014728989, 101.0504019249495, 102.64999900782695, 104.30263006999056, 106.01256690409616, 107.78474649285253, 109.62493118461776, 111.53992266386888, 113.5378536838948, 115.62859529971333, 117.82434114729463, 120.14047336518036, 122.5968968502989, 125.22019547706482, 128.04733137888965, 131.13250312732532, 134.5612687752558, 138.4844065356004, 143.2217417618027, 149.79344285547077, 159.1857829607576, 160.25072438661823, 169.06310254094507, 174.66522507351257, 178.44460571770685, 181.42125870156084, 183.91485743905332, 186.07603040158108, 187.9901880629704, 189.71138354337748, 191.27643561833668, 192.7117868644034, 194.03720290779395, 195.26792861122843, 196.41602229808916, 197.49122164297106, 198.50152792040873, 199.45361320785798, 200.35311208900146, 201.2048355953664, 202.01293135359296, 202.7810056290837, 203.5122178141026, 204.2093546186858, 204.87488906357356, 205.51102792449498, 206.11975028339089, 206.70283914837785, 207.26190761171628, 207.79842066002362, 208.31371349148262, 208.80900700269433, 209.28542096392837, 209.7439852925581, 210.1856497511156, 210.61129233204244, 211.0217265410823, 211.41770775189403, 211.79993877330875, 212.16907474582783, 212.5257274640298, 212.87046920546726, 213.20383613355912, 213.5263313313057, 213.8384275138774, 214.14056946088604, 214.43317620313502, 214.71664299363752, 214.99134308849528, 215.2576293597077, 215.51583575900372, 215.7662786492676, 216.00925801798738, 216.24505858532464, 216.4739508178374, 216.69619185754402, 216.91202637485728, 217.12168735291385, 217.32539680996007, 217.52336646569856, 217.71579835684375, 217.90288540656093, 218.08481195196092, 218.26175423338134, 218.43388084879822, 218.60135317636843, 218.7643257678031, 218.92294671500372, 219.07735799215538, 219.22769577526114, 219.37409074091448, 219.51666834593667, 219.655549089361, 219.7908487581065, 219.92267865756824, 220.05114582824007, 220.1763532493913, 220.2984000307299, 220.41738159290642, 220.5333898376413, 220.64651330819484, 220.75683734083987, 220.86444420794402, 220.96941325322126, 221.07182101966862, 221.1717413706624, 221.2692456046557, 221.36440256388084, 221.4572787374353, 221.547938359098, 221.63644350019936, 221.72285415784566, 221.80722833877508, 221.88962213910548, 221.97008982021433, 222.0486838809751, 222.1254551265595, 222.2004527340011, 222.27372431470093, 222.3453159740469, 222.41527236830484 ], "y": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004, 4, 4.1000000000000005, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.800000000000001, 4.9, 5, 5.1000000000000005, 5.2, 5.300000000000001, 5.4, 5.5, 5.6000000000000005, 5.7, 5.800000000000001, 5.9, 6, 6.1000000000000005, 6.2, 6.300000000000001, 6.4, 6.5, 6.6000000000000005, 6.7, 6.800000000000001, 6.9, 7, 7.1000000000000005, 7.2, 7.300000000000001, 7.4, 7.5, 7.6000000000000005, 7.7, 7.800000000000001, 7.9, 8, 8.1, 8.200000000000001, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.600000000000001, 9.700000000000001, 9.8, 9.85924379390416, 9.85924379390416, 9.8, 9.700000000000001, 9.600000000000001, 9.5, 9.4, 9.3, 9.200000000000001, 9.1, 9, 8.9, 8.8, 8.700000000000001, 8.6, 8.5, 8.4, 8.3, 8.200000000000001, 8.1, 8, 7.9, 7.800000000000001, 7.7, 7.6000000000000005, 7.5, 7.4, 7.300000000000001, 7.2, 7.1000000000000005, 7, 6.9, 6.800000000000001, 6.7, 6.6000000000000005, 6.5, 6.4, 6.300000000000001, 6.2, 6.1000000000000005, 6, 5.9, 5.800000000000001, 5.7, 5.6000000000000005, 5.5, 5.4, 5.300000000000001, 5.2, 5.1000000000000005, 5, 4.9, 4.800000000000001, 4.7, 4.6000000000000005, 4.5, 4.4, 4.3, 4.2, 4.1000000000000005, 4, 3.9000000000000004, 3.8000000000000003, 3.7, 3.6, 3.5, 3.4000000000000004, 3.3000000000000003, 3.2, 3.1, 3, 2.9000000000000004, 2.8000000000000003, 2.7, 2.6, 2.5, 2.4000000000000004, 2.3000000000000003, 2.2, 2.1, 2, 1.9000000000000001, 1.8, 1.7000000000000002, 1.6, 1.5, 1.4000000000000001, 1.3, 1.2000000000000002, 1.1, 1, 0.9, 0.8, 0.7000000000000001, 0.6000000000000001, 0.5, 0.4, 0.30000000000000004, 0.2, 0.1, 0 ] } ], "layout": { "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Possible airspeeds for different altitudes in EAS and TAS" }, "xaxis": { "range": [ 0, 222.41527236830484 ], "title": { "text": "Airspeed / (m/s)" } }, "yaxis": { "title": { "text": "Altitude / km" } } } }, "text/html": [ "
\n", " \n", " \n", "
\n", " \n", "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Make a vector for the altitude in 100m intervals\n", "alt_vector = np.arange(0, ceiling, 0.1)\n", "alt_vector = np.concatenate((alt_vector, ceiling))\n", "\n", "# AE and BE are already available from before - we'll introduce two new arrays to store V1 and V2\n", "#EAS\n", "VE1 = np.zeros(alt_vector.shape)\n", "VE2 = np.zeros(alt_vector.shape)\n", "\n", "#TAS\n", "V1 = np.zeros(alt_vector.shape)\n", "V2 = np.zeros(alt_vector.shape)\n", "\n", "# Stall speed \n", "Vstall = np.sqrt(W / (0.5 * rho_sl * S * Clmax))\n", "\n", "# iterate over the altitudes\n", "for i, altitude in enumerate(alt_vector):\n", " mosphere = Atmosphere(altitude*1000)\n", " rho = mosphere.density\n", "\n", " # Thrust available at this altitude\n", " sigma = rho/rho_sl\n", " TA = TSL * sigma[0]\n", " \n", "\n", "\n", " \n", " # Get the intersection\n", " a = AE\n", " b = -TA\n", " c = BE\n", " flight_limit_speeds = np.sort(np.sqrt(np.roots([a, b, c])))\n", " \n", " # Store these in the array\n", " VE1[i] = max([flight_limit_speeds[0], Vstall])\n", " VE2[i] = flight_limit_speeds[1]\n", " \n", " # And for EAS\n", " V1[i] = VE1[i] * sigma ** -.5\n", " V2[i] = VE2[i] * sigma ** -.5\n", " \n", " \n", "# Sort these into an array for plotting\n", "VEs = np.concatenate((VE1, np.flip(VE2)))\n", "Vs = np.concatenate((V1, np.flip(V2)))\n", "alt_vector = np.concatenate((alt_vector, np.flip(alt_vector)))\n", "\n", "\n", "fig = go.Figure()\n", "\n", "fig.add_trace(go.Scatter(x=VEs, y=alt_vector, mode=\"lines\", name=\"EAS\"))\n", "fig.add_trace(go.Scatter(x=Vs, y=alt_vector, mode=\"lines\", name=\"TAS\"))\n", "\n", "fig.update_layout(\n", " title=f\"Possible airspeeds for different altitudes in EAS and TAS\",\n", " xaxis_title=\"Airspeed / (m/s)\",\n", " yaxis_title=\"Altitude / km\",\n", ")\n", "\n", "fig.update_xaxes(range=[0, max(Vs)])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The source code for the plot above is not included on the website - though you *could* download it if you look at the source ```.ipynb``` file.\n", "\n", "You are advised to try and reproduce the plot above based on the source code from the previous plot. This will be a good test of your ability to understand the equations and the logic flow of these codes." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Aircraft Absolute Ceiling\n", "\n", "This introduces the concept of **aircraft absolute ceiling**, which is defined as the altitude at which the only possible flightspeed is $V_{md}$.\n", "\n", "A consideration of this concept should ring alarm bells in your aircraft performance engineer's brain.\n", "\n", "```{admonition} What alarm bells?\n", ":class: dropdown\n", "\n", "Think back to the concept of speed stability - where the idea of velocity perturbations were introduced. \n", "\n", "If an aircraft is flying at the absolute ceiling, then any velocity perturbation will push the aircraft to a speed where there is negative excess thrust and thus the aircraft will begin to sink.\n", "\n", "As a consequence, sustained cruise at the absolute ceiling is not feasible.\n", "```\n", "\n", "For the above reasons, the aircraft absolute ceiling is rarely used or listed by a manufacturer. In reality, the *aircraft service* ceiling is defined, where a small rate of climb is still possible - the rate is usually dictated by the manufacturer.\n", "\n", "To explore this concept, a model for climbing/sinking/gliding flight will be required. This ends the section of Steady Level Flight." ] } ], "metadata": { "celltoolbar": "Tags", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.3" } }, "nbformat": 4, "nbformat_minor": 4 }