diff --git a/notebooks/01a-instructor-probability-simulation.ipynb b/notebooks/01a-instructor-probability-simulation.ipynb index 5cd44fa..c06fe95 100644 --- a/notebooks/01a-instructor-probability-simulation.ipynb +++ b/notebooks/01a-instructor-probability-simulation.ipynb @@ -81,7 +81,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "* Let's say that a website has a CTR of 50%, i.e. that 50% of people click through. If we picked 1000 people at random from thepopulation, how likely would it be to find that a certain number of people click?\n", + "* Let's say that a website has a CTR of 50%, i.e. that 50% of people click through. If we picked 1000 people at random from the population, how likely would it be to find that a certain number of people click?\n", "\n", "We can simulate this using `numpy`'s random number generator.\n", "\n", @@ -755,8 +755,6 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "___\n", - "\n", "In the above, we saw that we could match data-generating processes with binary outcomes to the story of the binomial distribution.\n", "\n", "> The Binomial distribution's story is as follows: the number $r$ of successes in $n$ Bernoulli trials with probability $p$ of success, is Binomially distributed. \n", @@ -1225,9 +1223,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -1239,7 +1237,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" }, "toc-autonumbering": true }, diff --git a/notebooks/01a-student-probability-simulation.ipynb b/notebooks/01a-student-probability-simulation.ipynb index 51a29a0..1a426b5 100644 --- a/notebooks/01a-student-probability-simulation.ipynb +++ b/notebooks/01a-student-probability-simulation.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -90,22 +90,9 @@ }, { "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Draw 1,000 samples from uniform & plot results\n", "x = ___\n", @@ -121,20 +108,9 @@ }, { "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'Number of clicks = 502'" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Computed how many people click\n", "clicks = ___\n", @@ -151,20 +127,9 @@ }, { "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'Proportion who clicked = 0.502'" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Computed proportion of people who clicked\n", "f\"Proportion who clicked = {___}\"" @@ -210,18 +175,9 @@ }, { "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Number of clicks = 712\n", - "Proportion who clicked = 0.712\n" - ] - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Solution\n", "clicks = ___\n", @@ -255,90 +211,9 @@ }, { "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
bandspeciesblengthbdepth
019022fortis10.08.5
119028fortis12.58.9
219032fortis9.37.5
319041fortis10.39.6
419044fortis11.09.2
\n", - "
" - ], - "text/plain": [ - " band species blength bdepth\n", - "0 19022 fortis 10.0 8.5\n", - "1 19028 fortis 12.5 8.9\n", - "2 19032 fortis 9.3 7.5\n", - "3 19041 fortis 10.3 9.6\n", - "4 19044 fortis 11.0 9.2" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Import and view head of data\n", "df_12 = pd.read_csv('../data/finch_beaks_2012.csv')\n", @@ -347,7 +222,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -364,20 +239,9 @@ }, { "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.8514056224899599" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "p = ___\n", "p" @@ -401,20 +265,9 @@ }, { "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.8558" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "n_samples = 10000\n", "___" @@ -466,20 +319,9 @@ }, { "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "7" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Set seed\n", "___\n", @@ -499,22 +341,9 @@ }, { "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Simulate 1,000 run of flipping the biased coin 10 times\n", "x = ___\n", @@ -546,20 +375,9 @@ }, { "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.7613" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Calculate the probability of 5 or more heads for p=0.3\n", "___" @@ -574,20 +392,9 @@ }, { "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.994" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Calculate the probability of 5 or more heads for p=0.5\n", "___" @@ -602,22 +409,9 @@ }, { "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Plot histogram \n", "x = ___\n", @@ -680,7 +474,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -714,22 +508,9 @@ }, { "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Generate x- and y-data for the ECDF\n", "x_flips, y_flips = ___\n", @@ -800,22 +581,9 @@ }, { "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Generate Poisson-distributed data\n", "samples = ___\n", @@ -861,22 +629,9 @@ }, { "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Generate x- and y-data for the ECDF\n", "x_p, y_p = ___\n", @@ -920,7 +675,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -955,7 +710,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -972,32 +727,9 @@ }, { "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0, 0.5, 'ECDF')" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Number of times we simulate the model\n", "n_reps = 1000\n", @@ -1048,7 +780,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1061,7 +793,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1076,22 +808,9 @@ }, { "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Plot sample & model ECDFs\n", "___;\n", @@ -1132,32 +851,9 @@ }, { "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0, 0.5, 'PDF')" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Load data, plot histogram \n", "import scipy.stats as st\n", @@ -1180,22 +876,9 @@ }, { "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Get speed of light measurement + mean & standard deviation\n", "michelson_speed_of_light = df.c.values\n", @@ -1226,9 +909,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -1240,7 +923,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" }, "toc-autonumbering": true }, diff --git a/notebooks/01b-instructor-joint-conditional-probability.ipynb b/notebooks/01b-instructor-joint-conditional-probability.ipynb index 9cf77ae..eca6711 100644 --- a/notebooks/01b-instructor-joint-conditional-probability.ipynb +++ b/notebooks/01b-instructor-joint-conditional-probability.ipynb @@ -552,9 +552,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -566,7 +566,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/notebooks/01b-student-joint-conditional-probability.ipynb b/notebooks/01b-student-joint-conditional-probability.ipynb index 091cf81..50fc408 100644 --- a/notebooks/01b-student-joint-conditional-probability.ipynb +++ b/notebooks/01b-student-joint-conditional-probability.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -83,29 +83,9 @@ }, { "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.2456\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEBCAYAAACXArmGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAEv9JREFUeJzt3X2QXXV9x/H3bhIhmgcwLEMQQ2sxX6iOxPLgTBGkhTpDfaCOIJXIgw5gBuloizJakgpWO30iWKqxDsjEmZRCC1VLIU5HdCQWUVHBjpjvMB2MxqQlE+kksQaSbPrHPfvjumb3nnv37j279P2aYdj7Pb+z53vP/nI/95yz9+zQwYMHkSQJYLjpBiRJM4ehIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSMbfpBmo4DDgN2A4caLgXSZot5gBLgW8Bz9RdaTaEwmnApqabkKRZ6kzga3UHz4ZQ2A7w9NM/Y3S0tzu6LlmygJ079/S1qX6wr+7YV3fsqzvPt76Gh4c48sgXQfUaWtdsCIUDAKOjB3sOhbH1ZyL76o59dce+uvM87aur0+5eaJYkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJU1PqcQkR8BTga2FeV3g38GrAamAd8PDM/WY09F1gLzAfuyszVVX0FcBuwCHgQWJWZ+/v3VKRmPLvvACMjCwe+3b3P7Gf3rp8PfLt6fusYChExBCwHjh97EY+IlwB3AqfQuqfGQ1VwPAncDrwO+DFwX0Scl5kbgQ3AFZn5cER8BrgS+NQ0PCdpoF4wbw5vuvYLA9/uvTedz+6Bb1XPd3WOFKL6/79FxBLgVmA38OXM/ClARNwNXAB8FXgiM5+s6huACyPicWB+Zj5cfa/1wI0YCpI0o9S5pnAk8ADwFuAcYBWwjF+8n8Z24Djg2C7rkqQZpOORQmZ+Hfj62OPq1M9a4KNtw4aAUVohc7CLem1LlizoZvgvaeKcbx321Z2Z2ldTOu2Pmbq/7Ks7g+yrzjWF1wKHZeYDVWkI+CGt+3SPOQbYBmztsl7bzp17er4p1MjIQnbsmHlnX+2rOzO5r6ZMtj9m8v6yr/p67Wt4eKinN9N1Th8dAfxVRBweEQuBy4B3AOdExEhEvBB4K/BF4BtARMQJETEHuBjYmJlbgL0RcUb1PS8BNnbdrSRpWnUMhcz8V+A+4LvAt4HbM/PfgeuBrwCPAndk5jczcy9wOXAP8DiwGbi7+lYrgZsjYjOwALilv09FkjRVtT6nkJlrgDXjancAdxxi7APAyYeoPwac3lubkqRB8BPNkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUzK07MCL+GjgqMy+PiBXAbcAi4EFgVWbuj4hlwAbgaCCBlZm5JyKOAP4eeBmwA3hbZv5Xn5+LJGmKah0pRMQ5wGVtpQ3ANZm5HBgCrqzq64B1mXki8Aiwpqp/FNiUmScBtwJ/04feJUl91jEUIuLFwMeAP6seHw/Mz8yHqyHrgQsjYh5wFnB3e736+g20jhQA/gE4rxovSZpB6hwpfBq4Hni6enwssL1t+XbgOOAoYFdm7h9X/4V1quW7gJEpdS5J6rtJrylExBXAjzPzgYi4vCoPAwfbhg0Bo4eoU9XHxrQbaltWy5IlC7oZ/ktGRhZOaf3pYl/dmal9NaXT/pip+8u+ujPIvjpdaL4IWBoRjwIvBhbQeuFf2jbmGGAb8BSwOCLmZOaBasy2asxPqnFbI2IusBDY2U2jO3fuYXR0fObUMzKykB07dve07nSyr+7M5L6aMtn+mMn7y77q67Wv4eGhnt5MT3r6KDN/JzNfmZkrgD8B/iUz3wnsjYgzqmGXABszcx+wiVaQAFwKbKy+vr96TLV8UzVekjSD1P6V1HFWArdGxCLgO8AtVf1q4LMRsRr4EfD2qr4GWB8R3wf+p1pfkjTD1A6FzFxP6zeKyMzHgNMPMWYLcPYh6j8F3txjj5KkAfETzZKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVMytMygiPgJcABwEPpOZayPiXGAtMB+4KzNXV2NXALcBi4AHgVWZuT8ilgEbgKOBBFZm5p5+PyFJUu86HilExOuA3wZeBZwK/EFEnAzcDpwPnAScFhHnVatsAK7JzOXAEHBlVV8HrMvME4FHgDX9fCKSpKnrGAqZ+VXgtzJzP613+XOBI4AnMvPJqr4BuDAijgfmZ+bD1errq/o84Czg7vZ6P5+IJGnqap0+ysx9EXEj8H7gn4Bjge1tQ7YDx01SPwrYVQVIe722JUsWdDP8l4yMLJzS+tPFvrozU/tqSqf9MVP3l311Z5B91QoFgMz8cET8BXAvsJzW9YUxQ8AorSOPOnWqem07d+5hdHT8t6hnZGQhO3bs7mnd6WRf3ZnJfTVlsv0xk/eXfdXXa1/Dw0M9vZmuc03hxOriMZn5v8A/A2cDS9uGHQNsA7ZOUH8KWBwRc6r60qouSZpB6vxK6suAWyPisIh4Aa2Ly58GIiJOqF7oLwY2ZuYWYG9EnFGte0lV3wdsAi6q6pcCG/v5RCRJU1fnQvP9wH3Ad4FvAw9l5p3A5cA9wOPAZp67iLwSuDkiNgMLgFuq+tXAVRHxOHAmsLp/T0OS1A91LzTfANwwrvYAcPIhxj4GnH6I+hZap50kSTOUn2iWJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpKLWH9mZ7Z7dd6CRP66+95n97N7184FvV1J/LVw0n8MPa+bl8tl9Bwa6vf8XofCCeXN407VfGPh2773pfHYPfKuS+u3ww+Y28hoCrdeRQfL0kSSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkopad0mNiA8Db6se3peZ10XEucBaYD5wV2aursauAG4DFgEPAqsyc39ELAM2AEcDCazMzD19fTaSpCnpeKRQvfi/Hng1sAI4JSLeDtwOnA+cBJwWEedVq2wArsnM5cAQcGVVXwesy8wTgUeANf18IpKkqatz+mg7cG1mPpuZ+4AfAMuBJzLzyczcTysILoyI44H5mflwte76qj4POAu4u73ev6chSeqHjqePMvP7Y19HxMtpnUb6W1phMWY7cBxw7AT1o4BdVYC01yVJM0jtv7wWEa8A7gM+AOyndbQwZggYpXXkcbBGnape25IlC7oZPmN0+jOgTfyZ0Drsa3ZwfvWXfdW/0HwGcA/wvsy8MyJeByxtG3IMsA3YOkH9KWBxRMzJzAPVmG3dNLpz5x5GR8fnSj1N/qB37Jj4D3KOjCycdHlT7Ks7zq/uzMa+mg6LXvbX8PBQT2+m61xofinweeDizLyzKn+jtShOiIg5wMXAxszcAuytQgTgkqq+D9gEXFTVLwU2dt2tJGla1TlSeD9wOLA2IsZqfwdcTuvo4XDgfp67iLwSuDUiFgHfAW6p6lcDn42I1cCPgLf3oX9JUh/VudD8XuC9Eyw++RDjHwNOP0R9C3B2l/1JkgbITzRLkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVIxt+7AiFgEPAS8MTN/GBHnAmuB+cBdmbm6GrcCuA1YBDwIrMrM/RGxDNgAHA0ksDIz9/T12UiSpqTWkUJEvAb4GrC8ejwfuB04HzgJOC0izquGbwCuyczlwBBwZVVfB6zLzBOBR4A1/XoSkqT+qHv66ErgPcC26vHpwBOZ+WRm7qcVBBdGxPHA/Mx8uBq3vqrPA84C7m6vT719SVI/1Tp9lJlXAETEWOlYYHvbkO3AcZPUjwJ2VQHSXpckzSC1rymMMwwcbHs8BIx2Uaeq17ZkyYLuu5wBRkYWTml5U+xrdnB+9Zd99R4KW4GlbY+PoXVqaaL6U8DiiJiTmQeqMdvows6dexgdHZ8r9TT5g96xY/eEy0ZGFk66vCn21R3nV3dmY19Nh0Uv+2t4eKinN9O9/krqN4CIiBMiYg5wMbAxM7cAeyPijGrcJVV9H7AJuKiqXwps7HHbkqRp0lMoZOZe4HLgHuBxYDPPXUReCdwcEZuBBcAtVf1q4KqIeBw4E1jde9uSpOnQ1emjzPyVtq8fAE4+xJjHaP120vj6FuDsrjuUJA2Mn2iWJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqRi7iA3FhEXA6uBecDHM/OTg9y+JGlyAztSiIiXAB8DXgusAK6KiF8f1PYlSZ0N8kjhXODLmflTgIi4G7gA+EiH9eYADA8PTWnjRx85f0rr96pT31N9XtPFvrrj/OrObOyrqZ8x9La/2taZ0816QwcPHux6Y72IiA8BL8rM1dXjK4DTM/OqDqu+Ftg03f1J0vPUmcDX6g4e5JHCMNCeQEPAaI31vkXrSW0HDkxDX5L0fDQHWErrNbS2QYbCVlov7mOOAbbVWO8Zukg5SVLxn92uMMhQ+BJwQ0SMAD8D3gp0OnUkSRqggf32UWb+BLge+ArwKHBHZn5zUNuXJHU2sAvNkqSZz080S5IKQ0GSVBgKkqTCUJAkFQO9IV6/dbrBXkSsAG4DFgEPAqsyc39ELAM2AEcDCazMzD0D7Ot84EZaH+B7EnhnZj4dEZcBfw78dzX0vsy8foB9fRh4F/B0Vbo1Mz850X4cRF/Vtte3DR8Bns7MV073/qq2vwh4CHhjZv5w3LJG5leNvhqZXzX6amR+TdZXk/Or2h9va/ve141b3sj8mrVHCjVvsLcBuCYzl9P6B3JlVV8HrMvME4FHgDWD6quanJ8C3pCZJwPfA26oFp8K/FFmrqj+6+cErLO/TgV+v237Yy/OE+3Hae8rMx8d6wf4TVovKKva+p2W/VX19hpaH5xcPsGQgc+vTn01Nb869dW2/YHOr059NTW/IuJc4PXAq2nN+1Mi4i3jhjUyv2ZtKNB2g73M/BkwdoM9ACLieGB+Zj5cldYDF0bEPOCsanypD6ovWu+G31N9bgNa/2iXVV+fBlwWEf8RERsi4sgB9gWtfwR/HBHfi4hPRMThE+3HAfc15kPAVzNz7BPu07m/oPWP8D0c4pP3Dc6vSfuiufnVqS9oZn7V6WvMIOfXduDazHw2M/cBP+C5n1Oj82s2h8KxtHbsmO3AcTWWHwXsajs8Hb/etPaVmTsz83MAETEf+CDw+baxfwq8Cvgx8IlB9RURC4DvAh8AfgM4gtY7kE77eVr7autvMa1PwN84bux07S8y84rMnOhmjE3Nr0n7anB+TdpXg/Or089xrL+Bzq/M/P7YC35EvJzWaaT724Y0Nr9m8zWFTjfYm2j5+DrUuzFfv/oCyiT8HPBYZn4WIDPf0rb8L+nhviW99lWdk/zdtu3fBNxOa6L2ciPDvvTV5h3A5zPzqbaep3N/ddLU/Kqlgfk1qQbnV12NzK+IeAVwH/CBzHyibVFj82s2HylspXUHwDHjb7A30fKngMURMXaP8aXUuzFfv/oiIpbSuh3494ArqtriiPjDtmFDQD8vtk3aV0Qsi4h3jdv+vk7rTXdfbX4PuHPswQD2VydNza+OGppfnXpqan7VNfD5FRFnAA8AHxwL7jaNza/ZHApfAs6JiJGIeCGtG+x9cWxhZm4B9lY7HuASYGN1/m4TcFFVvxTYOKi+qh/mvcA/Zub7MnMs9fcA11UXxQCuofVObyB9AT8H/jIifjUihmidg/3cRPtxgH1R9XMK8PW28nTvr0k1OL8m1eD86qSp+dVRE/MrIl5K67TexZl55/jlTc6vWRsKE91gLyLuj4hTq2ErgZsjYjOwALilql9N67dcHqd1O+/VA+zrzbTOqV4QEY9W/92WmQdonVf8VET8gNYkvW6CzfS9r8zcAbyb1gtK0npndFO1+kT7cdr7qoaNAM9m5t629aZ1f02k6flVo69G5lenvpqaX536qh42Mb/eDxwOrG37Oa2aCfPLG+JJkopZe6QgSeo/Q0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlS8X/Ba4xyC34TQAAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Solution: Calculate P(A,B)\n", "x_0 = np.random.binomial(2, 0.5, 10000)\n", @@ -118,20 +98,9 @@ }, { "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.2523537" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Solution: Calculate P(A)P(B)\n", "x_1 = np.random.binomial(1, 0.5, 10000)\n", @@ -167,20 +136,9 @@ }, { "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.724891534007516" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Import data & store lengths in a pandas series\n", "df_12 = pd.read_csv('../data/finch_beaks_2012.csv')\n", @@ -201,20 +159,9 @@ }, { "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.7239874466" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Calculate P(A)P(B) using resampling methods\n", "n_samples = 100000\n", @@ -232,20 +179,9 @@ }, { "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.7242" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Calculate P(A,B) using resampling methods\n", "n_samples = 100000\n", @@ -294,20 +230,9 @@ }, { "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.8514056224899599" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Q1 Answer\n", "___" @@ -315,20 +240,9 @@ }, { "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.6942148760330579" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Q2 Answer\n", "df_fortis = df_12.loc[df_12['species'] == 'fortis']\n", @@ -337,20 +251,9 @@ }, { "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "1.0" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# Q3 Answer\n", "df_scandens = df_12.loc[df_12['species'] == 'scandens']\n", @@ -415,7 +318,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -428,7 +331,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -440,20 +343,9 @@ }, { "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "array([0.33718559])" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "# how many of those +ve tests were for users?\n", "_____ / (______ + _________)" @@ -555,9 +447,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -569,7 +461,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/notebooks/02-instructor-parameter-estimation.ipynb b/notebooks/02-instructor-parameter-estimation.ipynb index bb30afb..a5a605a 100644 --- a/notebooks/02-instructor-parameter-estimation.ipynb +++ b/notebooks/02-instructor-parameter-estimation.ipynb @@ -314,9 +314,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -328,7 +328,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/notebooks/02-student-parameter-estimation.ipynb b/notebooks/02-student-parameter-estimation.ipynb index c8a96df..ef5cda1 100644 --- a/notebooks/02-student-parameter-estimation.ipynb +++ b/notebooks/02-student-parameter-estimation.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -122,7 +122,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -154,22 +154,9 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEBCAYAAAB/rs7oAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3Wl0XOWd5/FvVWnft5Ks1ZK1PLY27zY2NmBs9rB0AgmepJlOdydN97S703P6RZ+cZCaTPjOdmU7PZDhNDoTOJIQENwMk0CQGgrExtomxsSVbXvRItrXv+77VMi9UZoRjcEmqqltV9/85x2Bdbkm/hyr9dHXruc+1uN1uhBBCmIfV6ABCCCECS4pfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMRopfCCFMJsLoAB7RwGagC3AanEUIIUKFDcgGTgEz3j4oWIp/M3DU6BBCCBGidgLHvN05WIq/C2BoaAKXa/GrhaanJzAwMO7zUMFMxmwOMmZzWOqYrVYLqanx4OlQbwVL8TsBXC73kor/2mPNRsZsDjJmc1jmmBd1ilze3BVCCJOR4hdCCJOR4hdCCJO56Tl+pdT3gS8AhUCV1vr8DfaxAU8B9wJu4Hta63/xbVQhhBC+4M0R/2vAbUDLZ+zzZaAEKAW2Ad9RShUuO50QQgifu2nxa62Paa3bbrLbl4DntNYurXUf8z8sHvNFQCFEYLnd5ptRYza+ms5ZwCd/I2gF8n30uYUQfjTncFF3dQDdOoxuG6K9d4LoKCtx0REkxEWxoTSDW6uySUuKMTqq8JFgmccPzF/EsFR2e6IPk4QGGbM5+GvMLpebIzXt/PzNS/QOTREVYWV1YRqb1qzA4XQxPjVH98AEvzraxGvHmlhflskffa6copxkv+RZSJ5n//JV8bcCK5lfLwJ+/zcArwwMjC/pIga7PZG+vrFFPy6UyZjNwV9jvto5yvNv1dPWO87KrES+8Vg1a1amERnx+2d/+4anOF7XxXs1HfzHH7zPY3cUs3tTHlaLxee5QJ7nxbBaLUs6YPZV8b8MfE0p9UsgHXiE+TeEhRBB5nhdF8+/pUmOj+TPHqpg85rMzyxxe0osj+xcxZ0b8/jpgXr2v9tI3dUB/vTBcpLiogKYXPjKTd/cVUo9pZRqB/KAg0qpC57tB5RSmzy7vQBcBRqBE8B3tdZX/ZRZCLEELpeblw418uPfXKIkN4n//NUtbC3P8vrIPSkuin1fqOKJexS6bZh/+tdaxqfm/Jxa+IMlSN7BLwSa5FSP92TM5uCrMbtcbn70xgVOXupl94Y8vrS7hAjb0q/fPN80wFOvnCM/M5G/fXwdsdG+e7tQnmfvLTjVUwQ0e/24RX8lIURIcbvdvPBbzclLvTx2RzFfvrtsWaUPUFmUzp8/XElL9xj/++WzzMzJbTRCiRS/EGHu1SNXOVLbyQPbVnLfLSt99nnXl9n5+kPlNHaM8Pxb9T77vML/pPiFCGPvnGrjwIkW7liXw+dvW+Xzz79lTRYP7yjixIUePji/qCXhhYGk+IUIUw1tw7x06DLrSzP4yt0Ki5+mX35uWyFl+Sm88HYDPYOTfvkawrek+IUIQ6MTszzz+nkyUmL4kwfKsVr9U/ow/wbj1x8sJ8Jm4ZnXL+Bwuvz2tYRvSPELEWauzeAZn3LwF49UEhfj/wv005Ji+Or9a2jpGeP1Y01+/3pieaT4hQgzv/5dMxebh/jK3WUUZAVuGYANZXa2VWTx9slWeobklE8wk+IXIoy09ozxxvFmtpZnsbM6O+Bf/9E7SrDZrLz07uWAf23hPSl+IcKE0+XiJ2/WEx8TwZfvKvPbm7mfJTUxmoe2F1J7uZ9zVwYC/vWFd6T4hQgTb59so6V7jK/crUiIjTQsx12b88lKi2P/u43yRm+QkuIXIgx0DUzw2tEmNpbZ2bQ609AsETYre3eX0jM4ycGP2g3NIm5Mil+IEOd2u3n+LU10pJWv3F1mdBwAqovTqShK48CJFmZmZTmHYCPFL0SIO1XfS0PbMF+4o5jkhGij43zs4R1FjE/Ncbimw+go4jpS/EKEsJk5Jy8fvkxBZgK3VecYHecTSnKTqShM5a0PW2QRtyAjxS9ECHvrw1YGRmfYu6fUr1fnLtWDtxYxOjnHkdpOo6OIBaT4hQhRAyPTvHmihc2rM1EFqUbHuaGy/BRWF6Tw5okWZuWoP2hI8QsRol5+7zJu4LFdxUZH+UwP7yhiZGKWI2flqD9YSPELEYJausc4eamXe7bkk5Eca3Scz6QKUinNS+adU21LusOe8D0pfiFC0KtHrhAfE8G9W3x3YxV/umtTPv0j05y93G90FIEUvxAhR7cOcb5pkAe2FQZk5U1fWF+WQVpSNAdPywVdwUCKX4gQ4na7eeXIFVITo7lzQ67Rcbxms1rZtT6XSy1DdPSNGx3H9KT4hQghZy8PcKVjlAdvLSQq0mZ0nEW5bW0OkRFW3pWjfsNJ8QsRIlxuN798/wqZqbHsqAr8ksvLlRgXxdbyLD640M3E9JzRcUxNil+IEFHT0Ed73wQP31pEhC00v3X3bMxjds7F0bNyY3YjhearRwiTcbvdvPFBM5mpsWwpN3b1zeUoyEqkLC+Z92o7cLtlaqdRpPiFCAFnrwzQ2jPOA9tWYrOG9rftzrU59A5N0dg+YnQU0wrtV5AQJuB2u3njeDMZyTFsq1hhdJxl26QyiYmycfScXMlrFCl+IYLchaZBmrpGuX/bypA9t79QdJSNLWsy+ai+j6kZh9FxTCn0X0VChDG3282/fdBMamI0t1aG3kyeT7OjOoeZOScf1fcaHcWUpPiFCGIXmwa53D7CfVsLiIwIn2/X4pwkVqTFcaxOZvcYIXxeSUKEoV8evkxCbCQ71wbXTVaWy2KxsLM6m8b2EboHJ42OYzpeLfShlCoDngfSgQHgCa1143X7ZAI/AfKBKOAQ8FdaazmJJ8QSdPRPcPJiNw/vKCI6xK7S9ca2yhW8euQqx8518egdwb20dLjx9oj/GeBprXUZ8DTw7A32+SZwSWtdDVQBG4HP+ySlECb09oetREXaQmpNnsVISYimclUav7vQjUvm9AfUTYvfcyS/Adjv2bQf2KCUsl+3qxtIVEpZgWjmj/rlLstCLMHQ2Ay/u9DNXVsKSIyLMjqO39xSkcXQ2AyNbcNGRzEVb0715AMdWmsngNbaqZTq9GzvW7Df3wOvAl1APPDPWuvjiwmTnp6wmN0/wW5PXPJjQ5WMOXz9+kQrbrebR24vxp4eb3Qcv7nrllief0tzrmmIHRsLPt5ulud5oUCO2ZeLeT8GnAN2A4nAm0qpR7XWr3j7CQYGxpd0hx67PZG+vrFFPy6UyZjD1+S0gwMfNLFpdSYr0uPDfsxri9M5WtvBH+woJMJmNc3zvNBSx2y1WpZ0wOzNOf42IFcpZQPw/DvHs32hfcAvtNYurfUI8Dqwa9GJhDC5Y+c6mZ51cs+WgpvvHAa2rslifGqOSy1DRkcxjZsWv9a6F6gF9no27QVqtNZ91+3aBNwLoJSKAvYA530XVYjw53K5OXi6ndK8ZIqyk4yOExCVq9KJjY7g5MUeo6OYhrezep4E9imlGpg/sn8SQCl1QCm1ybPPN4CdSqk65n9QNADP+TivEGHtTEMf/SPT3L053+goARMZYWVjmZ0zjX3MOZxGxzEFr87xa63rga032H7/gr9fAe7yXTQhzOe3H7WRkRzD+tLrJ82Fty3lmRyr6+LclQFyslOMjhP25MpdIYJEU9col9tH2LMxD6vVYnScgFqzMpXEuEg+vCRr9wSCFL8QQeKdU23ERNnCbnkGb9isVjapTM5d7mdaVuz0Oyl+IYLA0NgMp+p72VmdQ2y0L2dZh45Nys6sw8UZLUf9/ibFL0QQOFzTgcvlZvfG8FyewRtlBSnEx0Twu/OyYqe/SfELYbA5h4v3azuoLk4nMzXO6DiGsVmtrCvN4NSFbhxOl9FxwpoUvxAGO1Xfw+jkHHs2mWcK56fZWJbJxLSDermYy6+k+IUw2Lun28lOj6O8MNXoKIarKEolJsrG6Ybrrw8VviTFL4SBrnSO0NQ1xp0b8rBYzDWF80YiI2xsWpNFTWP/ktbtEt6R4hfCQO+ebicmysb2yhVGRwka26tyGJ2Y5XLHiNFRwpYUvxAGGRmf4dSlXnZUZZt2CueNbFyTSYTNwhk53eM3UvxCGOT9s504XW7u3JhndJSgEhcTSXlhGqd1H265M5dfSPELYQCny8V7tZ1UFKayIs28Uzg/zYYyOwOj07T3TRgdJSxJ8QthgNrGAYbGZti1QY72b6S6OB2A2sv9BicJT1L8QhjgcE07aUnRrC1JNzpKUEpJiKYoO5GzUvx+IcUvRIB1DUxwsXmI29flYrPKt+CnWVuSQVPnKCMTs0ZHCTvyqhMiwA7XdGCzWrjNhKtwLsba4gzcwLkrctTva1L8QgTQzKyT43XdbFqdSXJ8lNFxglpBVgKpidGcvTxgdJSwI8UvRACduNjN1IyDXevNuwqntywWC2tLMrjQNCi3ZPQxKX4hAsTtdnO4poNcezyleclGxwkJ60rSmZlzUt86bHSUsCLFL0SANHWN0dozzq71ubIuj5dWF6QSFWGV2T0+JsUvRIAcrmknOtLGtgpZl8dbUZE2ygvTOHu5X67i9SEpfiECYHxqjpOXetlWkSXr8izSutIMBkZn6OiXq3h9RYpfiAD4oK6LOYeLO+RN3UWrLEoDoO6qzO7xFSl+IfzM7XZzuLaT4twkCrISjY4TctKSYsizx1N3RYrfV6T4hfCzSy1D9AxOyhTOZahalU5j+whTMw6jo4QFKX4h/Oy9mg4SYiPZvDrT6Cghq2pVOk6Xm4vNci9eX5DiF8KPhsdnqGnsZ0dVNpERNqPjhKySvGRiomxynt9HpPiF8KOjnput3L5O1uVZjgiblYrCNOquDsi0Th+Q4hfCT1wuN0fOdlJemEqW3Gxl2aqK0xkak2mdviDFL4SfnLs6wODoDHeskzd1fUGmdfqOV1eSKKXKgOeBdGAAeEJr3XiD/b4IfBuwAG5gj9a6x3dxhQgd79V0kJwQxbrSDKOjhIWF0zrv27rS6Dghzdsj/meAp7XWZcDTwLPX76CU2gR8B7hLa10J7ABGfJRTiJDSPzxF3ZUBbqvOIcImv1j7SlWxTOv0hZu+IpVSmcAGYL9n035gg1LKft2ufwN8X2vdDaC1HtFaT/syrBCh4sjZTrAgN1vxsaqi+Wmd9S0yrXM5vDkUyQc6tNZOAM+/Oz3bFyoHViml3ldKnVFKfUspJUsQCtNxOF0cPdvJ2uIM0pNjjI4TVkrykomOtHG+edDoKCHNl6tFRQDVwF1AFPAW0Ar8zNtPkJ6esOQvbreb71J4GXNwOlrbwejkHA/fUeKTvKEwZl/7rDFXl2ZQ3zIcdv9fAjkeb4q/DchVStm01k6llA3I8WxfqAV4RWs9A8wopV4HtrCI4h8YGMflWvwcXbs9kb6+sUU/LpTJmIPXvx25TEZyDPlpscvOGypj9qWbjbksN5lTF3u40NBDZmp4TJNd6vNstVqWdMB801M9WuteoBbY69m0F6jRWvddt+uLwN1KKYtSKhLYDZxddCIhQljXwAT1rcPcvi4Hq1XOdPrDtWmd55vkdM9SeTvd4Elgn1KqAdjn+Ril1AHPbB6AfwV6gYvM/6C4APzYt3GFCG7v1XRis1rYUS1v6vpLZmosGckxXJDiXzKvzvFrreuBrTfYfv+Cv7uA/+j5I4TpzM45OV7XxUZlJzk+yug4YctisVBZlMaJiz04nC6ZLrsE8n9MCB85eamXyRmHLL8cABVF6UzPOrnSIZcKLYUUvxA+crimg+z0OMryU4yOEvbWrEzFarFwQaZ1LokUvxA+0NI9RlPXKHesz8VikTd1/S0uJoJVuUmcvyrFvxRS/EL4wOGadqIirdxaucLoKKZRWZhGS/cYo5OzRkcJOVL8QizT5PQcJy70cEt5FnExkUbHMY2KVWm4gUtyV65Fk+IXYpmOn+9m1uFi1/o8o6OYStGKJOKiI+Q8/xJI8QuxDG63m/dqOijKTmLlivBaQiDYWa0W1qxM5WLzoNyVa5Gk+IVYhvrWYboGJrlzg0zhNEJFURqDozN0D04aHSWkSPELsQyHazqIj4lg8+pMo6OYUrln+Qa5indxpPiFWKKhsRlqGvrYUZ1NVKTN6DimlJkSiz0lhovyBu+iSPELsURHajtwudxypa7BKgrTuNQ6hMPpMjpKyJDiF2IJHE4XR852UrkqPWyWBg5VFUVpzMw6udo5anSUkCHFL8QSnGnoY2R8Vt7UDQJrVqZisch5/sWQ4hdiCQ6d6SAjOYaqVelGRzG9uJhIirKTuCjz+b0mxS/EIrX3jtPQNsyuDblys5UgUVGYxtWuUSan54yOEhKk+IVYpEM1HURGWNkpN1sJGhVFabjdcKlFZvd4Q4pfiEWYnJ7jg/NdbFmTSUKsrMsTLFblJBEdZZNpnV6S4hdiEY6d62J2zsWejflGRxELRNisrM5PkXV7vCTFL4SXXG43h850UJKXLOvyBKHywjR6h6boH54yOkrQk+IXwkt1VwboHZ5iz0ZZhTMYfbx8gxz135QUvxBeevd0OykJUWwosxsdRdxATnocKQlRXJDz/DclxS+EF7oGJjjfNMiu9blE2OTbJhhZLJb55RuaB3G5ZJnmzyKvYCG8cOh0BxE2C7evkyt1g1l5URoT0w5ae8eMjhLUpPiFuInJ6TmO1XWxeXUWSfFRRscRn6G8UJZp9oYUvxA3cfRcFzNzTu7eLFM4g11yfBR59niZz38TUvxCfAany8XBj9opy0+RKZwhorwwjcb2YWbmnEZHCVpS/EJ8htrGfgZGp+VoP4RUFKXhcLppbBs2OkrQkuIX4jO8c6qNjOQY1pVkGB1FeKksP4UIm0Xm838GKX4hPkVz9ygN7SPs2ZQvq3CGkOhIG6V5KVxokvP8n0aKX4hP8c6pNmKibOyszjY6ilik8sJU2vvGGRmfMTpKUJLiF+IGBkenOXmplx3V2cRGRxgdRyxSZdH8DXJkds+NefWKVkqVAc8D6cAA8ITWuvFT9lVADfBDrfXf+iqoEIF08HQ7bjfcvUne1A1F+VkJJMRGcr5pkG2VK4yOE3S8PeJ/Bnhaa10GPA08e6OdlFI2z397zTfxhAi8qRkHR2o72LTaTkZKrNFxxBJYLRbKC1O52DyI2y3LN1zvpsWvlMoENgD7PZv2AxuUUjdaqervgF8DDT5LKESAvX+2k6kZJ/dsKTA6iliGisI0RiZm6eibMDpK0PHmVE8+0KG1dgJorZ1KqU7P9r5rOymlqoF7gF3At5cSJj09YSkPA8BuN9/FNTJm33M4XRyq6aCqOIMt1cGxLo88z0uzc2MBP3mznpb+CdZXBP8b9IF8nn3yrpVSKhJ4Dviq5wfDkj7PwMD4klbVs9sT6esz16JMMmb/OHGxm76hKf7d7tKg+P8rz/PyZKfH8WFdF7eWZ/nk8/nLUsdstVqWdMDszTn+NiDXc/7+2nn8HM/2a7KBYuCAUqoZ+AbwNaXUjxadSAiDuN1u3vqwlez0OKqK042OI3ygvDCNhrZh5hyyfMNCNy1+rXUvUAvs9WzaC9RorfsW7NOqtc7QWhdqrQuBHwDPaa2/7ofMQvjFheZBWnvGuWdLAVaLXLAVDioK05h1uGhsHzE6SlDxdlbPk8A+pVQDsM/zMUqpA0qpTf4KJ0QgHfhdC6mJ0WyX6X9hQxWkYLNaZJnm63h1jl9rXQ9svcH2+z9l/+8sL5YQgXWlY4T61mEev7NE7rAVRmKjIyjJTeZ80yCP7TI6TfCQV7gQwIETLcTHRHDbuhyjowgfq1yVRluvLN+wkBS/ML2O/glqGvvZvTGPmChZniHcXFu+4byc7vmYFL8wvTdPtBAVaWWPLM8QlvKzEkiKi5Tz/AtI8QtT6xue4sOLPdy+NpeE2Eij4wg/sFosVBSlcb5pEJcs3wBI8QuT+83vWrBYLNy7VZZnCGeVRemMT83R0m2ui+E+jRS/MK3+kSmO13Vx29psUhOjjY4j/KiiKA2Q8/zXSPEL03rzRCsA99+y0uAkwt+S4qNYmZXIhasDRkcJClL8wpQGR6c5eq6TndXZpCXFGB1HBEDlqjSudI4yNeMwOorhpPiFKb35YStutxztm0llURpOl5tLLXJXLil+YTpDYzMcqe1kW+UKudGKiRTnJhMTZaNOTvdI8Qvz+fUHzbjdbh7aXmh0FBFAETYrFYVp1F0dMP1duaT4han0DU/x/tlOblubI0f7JlRVnM7g6Awd/ea+K5cUvzCVfzvehNVq4XNytG9KVavml284d8Xcp3uk+IVpdA1M8MH5bnatz5V5+yaVmhhNQWaCFL/RAYQIlNePNREVYZOZPCZXVZzO5fYRJqfnjI5iGCl+YQot3WOcvNTLnk15JMVHGR1HGKi6OB2X282FZvNO65TiF6bwynuXSYiN5L6tcrRvdsU5ycTHRHDuSr/RUQwjxS/C3vmmAS40D/Hg9kLiYmS9fbOzWi1Urkqn7sqAaVfrlOIXYc3lcvPy4SvYU2LYtSHX6DgiSFSvSmd00ryrdUrxi7D2uwvdtPWO8/nbiuVeuuJjFavSsGDeaZ3ynSDC1uyck18dvUrhikQ2r8k0Oo4IIklxUazKTaL2sjnP80vxi7D19slWBkdn+OKuEqwWi9FxRJBZV5JBS/cYg6PTRkcJOCl+EZYGR6f5zYkWNio7q1emGh1HBKH1pXYAUx71S/GLsPTKe1dwu+FLu0qMjiKCVHZ6HFmpsdQ2SvELEfIa24c5cbGHe7cUyEJs4lNZLBbWl9q51DJkupuzSPGLsOJyuXnxnUZSE6NlaQZxU+tKM3C63KZbo1+KX4SVI2c7aekZ47FdxURH2YyOI4JcSW4yCbGRpjvdI8UvwsbI+AyvvHeFNStT2bomy+g4IgRYrRbWlqRz7soADqfL6DgBI8UvwsZLhy4z53DylbvLsMj0TeGl9aV2JmccNLYNGx0lYKT4RVi40DTIiYs93H/LSrLT442OI0JIRWEakRFWzpjodI9XK1YppcqA54F0YAB4QmvdeN0+3wYeBxyeP9/UWr/t27hC/L45h5MXfqvJSo3lgW3yhq5YnOgoG5VFaZxp6GPvnlJTXOzn7RH/M8DTWusy4Gng2RvscxLYrLVeC/wx8JJSSubSCb97/VgzvUNT/OE9isgIeUNXLN6m1ZkMjc1wpWPE6CgBcdPiV0plAhuA/Z5N+4ENSin7wv201m9rrSc9H54DLMz/hiCE3zR1jfLmhy3srM6mvDDN6DgiRK0rySDCZuVUfa/RUQLCmyP+fKBDa+0E8Py707P90zwBXNFaty8/ohA3Nudw8uPfXCIlIZov3VlqdBwRwmKjI6halcZH9b2mWKPf53elUErdDvw9cNdiH5uenrDkr2u3Jy75saHK7GP+2YGLdPZP8J2v3cLK/PBdj8fsz3Og3LllJf/0i9MMTMxRXhT4kxWBHLM3xd8G5CqlbFprp1LKBuR4tn+CUmob8HPgYa21XmyYgYFxXK7F/7S12xPp6zPXDRXMPuarnaO8cqiRHdXZFKTHhe3/C7M/z4G0KjOeCJuVd040Y08I7H2Zlzpmq9WypAPmm57q0Vr3ArXAXs+mvUCN1rpv4X5Kqc3AS8CjWuszi04ihJemZhz86I0LpCZG8/idsgib8A0zne7xdlbPk8A+pVQDsM/zMUqpA0qpTZ59fgjEAs8qpWo9f6p8nliY3osHG+gbnuLrD1YQFxNpdBwRRjavzmR4fDbsZ/d4dY5fa10PbL3B9vsX/H2zD3MJcUMfXuzheF03D24vpCw/xeg4IsysvTa751IvpXnh+/qSK3dFyOgZnORnb2uKc5N4aEeh0XFEGIqNjmBtcTon63txusJ37R4pfhES5hxOvvezU4Cbrz9Ygc0qL13hH9srVzA6Mcv5q4NGR/Eb+e4RIeHFg41cbhvmTx8oxy43VxF+VFWcTkJsJMfruoyO4jdS/CLoHT3XyZHaTh69s5T1ZfabP0CIZYiwWbmlPIvay/2MT80ZHccvpPhFUGvpHuOFtxtYszKVr9y72ug4wiRurcrG4XRz6lKP0VH8QopfBK2hsRmeevUciXGR/NnDFdhs8nIVgVGQlUCePZ7j57uNjuIX8p0kgtLMrJOnXjnH5IyDv360mqS4wF5JKczNYrGwvTKbq52jdA1MGB3H56T4RdBxudz86I0LtPaO8eRDFRRkmW+tGmG8bRVZWC0WPgjDo34pfhFU3G43Lx26TE1jP4/vLmVtSYbRkYRJJSdEU7kqjWN1XWF3P14pfhFU3vigmXc+amPPxjz2bMwzOo4wuTs35DIyPsvpTy5NFvKk+EXQOPhRG68dbWJ75Qoe31MqN0wXhqtclU5maiwHT//eYsQhTYpfBIXjdV28eLCR9aUZfPX+1aa476kIflaLhd0b8rjSMUpz96jRcXxGil8Y7v2znfyf31xizcpUnnxYlmMQweXWqmyiI228+1H43FBQvsOEoQ6daeenb9ZTUZTGXz9aLTdLF0EnLiaC7VUr+PBSD6MTs0bH8QkpfmGYtz5s5ee/bWBdSQb7vlBNVKSUvghOuzfk4XC6OXK20+goPiHFLwLO5XLz4jsN/N/Dl9m0OpO/+INKIiPkpSiCV05GPBWFqRw6087snNPoOMsm320ioGbmnDz9qzoOnm7n7s35PPlQBRGyFIMIAQ9sK2RkfJYjtaF/1C/fcSJgBkam+e+/OENtYz9795Ty+O5SrFaZvSNCw+qVqawuSOE3J1qYCfGjfil+ERAXmwf5Lz89RffgJH/5+Sru2pRvdCQhFu2RnasYnZjl8JkOo6Msi1f33BViqVwuNwdOtPCro1fJTo/nP/xBJdnp8UbHEmJJyvJTqChK48CJFu5Yn0NMVGhWqBzxC7/pH57if7x4hl++f5XNqzP51hMbpfRFyHtkZxHjU3O8ezp05/WH5o8rEdTcbjfH6rrYf7ARgD95YA3bK1fIEgwiLBTnJFNdnM5z9UoZAAAJr0lEQVSbJ1rZUZ1DcnzoLRkuR/zCpzr7J/jH/TX85EA9K7MS+e6fbOHWqmwpfRFWvrirhFmHk/0HG4yOsiRyxC98YmrGwYETLbz1YSsxUTaeuFdx29ocWXNHhKWcjHg+t62Q1441sa2iP+SWD5fiF8vicLp4r6aDNz5oZmxyju2VK/jirhKSQvDXXyEW4/5tKzlZ38sLv9WU5acQGx06dRo6SUVQmXM4OVbXzZsnWugfmWZ1QQqP7SqhKDvJ6GhCBESEzcof3beaf3jhNL98/ypfvqvM6Ehek+IXizI2Ocv7Zzt556N2RidmKcpO5Il7FBVFaXIeX5hOSW4yd27I493T7aj8FDatzjQ6klek+MVNud1uGttHOFLbwan6PhxOF5VFadx3y0pWF6RI4QtTe2xXMc09ozz364ukJkZTnJtsdKSbkuIXN+R2u+nom+DDSz2cvNRD3/A0sdE2bl+bw+3rc8izJxgdUYigEBVpY98XqvmvP/uIp149x7ee2IQ9JdboWJ9Jil98bM7hpKF9hLOX+zl3eYDe4SmsFgtrClN5cHsRm1dnEh0lSycLcb2kuCi+8dha/tsLp/nBy2f5my+uJSM5eMtfit/ExqfmaO4e5XL7CA1tw1zuGMXhdBFhs1JemMo9W/LZqDJlho4QXshOj+cvP1/FU6+e47s//Yg/e6iCiqI0o2PdkFfFr5QqA54H0oEB4AmtdeN1+9iAp4B7ATfwPa31v/g2rliKOYeT3uFpugcmaO+boKNvnNaecXqHpwCwWKAgK5HdG3NRBamsKUiVI3shlkAVpPKf/v1m/vlXdfzPl2p5ZGcR925dGXT3m/D2iP8Z4Gmt9c+VUl8BngXuvG6fLwMlQCnzPyBqlFIHtdbNvgorPsnpcjEx7WBiao6xyTlGJmYZnZhlaGyGwbFpBkdn6B+ZYmh0BrfnMRbAnhpLXmYCO9dmU5SdROGKJOJi5Jc/IXwhKy2Ob/3hJp5/q55fHW3i0JkOdm3I5Y71uSTFBcdvzzf9bldKZQIbgLs8m/YD/6yUsmut+xbs+iXgOa21C+hTSr0GPAb8o48zf4LD6eLE+S4GhyaX/bncbvfNd/q9x4D7Wq26+bhgcYPL8/nc7vnP7XK7cXu2u1xuXO751SudLhdOlxuHc/7vDocbh9PFrMPJnMPF7JyLmTkns3NOpmadTM04mJlzMjntuGEmm9VCamI0aYnRqPwUslLjyEyNJSstjpyMeKLlFodC+FV0lI2vPVjO9qoV/PZUG68dbeKN483k2uPJsyeQa48nNjqCSJuVuOgIdqcFdvFCbw7z8oEOrbUTQGvtVEp1erYvLP4CoGXBx62efbyWnr74mSIfnOvkH54/tejHBSOLZf6ikAibhahIG5ERNqIirERH2YiJiiAxIZqsmAjioiOJi4kgIS6KxLhIEmIjSU6IJiVx/k9SfDS2ML3Bid2eaHSEgJMxh67MzCR2bSmkrWeMd0+10tQ5Sn3rEB+c7/7EfvaMBNarwF0DEFS/3w8MjONyLe6ouzQ7kWf/bje9fWO+CeHFnPTr91j4EIvF8vF/t1jm/2EBrBYLFsv8f7daLVgtYLVasHn+zG+zeD0n3m5PpO8GY3ZMzzE4PefV5wg1nzbmcCZjDg8xVnhga8HHH09OzzE968ThdGGxWCgvzVzSmK1Wy5IOmL0p/jYgVyll8xzt24Acz/aFWoGVwLXD7+t/A/CbHHsCkSz+NI0QQhghLiaSuJhIw77+Td9q1lr3ArXAXs+mvUDNdef3AV4GvqaUsiql7MAjwKu+DCuEEGL5vJ1j9CSwTynVAOzzfIxS6oBSapNnnxeAq0AjcAL4rtb6qo/zCiGEWCavzvFrreuBrTfYfv+CvzuBP/ddNCGEEP4QXFcVCCGE8DspfiGEMBkpfiGEMJlgmcdvg/k5qUu1nMeGKhmzOciYzWEpY17wmEVdjm9ZyjIFfrADOGp0CCGECFE7gWPe7hwsxR8NbAa6AKfBWYQQIlTYgGzmL5yd8fZBwVL8QgghAkTe3BVCCJOR4hdCCJOR4hdCCJOR4hdCCJOR4hdCCJOR4hdCCJOR4hdCCJMJliUbbkopVQY8D6QDA8ATWuvG6/axAU8B9zJ/3/Pvaa3/JdBZfcXLMX8beBxweP58U2v9dqCz+oo3Y16wrwJqgB9qrf82cCl9y9sxK6W+CHyb+bt/uoE9WuueQGb1FS9f25nAT5i/d3cUcAj4K621I8Bxl00p9X3gC0AhUKW1Pn+DfQLWX6F0xP8M8LTWugx4Gnj2Bvt8GSgBSoFtwHeUUoUBS+h73oz5JLBZa70W+GPgJaVUbAAz+po3Y772TfIs8FoAs/nLTcfsueHRd4C7tNaVzC9zMhLIkD7mzfP8TeCS1roaqAI2Ap8PXESfeg24jc++HW3A+iskit/zk38DsN+zaT+wwXOLx4W+BDyntXZ5bg35GvBY4JL6jrdj1lq/rbWe9Hx4jvmjwfSABfWhRTzPAH8H/BpoCFA8v1jEmP8G+L7WuhtAaz2itZ4OXFLfWcSY3UCiUsrK/LIuUUBHwIL6kNb6mNb6+vuUXy9g/RUSxc/8r3odnrt8XbvbV6dn+0LX3+C99Qb7hApvx7zQE8AVrXV7APL5g1djVkpVA/cA/yvgCX3P2+e5HFillHpfKXVGKfUtpVSoLmHp7Zj/Hihjfg2vbuBtrfXxQAYNsID1V6gUv7gJpdTtzH+j7DU6iz8ppSKB54AnrxWHSUQA1cBdwO3AfcAfGprI/x5j/rfYbCAXuE0p9aixkcJDqBR/G5DrOa977fxujmf7Qq3AygUfF9xgn1Dh7ZhRSm0Dfg48orXWAU3pW96MORsoBg4opZqBbwBfU0r9KLBRfcbb57kFeEVrPaO1HgNeB7YENKnveDvmfcAvPKc+Rpgf866AJg2sgPVXSBS/1roXqOX/H83uBWo858EWepn5ErB6zhc+ArwauKS+4+2YlVKbgZeAR7XWZwKb0re8GbPWulVrnaG1LtRaFwI/YP686NcDHtgHFvHafhG4Wyll8fzWsxs4G7ikvrOIMTcxP8MFpVQUsAf4vdkwYSRg/RUSxe/xJLBPKdXA/JHAkwBKqQOeGQ8ALwBXgUbgBPBdrfVVI8L6iDdj/iEQCzyrlKr1/KkyJq5PeDPmcOPNmP8V6AUuMl+aF4AfG5DVV7wZ8zeAnUqpOubH3MD8ab6Qo5R6SinVDuQBB5VSFzzbDekvWY9fCCFMJpSO+IUQQviAFL8QQpiMFL8QQpiMFL8QQpiMFL8QQpiMFL8QQpiMFL8QQpiMFL8QQpjM/wMujhtd69RgugAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# Plot posterior for 10 coin flips\n", "___" @@ -184,22 +171,9 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEBCAYAAACXArmGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAD79JREFUeJzt3X2IXfWdx/H3zMSIbEZWpiP1IWay1XyhNBHSxMWikfrQuoVSqc/YFVaw5J8US/tHkRWC0iKs1CWgmI2luLqmoisRSlpB/KNVcKv1OdVvgokZH+swiOhKXc3c/eOe/Dpms5lzb87cyc19v2BI7vn9zj3fLzM5n/M75zoOtVotJEkCGF7oAiRJRw5DQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkYtFCF1DDscBa4B1g3wLXIkn9YgQ4CXga+KTuTv0QCmuB3y90EZLUp84Fnqg7uR9C4R2A99//b2ZmOv+NrmNjS5ie/qjxoo5k9jwY7HkwdNvz8PAQJ5zwN1CdQ+vqh1DYBzAz0+oqFPbvO2jseTDY82A4zJ47uu3ug2ZJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkScWiOpMi4jbgUmACWJmZLx9kzgiwCbgYaAG3ZubdB8wJ4Dngzsz88eGVLklqWt2VwjZgHbD3EHOuAU4HzgDOBjZGxMT+wSo0NlfvJUk6AtUKhcx8IjPfmGPalcCWzJzJzCnaJ//LZ43/BPg1sLOrSiVJ867JZwqn8fmVxCSwFCAiVgHfBG5v8HiSpIbVeqZwOCLiGGAL8E+Zua/9WKFzY2NLuq5hfHy06337lT0PBnseDL3suclQmASWAU9Xr/evHE4CvgRsrwLhb4GhiDg+M79f982npz9iZqbVcVHj46NMTX3Y8X79zJ4Hgz0Phm57Hh4e6upiuslQeBC4PiIeBsaAS4B1mTkJfGH/pIjYCCzx00eSdOSp9UwhIjZFxJvAqcBjEbGj2r49ItZU0+4FdgO7gKeAmzNz9zzULEmaJ0OtVue3ZHpsAtjj7aP67Hkw2PNgaOD20XLg9dr7dXwkSdJRy1CQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUrGozqSIuA24FJgAVmbmyweZMwJsAi4GWsCtmXl3NXYTcBXwWfV1Y2Y+2kQDkqTm1F0pbAPWAXsPMeca4HTgDOBsYGNETFRjfwDWZuaZwHXAAxFxXFcVS5LmTa2VQmY+ARARh5p2JbAlM2eAqYjYBlwO/MsBq4IXgSFgDHizm6IlSfOjyWcKp/H5lcQksPQg864FXstMA0GSjjC1VgpNiYjzgFuAizrdd2xsSdfHHR8f7XrffmXPg8GeB0Mve24yFCaBZcDT1evPrRwi4mzgPuA7mZmdvvn09EfMzLQ6Lmp8fJSpqQ873q+f2fNgsOfB0G3Pw8NDXV1MNxkKDwLXR8TDtJ8XXEL74TQRsRZ4ALgsM59t8JiSpAbVeqYQEZsi4k3gVOCxiNhRbd8eEWuqafcCu4FdwFPAzZm5uxq7EzgO2BwRz1dfK5tsRJJ0+IZarc5vyfTYBLDH20f12fNgsOfB0MDto+XA67X36/hIkqSjlqEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVi+aaEBG3AZcCE8DKzHz5IHNGgE3AxUALuDUz755rTJJ0ZKmzUtgGrAP2HmLONcDpwBnA2cDGiJioMSZJOoLMGQqZ+URmvjHHtCuBLZk5k5lTtIPk8hpjkqQjyJy3j2o6jc+vJCaBpTXG5tWTL73Df736Ap/+z75eHO6IccziEXseAPY8GL51znJWLjuhZ8drKhTm3djYko73Of7494H2D9KgsefBYM+DYXx8tGfHaioUJoFlwNPV69mrg0ON1TY9/REzM62O9lm57ATOX3MaU1Mfdnq4vjY+PmrPA8CeB0O3PQ8PD3V1Md1UKDwIXB8RDwNjwCW0H07PNSZJOoLM+aA5IjZFxJvAqcBjEbGj2r49ItZU0+4FdgO7gKeAmzNzd40xSdIRZKjV6uyWzAKYAPZ0c/sIXG4OCnseDPZc36zbR8uB12vv1/GRJElHLUNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkScWiOpMiYgVwDzAGTAPXZuauA+Z8EdgMLAeOAX6amfdVYycCvwSWAouBx4EfZOZnDfUhSWpA3ZXCXcAdmbkCuIP2yf9APweeycxVwDrgZxGxtBq7EXilGlsJfBX47mFVLklq3JyhUF3lrwa2Vpu2AqsjYvyAqWcCvwXIzCngeeCKaqwFjEbEMHAs7dXCW4ddvSSpUXVWCkuBtzJzH0D159vV9tn+CFwVEUMRsRz4GrCsGrsFWAG8A7wLPJqZTzZQvySpQbWeKdT0I+B22iuESdrPDT6txi4HXgQuAEaB30TEZZn5UN03Hxtb0nVh4+OjXe/br+x5MNjzYOhlz3VC4Q3glIgYycx9ETECnFxtL6pbRt/b/zoitgOvVC83ANdl5gzwQUQ8AnwdqB0K09MfMTPTqju9GB8fZWrqw47362f2PBjseTB02/Pw8FBXF9Nz3j7KzPdoX/1fXW26GniuCoEiIsYiYlH19/NpP1C+vxreA1xcjS0GLgRe7rhaSdK8qvvpo/XAhojYSfuqfz20VwMRsaaacxbwSkS8CtwMfDszP67GbgDOjYiXaAfMTmBLQz1IkhpS65lCZr4K/P1Btn9r1t9/A5zx/+z/GnBRlzVKknrE/6JZklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUmEoSJIKQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqDAVJUrGozqSIWAHcA4wB08C1mbnrgDlfBDYDy4FjgJ9m5n2zxq8AbgKGgBZwYWb+uYkmJEnNqLtSuAu4IzNXAHfQPvkf6OfAM5m5ClgH/CwilgJExBpgI3BRZn4FOAf44DBrlyQ1bM5QiIgTgdXA1mrTVmB1RIwfMPVM4LcAmTkFPA9cUY39ELgtM9+txj/IzL8cfvmSpCbVuX20FHgrM/cBZOa+iHi72j41a94fgasi4hlgAvga8Ho19mVgT0T8DlgCPEz79lKriSYkSc2o9Uyhph8Bt9NeIUwCjwOfzjrOKuAiYDHtFcUk8O9133xsbEnXhY2Pj3a9b7+y58Fgz4Ohlz3XCYU3gFMiYqRaJYwAJ1fbi+qW0ff2v46I7cAr1cu9wEOZ+QnwSUQ8ApxFB6EwPf0RMzOdLyzGx0eZmvqw4/36mT0PBnseDN32PDw81NXF9JzPFDLzPdpX/1dXm64GnqtCoIiIsYhYVP39fGAlcH81fD/wjYgYiohjgAuAFzquVpI0r+p++mg9sCEidgIbqtdExPbqk0XQvvJ/JSJeBW4Gvp2ZH1djvwLeA/5EO2B2AL9opgVJUlOGWq0j/lnvBLDH20f12fNgsOfB0MDto+X89UM/c+/X8ZEkSUctQ0GSVBgKkqTCUJAkFYaCJKkwFCRJhaEgSSoMBUlSYShIkgpDQZJUGAqSpMJQkCQVhoIkqTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSpMBQkSYWhIEkqFi10ATWMAAwPD3X9Boezb7+y58Fgz4Ohm55n7TPSyX5DrVar44P12DnA7xe6CEnqU+cCT9Sd3A+hcCywFngH2LfAtUhSvxgBTgKeBj6pu1M/hIIkqUd80CxJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBWGgiSp6IdfczGniFgB3AOMAdPAtZm564A5I8Am4GKgBdyamXf3utam1Oz5JuAq4LPq68bMfLTXtTalTs+z5gbwHHBnZv64d1U2q27PEXEFcBMwRPvn+8LM/HMva21KzZ/tE4FfAkuBxcDjwA8y87Mel3vYIuI24FJgAliZmS8fZE7Pzl9Hy0rhLuCOzFwB3AFsPsica4DTgTOAs4GNETHRswqbV6fnPwBrM/NM4DrggYg4roc1Nq1Oz/v/AW0GtvWwtvkyZ88RsQbYCFyUmV+h/athPuhlkQ2r832+EXglM1cBK4GvAt/tXYmN2gasA/YeYk7Pzl99HwrVFcNqYGu1aSuwOiLGD5h6JbAlM2cyc4r2N+Ly3lXanLo9Z+ajmflx9fJF2leRYz0rtEEdfJ8BfgL8GtjZo/LmRQc9/xC4LTPfBcjMDzLzL72rtDkd9NwCRiNimPavwlkMvNWzQhuUmU9k5htzTOvZ+avvQ4H28vGtzNwHUP35drV9ttP4fBJPHmROv6jb82zXAq9l5ps9qG8+1Oo5IlYB3wRu73mFzav7ff4y8HcR8buIeDYi/jki+vVXidbt+RZgBe3fifYu8GhmPtnLQnusZ+evoyEUNIeIOI/2P6KrF7qW+RQRxwBbgPX7TyoDYhGwCrgIOA/4B+AfF7Si+Xc57dXvScApwLqIuGxhSzo6HA2h8AZwSnUfef/95JOr7bNNAstmvT7tIHP6Rd2eiYizgfuASzIze1pls+r0fBLwJWB7RLwO3ABcHxH/1ttSG1P3+7wXeCgzP8nMD4FHgLN6Wmlz6va8AfiP6nbKB7R7/npPK+2tnp2/+j4UMvM94Hn+ehV8NfBcdd9ttgdpnyCGq/uTlwD/2btKm1O354hYCzwAXJaZz/a2ymbV6TkzJzPzC5k5kZkTwL/Svg/7/Z4X3IAOfrbvB74REUPVaukC4IXeVdqcDnreQ/uTOETEYuBC4P98auco0rPzV9+HQmU9sCEidtK+glgPEBHbq09mANwL7AZ2AU8BN2fm7oUotiF1er4TOA7YHBHPV18rF6bcRtTp+WhTp+dfAe8Bf6J9Qt0B/GIBam1KnZ5vAM6NiJdo97yT9q3DvhMRmyLiTeBU4LGI2FFtX5Dzl/8/BUlScbSsFCRJDTAUJEmFoSBJKgwFSVJhKEiSCkNBklQYCpKkwlCQJBX/C/F4FPUioGQSAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "___;" ] @@ -255,7 +229,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -284,22 +258,9 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# Create the interactive plot\n" ] @@ -307,9 +268,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "bayesian-modelling-tutorial", "language": "python", - "name": "python3" + "name": "bayesian-modelling-tutorial" }, "language_info": { "codemirror_mode": { @@ -321,7 +282,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/notebooks/03-instructor-bayesian-estimation.ipynb b/notebooks/03-instructor-bayesian-estimation.ipynb index c70f52e..9b87777 100644 --- a/notebooks/03-instructor-bayesian-estimation.ipynb +++ b/notebooks/03-instructor-bayesian-estimation.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 106, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -674,6 +674,1511 @@ " margin-right: 0.5em;\n", "}\n", "\n", + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/javascript": [ + "function HoloViewsWidget() {\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.init_slider = function(init_val){\n", + " if(this.load_json) {\n", + " this.from_json()\n", + " } else {\n", + " this.update_cache();\n", + " }\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.populate_cache = function(idx){\n", + " this.cache[idx].innerHTML = this.frames[idx];\n", + " if (this.embed) {\n", + " delete this.frames[idx];\n", + " }\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.process_error = function(msg){\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.from_json = function() {\n", + " var data_url = this.json_path + this.id + '.json';\n", + " $.getJSON(data_url, $.proxy(function(json_data) {\n", + " this.frames = json_data;\n", + " this.update_cache();\n", + " this.update(0);\n", + " }, this));\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.dynamic_update = function(current){\n", + " if (current === undefined) {\n", + " return\n", + " }\n", + " this.current = current;\n", + " if (this.comm) {\n", + " var msg = {comm_id: this.id+'_client', content: current}\n", + " this.comm.send(msg);\n", + " }\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.update_cache = function(force){\n", + " var frame_len = Object.keys(this.frames).length;\n", + " for (var i=0; i 0) {\n", + " that.time = Date.now();\n", + " that.dynamic_update(that.queue[that.queue.length-1]);\n", + " that.queue = [];\n", + " } else {\n", + " that.wait = false;\n", + " }\n", + " if ((msg.msg_type == \"Ready\") && msg.content) {\n", + " console.log(\"Python callback returned following output:\", msg.content);\n", + " } else if (msg.msg_type == \"Error\") {\n", + " console.log(\"Python failed with the following traceback:\", msg.traceback)\n", + " }\n", + " }\n", + " var comm = HoloViews.comm_manager.get_client_comm(this.plot_id, this.id+'_client', ack_callback);\n", + " return comm\n", + " }\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.msg_handler = function(msg) {\n", + " var metadata = msg.metadata;\n", + " if ((metadata.msg_type == \"Ready\")) {\n", + " if (metadata.content) {\n", + " console.log(\"Python callback returned following output:\", metadata.content);\n", + " }\n", + "\treturn;\n", + " } else if (metadata.msg_type == \"Error\") {\n", + " console.log(\"Python failed with the following traceback:\", metadata.traceback)\n", + " return\n", + " }\n", + " this.process_msg(msg)\n", + "}\n", + "\n", + "HoloViewsWidget.prototype.process_msg = function(msg) {\n", + "}\n", + "\n", + "function SelectionWidget(frames, id, slider_ids, keyMap, dim_vals, notFound, load_json, mode, cached, json_path, dynamic, plot_id){\n", + " this.frames = frames;\n", + " this.id = id;\n", + " this.plot_id = plot_id;\n", + " this.slider_ids = slider_ids;\n", + " this.keyMap = keyMap\n", + " this.current_frame = 0;\n", + " this.current_vals = dim_vals;\n", + " this.load_json = load_json;\n", + " this.mode = mode;\n", + " this.notFound = notFound;\n", + " this.cached = cached;\n", + " this.dynamic = dynamic;\n", + " this.cache = {};\n", + " this.json_path = json_path;\n", + " this.init_slider(this.current_vals[0]);\n", + " this.queue = [];\n", + " this.wait = false;\n", + " if (!this.cached || this.dynamic) {\n", + " this.comm = this.init_comms();\n", + " }\n", + "}\n", + "\n", + "SelectionWidget.prototype = new HoloViewsWidget;\n", + "\n", + "\n", + "SelectionWidget.prototype.get_key = function(current_vals) {\n", + " var key = \"(\";\n", + " for (var i=0; i Date.now()))) {\n", + " this.queue.push(key);\n", + " return\n", + " }\n", + " this.queue = [];\n", + " this.time = Date.now();\n", + " this.current_frame = key;\n", + " this.wait = true;\n", + " this.dynamic_update(key)\n", + " } else if (key !== undefined) {\n", + " this.update(key)\n", + " }\n", + "}\n", + "\n", + "\n", + "/* Define the ScrubberWidget class */\n", + "function ScrubberWidget(frames, num_frames, id, interval, load_json, mode, cached, json_path, dynamic, plot_id){\n", + " this.slider_id = \"_anim_slider\" + id;\n", + " this.loop_select_id = \"_anim_loop_select\" + id;\n", + " this.id = id;\n", + " this.plot_id = plot_id;\n", + " this.interval = interval;\n", + " this.current_frame = 0;\n", + " this.direction = 0;\n", + " this.dynamic = dynamic;\n", + " this.timer = null;\n", + " this.load_json = load_json;\n", + " this.mode = mode;\n", + " this.cached = cached;\n", + " this.frames = frames;\n", + " this.cache = {};\n", + " this.length = num_frames;\n", + " this.json_path = json_path;\n", + " document.getElementById(this.slider_id).max = this.length - 1;\n", + " this.init_slider(0);\n", + " this.wait = false;\n", + " this.queue = [];\n", + " if (!this.cached || this.dynamic) {\n", + " this.comm = this.init_comms()\n", + " }\n", + "}\n", + "\n", + "ScrubberWidget.prototype = new HoloViewsWidget;\n", + "\n", + "ScrubberWidget.prototype.set_frame = function(frame){\n", + " this.current_frame = frame;\n", + " var widget = document.getElementById(this.slider_id);\n", + " if (widget === null) {\n", + " this.pause_animation();\n", + " return\n", + " }\n", + " widget.value = this.current_frame;\n", + " if (this.dynamic || !this.cached) {\n", + " if ((this.time !== undefined) && ((this.wait) && ((this.time + 10000) > Date.now()))) {\n", + " this.queue.push(frame);\n", + " return\n", + " }\n", + " this.queue = [];\n", + " this.time = Date.now();\n", + " this.wait = true;\n", + " this.dynamic_update(frame)\n", + " } else {\n", + " this.update(frame)\n", + " }\n", + "}\n", + "\n", + "ScrubberWidget.prototype.get_loop_state = function(){\n", + " var button_group = document[this.loop_select_id].state;\n", + " for (var i = 0; i < button_group.length; i++) {\n", + " var button = button_group[i];\n", + " if (button.checked) {\n", + " return button.value;\n", + " }\n", + " }\n", + " return undefined;\n", + "}\n", + "\n", + "\n", + "ScrubberWidget.prototype.next_frame = function() {\n", + " this.set_frame(Math.min(this.length - 1, this.current_frame + 1));\n", + "}\n", + "\n", + "ScrubberWidget.prototype.previous_frame = function() {\n", + " this.set_frame(Math.max(0, this.current_frame - 1));\n", + "}\n", + "\n", + "ScrubberWidget.prototype.first_frame = function() {\n", + " this.set_frame(0);\n", + "}\n", + "\n", + "ScrubberWidget.prototype.last_frame = function() {\n", + " this.set_frame(this.length - 1);\n", + "}\n", + "\n", + "ScrubberWidget.prototype.slower = function() {\n", + " this.interval /= 0.7;\n", + " if(this.direction > 0){this.play_animation();}\n", + " else if(this.direction < 0){this.reverse_animation();}\n", + "}\n", + "\n", + "ScrubberWidget.prototype.faster = function() {\n", + " this.interval *= 0.7;\n", + " if(this.direction > 0){this.play_animation();}\n", + " else if(this.direction < 0){this.reverse_animation();}\n", + "}\n", + "\n", + "ScrubberWidget.prototype.anim_step_forward = function() {\n", + " if(this.current_frame < this.length - 1){\n", + " this.next_frame();\n", + " }else{\n", + " var loop_state = this.get_loop_state();\n", + " if(loop_state == \"loop\"){\n", + " this.first_frame();\n", + " }else if(loop_state == \"reflect\"){\n", + " this.last_frame();\n", + " this.reverse_animation();\n", + " }else{\n", + " this.pause_animation();\n", + " this.last_frame();\n", + " }\n", + " }\n", + "}\n", + "\n", + "ScrubberWidget.prototype.anim_step_reverse = function() {\n", + " if(this.current_frame > 0){\n", + " this.previous_frame();\n", + " } else {\n", + " var loop_state = this.get_loop_state();\n", + " if(loop_state == \"loop\"){\n", + " this.last_frame();\n", + " }else if(loop_state == \"reflect\"){\n", + " this.first_frame();\n", + " this.play_animation();\n", + " }else{\n", + " this.pause_animation();\n", + " this.first_frame();\n", + " }\n", + " }\n", + "}\n", + "\n", + "ScrubberWidget.prototype.pause_animation = function() {\n", + " this.direction = 0;\n", + " if (this.timer){\n", + " clearInterval(this.timer);\n", + " this.timer = null;\n", + " }\n", + "}\n", + "\n", + "ScrubberWidget.prototype.play_animation = function() {\n", + " this.pause_animation();\n", + " this.direction = 1;\n", + " var t = this;\n", + " if (!this.timer) this.timer = setInterval(function(){t.anim_step_forward();}, this.interval);\n", + "}\n", + "\n", + "ScrubberWidget.prototype.reverse_animation = function() {\n", + " this.pause_animation();\n", + " this.direction = -1;\n", + " var t = this;\n", + " if (!this.timer) this.timer = setInterval(function(){t.anim_step_reverse();}, this.interval);\n", + "}\n", + "\n", + "function extend(destination, source) {\n", + " for (var k in source) {\n", + " if (source.hasOwnProperty(k)) {\n", + " destination[k] = source[k];\n", + " }\n", + " }\n", + " return destination;\n", + "}\n", + "\n", + "function update_widget(widget, values) {\n", + " if (widget.hasClass(\"ui-slider\")) {\n", + " widget.slider('option', {\n", + " min: 0,\n", + " max: values.length-1,\n", + " dim_vals: values,\n", + " value: 0,\n", + " dim_labels: values\n", + " })\n", + " widget.slider('option', 'slide').call(widget, event, {value: 0})\n", + " } else {\n", + " widget.empty();\n", + " for (var i=0; i\", {\n", + " value: i,\n", + " text: values[i]\n", + " }))\n", + " };\n", + " widget.data('values', values);\n", + " widget.data('value', 0);\n", + " widget.trigger(\"change\");\n", + " };\n", + "}\n", + "\n", + "function init_slider(id, plot_id, dim, values, next_vals, labels, dynamic, step, value, next_dim,\n", + " dim_idx, delay, jQueryUI_CDN, UNDERSCORE_CDN) {\n", + " // Slider JS Block START\n", + " function loadcssfile(filename){\n", + " var fileref=document.createElement(\"link\")\n", + " fileref.setAttribute(\"rel\", \"stylesheet\")\n", + " fileref.setAttribute(\"type\", \"text/css\")\n", + " fileref.setAttribute(\"href\", filename)\n", + " document.getElementsByTagName(\"head\")[0].appendChild(fileref)\n", + " }\n", + " loadcssfile(\"https://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css\");\n", + " /* Check if jQuery and jQueryUI have been loaded\n", + " otherwise load with require.js */\n", + " var jQuery = window.jQuery,\n", + " // check for old versions of jQuery\n", + " oldjQuery = jQuery && !!jQuery.fn.jquery.match(/^1\\.[0-4](\\.|$)/),\n", + " jquery_path = '',\n", + " paths = {},\n", + " noConflict;\n", + " var jQueryUI = jQuery.ui;\n", + " // check for jQuery\n", + " if (!jQuery || oldjQuery) {\n", + " // load if it's not available or doesn't meet min standards\n", + " paths.jQuery = jQuery;\n", + " noConflict = !!oldjQuery;\n", + " } else {\n", + " // register the current jQuery\n", + " define('jquery', [], function() { return jQuery; });\n", + " }\n", + " if (!jQueryUI) {\n", + " paths.jQueryUI = jQueryUI_CDN.slice(null, -3);\n", + " } else {\n", + " define('jQueryUI', [], function() { return jQuery.ui; });\n", + " }\n", + " paths.underscore = UNDERSCORE_CDN.slice(null, -3);\n", + " var jquery_require = {\n", + " paths: paths,\n", + " shim: {\n", + " \"jQueryUI\": {\n", + " exports:\"$\",\n", + " deps: ['jquery']\n", + " },\n", + " \"underscore\": {\n", + " exports: '_'\n", + " }\n", + " }\n", + " }\n", + " require.config(jquery_require);\n", + " require([\"jQueryUI\", \"underscore\"], function(jUI, _){\n", + " if (noConflict) $.noConflict(true);\n", + " var vals = values;\n", + " if (dynamic && vals.constructor === Array) {\n", + " var default_value = parseFloat(value);\n", + " var min = parseFloat(vals[0]);\n", + " var max = parseFloat(vals[vals.length-1]);\n", + " var wstep = step;\n", + " var wlabels = [default_value];\n", + " var init_label = default_value;\n", + " } else {\n", + " var min = 0;\n", + " if (dynamic) {\n", + " var max = Object.keys(vals).length - 1;\n", + " var init_label = labels[value];\n", + " var default_value = values[value];\n", + " } else {\n", + " var max = vals.length - 1;\n", + " var init_label = labels[value];\n", + " var default_value = value;\n", + " }\n", + " var wstep = 1;\n", + " var wlabels = labels;\n", + " }\n", + " function adjustFontSize(text) {\n", + " var width_ratio = (text.parent().width()/8)/text.val().length;\n", + " var size = Math.min(0.9, Math.max(0.6, width_ratio))+'em';\n", + " text.css('font-size', size);\n", + " }\n", + " var slider = $('#_anim_widget'+id+'_'+dim);\n", + " slider.slider({\n", + " animate: \"fast\",\n", + " min: min,\n", + " max: max,\n", + " step: wstep,\n", + " value: default_value,\n", + " dim_vals: vals,\n", + " dim_labels: wlabels,\n", + " next_vals: next_vals,\n", + " slide: function(event, ui) {\n", + " var vals = slider.slider(\"option\", \"dim_vals\");\n", + " var next_vals = slider.slider(\"option\", \"next_vals\");\n", + " var dlabels = slider.slider(\"option\", \"dim_labels\");\n", + " if (dynamic) {\n", + " var dim_val = ui.value;\n", + " if (vals.constructor === Array) {\n", + " var label = ui.value;\n", + " } else {\n", + " var label = dlabels[ui.value];\n", + " }\n", + " } else {\n", + " var dim_val = vals[ui.value];\n", + " var label = dlabels[ui.value];\n", + " }\n", + " var text = $('#textInput'+id+'_'+dim);\n", + " text.val(label);\n", + " adjustFontSize(text);\n", + " HoloViews.index[plot_id].set_frame(dim_val, dim_idx);\n", + " if (Object.keys(next_vals).length > 0) {\n", + " var new_vals = next_vals[dim_val];\n", + " var next_widget = $('#_anim_widget'+id+'_'+next_dim);\n", + " update_widget(next_widget, new_vals);\n", + " }\n", + " }\n", + " });\n", + " slider.keypress(function(event) {\n", + " if (event.which == 80 || event.which == 112) {\n", + " var start = slider.slider(\"option\", \"value\");\n", + " var stop = slider.slider(\"option\", \"max\");\n", + " for (var i=start; i<=stop; i++) {\n", + " var delay = i*delay;\n", + " $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n", + " var val = {value:i};\n", + " slider.slider('value',i);\n", + " slider.slider(\"option\", \"slide\")(null, val);\n", + " }, slider), delay);}, slider)(i);\n", + " }\n", + " }\n", + " if (event.which == 82 || event.which == 114) {\n", + " var start = slider.slider(\"option\", \"value\");\n", + " var stop = slider.slider(\"option\", \"min\");\n", + " var count = 0;\n", + " for (var i=start; i>=stop; i--) {\n", + " var delay = count*delay;\n", + " count = count + 1;\n", + " $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n", + " var val = {value:i};\n", + " slider.slider('value',i);\n", + " slider.slider(\"option\", \"slide\")(null, val);\n", + " }, slider), delay);}, slider)(i);\n", + " }\n", + " }\n", + " });\n", + " var textInput = $('#textInput'+id+'_'+dim)\n", + " textInput.val(init_label);\n", + " adjustFontSize(textInput);\n", + " });\n", + "}\n", + "\n", + "function init_dropdown(id, plot_id, dim, vals, value, next_vals, labels, next_dim, dim_idx, dynamic) {\n", + " var widget = $(\"#_anim_widget\"+id+'_'+dim);\n", + " widget.data('values', vals)\n", + " for (var i=0; i\", {\n", + " value: val,\n", + " text: labels[i]\n", + " }));\n", + " };\n", + " widget.data(\"next_vals\", next_vals);\n", + " widget.val(value);\n", + " widget.on('change', function(event, ui) {\n", + " if (dynamic) {\n", + " var dim_val = parseInt(this.value);\n", + " } else {\n", + " var dim_val = $.data(this, 'values')[this.value];\n", + " }\n", + " var next_vals = $.data(this, \"next_vals\");\n", + " if (Object.keys(next_vals).length > 0) {\n", + " var new_vals = next_vals[dim_val];\n", + " var next_widget = $('#_anim_widget'+id+'_'+next_dim);\n", + " update_widget(next_widget, new_vals);\n", + " }\n", + " var widgets = HoloViews.index[plot_id]\n", + " if (widgets) {\n", + " widgets.set_frame(dim_val, dim_idx);\n", + " }\n", + " });\n", + "}\n", + "\n", + "\n", + "if (window.HoloViews === undefined) {\n", + " window.HoloViews = {}\n", + " window.PyViz = window.HoloViews\n", + "} else if (window.PyViz === undefined) {\n", + " window.PyViz = window.HoloViews\n", + "}\n", + "\n", + "\n", + "var _namespace = {\n", + " init_slider: init_slider,\n", + " init_dropdown: init_dropdown,\n", + " comms: {},\n", + " comm_status: {},\n", + " index: {},\n", + " plot_index: {},\n", + " kernels: {},\n", + " receivers: {}\n", + "}\n", + "\n", + "for (var k in _namespace) {\n", + " if (!(k in window.HoloViews)) {\n", + " window.HoloViews[k] = _namespace[k];\n", + " }\n", + "}\n", + "\n", + "// Define Bokeh specific subclasses\n", + "function BokehSelectionWidget() {\n", + " SelectionWidget.apply(this, arguments);\n", + "}\n", + "\n", + "function BokehScrubberWidget() {\n", + " ScrubberWidget.apply(this, arguments);\n", + "}\n", + "\n", + "// Let them inherit from the baseclasses\n", + "BokehSelectionWidget.prototype = Object.create(SelectionWidget.prototype);\n", + "BokehScrubberWidget.prototype = Object.create(ScrubberWidget.prototype);\n", + "\n", + "// Define methods to override on widgets\n", + "var BokehMethods = {\n", + " update_cache : function(){\n", + " for (var index in this.frames) {\n", + " this.frames[index] = JSON.parse(this.frames[index]);\n", + " }\n", + " },\n", + " update : function(current){\n", + " if (current === undefined) {\n", + " return;\n", + " }\n", + " var data = this.frames[current];\n", + " if (data !== undefined) {\n", + " if (data.root in HoloViews.plot_index) {\n", + " var doc = HoloViews.plot_index[data.root].model.document;\n", + " } else {\n", + " var doc = Bokeh.index[data.root].model.document;\n", + " }\n", + " doc.apply_json_patch(data.content);\n", + " }\n", + " },\n", + " init_comms: function() {\n", + " if (Bokeh.protocol !== undefined) {\n", + " this.receiver = new Bokeh.protocol.Receiver()\n", + " } else {\n", + " this.receiver = null;\n", + " }\n", + " return HoloViewsWidget.prototype.init_comms.call(this);\n", + " },\n", + " process_msg : function(msg) {\n", + " if (this.plot_id in HoloViews.plot_index) {\n", + " var doc = HoloViews.plot_index[this.plot_id].model.document;\n", + " } else {\n", + " var doc = Bokeh.index[this.plot_id].model.document;\n", + " }\n", + " if (this.receiver === null) { return }\n", + " var receiver = this.receiver;\n", + " if (msg.buffers.length > 0) {\n", + " receiver.consume(msg.buffers[0].buffer)\n", + " } else {\n", + " receiver.consume(msg.content.data)\n", + " }\n", + " const comm_msg = receiver.message;\n", + " if ((comm_msg != null) && (doc != null)) {\n", + " doc.apply_json_patch(comm_msg.content, comm_msg.buffers)\n", + " }\n", + " }\n", + "}\n", + "\n", + "// Extend Bokeh widgets with backend specific methods\n", + "extend(BokehSelectionWidget.prototype, BokehMethods);\n", + "extend(BokehScrubberWidget.prototype, BokehMethods);\n", + "\n", + "window.HoloViews.BokehSelectionWidget = BokehSelectionWidget\n", + "window.HoloViews.BokehScrubberWidget = BokehScrubberWidget\n", + "\n", + " function JupyterCommManager() {\n", + " }\n", + "\n", + " JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n", + " if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n", + " var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n", + " comm_manager.register_target(comm_id, function(comm) {\n", + " comm.on_msg(msg_handler);\n", + " });\n", + " } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n", + " window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n", + " comm.onMsg = msg_handler;\n", + " });\n", + " }\n", + " }\n", + "\n", + " JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n", + " if (comm_id in window.PyViz.comms) {\n", + " return window.PyViz.comms[comm_id];\n", + " } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n", + " var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n", + " var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n", + " if (msg_handler) {\n", + " comm.on_msg(msg_handler);\n", + " }\n", + " } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n", + " var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n", + " comm.open();\n", + " if (msg_handler) {\n", + " comm.onMsg = msg_handler;\n", + " }\n", + " }\n", + "\n", + " window.PyViz.comms[comm_id] = comm;\n", + " return comm;\n", + " }\n", + "\n", + " window.PyViz.comm_manager = new JupyterCommManager();\n", + " \n", + "\n", + "var JS_MIME_TYPE = 'application/javascript';\n", + "var HTML_MIME_TYPE = 'text/html';\n", + "var EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\n", + "var CLASS_NAME = 'output';\n", + "\n", + "/**\n", + " * Render data to the DOM node\n", + " */\n", + "function render(props, node) {\n", + " var div = document.createElement(\"div\");\n", + " var script = document.createElement(\"script\");\n", + " node.appendChild(div);\n", + " node.appendChild(script);\n", + "}\n", + "\n", + "/**\n", + " * Handle when a new output is added\n", + " */\n", + "function handle_add_output(event, handle) {\n", + " var output_area = handle.output_area;\n", + " var output = handle.output;\n", + " if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n", + " return\n", + " }\n", + " var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n", + " var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n", + " if (id !== undefined) {\n", + " var nchildren = toinsert.length;\n", + " var html_node = toinsert[nchildren-1].children[0];\n", + " html_node.innerHTML = output.data[HTML_MIME_TYPE];\n", + " var scripts = [];\n", + " var nodelist = html_node.querySelectorAll(\"script\");\n", + " for (var i in nodelist) {\n", + " if (nodelist.hasOwnProperty(i)) {\n", + " scripts.push(nodelist[i])\n", + " }\n", + " }\n", + "\n", + " scripts.forEach( function (oldScript) {\n", + " var newScript = document.createElement(\"script\");\n", + " var attrs = [];\n", + " var nodemap = oldScript.attributes;\n", + " for (var j in nodemap) {\n", + " if (nodemap.hasOwnProperty(j)) {\n", + " attrs.push(nodemap[j])\n", + " }\n", + " }\n", + " attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n", + " newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n", + " oldScript.parentNode.replaceChild(newScript, oldScript);\n", + " });\n", + " if (JS_MIME_TYPE in output.data) {\n", + " toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n", + " }\n", + " output_area._hv_plot_id = id;\n", + " if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n", + " window.PyViz.plot_index[id] = Bokeh.index[id];\n", + " } else {\n", + " window.PyViz.plot_index[id] = null;\n", + " }\n", + " } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n", + " var bk_div = document.createElement(\"div\");\n", + " bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n", + " var script_attrs = bk_div.children[0].attributes;\n", + " for (var i = 0; i < script_attrs.length; i++) {\n", + " toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\n", + " }\n", + " // store reference to server id on output_area\n", + " output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n", + " }\n", + "}\n", + "\n", + "/**\n", + " * Handle when an output is cleared or removed\n", + " */\n", + "function handle_clear_output(event, handle) {\n", + " var id = handle.cell.output_area._hv_plot_id;\n", + " var server_id = handle.cell.output_area._bokeh_server_id;\n", + " if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n", + " var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n", + " if (server_id !== null) {\n", + " comm.send({event_type: 'server_delete', 'id': server_id});\n", + " return;\n", + " } else if (comm !== null) {\n", + " comm.send({event_type: 'delete', 'id': id});\n", + " }\n", + " delete PyViz.plot_index[id];\n", + " if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n", + " var doc = window.Bokeh.index[id].model.document\n", + " doc.clear();\n", + " const i = window.Bokeh.documents.indexOf(doc);\n", + " if (i > -1) {\n", + " window.Bokeh.documents.splice(i, 1);\n", + " }\n", + " }\n", + "}\n", + "\n", + "/**\n", + " * Handle kernel restart event\n", + " */\n", + "function handle_kernel_cleanup(event, handle) {\n", + " delete PyViz.comms[\"hv-extension-comm\"];\n", + " window.PyViz.plot_index = {}\n", + "}\n", + "\n", + "/**\n", + " * Handle update_display_data messages\n", + " */\n", + "function handle_update_output(event, handle) {\n", + " handle_clear_output(event, {cell: {output_area: handle.output_area}})\n", + " handle_add_output(event, handle)\n", + "}\n", + "\n", + "function register_renderer(events, OutputArea) {\n", + " function append_mime(data, metadata, element) {\n", + " // create a DOM node to render to\n", + " var toinsert = this.create_output_subarea(\n", + " metadata,\n", + " CLASS_NAME,\n", + " EXEC_MIME_TYPE\n", + " );\n", + " this.keyboard_manager.register_events(toinsert);\n", + " // Render to node\n", + " var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n", + " render(props, toinsert[0]);\n", + " element.append(toinsert);\n", + " return toinsert\n", + " }\n", + "\n", + " events.on('output_added.OutputArea', handle_add_output);\n", + " events.on('output_updated.OutputArea', handle_update_output);\n", + " events.on('clear_output.CodeCell', handle_clear_output);\n", + " events.on('delete.Cell', handle_clear_output);\n", + " events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n", + "\n", + " OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n", + " safe: true,\n", + " index: 0\n", + " });\n", + "}\n", + "\n", + "if (window.Jupyter !== undefined) {\n", + " try {\n", + " var events = require('base/js/events');\n", + " var OutputArea = require('notebook/js/outputarea').OutputArea;\n", + " if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n", + " register_renderer(events, OutputArea);\n", + " }\n", + " } catch(err) {\n", + " }\n", + "}\n" + ], + "application/vnd.holoviews_load.v0+json": "function HoloViewsWidget() {\n}\n\nHoloViewsWidget.prototype.init_slider = function(init_val){\n if(this.load_json) {\n this.from_json()\n } else {\n this.update_cache();\n }\n}\n\nHoloViewsWidget.prototype.populate_cache = function(idx){\n this.cache[idx].innerHTML = this.frames[idx];\n if (this.embed) {\n delete this.frames[idx];\n }\n}\n\nHoloViewsWidget.prototype.process_error = function(msg){\n}\n\nHoloViewsWidget.prototype.from_json = function() {\n var data_url = this.json_path + this.id + '.json';\n $.getJSON(data_url, $.proxy(function(json_data) {\n this.frames = json_data;\n this.update_cache();\n this.update(0);\n }, this));\n}\n\nHoloViewsWidget.prototype.dynamic_update = function(current){\n if (current === undefined) {\n return\n }\n this.current = current;\n if (this.comm) {\n var msg = {comm_id: this.id+'_client', content: current}\n this.comm.send(msg);\n }\n}\n\nHoloViewsWidget.prototype.update_cache = function(force){\n var frame_len = Object.keys(this.frames).length;\n for (var i=0; i 0) {\n that.time = Date.now();\n that.dynamic_update(that.queue[that.queue.length-1]);\n that.queue = [];\n } else {\n that.wait = false;\n }\n if ((msg.msg_type == \"Ready\") && msg.content) {\n console.log(\"Python callback returned following output:\", msg.content);\n } else if (msg.msg_type == \"Error\") {\n console.log(\"Python failed with the following traceback:\", msg.traceback)\n }\n }\n var comm = HoloViews.comm_manager.get_client_comm(this.plot_id, this.id+'_client', ack_callback);\n return comm\n }\n}\n\nHoloViewsWidget.prototype.msg_handler = function(msg) {\n var metadata = msg.metadata;\n if ((metadata.msg_type == \"Ready\")) {\n if (metadata.content) {\n console.log(\"Python callback returned following output:\", metadata.content);\n }\n\treturn;\n } else if (metadata.msg_type == \"Error\") {\n console.log(\"Python failed with the following traceback:\", metadata.traceback)\n return\n }\n this.process_msg(msg)\n}\n\nHoloViewsWidget.prototype.process_msg = function(msg) {\n}\n\nfunction SelectionWidget(frames, id, slider_ids, keyMap, dim_vals, notFound, load_json, mode, cached, json_path, dynamic, plot_id){\n this.frames = frames;\n this.id = id;\n this.plot_id = plot_id;\n this.slider_ids = slider_ids;\n this.keyMap = keyMap\n this.current_frame = 0;\n this.current_vals = dim_vals;\n this.load_json = load_json;\n this.mode = mode;\n this.notFound = notFound;\n this.cached = cached;\n this.dynamic = dynamic;\n this.cache = {};\n this.json_path = json_path;\n this.init_slider(this.current_vals[0]);\n this.queue = [];\n this.wait = false;\n if (!this.cached || this.dynamic) {\n this.comm = this.init_comms();\n }\n}\n\nSelectionWidget.prototype = new HoloViewsWidget;\n\n\nSelectionWidget.prototype.get_key = function(current_vals) {\n var key = \"(\";\n for (var i=0; i Date.now()))) {\n this.queue.push(key);\n return\n }\n this.queue = [];\n this.time = Date.now();\n this.current_frame = key;\n this.wait = true;\n this.dynamic_update(key)\n } else if (key !== undefined) {\n this.update(key)\n }\n}\n\n\n/* Define the ScrubberWidget class */\nfunction ScrubberWidget(frames, num_frames, id, interval, load_json, mode, cached, json_path, dynamic, plot_id){\n this.slider_id = \"_anim_slider\" + id;\n this.loop_select_id = \"_anim_loop_select\" + id;\n this.id = id;\n this.plot_id = plot_id;\n this.interval = interval;\n this.current_frame = 0;\n this.direction = 0;\n this.dynamic = dynamic;\n this.timer = null;\n this.load_json = load_json;\n this.mode = mode;\n this.cached = cached;\n this.frames = frames;\n this.cache = {};\n this.length = num_frames;\n this.json_path = json_path;\n document.getElementById(this.slider_id).max = this.length - 1;\n this.init_slider(0);\n this.wait = false;\n this.queue = [];\n if (!this.cached || this.dynamic) {\n this.comm = this.init_comms()\n }\n}\n\nScrubberWidget.prototype = new HoloViewsWidget;\n\nScrubberWidget.prototype.set_frame = function(frame){\n this.current_frame = frame;\n var widget = document.getElementById(this.slider_id);\n if (widget === null) {\n this.pause_animation();\n return\n }\n widget.value = this.current_frame;\n if (this.dynamic || !this.cached) {\n if ((this.time !== undefined) && ((this.wait) && ((this.time + 10000) > Date.now()))) {\n this.queue.push(frame);\n return\n }\n this.queue = [];\n this.time = Date.now();\n this.wait = true;\n this.dynamic_update(frame)\n } else {\n this.update(frame)\n }\n}\n\nScrubberWidget.prototype.get_loop_state = function(){\n var button_group = document[this.loop_select_id].state;\n for (var i = 0; i < button_group.length; i++) {\n var button = button_group[i];\n if (button.checked) {\n return button.value;\n }\n }\n return undefined;\n}\n\n\nScrubberWidget.prototype.next_frame = function() {\n this.set_frame(Math.min(this.length - 1, this.current_frame + 1));\n}\n\nScrubberWidget.prototype.previous_frame = function() {\n this.set_frame(Math.max(0, this.current_frame - 1));\n}\n\nScrubberWidget.prototype.first_frame = function() {\n this.set_frame(0);\n}\n\nScrubberWidget.prototype.last_frame = function() {\n this.set_frame(this.length - 1);\n}\n\nScrubberWidget.prototype.slower = function() {\n this.interval /= 0.7;\n if(this.direction > 0){this.play_animation();}\n else if(this.direction < 0){this.reverse_animation();}\n}\n\nScrubberWidget.prototype.faster = function() {\n this.interval *= 0.7;\n if(this.direction > 0){this.play_animation();}\n else if(this.direction < 0){this.reverse_animation();}\n}\n\nScrubberWidget.prototype.anim_step_forward = function() {\n if(this.current_frame < this.length - 1){\n this.next_frame();\n }else{\n var loop_state = this.get_loop_state();\n if(loop_state == \"loop\"){\n this.first_frame();\n }else if(loop_state == \"reflect\"){\n this.last_frame();\n this.reverse_animation();\n }else{\n this.pause_animation();\n this.last_frame();\n }\n }\n}\n\nScrubberWidget.prototype.anim_step_reverse = function() {\n if(this.current_frame > 0){\n this.previous_frame();\n } else {\n var loop_state = this.get_loop_state();\n if(loop_state == \"loop\"){\n this.last_frame();\n }else if(loop_state == \"reflect\"){\n this.first_frame();\n this.play_animation();\n }else{\n this.pause_animation();\n this.first_frame();\n }\n }\n}\n\nScrubberWidget.prototype.pause_animation = function() {\n this.direction = 0;\n if (this.timer){\n clearInterval(this.timer);\n this.timer = null;\n }\n}\n\nScrubberWidget.prototype.play_animation = function() {\n this.pause_animation();\n this.direction = 1;\n var t = this;\n if (!this.timer) this.timer = setInterval(function(){t.anim_step_forward();}, this.interval);\n}\n\nScrubberWidget.prototype.reverse_animation = function() {\n this.pause_animation();\n this.direction = -1;\n var t = this;\n if (!this.timer) this.timer = setInterval(function(){t.anim_step_reverse();}, this.interval);\n}\n\nfunction extend(destination, source) {\n for (var k in source) {\n if (source.hasOwnProperty(k)) {\n destination[k] = source[k];\n }\n }\n return destination;\n}\n\nfunction update_widget(widget, values) {\n if (widget.hasClass(\"ui-slider\")) {\n widget.slider('option', {\n min: 0,\n max: values.length-1,\n dim_vals: values,\n value: 0,\n dim_labels: values\n })\n widget.slider('option', 'slide').call(widget, event, {value: 0})\n } else {\n widget.empty();\n for (var i=0; i\", {\n value: i,\n text: values[i]\n }))\n };\n widget.data('values', values);\n widget.data('value', 0);\n widget.trigger(\"change\");\n };\n}\n\nfunction init_slider(id, plot_id, dim, values, next_vals, labels, dynamic, step, value, next_dim,\n dim_idx, delay, jQueryUI_CDN, UNDERSCORE_CDN) {\n // Slider JS Block START\n function loadcssfile(filename){\n var fileref=document.createElement(\"link\")\n fileref.setAttribute(\"rel\", \"stylesheet\")\n fileref.setAttribute(\"type\", \"text/css\")\n fileref.setAttribute(\"href\", filename)\n document.getElementsByTagName(\"head\")[0].appendChild(fileref)\n }\n loadcssfile(\"https://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css\");\n /* Check if jQuery and jQueryUI have been loaded\n otherwise load with require.js */\n var jQuery = window.jQuery,\n // check for old versions of jQuery\n oldjQuery = jQuery && !!jQuery.fn.jquery.match(/^1\\.[0-4](\\.|$)/),\n jquery_path = '',\n paths = {},\n noConflict;\n var jQueryUI = jQuery.ui;\n // check for jQuery\n if (!jQuery || oldjQuery) {\n // load if it's not available or doesn't meet min standards\n paths.jQuery = jQuery;\n noConflict = !!oldjQuery;\n } else {\n // register the current jQuery\n define('jquery', [], function() { return jQuery; });\n }\n if (!jQueryUI) {\n paths.jQueryUI = jQueryUI_CDN.slice(null, -3);\n } else {\n define('jQueryUI', [], function() { return jQuery.ui; });\n }\n paths.underscore = UNDERSCORE_CDN.slice(null, -3);\n var jquery_require = {\n paths: paths,\n shim: {\n \"jQueryUI\": {\n exports:\"$\",\n deps: ['jquery']\n },\n \"underscore\": {\n exports: '_'\n }\n }\n }\n require.config(jquery_require);\n require([\"jQueryUI\", \"underscore\"], function(jUI, _){\n if (noConflict) $.noConflict(true);\n var vals = values;\n if (dynamic && vals.constructor === Array) {\n var default_value = parseFloat(value);\n var min = parseFloat(vals[0]);\n var max = parseFloat(vals[vals.length-1]);\n var wstep = step;\n var wlabels = [default_value];\n var init_label = default_value;\n } else {\n var min = 0;\n if (dynamic) {\n var max = Object.keys(vals).length - 1;\n var init_label = labels[value];\n var default_value = values[value];\n } else {\n var max = vals.length - 1;\n var init_label = labels[value];\n var default_value = value;\n }\n var wstep = 1;\n var wlabels = labels;\n }\n function adjustFontSize(text) {\n var width_ratio = (text.parent().width()/8)/text.val().length;\n var size = Math.min(0.9, Math.max(0.6, width_ratio))+'em';\n text.css('font-size', size);\n }\n var slider = $('#_anim_widget'+id+'_'+dim);\n slider.slider({\n animate: \"fast\",\n min: min,\n max: max,\n step: wstep,\n value: default_value,\n dim_vals: vals,\n dim_labels: wlabels,\n next_vals: next_vals,\n slide: function(event, ui) {\n var vals = slider.slider(\"option\", \"dim_vals\");\n var next_vals = slider.slider(\"option\", \"next_vals\");\n var dlabels = slider.slider(\"option\", \"dim_labels\");\n if (dynamic) {\n var dim_val = ui.value;\n if (vals.constructor === Array) {\n var label = ui.value;\n } else {\n var label = dlabels[ui.value];\n }\n } else {\n var dim_val = vals[ui.value];\n var label = dlabels[ui.value];\n }\n var text = $('#textInput'+id+'_'+dim);\n text.val(label);\n adjustFontSize(text);\n HoloViews.index[plot_id].set_frame(dim_val, dim_idx);\n if (Object.keys(next_vals).length > 0) {\n var new_vals = next_vals[dim_val];\n var next_widget = $('#_anim_widget'+id+'_'+next_dim);\n update_widget(next_widget, new_vals);\n }\n }\n });\n slider.keypress(function(event) {\n if (event.which == 80 || event.which == 112) {\n var start = slider.slider(\"option\", \"value\");\n var stop = slider.slider(\"option\", \"max\");\n for (var i=start; i<=stop; i++) {\n var delay = i*delay;\n $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n var val = {value:i};\n slider.slider('value',i);\n slider.slider(\"option\", \"slide\")(null, val);\n }, slider), delay);}, slider)(i);\n }\n }\n if (event.which == 82 || event.which == 114) {\n var start = slider.slider(\"option\", \"value\");\n var stop = slider.slider(\"option\", \"min\");\n var count = 0;\n for (var i=start; i>=stop; i--) {\n var delay = count*delay;\n count = count + 1;\n $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n var val = {value:i};\n slider.slider('value',i);\n slider.slider(\"option\", \"slide\")(null, val);\n }, slider), delay);}, slider)(i);\n }\n }\n });\n var textInput = $('#textInput'+id+'_'+dim)\n textInput.val(init_label);\n adjustFontSize(textInput);\n });\n}\n\nfunction init_dropdown(id, plot_id, dim, vals, value, next_vals, labels, next_dim, dim_idx, dynamic) {\n var widget = $(\"#_anim_widget\"+id+'_'+dim);\n widget.data('values', vals)\n for (var i=0; i\", {\n value: val,\n text: labels[i]\n }));\n };\n widget.data(\"next_vals\", next_vals);\n widget.val(value);\n widget.on('change', function(event, ui) {\n if (dynamic) {\n var dim_val = parseInt(this.value);\n } else {\n var dim_val = $.data(this, 'values')[this.value];\n }\n var next_vals = $.data(this, \"next_vals\");\n if (Object.keys(next_vals).length > 0) {\n var new_vals = next_vals[dim_val];\n var next_widget = $('#_anim_widget'+id+'_'+next_dim);\n update_widget(next_widget, new_vals);\n }\n var widgets = HoloViews.index[plot_id]\n if (widgets) {\n widgets.set_frame(dim_val, dim_idx);\n }\n });\n}\n\n\nif (window.HoloViews === undefined) {\n window.HoloViews = {}\n window.PyViz = window.HoloViews\n} else if (window.PyViz === undefined) {\n window.PyViz = window.HoloViews\n}\n\n\nvar _namespace = {\n init_slider: init_slider,\n init_dropdown: init_dropdown,\n comms: {},\n comm_status: {},\n index: {},\n plot_index: {},\n kernels: {},\n receivers: {}\n}\n\nfor (var k in _namespace) {\n if (!(k in window.HoloViews)) {\n window.HoloViews[k] = _namespace[k];\n }\n}\n\n// Define Bokeh specific subclasses\nfunction BokehSelectionWidget() {\n SelectionWidget.apply(this, arguments);\n}\n\nfunction BokehScrubberWidget() {\n ScrubberWidget.apply(this, arguments);\n}\n\n// Let them inherit from the baseclasses\nBokehSelectionWidget.prototype = Object.create(SelectionWidget.prototype);\nBokehScrubberWidget.prototype = Object.create(ScrubberWidget.prototype);\n\n// Define methods to override on widgets\nvar BokehMethods = {\n update_cache : function(){\n for (var index in this.frames) {\n this.frames[index] = JSON.parse(this.frames[index]);\n }\n },\n update : function(current){\n if (current === undefined) {\n return;\n }\n var data = this.frames[current];\n if (data !== undefined) {\n if (data.root in HoloViews.plot_index) {\n var doc = HoloViews.plot_index[data.root].model.document;\n } else {\n var doc = Bokeh.index[data.root].model.document;\n }\n doc.apply_json_patch(data.content);\n }\n },\n init_comms: function() {\n if (Bokeh.protocol !== undefined) {\n this.receiver = new Bokeh.protocol.Receiver()\n } else {\n this.receiver = null;\n }\n return HoloViewsWidget.prototype.init_comms.call(this);\n },\n process_msg : function(msg) {\n if (this.plot_id in HoloViews.plot_index) {\n var doc = HoloViews.plot_index[this.plot_id].model.document;\n } else {\n var doc = Bokeh.index[this.plot_id].model.document;\n }\n if (this.receiver === null) { return }\n var receiver = this.receiver;\n if (msg.buffers.length > 0) {\n receiver.consume(msg.buffers[0].buffer)\n } else {\n receiver.consume(msg.content.data)\n }\n const comm_msg = receiver.message;\n if ((comm_msg != null) && (doc != null)) {\n doc.apply_json_patch(comm_msg.content, comm_msg.buffers)\n }\n }\n}\n\n// Extend Bokeh widgets with backend specific methods\nextend(BokehSelectionWidget.prototype, BokehMethods);\nextend(BokehScrubberWidget.prototype, BokehMethods);\n\nwindow.HoloViews.BokehSelectionWidget = BokehSelectionWidget\nwindow.HoloViews.BokehScrubberWidget = BokehScrubberWidget\n\n function JupyterCommManager() {\n }\n\n JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n comm_manager.register_target(comm_id, function(comm) {\n comm.on_msg(msg_handler);\n });\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n comm.onMsg = msg_handler;\n });\n }\n }\n\n JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n if (comm_id in window.PyViz.comms) {\n return window.PyViz.comms[comm_id];\n } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n if (msg_handler) {\n comm.on_msg(msg_handler);\n }\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n comm.open();\n if (msg_handler) {\n comm.onMsg = msg_handler;\n }\n }\n\n window.PyViz.comms[comm_id] = comm;\n return comm;\n }\n\n window.PyViz.comm_manager = new JupyterCommManager();\n \n\nvar JS_MIME_TYPE = 'application/javascript';\nvar HTML_MIME_TYPE = 'text/html';\nvar EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\nvar CLASS_NAME = 'output';\n\n/**\n * Render data to the DOM node\n */\nfunction render(props, node) {\n var div = document.createElement(\"div\");\n var script = document.createElement(\"script\");\n node.appendChild(div);\n node.appendChild(script);\n}\n\n/**\n * Handle when a new output is added\n */\nfunction handle_add_output(event, handle) {\n var output_area = handle.output_area;\n var output = handle.output;\n if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n return\n }\n var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n if (id !== undefined) {\n var nchildren = toinsert.length;\n var html_node = toinsert[nchildren-1].children[0];\n html_node.innerHTML = output.data[HTML_MIME_TYPE];\n var scripts = [];\n var nodelist = html_node.querySelectorAll(\"script\");\n for (var i in nodelist) {\n if (nodelist.hasOwnProperty(i)) {\n scripts.push(nodelist[i])\n }\n }\n\n scripts.forEach( function (oldScript) {\n var newScript = document.createElement(\"script\");\n var attrs = [];\n var nodemap = oldScript.attributes;\n for (var j in nodemap) {\n if (nodemap.hasOwnProperty(j)) {\n attrs.push(nodemap[j])\n }\n }\n attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n oldScript.parentNode.replaceChild(newScript, oldScript);\n });\n if (JS_MIME_TYPE in output.data) {\n toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n }\n output_area._hv_plot_id = id;\n if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n window.PyViz.plot_index[id] = Bokeh.index[id];\n } else {\n window.PyViz.plot_index[id] = null;\n }\n } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n var bk_div = document.createElement(\"div\");\n bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n var script_attrs = bk_div.children[0].attributes;\n for (var i = 0; i < script_attrs.length; i++) {\n toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\n }\n // store reference to server id on output_area\n output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n }\n}\n\n/**\n * Handle when an output is cleared or removed\n */\nfunction handle_clear_output(event, handle) {\n var id = handle.cell.output_area._hv_plot_id;\n var server_id = handle.cell.output_area._bokeh_server_id;\n if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n if (server_id !== null) {\n comm.send({event_type: 'server_delete', 'id': server_id});\n return;\n } else if (comm !== null) {\n comm.send({event_type: 'delete', 'id': id});\n }\n delete PyViz.plot_index[id];\n if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n var doc = window.Bokeh.index[id].model.document\n doc.clear();\n const i = window.Bokeh.documents.indexOf(doc);\n if (i > -1) {\n window.Bokeh.documents.splice(i, 1);\n }\n }\n}\n\n/**\n * Handle kernel restart event\n */\nfunction handle_kernel_cleanup(event, handle) {\n delete PyViz.comms[\"hv-extension-comm\"];\n window.PyViz.plot_index = {}\n}\n\n/**\n * Handle update_display_data messages\n */\nfunction handle_update_output(event, handle) {\n handle_clear_output(event, {cell: {output_area: handle.output_area}})\n handle_add_output(event, handle)\n}\n\nfunction register_renderer(events, OutputArea) {\n function append_mime(data, metadata, element) {\n // create a DOM node to render to\n var toinsert = this.create_output_subarea(\n metadata,\n CLASS_NAME,\n EXEC_MIME_TYPE\n );\n this.keyboard_manager.register_events(toinsert);\n // Render to node\n var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n render(props, toinsert[0]);\n element.append(toinsert);\n return toinsert\n }\n\n events.on('output_added.OutputArea', handle_add_output);\n events.on('output_updated.OutputArea', handle_update_output);\n events.on('clear_output.CodeCell', handle_clear_output);\n events.on('delete.Cell', handle_clear_output);\n events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n\n OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n safe: true,\n index: 0\n });\n}\n\nif (window.Jupyter !== undefined) {\n try {\n var events = require('base/js/events');\n var OutputArea = require('notebook/js/outputarea').OutputArea;\n if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n register_renderer(events, OutputArea);\n }\n } catch(err) {\n }\n}\n" + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/javascript": [ + "\n", + "(function(root) {\n", + " function now() {\n", + " return new Date();\n", + " }\n", + "\n", + " var force = true;\n", + "\n", + " if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n", + " root._bokeh_onload_callbacks = [];\n", + " root._bokeh_is_loading = undefined;\n", + " }\n", + "\n", + " var JS_MIME_TYPE = 'application/javascript';\n", + " var HTML_MIME_TYPE = 'text/html';\n", + " var EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n", + " var CLASS_NAME = 'output_bokeh rendered_html';\n", + "\n", + " /**\n", + " * Render data to the DOM node\n", + " */\n", + " function render(props, node) {\n", + " var script = document.createElement(\"script\");\n", + " node.appendChild(script);\n", + " }\n", + "\n", + " /**\n", + " * Handle when an output is cleared or removed\n", + " */\n", + " function handleClearOutput(event, handle) {\n", + " var cell = handle.cell;\n", + "\n", + " var id = cell.output_area._bokeh_element_id;\n", + " var server_id = cell.output_area._bokeh_server_id;\n", + " // Clean up Bokeh references\n", + " if (id != null && id in Bokeh.index) {\n", + " Bokeh.index[id].model.document.clear();\n", + " delete Bokeh.index[id];\n", + " }\n", + "\n", + " if (server_id !== undefined) {\n", + " // Clean up Bokeh references\n", + " var cmd = \"from bokeh.io.state import curstate; print(curstate().uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n", + " cell.notebook.kernel.execute(cmd, {\n", + " iopub: {\n", + " output: function(msg) {\n", + " var id = msg.content.text.trim();\n", + " if (id in Bokeh.index) {\n", + " Bokeh.index[id].model.document.clear();\n", + " delete Bokeh.index[id];\n", + " }\n", + " }\n", + " }\n", + " });\n", + " // Destroy server and session\n", + " var cmd = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n", + " cell.notebook.kernel.execute(cmd);\n", + " }\n", + " }\n", + "\n", + " /**\n", + " * Handle when a new output is added\n", + " */\n", + " function handleAddOutput(event, handle) {\n", + " var output_area = handle.output_area;\n", + " var output = handle.output;\n", + "\n", + " // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n", + " if ((output.output_type != \"display_data\") || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n", + " return\n", + " }\n", + "\n", + " var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n", + "\n", + " if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n", + " toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];\n", + " // store reference to embed id on output_area\n", + " output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n", + " }\n", + " if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n", + " var bk_div = document.createElement(\"div\");\n", + " bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n", + " var script_attrs = bk_div.children[0].attributes;\n", + " for (var i = 0; i < script_attrs.length; i++) {\n", + " toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n", + " }\n", + " // store reference to server id on output_area\n", + " output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n", + " }\n", + " }\n", + "\n", + " function register_renderer(events, OutputArea) {\n", + "\n", + " function append_mime(data, metadata, element) {\n", + " // create a DOM node to render to\n", + " var toinsert = this.create_output_subarea(\n", + " metadata,\n", + " CLASS_NAME,\n", + " EXEC_MIME_TYPE\n", + " );\n", + " this.keyboard_manager.register_events(toinsert);\n", + " // Render to node\n", + " var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n", + " render(props, toinsert[toinsert.length - 1]);\n", + " element.append(toinsert);\n", + " return toinsert\n", + " }\n", + "\n", + " /* Handle when an output is cleared or removed */\n", + " events.on('clear_output.CodeCell', handleClearOutput);\n", + " events.on('delete.Cell', handleClearOutput);\n", + "\n", + " /* Handle when a new output is added */\n", + " events.on('output_added.OutputArea', handleAddOutput);\n", + "\n", + " /**\n", + " * Register the mime type and append_mime function with output_area\n", + " */\n", + " OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n", + " /* Is output safe? */\n", + " safe: true,\n", + " /* Index of renderer in `output_area.display_order` */\n", + " index: 0\n", + " });\n", + " }\n", + "\n", + " // register the mime type if in Jupyter Notebook environment and previously unregistered\n", + " if (root.Jupyter !== undefined) {\n", + " var events = require('base/js/events');\n", + " var OutputArea = require('notebook/js/outputarea').OutputArea;\n", + "\n", + " if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n", + " register_renderer(events, OutputArea);\n", + " }\n", + " }\n", + "\n", + " \n", + " if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n", + " root._bokeh_timeout = Date.now() + 5000;\n", + " root._bokeh_failed_load = false;\n", + " }\n", + "\n", + " var NB_LOAD_WARNING = {'data': {'text/html':\n", + " \"
\\n\"+\n", + " \"

\\n\"+\n", + " \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n", + " \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n", + " \"

\\n\"+\n", + " \"
    \\n\"+\n", + " \"
  • re-rerun `output_notebook()` to attempt to load from CDN again, or
  • \\n\"+\n", + " \"
  • use INLINE resources instead, as so:
  • \\n\"+\n", + " \"
\\n\"+\n", + " \"\\n\"+\n", + " \"from bokeh.resources import INLINE\\n\"+\n", + " \"output_notebook(resources=INLINE)\\n\"+\n", + " \"\\n\"+\n", + " \"
\"}};\n", + "\n", + " function display_loaded() {\n", + " var el = document.getElementById(null);\n", + " if (el != null) {\n", + " el.textContent = \"BokehJS is loading...\";\n", + " }\n", + " if (root.Bokeh !== undefined) {\n", + " if (el != null) {\n", + " el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n", + " }\n", + " } else if (Date.now() < root._bokeh_timeout) {\n", + " setTimeout(display_loaded, 100)\n", + " }\n", + " }\n", + "\n", + "\n", + " function run_callbacks() {\n", + " try {\n", + " root._bokeh_onload_callbacks.forEach(function(callback) {\n", + " if (callback != null)\n", + " callback();\n", + " });\n", + " } finally {\n", + " delete root._bokeh_onload_callbacks\n", + " }\n", + " console.debug(\"Bokeh: all callbacks have finished\");\n", + " }\n", + "\n", + " function load_libs(css_urls, js_urls, callback) {\n", + " if (css_urls == null) css_urls = [];\n", + " if (js_urls == null) js_urls = [];\n", + "\n", + " root._bokeh_onload_callbacks.push(callback);\n", + " if (root._bokeh_is_loading > 0) {\n", + " console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n", + " return null;\n", + " }\n", + " if (js_urls == null || js_urls.length === 0) {\n", + " run_callbacks();\n", + " return null;\n", + " }\n", + " console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n", + " root._bokeh_is_loading = css_urls.length + js_urls.length;\n", + "\n", + " function on_load() {\n", + " root._bokeh_is_loading--;\n", + " if (root._bokeh_is_loading === 0) {\n", + " console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n", + " run_callbacks()\n", + " }\n", + " }\n", + "\n", + " function on_error() {\n", + " console.error(\"failed to load \" + url);\n", + " }\n", + "\n", + " for (var i = 0; i < css_urls.length; i++) {\n", + " var url = css_urls[i];\n", + " const element = document.createElement(\"link\");\n", + " element.onload = on_load;\n", + " element.onerror = on_error;\n", + " element.rel = \"stylesheet\";\n", + " element.type = \"text/css\";\n", + " element.href = url;\n", + " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n", + " document.body.appendChild(element);\n", + " }\n", + "\n", + " for (var i = 0; i < js_urls.length; i++) {\n", + " var url = js_urls[i];\n", + " var element = document.createElement('script');\n", + " element.onload = on_load;\n", + " element.onerror = on_error;\n", + " element.async = false;\n", + " element.src = url;\n", + " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n", + " document.head.appendChild(element);\n", + " }\n", + " };\n", + "\n", + " function inject_raw_css(css) {\n", + " const element = document.createElement(\"style\");\n", + " element.appendChild(document.createTextNode(css));\n", + " document.body.appendChild(element);\n", + " }\n", + "\n", + " var js_urls = [];\n", + " var css_urls = [];\n", + "\n", + " var inline_js = [\n", + " function(Bokeh) {\n", + " inject_raw_css(\"/* BEGIN bokeh.min.css */\\n.bk-root{position:relative;width:auto;height:auto;z-index:0;box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:10pt}.bk-root .bk,.bk-root .bk:before,.bk-root .bk:after{box-sizing:inherit;margin:0;border:0;padding:0;background-image:none;font-family:inherit;font-size:100%;line-height:1.42857143}.bk-root pre.bk{font-family:Courier,monospace}.bk-root .bk-clearfix:before,.bk-root .bk-clearfix:after{content:\\\"\\\";display:table}.bk-root .bk-clearfix:after{clear:both}.bk-root .bk-shading{position:absolute;display:block;border:1px dashed green}.bk-root .bk-tile-attribution a{color:black}.bk-root .bk-tool-icon-box-select{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg0kduFrowAAAIdJREFUWMPtVtEKwCAI9KL//4e9DPZ3+wP3KgOjNZouFYI4C8q7s7DtB1lGIeMoRMRinCLXg/ML3EcFqpjjloOyZxRntxpwQ8HsgHYARKFAtSFrCg3TCdMFCE1BuuALEXJLjC4qENsFVXCESZw38/kWLOkC/K4PcOc/Hj03WkoDT3EaWW9egQul6CUbq90JTwAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-box-zoom{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg82t254aQAAAkBJREFUWMPN11+E1FEUB/DPTFn2qaeIpcSwr5NlUyJiKWVXWUqvlUh/iE3RY9mUekkPPURtLKNRrFJEeuphGfUUaVliiX1aVjGs6aG7+XX9ZnZ+d2fTl2vmnHvPPfeee/79Sk+may2/UQq/q7Qu+bAJoxjHIKqB/wlfUMcMVqI9bLZ+DGIKwzlzQ2GcxCx2xwvKOUKlaHTiX8bHNspjDONHkOmJBW5jIof/FvPh/06MZOb6cRc7cGn1AKUE5cdzlM/gAr5F/O24H3xkFRfxAbVygvK+cIsspjGWo1zgjeFpxL+BvnLw7laBA4xjIFJwrgu52DoVjKdY4HBEX8dSF3JLYe1fe6UcYCii3xWQjdfuSTnAtoheKCC7GNED5Zx4L4qt61jbTLHA94geKSC7P7ZeShQ0Inoi1IJuEOeORooFXkV0FZNdZs5qvFfKAeqYy7nZ6yg//HG0MBfffh71lFrQDCW2EvEP4mt4okZUDftz9rmGZkotmMxJRtlisy+MTniAWrty3AlXw0hFM2TD89l+oNsoOJXjbIs4EpqNtTCLXbiZ0g+M4mFObj8U3vsNjoZCVcmk60ZwthpepLZkB/AsivWfOJZxtpUQHfWib7KWDwzjeegBZJSdKFiE2qJTFFTwElsi/unQ/awXrU4WGMD7nOJxBY/1EO2iYConq93CHT1GOwucjdqnRyFz+VcHmMNefMY9nNkA3SWUOoXhQviSWQ4huLIRFlirFixnQq/XaKXUgg2xQNGv4V7x/RcW+AXPB3h7H1PaiQAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-zoom-in{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsUBmL8iQAAA2JJREFUWMO9l12IlFUYx3//MzPrLpSjkm5oN4FFIWVEl66IQlFYwtLOzozsjHdGRSCRF0sfBEXRVV0FQuQiLm5CZNBFgRRaRLVFhbJ2EdiN5gbK7toObTPn6eYdPTvNzPvOBz5Xh/ec5/n/n89zXtEHmZqeSXSuXBz/3zfdKvBWJHQrwZuRcP0El+QkbQXeBX6WZEgm6TtJk5lM5o4Lc+cV6qpf4Ga20Tm338zeATItVK9Ker6yvPzp4NDQ3+XieGsCU9MzTYumGbhz7m4ze9/MHgvBgItACrgfGAj2jgAvAYs3wlEujjc13kii8YyZrXXOfWhmo9GnFUlvOOemarVapVqtkslksmb2KjARqL62ecuWN9NxbRInzrldAXhV0uFSIfdew7G/gNLU9MwS8CwSmE3Oz88fcXG5blfpqVRq0Ix8VIAAX0XgrVL7HDCHGcCaWrV60LUBN8Dae58aQIxEqcA592I9M610JL0cpG/U9TIHJNKY3RV5z0R+7Nd4HZ0P1g/2RMBuegLAsRMnb4vT8d5vqKfMzOgtAlADrkmqGywmiMBTwfr3dC9j1Xv/r6Tvg/5/5ejxE6cO7M9faVbQZrYNOFSPmqQvVo9FKexvi5uWX58943aM7DwAfBDY+FbSCxP5sdkGx55GeguzrUEXPaSo2pFkAbiSZQCAzZJOmdkjwd6SpB/M7KykQTPbA2wDhoIzRzcNDx9MJwGNIXdJ0mEzmwbujL7dbma7gd03A7lKfnTOvf74nl0r6bonTUbujRSUCrm2d4L3/kvn3JPe+8+BDW2i9o+kT7z3kxP5sYsA6W47oE64TsR7P9tQL4vA2mh9WdIscKxUyJ0M7aR7acOGzikD65EQLEjaa2ZXzMwDFeB6qZBbbLTRE4EGeSaozNOZgYFf8qP7lmIvs354n0qlHpB0T7B9Ogl4IgJJrmjv/SiQjbrkD+BMUkfSbYATPdckrTOzkciWAXOlQu5cYgLdPEIapud9wMOR9zVJH3ViKx333mtHMJvNuoWFhZ3A+ojMcja77njXBEKwJJfTcqUyCIQ34Mf7nnh0paMnXacFuGoC1mr3AtuDfLzd8Zuyl+rfuGn4HLAD+Az4qZQf+61TAj0Noj8vX6oC35SL43u7teG6rf5+iXppwW7/JUL5D03qaFRvvUe+AAAAAElFTkSuQmCC\\\")}.bk-root .bk-tool-icon-zoom-out{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsHgty9VwAAA0FJREFUWMO9l09oXFUUxn/fmXlpItppi22k7UJBRSlVkCytSAuKUloIdjKT0El3FXVXdVFKRVAQV7qQohsNwdA0UFvBhYtqUVyIVlRaogtFQVq7qSTVjA3z3nHzBq/jvPmTN/Ss7rv3nvN99/y794kByMzcfE/7picn/jenmwWeRUI3E7wdCRskuCSTdDfwBvCtJEdySV9KOhpF0e0/LF5SqKtBgbv7ZjObcvfXgShD9Zqk5+orKx8Oj4z8NT05kU1gZm6+bdK0Azezu9z9hLs/HoIBvwAF4H5gKFh7B3gBWFY3460kWve4+3oze9fdx9OpVUmvmNlMHMf1RqNBFEUldz8OHAxUX9q6bduryut+Sfvc/Wz62ZD0fK1afjND9y3gGSRwv1GMojstTxUUCoVhdyopEYDzKXjWwZ4FFnEHWBc3Goet00m7lZlZYQixKw0FZnakGZksHUnHgvCN5/KARBH37enpOVg58H13HV0Kxg/kIuD/ngSA2ZMLt3bTSZJkUzNk7k4+D0AM/CGpaXCyBw/sC8Y/qZd2GpZiuL9YLN4Sx/HpoP5/c/exQ1OVq+1yyt13SLoArEsJnMjlgfOffvK3u58Kprab2QezJxfG2iTzUzI70wRPG9jbmpmb95SNB9mpzp7/j2yVdNbdx4K565K+cvfPJQ27+x5gBzAS7Hlvy+jo4WIvoC3kWpcvS3rR3eeAO9K529x9N7C7zX6AC2b28hN7Hl1Vt44niVq13LUjmtlYkiQfA5s6eO+GpDNJkhw9NFX5ueNt2ARodyF1IHIN2JiOl4H16fiKpK+B2Vq1vBAqFAf4IJkGNiIhWJK0192vunsC1IE/a9XycquNXARa5OnApeeioaHvKuP7r3dTGsiLqFAo7JR0T7B8rhfwXARa2us4UEqr5Ffgs151i/08oTNKdIO770ptObBYq5Yv5ibQq/sl3Qc8lJ4+lnSqH1vFfp9koZRKJVtaWnqkWXqSVkqlDe+vmUDWpZMlK/X6MBDegKf3P/nYaj8ErN9fqZBYEsf3Ag8G8Xit33BaniTcvGX0IvAw8BHwTa1y4Md+CeRqRL9fudwAvpienNi7Vhu21uwflOT+L+i1X2TJP57iUvUFtHWsAAAAAElFTkSuQmCC\\\")}.bk-root .bk-tool-icon-help{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABltpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMzIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDNDIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMTIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDMjIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNjoxMToyOCAxMToxMTo4MjwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjY8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cphjt2AAAAT7SURBVFgJxRdbaFxFdGb2bhui227BWrsVKYgf2kJUbP9EUPuzEB803WTXJjH61Q/7Ya1+CMYKEVTsh4J/EpvY7BoabUiNiA8s1p+4KIhpoUUEselHqyS76TbZ3HuP58ydc3d2u4+IkQxczpz3mZkzZ86VYpXjvenpjZsLhUcliE4AuUuASAgptmt1EFdwPiclzIIUUwubNn17OJlcXo1p2UpodHRiux9xB1Eug1+slbzhFxGOKc851tu7/0oznYYBDA8Pt0U2tL8KQryIq2tvZqQhD0QJHRz3yqWhgYGBpXpydQMwqz6NCnurleCSADkJEfgKfOePqL80R/wV1ZaQyr1LenKfkPCkEPKeaj0xg7vxVL3duCmA0Vyuw/fl52hgBxsBED+h4Cv9z3R/zbRm8MTJTx7HQN7GQB6w5C4L4SX7M5lfLBpurjXMyvNIShiyi0l1pL8n9b7EDGPR8fHxzSsQ6XDB3618/xqo6Pk25V5MpVJllgHM1BO58RdQ612kOYZ+GXdij70TYQB05mpj+1kU5G2fB+l3PZtOf8NGx6ambnMXb3yAxg8wjSEG6OKKR9oicBQD+ZvpH2Wzj0lQpxCPG9qMv1x6hHNCsSAlHM7ZOa682vlI9tRDbvHGbD3nZAPpDoD/3JIrLpAs26UFkC3EMUA99hpfGtEBfJjNJnS2Gwnadnvl+Xw+iuc3DAJuNyIaSCHpilVldyDjjUxj3WDZIAhxhHHyRcdNuA7AAfUaXzVKODpzFiZ4/uLvh5G+m2no+C/pyIf7MqlEJB7bpqR6nXkEUfbeawuLaZsW2ISfNQ2vtaktQlGFQyIVGT0o2+2EC4iQNGwjBIN9qdQ5Qg4mk4X4rW3vCClLtowE2FOFUxKDfNmiZci3ovKKRFPh4FK9q4Zbdr+lKKJiA13TcHR2dmLBgdmQ0GAS2MZaEowY+XbAk09IvgtYZGp16SyvFhaHcIUh645t8T9DBCcnz5zZ4hZLu3DzK2QlL1QQa0Y+pHiJKPSuOGj3PmZTheM5w2TwqBxnvBZOTk7G5gvXJ5Aelms8wnJURL+olSWcfEhf6gDoUXPMq6ZlqbzWU2pE+3hi4s6F68tfIj9cBMlikr7Z0/P0b/X0yIcUXsDCF1WhtL4OROHaXk+xlkbV0Cu732Nmhc4peaWSg73pA8dq5RkvO37ldUTfXCKZv2q45MkhvG87WQEzpCCUSvV1d9GONBy3lMvgKSwrZig8gjAietWY0QriylO2jIo4yVbOSb7KB/qmI9BPKjHpSSXYauRyn92Nq9/Kcrj13x3s3v8D481glQ/0raiNYgX9njPSBOImbrHZePl+tfFmc9sH+Xaoh8NjOKSVdDMhjjYzQLy+dFceH5+IJQf9VYXX4tROg4ZFU8m31M3mfPEqUoJqCGJfvWpo2xnNfdrhC28n06SCeSzNZxlvBINGRXCtKS7EY1uV6V7HWAm38y1cXaXsMcOCvr9ySPj+af7A1U2HJXHzVNvUXVLIGyPf+jV0pf8GHoN+TLAyPkidTCi2RpPApmnR0Bd1zGRaB/B8Oj2HSw7LLbVR1MmskW8RdEWVXSJf3JbpAMgRtc4IZoxTh9qotQjCasm46M0YX9pV1VmbpvRH5OwwgdRtSg2vKaAz/1dNKVtb17Y8DCL4HVufHxMOYl1/zTgIgiYvBnFKfaNp3YjTdPz3n9Na8//X7/k/O1tdwopcZlcAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-hover{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4oVHp0SwAAAQJJREFUWMPtlsENgzAMRb8RQ5VJItFDOgaZAMaAA0iZpN3KPZSoEEHSQBCViI/G8pfNt/KAFFcPshPdoAGgZkYVVYjQAFCyFLN8tlAbXRwAxp61nc9XCkGERpZCxRDvBl0zoxp7K98GAACxxH29srNNmPsK2l7zHoHHXZDr+/9vwDfB3kgeSB5IHkgeOH0DmesJjSXi6pUvkYt5u9teVy6aWREDM0D0BRvmGRV5N6DsQkMzI64FidtI5t3AOKWaFhuioY8dlYf9TO1PREUh/9HVeAqzIThHgWZ6MuNmC1jiL1mK4pAzlKUojEmNsxcmL0J60tazWjLZFpClPbd9BMJfL95145YajN5RHQAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-crosshair{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADEUlEQVRYR81XXVIaQRCeHqug8CXmBNETaE4gniDwIgpVspxAbxC9ATkBkCpQ8gKeQDiB5AQxNyAvUlrldr7eHxyGXZi1rMJ5opbp7m++7un+htSGF204vsoMoNXrlzSpfWa1oxQfhAegCZGaEtPorHo8znIoJwCt6+td8uk7ApUQCIHTF4BNAWzImq8ap6cP68CsBdDp9i9ZqXM7ML79g/EnCWD+jgMKENKqWT+tXK0CkQqgNRjs0OxpQIqKhoMxaG6/6JeRnK7T6yO2UvVqhYSlLX+ryORfgKn9ORDFIy7ky41yGcwsr0QAQfDH5zucOswx819fs4egI9OFCcD8DjBF7VNbEX0JzdWEt3NHSSASAcCxBDqMgt/623kvyTgNgNjJIfTjk4D4FqaJR1715MjmYAmA5Bx3AwUXQL+t105KaTlcBSC26XRvhjEIoLiq1yqXpr8FAGG16/ug4IT27fxBWu7EiQuAiImJpEMKE6nYM30uAIDDttSUOPfJP7JzbjPhAiBIh9QE67vIvoOi9WJfCwDavf40ulpjbCqmUf+W753ezURuh7Dg1SqflwAEHU6pgfyBq9Y4qx0LG++2fnZ/eUzcstmdM2AWH+jfc+liWdBJfSENf8Lifi3GVwC9mybOfi5dzatWVrbbLIHNva8p5h/16gkaFiLGGxbufkoE6XguwePiXLF3XmMfCUCUAqtKXU7sumd1CowOuJEi3Pg1FBpjitIGhyvVSfvmjci6ZR+rFQfDiPVE2jFYeICQ+PoewwjC5h7CZld6DBdyu6nDSKgzOyIMhmhK5TTqXYbRorZYM46TmpKAAOrGWwSJJekSB1yqJNOzp1Gs7YJ0EDeySDIMtJbQHh6Kf/uFfNFZkolJICRmz0P8DKWZuIG2g1hpok+Mk0Qphs0h9lzMtWRoNvYLuVImUWrmPJDlBKeRBDfATGOpHkhw670QSHWGLLckmF1PTsMlYqMJpyUbiO0weiMMceqLVTcotnMCYAYJJbcuQrVgZFP0NOOJYpr62pf3AmrHfWUG4O7abefGAfwH7EXSMJafOlYAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-lasso-select{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgwlGP1qdAAABMBJREFUWMO9V1uIVVUY/r61z57ZMx4DnbzgkbQXL5iCJphlWdpIGY4jpFBkEiU9ZNaDRRcITcIwMwgxoQtU2IMXdAZfMjFvpERXYiSbysyBEXFmyuHMnLP32uvrwT2xnY5nxvHQ93Jg7fWv71/r//7L4a59TRgqJk+Z6v3a+sv0OI5nk5wu6VaSVZImAThHsgjgrKTvM5nMUWvtmf5n8HodCIKgOgzDhc65pSTrJQWDsSNpJX1ljHnDOfdT37oZLLHv+8OMMasKhcIJ59xHAJYMlhwAJGUAzJfUTHLFuFzOG5QDU6dNMyQfs9Yedc5tBpAD4IYYNQGoBrDtQnt7/b0LFrJsCHzfn2itfQfAnZLiazytA3AaQAuAiwDaEgeNpGkkswAWSBqRONB38b88z5uTKePt6iiKXkk8jq+iJC5LOmiMaTLGHLPWhmWeHr7vV0dRtATAapAzIVmSo51zyzIlbm2stesFPA6pKk0r6Ryg93y/ek8YFvPOOTg3cDSiKCoC2OP7/rEoirYm4rUkF12lAWNM1lr7lqQn0+QA8gI2jBg5cj6Aj8OwmB+KAKIoukhyp6SRJAUgl0ndPLDWPi9pJQCbuviXvu+/GIZhW1dnJ24UJFuTjCCA2ADA8sYGWmsXS3qmL94kDYAtkh4Nw7ANlQJ5U6INT1KrAYC9zQdykl7nFSj5fXp5Y8NWVBhy7mUAjqShMYdMXV2dJ2klyRwAJ8lIeuGWCRMP7N7frEqSG2OmAFhKshNAp5wrmO7u7jEAngPQm1S2z2pqapr+OPt7XEly0oxwzq2RdFmSD2AMgKKJouhhAL4kA+Cs53l7e3t7uytJHgRBreTWkXwkKVJnJD0B4GAGwIJE9R6AFufc6UqSZ7PZbD6ff5dkA4CQZEHSqwAOISmXtwGIE+F1SeqqIP8d+Xz+C0mLJYWSAODteXffczjdDQNJ0BWMCoLg5gqIbRTJNwHsljQhUb0luWPM2LE7Thw/9m/5NCT/TByxAOYWi8X6/gdWV1dnfN8fNRBxJpMZTXKdc+6IpFVJWAEgkvSJpA0X2tvtVTaSjgOYBCAEEADYSHK87/sfhmEYA9gShuEDkgzJHyWtB/B1irQ2juP7ADxkrX0wOUOpzmdpzEY590HJ7Ni1r2kSyZOSiv2+hSRjSTXp/QAukzySNJOJkmalyNIl10hqMcasdc61XDNcQRD8BnITgNp+36r6kfcNFMMlLQGwTNLMEuQGQBfJl2bdPru+HDkAZAqFQux53jZHEsC6aw0eg2gylNRBcqcx5v04ji999+03AwsWAOI4Lsy9a94WkisAnE5a5WCJYwCfA1g7LJudI2lTHMeXBm1faiQzxkyRtF3S5CTupeAB+KG2tnZFT0/P30NO2VKLzrmfAbwGMipjG5Oc0dPTc0Md05SZ5U4Q2FxChErtEYD7jTGNQ3UgM8Asv90Yc9I5LSKRlXSI5CxJa0jWSALJjKRnAewfkniT+vwf7N7fXHK9rq7O7+jo+BTA/NRrdBpjnnLOnUrvXd7YMPQXSBunneno6IhIHgYwW1JtkgmBpBkATlVMAwOk3nFJ+VSoqgCMr6gIy2FcLtdKspAedyQN/98caDt/3kpyabUmf8WvG/8A1vODTBVE/0MAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-pan{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4lKssI9gAAAOtJREFUWMPVll0KwyAMgNPgoc0JzDX2Mtgp3csKErSamGabIEUo/T6bHz0ezxdsjPJ5kvUDaROem7VJAp3gufkbtwtI+JYEOsHNEugIN0mgM1wtsVoF1MnyKtZHZBW4DVxoMh6jaAW0MTfnBAbALyUwCD6UwEB4VyJN4FXx4aqUAACgFLjzrsRP9AECAP4Cm88QtJeJrGivdeNdPpko+j1H7XzUB+6WYHmo4eDk4wj41XFMEfBZGXpK0F/eB+QhVcXslVo7i6eANjF5NYSojCN7wi05MJNgbfKiMaPZA75TBVKCrWWbnGrb3DPePZ9Bcbe/QecAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-xpan{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4X4hxZdgAAAMpJREFUWMPtlsEKwjAMhr/pwOOedINJe/PobWXCfAIvgo/nA4heOiilZQqN2yE5lpD/I38SWt3uD9aMHSuHAiiAAmwaYCqoM/0KMABtQYDW11wEaHyiEei28bWb8LGOkk5C4iEEgE11YBQWDyHGuAMD0CeS30IQPfACbC3o+Vd2bOIOWMCtoO1mC+ap3CfmoCokFs/SZd6E0ILjnzrhvFbyEJ2FIZzXyB6iZ3AkjITn8WOdSbbAoaD4NSW+tIZdQYBOPyQKoAAKkIsPv0se4A/1UC0AAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-ypan{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4anK0lywAAAMVJREFUWMPtlzEKwzAMRX/S7rlpIMXeOnaLaME36FLo8XqCdNFghGljyc4kgQi2Q/SUj0F/eL7eMMTKz6j9wNlYPGRrFcSoLH4XxQPvdQeYuPOlcLbw2dRTgqvoXEaolWM0aP4LYm0NkHYWzyFSSwlmzjw2sR6OvAXNwgEcwAEcwAEcwAEcoGYk20SiMCHlmVoCzACoojEqjHBmCeJOCOo1lgPA7Q8E8TvdjMmHuzsV3NFD4w+1t+Ai/gTx3qHuOFqdMQB8ASMwJX0IEHOeAAAAAElFTkSuQmCC\\\")}.bk-root .bk-tool-icon-range{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjU8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxkYzpzdWJqZWN0PgogICAgICAgICAgICA8cmRmOkJhZy8+CiAgICAgICAgIDwvZGM6c3ViamVjdD4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjhUMTQ6MDQ6NDk8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPlBpeGVsbWF0b3IgMy43PC94bXA6Q3JlYXRvclRvb2w+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgrsrWBhAAAD60lEQVRYCcVWv2scRxSemZ097SHbSeWkcYwwclDhzr1Q5T6QE1LghP6BGNIYJGRWNlaZItiFK1mr+JAu4HQu0kjpU8sgF3ITAsaFg0hOvt2Zyfvmdsa7a610Unx44Zgf773vvfneezPHNzrbhn3CT3xC3wPXYOC8LDzqdi8YY/gwh4BeknS/2th6dr2kf94AOp3OFyWgMyziOPbMDxV9FTtJnl1ut795Xd0/YQ0/vtYQwMT1KXWCfr2IjOWwtNehwN4xL9ykTrm6Pzl58yLn3J+mKh9mXbT3uRjGEDph+O8/TjfP5dBp7Ha7AX7O3o5nZeD/0E/OGyXntDgzA0X6qmCnrVutVlrUWV9f/3xo+pwhGDhvEPHOjoxnZjJggXmMHzBQ7NGNp9vxk61fr0HR7e/u7pZzCGHlc7qwBYYTT7tJYSx1AQzppyFPft5apta9w7SKcn0b7P7+/jCsDQ5mbc0dCmIJGDN0ehdcjsmkm6A6KUeKFOTE11PLxrC7Ukqh3ylL2fT0NAP9q6ur6rRCJJYsbKB0JsbCKMuy+xREePDyxQPCz+Crlw062QcA5wBOOt1l6vIl2WiI9F1fN6Q+BBqit6hEC4Hk08GQJMn4myjSP7RavVxgdaVUh/3U6HCMsPr9pYnJKRziHtWQ+un58+hGs6nsjQSjpuTyKGN3CX+FBwHXSiEVgjP+O8X6N12kIePES+GzTKAkGbNp8yJsGUMVzz8jPKReiyAQRimy5/cjye5RpF8utFp/+nwmT7d/NMzcFkS7yjJNGDaPURQxIQThEQy0SyF4l5WJYYhBa816vZ6dU7A6CAhbZVow/pDe0O9hVOoCi13r4BgBAvJHqMSQL2vE/iH6IAXEwgrRVUmBoRRwnwJQT98xEeVeSUyB4dJ5nwJBKdCFFGRmUCcu7rwIYypCTblaChuNBhWODrman5ub+4v0rMNBt8z6Ezh7GksJQpCbm79cMQE7QBFm/X6f0rjWnv8WRYg/QdbUpwDAEBy8vPyA8rNGzg3a8MiElwiM7dAtRqNoNptjGPM1laVxP9umWEMGLOKhKUOJDtBwDmzsw9fC/CzHr9SGuCTi2LbbKvVtmqXpCjMihBFa79Wrt5fGx9PDzc3fmu32Lf8qFliwU9emKhBSp+kRKn/hu9k1COEDbFdt/BoKWOAkuEbdVYyoIXv8+I/QK9dMHEb1Knb7MHOv8LFFOsjzCVHWOD7Ltn+MXCRF4729vWMDK+p8rLkvwjLg4N4v741m5YuwCI9CvHp1Ha8gFdBoPnQAkGsYYGxxcfEI7QQlFCTGUXwjAz4tWF+EpymOWu7fglE7qsOvrYE6g4+9/x/vhRbMdLOCFgAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-polygon-select{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjc1OfiVKAAAAe1JREFUWMPt1r9rU1EUB/DPK0XbqphFHETo4OCiFhwF0V1KHbRSROLqon+AUMVRRFBwEbRFMBiV+mMW/wIxi5OD1kERRVKRJHUwLvfBTZrU5OWBGXLgQu7Jfe98z/ec7z0vKa88b2q1BDtRHdAPBaylm1NzsxsOjPnPNt6WSWprbft+/c3I3zOAjhT1Y4+fvcjEQJIXnVECSa+AhqIHqlHH5lWCZoe+Gk4GRgDG86j9SAUdlDBSQaZhlOkuHyoVdJmsw98D1S5fM4NYM1LCpqM+Lwa240oLgmZzpVZvzKT75VLZcqksSZKWlQeAy/iORVwIvh31xvotvK7VG3Px4aWHj3Jl4C2uYSvq+Bn8v6LLbaVWb9zsBiKLCvbiNG7gLm7jAYqbPHMJMziZ9lsKoh8GtqCEVVzHftwJn+TFHp4/hg8BSCYVfMOZoPEv2NZGdy9WCGUr9toDR3E2/H4V6nwRe/BmgN65H1ZhvMuB3XiKIyFoGefwO6ysVkUlrNUNsyAK/jli533Q+Y8cJFvAeXyMS1CI/jiMr/gUtD2LQwMGr4R3p7bY3oQHQ5b38CT4D2AXXg6YcQXHpyYnlqKsi5iOAVSwL9zd7zJ09r+Cpwq72omFMazjT9Dnibym0dTkRDUKrrgwH7MwXVyYB38BstaGDfLUTsgAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-redo{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4itK+dVQAAAaFJREFUWMPt1L1rFFEUBfDfJDaBBSslIFjbaSFp1FJQFMVCHkzhKIqdUYOCoBgErVz8rCwiTDMwBCIKipDWyip/gxAIWAmBgBC0eYFh2Gx2l9lFcA5M8e59782Zc84dWrT435Hs1siLchqn43MS0zgW22vYxjesYjVLw3YjBPKinMUTBOwf8J5fKLGYpWFjJAJ5Uc7gIW6jM6Kim3iNZ1katgYmEL/6I+YasvY7Lg6iRpIX5VF8wuEe/XV8wGf8jN6LWTiAc7iEQ7ucPZ+lYW0vAtfwvlbfwCKW9gpXDOv1mJvZHiSO91MiyYsyiQSuxtpXXM7SsDmM5nlRdrCMMz3sOJWl4Xevc/vwBzdwAl+yNNwZxfRI+GxelK9ikHcwh8d4NNR/YFRES1ZwoTYdR7I0rNf3TzVNIGbmSvR/Bx08mIgCFSVu4l2ltIWD9WxNGR+W8KOynqnZ0rwCeVG+wa0hjrxtWoF5dAfc28V8Mib/n+Nev5dnabg/zgw87aNEN/bHOwVRiRe4Wym9zNKwMKkpgIWKEt24njxiJlq0aPFv4i9ZWXMSPPhE/QAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-reset{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4gWqH8eQAABLdJREFUWMPtlktsVGUUx3/nfvfOlLQaY2IiRRMQIRpI0PjamJhoVASDvNpCpYw1vJQYSVwZwIVQF6wwRHmkAUof9ElrI6VqDAXcID4TF0IiYQMkSlTokNCZ+b7jove2t+NMH7rQBWd3v+989/zP+Z8X3Jb/WGQySvUNTQBJESkNguAVYIWqzhaRhwBU9WcR+QXoymazn6jqzUQiMQSQzWZRVdal1vwzAI2tHQBPOuc2AbWTdOyQ53n7nHNfRwee51GzqoIQMCLDpr3x/tLQ0oZzrk5Vj0/BOEBt+KYuOlBVGlrahr0Wob27t3gEjnZ2AyQzmUwHsDgP6J/AYRE553neDwDOuUdU9QngNeCumK4TkRMhZUORcYC1qysLA6iuSQHIwkWLD6lqapQsuSmwTVV3h99I7EcAR462A2xR2Ilq6ehTaejvO1774kuLNALR33eclsaGsQDe3fYegHl43vyNwEeqGl1963mm2jl7YZRTQ82qlWP4HM6ZToC5ztkW4LHQoALru7s6Di5dvlIj/e6ujrEAWoZDn8hmMjXATMACGaAVuBjXTVVXFc/AxhaA+4zvn1DV+eHxVWPMAmvtb5GeMWZyZVhI2rt7qVy2pOh9U1snwIPW2vMi4oWJuBPYHkVAVScPoKmtkzVVK6cEMsyJraHhiCqJqJUwj/JRz7TW1iSSyR2rVyylqa0Ta+24Ic8vXaAEmDFc/l5Z2A/80OibuVyuz/f9ElUdHCmvw82t5HK5h6y1PYhsz2YyGw43t2KtBZHIGwB6+j4rCkBVUdV7gXrggnPuu8h4eP+xMeZS2D0rJYZ6AdAMzAt1b4nI26p6IFZOY8pugijcKSIHVLUK0LyST4vnrVfnWr3mjmP4QTATaERkXkypRFX3isjmuHdRJEK6Ckqquopp06bdKCkp2Sgi7XnGLcg7gzeutwNIiPYc8HixqIrIOlU9ONVIhHPEd851icgSVXUiskVV94gIqoonIt0i8gfQCfwae38e6BWRXuBZz5jZ8VbaOE4EIqlZVUEQBLlkMplS1QER2RwkEnsSyaREDUzyeNsvIhvCMqkH1kdIJ2o+k8iJB1LVVRfjZ6nqqlEAIbdVQGto8Lrv+/dbawcjAL7vc+6bs+zetetfLSHxniIFGofGGsU2oC7eOCbDfZ7nQawBOSAX74SF9oEPImOq+r7nmVmxb5raukZa8UReGmNmhbMkAwwBH467EYVZe49z7kdgenj8k7V2oTHm8kgdWcvrNdVFjR8cHkYzjDH9wLjDaEwEzpwa4MypgWvAjtjxfGNMj4jMiT+M+kFsZI/Q6Pv+HGNMT8w4wI7TAyevxXVPD5z8+zD64tRXAMHVK1eaVLUyVvuDqroV2BOnJF4ZIedviUidqt4Re9s+vbx8zZXLl7PR2+nl5Tz/zNOFp2FzxzGAklw22wUsLLaSKXwf8vhosZUM6PeDYEUum70VHfpBwKsVyyfeikOP6oBNwN1TrLbfgX3A1kKLzKeff8nLLzw38T5wZDgxn1LnNk5lLRfP26/OnR2hwfNYW2Atn9RCsrf+EECyrKysDFimqhXhyjY3VLkAXBKRDqA7nU6nS0tLhyIj6XSaN9bVclv+l/IXAmkwvZc+jNUAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-save{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4UexUIzAAAAIRJREFUWMNjXLhs5X+GAQRMDAMMWJDYjGhyf7CoIQf8x2H+f0KGM9M7BBio5FNcITo408CoA0YdQM1cwEhtB/ylgqMkCJmFLwrOQguj/xTg50hmkeyARAYGhlNUCIXjDAwM0eREwTUGBgbz0Ww46oBRB4w6YNQBow4YdcCIahP+H5EhAAAH2R8hH3Rg0QAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-tap-select{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3NzIwRUFGMDYyMjE2ODExOTdBNUNBNjVEQTY5OTRDRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOTJBQzE0RDQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOTJBQzE0QzQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTQ0QzIwMUM1RjIxNjgxMUE3QkFFMzhGRjc2NTI3MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcyMEVBRjA2MjIxNjgxMTk3QTVDQTY1REE2OTk0Q0UiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eYZ88AAADLklEQVR42rSXf2TUYRzHv7tuGcfE6Vwb5zLSSjEj7Y9KWqfEmFZJP+yPMdKKmUrrn0iUfjhWlLFi6YfNrF+StBoTo39iYkTGco4xxxG59P7k/T2PT8/37nu3bx9ezvPj+zyf5/PreS78bGLS8SmrwE6yje3NHJsDBTALpknBz6JhH3NiYAB0gHqPOVv52wJ6QQ48BzdAttTioRJjdeA8mAHHS2xuk3p+M8M16ipVQE49Ds6CiFO9RLjGONf05QLx6wPQaBlbBlPgJVgkP0ETiIJ2sB/E1XfimjfgBOOlKDUqCGOcqBcQnw6BYW5YTo4wbvQhMmCfGRemC2rBiGXzWUb+kM/NRZ6CHWBM9ce5R61NgX6ayhSJ5EPlItlDRNkz4JbFHf06BkSzHjXxM+gDv1S/mPUo2AXWgt9UUHL/IVhS8yUV1/EbV3o4N+NaoE9Fu/i827K5pNYHnqAVJECShWmAaddpscYFFXwR7vnXBRGlnUN/L6kqKJlxnRUuDbaDBiL+vst5d4gpcpBrqk/2jIgCKVUolhntplzivHmwh4stGOPfwBWwl/2dpp8p7xjQZqFLiQJtauKkivYm+kzccpK57yXfOUe+P23JqAnVbhMFmlXntCWnxbT31am9ZJ4BJifsUmNTqt0cYhA5ypympPg7VkEKunPbVb8cIG+0kyHLJZNR7fUMooUKFHAPkfQo58VLK+RzwRDd4FdWG9mjpaAXzqkJa1R7kQttqEABWXMjOOxxVRfnhRm5URX1prk/0pQHwNcKlchZ+jdpC+hFdVqO0my9Hj5dkYgCn1Rfh/KdlNDHrJhPqlDih+IfBd6qwpOgEqYMsorJ2HtWxtagLJDn/W3KRfPOZhoeBJfZPgVeGKeKrkQBh5dLXl25Ny3pc4/1fkTdbvFqFQgbxWeYD0hXulhQ0pYiM1jG547fcbMQpVnHTZEn9W3ljsCzwHxCdVteNHIZvQa7/7cC7nV6zHIfyFP9EXjFa7YxKAVqPP4bxhhoLWW+z9JyCb6M/MREg59/RlmmXbmneIybB+YC/ay+yrffqEddDzwGvKxxDmzhc0tc80XVgblqFfgjwAAPubcGjAOl1wAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-undo{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4em8Dh0gAAAatJREFUWMPt1rFrFFEQBvDfGhACASshkL/ALpWVrSAKEQV5sIULWlgZNSgIFkGIVQ412gkBt1lYLERREFJqJRaW1oHAoZUQsDqwecWy7N3tbe6C4H2wxc682Zn3zTfvLXPM8b8j6RqYF+UCzsfnHBawGt3fMcAX7GEvS8NgKgXkRbmMxwg41TLsN0psZmnodyogL8pFPMIdLHUk7hA7eJKl4U/rAuKu3+HslFr/FZezNPSTFslX8QErDe4DvMVH/Iq9F7VwGpdwZUjsPtaSFjv/1vCBPjaxO0xcNbHejLpZrrlvJCMCT+JzA+2fcC1Lw+GE4l3CG1yIptfjCtiKoqtiJ0vD3aM0Py/K57iIMxgkQxat4EdN7e9xdRzlk+LEEPvDWvIDXJ928sYxjL36icWK+VaWhlezOIqbGFirJd/H7szugrwoX+D2BDEvszSsT5OBdfRaru/F9dPXQF6U27g/KnmWhgctxqyzBrZGMNGL/rHI0nDkKXiKexXTsywNGx0OnFbFNk3BRoWJXnw//j+ivCi32/S8CxPVNiWOAdUiJtXITIqYY45/Cn8B2D97FYW2H+IAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-wheel-pan{background-image:url(\\\"data:image/png;base64,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\\\")}.bk-root .bk-tool-icon-wheel-zoom{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgskILvMJQAABTtJREFUWMPdl1+MXVUVxn/fPvf2zrSFmUKnoBCUdjRoVaIxEpO2JhilMYBCtBQS2hejpg1Uo2NUrIFAoyGmtiE+GHwQGtvQJhqDmKYRBv+URFsFDNCSptH60DJTO3dKnX/33rM/H7rvsDu9M20fDMaVnGTvtb69z7fWXmvtc/TEzqd4OyXwNsv/FwFJQVI/sA14SZKRLOlPkr5TrVYXHz70quYkEEK4TtI2YAgYkrQthHDdhV5uuw+43/ZrwCbgRttgY/tjtrc0m83X3/f+D6ydnJhYcB4BSZcBA7aP2d4ELAGW2N5k+xgwkDB0IH19CGGH7R8B1aQeAf4KvAw0ku4K2zu7uru3ApdPEyiKohd4TNKjtjt5h6RHgccSNrddbvuHtm9Jqoak7xVF8WFgdavV+pSk5cCObNmXgK++85prCj3z28HKqZMnH7D9YAY4BvwujT8BvCuL1INX9vVt+dfwcCvNb7f9q2RuSfrGvWu/sL2Nf3LX7pzvj4ENSGBPVarVd4fRkZFltjdmoMGiKO4IIWwIIWwoiuIOYDDzeOPoyMiyFLkum7WJCMDztrcrTTrIRuAQZ6NcK1utL4dWq/VZoC8BhqvV6l1lWb4YYxyLMY6VZflitVq9CxhOmL60hhCKeYiV7WMKIXw9jT1HpXw3c+bOAKzOjJubzebJrKQCQLPZPClpc7bP6rMYKtjXth2OMf7tIkr11Wz8oQDc1Fb09vY+kQw1YAuwJY2nbUluAnCWpKkaFl6IQIzxivaR2SYA89sJVK/Xp2x32R6w/a30DNjuqtfrU0ArYecDCEqgLqm94T0dEm9mBG7PxkdDlkBnkhebgIezNQ8nHcCZPL9ijE1Jf/bZZoPtzbavmqNZLbf9tSxq+yoduuJ+SZ+zXSZyBXCqU+d8fvC5yRUrV+0G2j3g2hDCLyXd/+Su3QdnvP/zCuH72LWsgf2k0oHlH2c2odlkxcpVEdgr6aDtjyb8x20/J+mA7T9I6rL9SWA5dne2/GdXLl58qNJh398An85yTMA+4DOz8Dgu6Zu2dwJXJ91ltm8Gbp7Fgb+EEB4aHhpq5CEtACqVyr3AC0AlPS8k3TSmQ2YPhhBuS/1/LpmS9JTtNTHGfwBU2uUALARotVqniqJYH2Pck85pfavVaufAwnQvnHc0McaDKVptebN94QAnJB0EdtjekydyZXqjs/0ZgLIs/w6sy8bnYGYJ63pgERKC05JutT1kOwITwL9tvzlzUQUYB+Zjs2DBgu6xsbGJZHstByZbezregcBXeCsEz1bnzXt5anLyzLq71zDLxTRdVgemdx0fv2e2w5thO5DbiqL4oKT3ZKpnpyYnz+SY2ZpTAPZmJfdIrVZbNBNUq9UW2X4kU+2dcf53Aj1pj2PA7y/6m1DS00A9za9uNBq7iqJYBuoGdRdFsazRaOzKSqye1rTbaa/tlbYrqXQP2X4FIA9/J1l39xrC0v7+w5IeB8XkwS1lWe6TGJAYKMty31tfO4qSHl/a3384I3CDpI+kzC4lnRfrue6GytEjR8oQwlY73gC0L4qlth/q0M1/LYWtR48cKQF6enrC6dOnVwGLEpnxnp7en4+O1i/tszzGOCTpPmB7ahb57QUwBWyXdF+McWg6MScmuoA8OX8xOlpvXGz422XYTsB/SnpA0h7bX5R0WzI9HUL4qe2XbI+dk3xl+V7gxoztD5jRI+YK/zkEEokx2/uB/RdzIfUtueqVN04cXwF8G3iHY3z9Urw/j8ClyhsnjrcS2Vv/J/8NLxT+/zqBTkcxU/cfEkyEAu3kmjAAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-box-edit{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4QfHjM1QAAAGRJREFUWMNjXLhsJcNAAiaGAQYsDAwM/+lsJ+OgCwGsLqMB+D8o08CoA0YdMOqAUQewDFQdMBoFIyoN/B/U7YFRB7DQIc7xyo9GwbBMA4xDqhxgISH1klXbDYk0QOseEeOgDgEAIS0JQleje6IAAAAASUVORK5CYII=\\\")}.bk-root .bk-tool-icon-freehand-draw{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADTElEQVRYCeWWTWwMYRjH/88721X1lZJIGxJxcEE4OOiBgzjXWh8TJKR76kWacOBGxdEJIdk4VChZI/phidRBHMRRIr7DSUiaSCRFRM3u88gz+o7Z6bBTdjmYZPf9eJ55fv/5zzvvDPC/H9QsA66Olo9Ga+/MdR+Ljm2/KQIULsz9FqItGdOfJKLhApLgVkiSCGODjWit7QpKWy+TNrFeXvzKVUT8NiTVaIgDcbiCFJ7GiT8WkARXAdYBK0Lbhi/CenArRNskuM7/tgNp4ArQ42dwjf3WY5gWTqC7O/NbNn2Xkfw/YwdSw/We14HP2IEZwX+y9cZ9SH0LmgFP7UCz4KkENBNeV0Cz4b8U8DfgKiDxMWwUXETqLvJpCQpXZfawbzS7t9v5pL19cHBwfja7YA0y/lyCM0+E5hv5+piZXwKYcF23as+37bTXsQVqgkL0p/34fHR7DcBtbetFsBmGDwMOJCggYG55yw7dMlk6DuC1Bdu2RsCU9TYWQq2IoGbsreZ5NzvEqfSBsIsIy8OTbcdgiRHeh4o8AFAEwDakbY2AaCCpH7V9aGhoUUUy3UyVbkPYFuYLDlUZH8XBpwxkK0Dbgxg5HcVi0ent7a0RULMIozaHBSMfF9b2SzdutFcFB2FkwMIJOG6qfteXOa1nHZ48tyefuwyfT9s6wtzZ3t7eZse2DR2I228TtHXzuWCx9g8MtK5cuHCZTH4tiHEOa4xFngvTyS8f35d6enomiCi4/foEXBkZaQuukChL4FYA2Whd7YcC4gEdW3CpdL3LtGAVCVYJywEyTpAuJKeMOKXZs/Bw947C50KhUFOG4cwz35cjWNBlHGeD53n3xsfHP/T19U1qciggar8Fa4I3PHobIotBWBtc2hSiChyZxVzM53Pv7FVH6Tp3uVy+g0r1ImD2GjIrQGYIxjnfuXTZGICS5k/bBwJoubwEFX4TLah9EXomJGMA3za+f9913Yl4TnzsDQ+vE6YTZOjHh4ngibstt1pzQwd04F0bPStEBpXqRoBeQ/AKghfBnOEKgS+Q7z91Xfdz/HGKg8Ox7z8iYD9z6wqTkZFgnvhMGP9VZ2or1XVkPM9z0mytSfVsHa1RLBZbLoyNzUnK+ydz3wC6I9x+lwbngwAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-poly-draw{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjglo9eZgwAAAc5JREFUWMPt1zFrU1EUB/DfS4OmVTGDIChCP4BgnQXRxVHqIJUupp9AB8VBQcRBQUXIB9DWQoMRiXZzcnQSA34A7aAuHSJKkgo2LvfBrU3aJnlYkBy4vHcP557zP/9z3r33JdXa647N0kHSZd5Nn0rSxc8G3cXp85sMcnZZ8vge3osZ+l3vB8CWFA0iL14t79h210swAjACMAIwAjACkB90D/8/GchI9ve4nPwTBh5E9ws7OepzGWb9EddSn51Op9ZstadSg4VK1UKlKkmSDSMLALewiuNh/hVJq71Wxttmqz0dG88vPc+MgWP4grvYG3SLOBrZFFFrttqPe4HIDxh4GSei+98iSlusuYopXEAjBtEPA3tQwUpwluAbDm4TPJUz+BTW9l2Ce6G7L0X/Bw8D3T/7SKKIDzHg7QCcxjvcQAEtXAnrrg/RP0/DKPbqgcN4iVOR7gcO4dcQgRuoh7HSqwlP4n20m63jJu5n8MkWMYfP3UowhzdR8FU8w9iQwevBdyq3/27CMRzAE5yLuvsRLg+ZcR1nJ8YL81HWJUzGAPaFZwe/Q5MdyYDyNHgjzO90YyGHtVDncuiJchaHw8R4oREFV5qdiVmYLM3OgD9k5209/atmIAAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-point-draw{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEiERGWPELgAAA4RJREFUWMO1lr1uG1cQhb9ztdRSP7AF1QxgwKlcuZSqRC9gWUUUINWqTh5AnaFOnVPEteQmRuhCURqWsSqqc9IolREXdEvQBElxtdw7KURSFEVKu4w8wAKLxdw9Z+bMnRmZGXfZ29//II8th4WwGVNyIoQLYB5vxA9Caq04iUd9A+7ZlsNC2I7TdSd2hZXMJKlnTqp9jtl/GBaqoyQ0noFKpUIzBicYYc+DEFpxkglc4oVJa5gvDn8v1xV2irG3FM4NSVwjUKlUaMcpJhCGmSEJQ6QGD8M5WnHCd8+f3QCXpPLx8WNwv0j6Bm9FMK7FJ3WBE+R/2t7c/GBmFvSBrzRTCsyTDjXrxUgEMtpxynJYmJoBJ4VAybwVARgvL7Oik0okCodnKpVKX7P0leiVMb0VvbJT+upznK4vh0GIeQwwQStJkHQD3MwsCALTJRG7Qrdrj5m/djgYaIa0hlkRdJk26XEgC9txurccBtVW3IudBImmZuACUP+ZlIDBt9FKcubYNTcAH/X0RYM1E7utJPlqe+uZzPxUcEkiSS4sTT95n15Mud0xWC0o2PAWOCdK3KYZlFxfM+tHOcnMzNr1es18ug+cgsVjP4yBU/Ppfrter1m/+l0+zYygML1xRVHU7TSb1cSzBzoBzszsH+AMdJJ49jrNZjWKou6wBnwOzcyndBpNbuueURR1Dw8Pq35p9cc5p/Dy9Dypt7jXrtdGwQECS9NPhr6Gq6txUzNigE6zydLK6lTw12/KT4FGFEUfJX2YJNONq5tVs4ODA7sD/DnwJ/BoADZuE3tHFs12dna6d4C/BI6AlbyzI8ii2TTw12/KK33gb2cdXsNZoAntbZC2SeO4c9592k/5eNQbiwvFd1kJuFGwLJr1wSPg/SwpvyFBHufOeXcFeAlE97U/uCxOY+P3b+Bn4B3Q+L8EdJfD4a+/AbC4UBzPxiPg3wlHZquB28Cn2IuR9x3gr3uV4DbwfvSDOvi4uFA8BDZmIRHkjHpS9Ht9iRqd8+5G3g05mAGcQbsdiX5QJ428G7Kygo8XYdb1/K4NWVmjzkNge2sz84bs+ELmpDDLtqWsNZBXgvmw8CTtpWVMT7x5YWBjLARnwZfKQNYN2U2LPvrh+5nBt7c2M2/It9bArCTKR8eZN+SJ13AScPnoODeRdqNenH+wul5w2gUr2WUjMFAt8bZ/0axX/wNnv4H8vTFb1QAAAABJRU5ErkJggg==\\\")}.bk-root .bk-tool-icon-poly-edit{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gELFi46qJmxxAAABV9JREFUWMOdl19vFFUYxn9n9u9sCyylUIzWUoMQBAWCMdEEIt6xIRQSLIEKtvHe6AcA4yeQb7CAUNJy0daLeomJN8SEULAC2kBBapBKoLvbmdl/c14vdmY7u91tF95kknPOnHmf95znPc97Ro2OTeBbdjFDT3c32ZxVHUOE9kSMB0/m6ExuoJn1H+ur6Y+OTfD50SMN5168OgrAlyf7CfuD+z7+iDs3p8hkLUQ0iFQ/yFl5Nm/qonfHVva+s32Zw9GxCYILsZ08tpNfBhbs+1YN4OH9+7huGdECSBVfqUosbsllfmauBqiR+cCNwOr7AEo8pPHJnymXykhg5fUWjoQpl0vVvhZhbSzGoUOHqgBlt6B6uruj2Zy1E9jo0fhfeyL2x4Mnc8VErK0KUEOB64JSyptfG4RSytsJjUJVxw2lsFy3urL9nx1Qd25ObctkrVMi+jQivd7U2ZyV/3Hzpq7h3h1b/7p9Y0o8v8rwAbTWrGpSocN/FGDlbAI0Rl23PCBan0Ok158H9Ipwzi25A/Mzc9Gl/BYx/E4kYqC1NKRARNAaDCNUM27Z+Zr+ouXs0q4+LSLBHPYCFkTkC6uU39kwCdsS7WRKmaYUiAhdnZ3MPX2K4+QjQI+C94A93rMzm8ltMwyDeDzWjMZeEb2pYQDdW3vITU2jtUZ5QThOPgm8C7wP7J15OPsBsB3oWpGnVWisCeDS1VHj4vBI92+/3tgB7Ab2AruAXiDBK5oIOkhtkEYRNRuJhObrd8Dl9ewf4D5wG7hVLpen29vb5wzD+BrkbBMaL3d1dk5nsrnlFDTTFWAWmAZueWD3gCemGde2k2fw1Al1YXhEvjozoO49eczdqekrWmsc2zlrmvEKOGoW1GUjFLqSk2KpJrCLwyMCPAP+BO54QL8DM6YZX/ClsP9YnwKkXnIBP4jdIpJRpdJTCYdMwwi98KU0Hjc/dDILNyUcwTCWdOSMJ0TRmBktGRhLugu0xyLk7CIqVNm+0bGJptl1YXikD0grpY4Rjc4a8Fbgdab/6OGbAJeCUuyJnnHmZH9pbSyGuBXV8NUwlUpR1EWyixmSyTWEwqGlJ2Swbo2JXbAAfgDGgGQA9I1A9t1tlq0AxrXxn0ilUpw4fhQqYkH/sT41OTnJJwf2s6FjI5mshdYa7bqVR2uezr9MJmJt14FvGrh/O9D+e6UkM/xyCuCqEKCYnJyUTKFQrZDHjxzGshwWLQcRsOz8Hi85P23id0ug/XilAMLBmm4tPGdoaKjSH5+oAGrhwvBI9SjZTn4QSK9yenoD7dlrExPoJlXW8G8ytpNHxRKk02lGxsdRKFwXLNvx5yY94HQLGhGk4LFCYQSqaE0AwWM1eOoEbR0dKBSW7bC4mKuffxs4D/wCLKwQQPAUzIkslfp6cVomROWSolh0GjldAM4nzDi2k9/i5UAzC9aKfwNJ3zgJg9YEvN6+C7SHgKm69+sD7RfNnKTTaZRPQfAut4oFV//IS7gkcB34VlVo8kGzphlfB+DU+TfNGBpZtRastvrvARJmfMF28ge9sc2B9/PNnCilMIDwK6y8/ow/Ai4kvILTljAXvDvEvrqKSUs60KolzPjBxspavQD2tKqCAGF/Ba+xE/Wbilu54wZV8NEKF5fXzQHl/bh4hUsE0WAXSlDMYcQSrQXgCmsTseXHsJkNnjqBFGwKJaHsKlxtUHYVhbLCzr1kaOA4bcn1y1Swmb+iLpJKpVrfgdpfsiVVCYcgluwgnU7jEgJ4s5UkLFtWYyHyEg0/N1q1tmQH+YXnAMFr97Nmv3p+0QsHQRsF8qpBOE5+rb9Nkaj50tVQKjqh4OU3GNL/1/So3vuUgbAAAAAASUVORK5CYII=\\\")}.bk-root .bk-logo{margin:5px;position:relative;display:block;background-repeat:no-repeat}.bk-root .bk-logo.bk-grey{filter:url(\\\"data:image/svg+xml;utf8,#grayscale\\\");filter:gray;-webkit-filter:grayscale(100%)}.bk-root .bk-logo-notebook{display:inline-block;vertical-align:middle;margin-right:5px}.bk-root .bk-logo-small{width:20px;height:20px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAOkSURBVDiNjZRtaJVlGMd/1/08zzln5zjP1LWcU9N0NkN8m2CYjpgQYQXqSs0I84OLIC0hkEKoPtiH3gmKoiJDU7QpLgoLjLIQCpEsNJ1vqUOdO7ppbuec5+V+rj4ctwzd8IIbbi6u+8f1539dt3A78eXC7QizUF7gyV1fD1Yqg4JWz84yffhm0qkFqBogB9rM8tZdtwVsPUhWhGcFJngGeWrPzHm5oaMmkfEg1usvLFyc8jLRqDOMru7AyC8saQr7GG7f5fvDeH7Ej8CM66nIF+8yngt6HWaKh7k49Soy9nXurCi1o3qUbS3zWfrYeQDTB/Qj6kX6Ybhw4B+bOYoLKCC9H3Nu/leUTZ1JdRWkkn2ldcCamzrcf47KKXdAJllSlxAOkRgyHsGC/zRday5Qld9DyoM4/q/rUoy/CXh3jzOu3bHUVZeU+DEn8FInkPBFlu3+nW3Nw0mk6vCDiWg8CeJaxEwuHS3+z5RgY+YBR6V1Z1nxSOfoaPa4LASWxxdNp+VWTk7+4vzaou8v8PN+xo+KY2xsw6une2frhw05CTYOmQvsEhjhWjn0bmXPjpE1+kplmmkP3suftwTubK9Vq22qKmrBhpY4jvd5afdRA3wGjFAgcnTK2s4hY0/GPNIb0nErGMCRxWOOX64Z8RAC4oCXdklmEvcL8o0BfkNK4lUg9HTl+oPlQxdNo3Mg4Nv175e/1LDGzZen30MEjRUtmXSfiTVu1kK8W4txyV6BMKlbgk3lMwYCiusNy9fVfvvwMxv8Ynl6vxoByANLTWplvuj/nF9m2+PDtt1eiHPBr1oIfhCChQMBw6Aw0UulqTKZdfVvfG7VcfIqLG9bcldL/+pdWTLxLUy8Qq38heUIjh4XlzZxzQm19lLFlr8vdQ97rjZVOLf8nclzckbcD4wxXMidpX30sFd37Fv/GtwwhzhxGVAprjbg0gCAEeIgwCZyTV2Z1REEW8O4py0wsjeloKoMr6iCY6dP92H6Vw/oTyICIthibxjm/DfN9lVz8IqtqKYLUXfoKVMVQVVJOElGjrnnUt9T9wbgp8AyYKaGlqingHZU/uG2NTZSVqwHQTWkx9hxjkpWDaCg6Ckj5qebgBVbT3V3NNXMSiWSDdGV3hrtzla7J+duwPOToIg42ChPQOQjspnSlp1V+Gjdged7+8UN5CRAV7a5EdFNwCjEaBR27b3W890TE7g24NAP/mMDXRWrGoFPQI9ls/MWO2dWFAar/xcOIImbbpA3zgAAAABJRU5ErkJggg==)}.bk-root .bk-caret{display:inline-block;vertical-align:middle;width:0;height:0;margin:0 5px}.bk-root .bk-caret.bk-down{border-top:4px solid}.bk-root .bk-caret.bk-up{border-bottom:4px solid}.bk-root .bk-caret.bk-down,.bk-root .bk-caret.bk-up{border-right:4px solid transparent;border-left:4px solid transparent}.bk-root .bk-caret.bk-left{border-right:4px solid}.bk-root .bk-caret.bk-right{border-left:4px solid}.bk-root .bk-caret.bk-left,.bk-root .bk-caret.bk-right{border-top:4px solid transparent;border-bottom:4px solid transparent}.bk-root .bk-menu{position:absolute;left:0;width:100%;z-index:100;cursor:pointer;font-size:12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,0.175)}.bk-root .bk-menu.bk-above{bottom:100%}.bk-root .bk-menu.bk-below{top:100%}.bk-root .bk-menu>.bk-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5}.bk-root .bk-menu>:not(.bk-divider){padding:6px 12px}.bk-root .bk-menu>:not(.bk-divider):hover,.bk-root .bk-menu>:not(.bk-divider).bk-active{background-color:#e6e6e6}.bk-root .bk-tabs-header{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;overflow:hidden;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}.bk-root .bk-tabs-header .bk-btn-group{height:auto;margin-right:5px}.bk-root .bk-tabs-header .bk-btn-group>.bk-btn{flex-grow:0;-webkit-flex-grow:0;height:auto;padding:4px 4px}.bk-root .bk-tabs-header .bk-headers-wrapper{flex-grow:1;-webkit-flex-grow:1;overflow:hidden;color:#666}.bk-root .bk-tabs-header.bk-above .bk-headers-wrapper{border-bottom:1px solid #e6e6e6}.bk-root .bk-tabs-header.bk-right .bk-headers-wrapper{border-left:1px solid #e6e6e6}.bk-root .bk-tabs-header.bk-below .bk-headers-wrapper{border-top:1px solid #e6e6e6}.bk-root .bk-tabs-header.bk-left .bk-headers-wrapper{border-right:1px solid #e6e6e6}.bk-root .bk-tabs-header.bk-above,.bk-root .bk-tabs-header.bk-below{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-tabs-header.bk-above .bk-headers,.bk-root .bk-tabs-header.bk-below .bk-headers{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-tabs-header.bk-left,.bk-root .bk-tabs-header.bk-right{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-tabs-header.bk-left .bk-headers,.bk-root .bk-tabs-header.bk-right .bk-headers{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-tabs-header .bk-headers{position:relative;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center}.bk-root .bk-tabs-header .bk-tab{padding:4px 8px;border:solid transparent;white-space:nowrap;cursor:pointer}.bk-root .bk-tabs-header .bk-tab:hover{background-color:#f2f2f2}.bk-root .bk-tabs-header .bk-tab.bk-active{color:#4d4d4d;background-color:white;border-color:#e6e6e6}.bk-root .bk-tabs-header .bk-tab .bk-close{margin-left:10px}.bk-root .bk-tabs-header.bk-above .bk-tab{border-width:3px 1px 0 1px;border-radius:4px 4px 0 0}.bk-root .bk-tabs-header.bk-right .bk-tab{border-width:1px 3px 1px 0;border-radius:0 4px 4px 0}.bk-root .bk-tabs-header.bk-below .bk-tab{border-width:0 1px 3px 1px;border-radius:0 0 4px 4px}.bk-root .bk-tabs-header.bk-left .bk-tab{border-width:1px 0 1px 3px;border-radius:4px 0 0 4px}.bk-root .bk-close{display:inline-block;width:10px;height:10px;vertical-align:middle;background-image:url('data:image/svg+xml;utf8,\\\\ \\\\ \\\\ \\\\ ')}.bk-root .bk-close:hover{background-image:url('data:image/svg+xml;utf8,\\\\ \\\\ \\\\ \\\\ ')}.bk-root .bk-btn{height:100%;display:inline-block;text-align:center;vertical-align:middle;white-space:nowrap;cursor:pointer;padding:6px 12px;font-size:12px;border:1px solid transparent;border-radius:4px;outline:0;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}.bk-root .bk-btn:hover,.bk-root .bk-btn:focus{text-decoration:none}.bk-root .bk-btn:active,.bk-root .bk-btn.bk-active{background-image:none;box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-btn[disabled]{cursor:not-allowed;pointer-events:none;opacity:.65;box-shadow:none}.bk-root .bk-btn-default{color:#333;background-color:#fff;border-color:#ccc}.bk-root .bk-btn-default:hover{background-color:#f5f5f5;border-color:#b8b8b8}.bk-root .bk-btn-default.bk-active{background-color:#ebebeb;border-color:#adadad}.bk-root .bk-btn-default[disabled],.bk-root .bk-btn-default[disabled]:hover,.bk-root .bk-btn-default[disabled]:focus,.bk-root .bk-btn-default[disabled]:active,.bk-root .bk-btn-default[disabled].bk-active{background-color:#e6e6e6;border-color:#ccc}.bk-root .bk-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.bk-root .bk-btn-primary:hover{background-color:#3681c1;border-color:#2c699e}.bk-root .bk-btn-primary.bk-active{background-color:#3276b1;border-color:#285e8e}.bk-root .bk-btn-primary[disabled],.bk-root .bk-btn-primary[disabled]:hover,.bk-root .bk-btn-primary[disabled]:focus,.bk-root .bk-btn-primary[disabled]:active,.bk-root .bk-btn-primary[disabled].bk-active{background-color:#506f89;border-color:#357ebd}.bk-root .bk-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-btn-success:hover{background-color:#4eb24e;border-color:#409240}.bk-root .bk-btn-success.bk-active{background-color:#47a447;border-color:#398439}.bk-root .bk-btn-success[disabled],.bk-root .bk-btn-success[disabled]:hover,.bk-root .bk-btn-success[disabled]:focus,.bk-root .bk-btn-success[disabled]:active,.bk-root .bk-btn-success[disabled].bk-active{background-color:#667b66;border-color:#4cae4c}.bk-root .bk-btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-btn-info:hover{background-color:#4ab9db;border-color:#29a8cd}.bk-root .bk-btn-info.bk-active{background-color:#39b3d7;border-color:#269abc}.bk-root .bk-btn-info[disabled],.bk-root .bk-btn-info[disabled]:hover,.bk-root .bk-btn-info[disabled]:focus,.bk-root .bk-btn-info[disabled]:active,.bk-root .bk-btn-info[disabled].bk-active{background-color:#569cb0;border-color:#46b8da}.bk-root .bk-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-btn-warning:hover{background-color:#eea43b;border-color:#e89014}.bk-root .bk-btn-warning.bk-active{background-color:#ed9c28;border-color:#d58512}.bk-root .bk-btn-warning[disabled],.bk-root .bk-btn-warning[disabled]:hover,.bk-root .bk-btn-warning[disabled]:focus,.bk-root .bk-btn-warning[disabled]:active,.bk-root .bk-btn-warning[disabled].bk-active{background-color:#c89143;border-color:#eea236}.bk-root .bk-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-btn-danger:hover{background-color:#d5433e;border-color:#bd2d29}.bk-root .bk-btn-danger.bk-active{background-color:#d2322d;border-color:#ac2925}.bk-root .bk-btn-danger[disabled],.bk-root .bk-btn-danger[disabled]:hover,.bk-root .bk-btn-danger[disabled]:focus,.bk-root .bk-btn-danger[disabled]:active,.bk-root .bk-btn-danger[disabled].bk-active{background-color:#a55350;border-color:#d43f3a}.bk-root .bk-btn-group{height:100%;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-btn-group>.bk-btn{flex-grow:1;-webkit-flex-grow:1}.bk-root .bk-btn-group>.bk-btn+.bk-btn{margin-left:-1px}.bk-root .bk-btn-group>.bk-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-btn-group>.bk-btn:not(:first-child):last-child{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-btn-group>.bk-btn:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-btn-group .bk-dropdown-toggle{flex:0 0 0;-webkit-flex:0 0 0;padding:6px 6px}.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility .3s linear,opacity .3s linear}.bk-root .bk-toolbar,.bk-root .bk-button-bar{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-toolbar-above,.bk-root .bk-toolbar-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end}.bk-root .bk-toolbar-above .bk-button-bar,.bk-root .bk-toolbar-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-toolbar-above .bk-logo,.bk-root .bk-toolbar-below .bk-logo{order:1;-webkit-order:1;margin-left:5px;margin-right:0}.bk-root .bk-toolbar-left,.bk-root .bk-toolbar-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start}.bk-root .bk-toolbar-left .bk-button-bar,.bk-root .bk-toolbar-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-toolbar-left .bk-logo,.bk-root .bk-toolbar-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px;margin-top:0}.bk-root .bk-toolbar-button{width:30px;height:30px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center}.bk-root .bk-toolbar-button:hover{background-color:#f9f9f9}.bk-root .bk-toolbar-button:focus{outline:0}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0}.bk-root .bk-toolbar-above .bk-toolbar-button{border-bottom:2px solid transparent}.bk-root .bk-toolbar-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1}.bk-root .bk-toolbar-below .bk-toolbar-button{border-top:2px solid transparent}.bk-root .bk-toolbar-below .bk-toolbar-button.bk-active{border-top-color:#26aae1}.bk-root .bk-toolbar-right .bk-toolbar-button{border-left:2px solid transparent}.bk-root .bk-toolbar-right .bk-toolbar-button.bk-active{border-left-color:#26aae1}.bk-root .bk-toolbar-left .bk-toolbar-button{border-right:2px solid transparent}.bk-root .bk-toolbar-left .bk-toolbar-button.bk-active{border-right-color:#26aae1}.bk-root .bk-button-bar+.bk-button-bar:before{content:\\\" \\\";display:inline-block;background-color:lightgray}.bk-root .bk-toolbar-above .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-below .bk-button-bar+.bk-button-bar:before{height:10px;width:1px}.bk-root .bk-toolbar-left .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-right .bk-button-bar+.bk-button-bar:before{height:1px;width:10px}.bk-root .bk-tooltip{font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:.95;z-index:100}.bk-root .bk-tooltip>div:not(:first-child){margin-top:5px;border-top:#e5e5e5 1px dashed}.bk-root .bk-tooltip.bk-left.bk-tooltip-arrow::before{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\\\" \\\";display:block;left:-10px;border-right-width:10px;border-right-color:#909599}.bk-root .bk-tooltip.bk-left::before{left:-10px;border-right-width:10px;border-right-color:#909599}.bk-root .bk-tooltip.bk-right.bk-tooltip-arrow::after{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\\\" \\\";display:block;right:-10px;border-left-width:10px;border-left-color:#909599}.bk-root .bk-tooltip.bk-right::after{right:-10px;border-left-width:10px;border-left-color:#909599}.bk-root .bk-tooltip.bk-above::before{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\\\" \\\";display:block;top:-10px;border-bottom-width:10px;border-bottom-color:#909599}.bk-root .bk-tooltip.bk-below::after{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\\\" \\\";display:block;bottom:-10px;border-top-width:10px;border-top-color:#909599}.bk-root .bk-tooltip-row-label{text-align:right;color:#26aae1}.bk-root .bk-tooltip-row-value{color:default}.bk-root .bk-tooltip-color-block{width:12px;height:12px;margin-left:5px;margin-right:5px;outline:#ddd solid 1px;display:inline-block}.rendered_html .bk-root .bk-tooltip table,.rendered_html .bk-root .bk-tooltip tr,.rendered_html .bk-root .bk-tooltip th,.rendered_html .bk-root .bk-tooltip td{border:0;padding:1px}\\n/* END bokeh.min.css */\");\n", + " },\n", + " function(Bokeh) {\n", + " inject_raw_css(\"/* BEGIN bokeh-widgets.min.css */\\n@charset \\\"UTF-8\\\";.bk-root{/*!\\n * Pikaday\\n * Copyright \\u00a9 2014 David Bushell | BSD & MIT license | https://dbushell.com/\\n */}.bk-root .bk-input{display:inline-block;width:100%;flex-grow:1;-webkit-flex-grow:1;min-height:31px;padding:0 12px;background-color:#fff;border:1px solid #ccc;border-radius:4px}.bk-root .bk-input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-input::placeholder,.bk-root .bk-input:-ms-input-placeholder,.bk-root .bk-input::-moz-placeholder,.bk-root .bk-input::-webkit-input-placeholder{color:#999;opacity:1}.bk-root .bk-input[disabled],.bk-root .bk-input[readonly]{cursor:not-allowed;background-color:#eee;opacity:1}.bk-root select[multiple].bk-input,.bk-root select[size].bk-input,.bk-root textarea.bk-input{height:auto}.bk-root .bk-input-group{width:100%;height:100%;display:inline-flex;display:-webkit-inline-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:start;-webkit-align-items:start;flex-direction:column;-webkit-flex-direction:column;white-space:nowrap}.bk-root .bk-input-group.bk-inline{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-input-group.bk-inline>*:not(:first-child){margin-left:5px}.bk-root .bk-input-group input[type=\\\"checkbox\\\"]+span,.bk-root .bk-input-group input[type=\\\"radio\\\"]+span{position:relative;top:-2px;margin-left:3px}.bk-root .bk-slider-title{white-space:nowrap}.bk-root .bk-slider-value{font-weight:600}.bk-root .bk-noUi-target,.bk-root .bk-noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-target{position:relative;direction:ltr}.bk-root .bk-noUi-base{width:100%;height:100%;position:relative;z-index:1}.bk-root .bk-noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.bk-root .bk-noUi-origin{position:absolute;height:0;width:0}.bk-root .bk-noUi-handle{position:relative;z-index:1}.bk-root .bk-noUi-state-tap .bk-noUi-connect,.bk-root .bk-noUi-state-tap .bk-noUi-origin{-webkit-transition:top .3s,right .3s,bottom .3s,left .3s;transition:top .3s,right .3s,bottom .3s,left .3s}.bk-root .bk-noUi-state-drag *{cursor:inherit !important}.bk-root .bk-noUi-base,.bk-root .bk-noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bk-root .bk-noUi-horizontal{height:18px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.bk-root .bk-noUi-vertical{width:18px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.bk-root .bk-noUi-target{background:#fafafa;border-radius:4px;border:1px solid #d3d3d3;box-shadow:inset 0 1px 1px #f0f0f0,0 3px 6px -5px #BBB}.bk-root .bk-noUi-connect{background:#3fb8af;border-radius:4px;box-shadow:inset 0 0 3px rgba(51,51,51,0.45);-webkit-transition:background 450ms;transition:background 450ms}.bk-root .bk-noUi-draggable{cursor:ew-resize}.bk-root .bk-noUi-vertical .bk-noUi-draggable{cursor:ns-resize}.bk-root .bk-noUi-handle{border:1px solid #d9d9d9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #ebebeb,0 3px 6px -3px #BBB}.bk-root .bk-noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.bk-root .bk-noUi-handle:before,.bk-root .bk-noUi-handle:after{content:\\\"\\\";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.bk-root .bk-noUi-handle:after{left:17px}.bk-root .bk-noUi-vertical .bk-noUi-handle:before,.bk-root .bk-noUi-vertical .bk-noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.bk-root .bk-noUi-vertical .bk-noUi-handle:after{top:17px}.bk-root [disabled] .bk-noUi-connect{background:#b8b8b8}.bk-root [disabled].bk-noUi-target,.bk-root [disabled].bk-noUi-handle,.bk-root [disabled] .bk-noUi-handle{cursor:not-allowed}.bk-root .bk-noUi-pips,.bk-root .bk-noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-pips{position:absolute;color:#999}.bk-root .bk-noUi-value{position:absolute;white-space:nowrap;text-align:center}.bk-root .bk-noUi-value-sub{color:#ccc;font-size:10px}.bk-root .bk-noUi-marker{position:absolute;background:#CCC}.bk-root .bk-noUi-marker-sub{background:#AAA}.bk-root .bk-noUi-marker-large{background:#AAA}.bk-root .bk-noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.bk-root .bk-noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker{margin-left:-1px;width:2px;height:5px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-sub{height:10px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-large{height:15px}.bk-root .bk-noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.bk-root .bk-noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker{width:5px;height:2px;margin-top:-1px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-sub{width:10px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-large{width:15px}.bk-root .bk-noUi-tooltip{display:block;position:absolute;border:1px solid #d9d9d9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap}.bk-root .bk-noUi-horizontal .bk-noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.bk-root .bk-noUi-vertical .bk-noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.bk-root .bk-noUi-handle{cursor:grab;cursor:-webkit-grab}.bk-root .bk-noUi-handle.bk-noUi-active{cursor:grabbing;cursor:-webkit-grabbing}.bk-root .bk-noUi-tooltip{display:none;white-space:nowrap}.bk-root .bk-noUi-handle:hover .bk-noUi-tooltip{display:block}.bk-root .bk-noUi-horizontal{width:100%;height:10px}.bk-root .bk-noUi-horizontal.bk-noUi-target{margin:5px 0}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:14px;height:18px;left:-7px;top:-5px}.bk-root .bk-noUi-vertical{width:10px;height:100%}.bk-root .bk-noUi-vertical.bk-noUi-target{margin:0 5px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:18px;height:14px;left:-5px;top:-7px}.bk-root .bk-noUi-handle:after,.bk-root .bk-noUi-handle:before{display:none}.bk-root .bk-noUi-connect{box-shadow:none}.bk-root .pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif}.bk-root .pika-single:before,.bk-root .pika-single:after{content:\\\" \\\";display:table}.bk-root .pika-single:after{clear:both}.bk-root .pika-single.is-hidden{display:none}.bk-root .pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,0.5)}.bk-root .pika-lendar{float:left;width:240px;margin:8px}.bk-root .pika-title{position:relative;text-align:center}.bk-root .pika-label{display:inline-block;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.bk-root .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;opacity:0}.bk-root .pika-prev,.bk-root .pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5}.bk-root .pika-prev:hover,.bk-root .pika-next:hover{opacity:1}.bk-root .pika-prev,.bk-root .is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==')}.bk-root .pika-next,.bk-root .is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=')}.bk-root .pika-prev.is-disabled,.bk-root .pika-next.is-disabled{cursor:default;opacity:.2}.bk-root .pika-select{display:inline-block}.bk-root .pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.bk-root .pika-table th,.bk-root .pika-table td{width:14.28571429%;padding:0}.bk-root .pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.bk-root .pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.bk-root .pika-week{font-size:11px;color:#999}.bk-root .is-today .pika-button{color:#3af;font-weight:bold}.bk-root .is-selected .pika-button,.bk-root .has-event .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.bk-root .has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.bk-root .is-disabled .pika-button,.bk-root .is-inrange .pika-button{background:#d5e9f7}.bk-root .is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.bk-root .is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.bk-root .is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.bk-root .is-outside-current-month .pika-button{color:#999;opacity:.3}.bk-root .is-selection-disabled{pointer-events:none;cursor:default}.bk-root .pika-button:hover,.bk-root .pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.bk-root .pika-table abbr{border-bottom:0;cursor:help}\\n/* END bokeh-widgets.min.css */\");\n", + " },\n", + " function(Bokeh) {\n", + " inject_raw_css(\"/* BEGIN bokeh-tables.min.css */\\n.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default,.bk-root .slick-top-panel-scroller.ui-state-default{width:100%;overflow:auto;position:relative;border-left:0 !important}.bk-root .slick-header.ui-state-default{overflow:inherit}.bk-root .slick-header::-webkit-scrollbar,.bk-root .slick-headerrow::-webkit-scrollbar,.bk-root .slick-footerrow::-webkit-scrollbar{display:none}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden}.bk-root .slick-header-column.ui-state-default{position:relative;display:inline-block;box-sizing:content-box !important;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;height:16px;line-height:16px;margin:0;padding:4px;border-right:1px solid silver;border-left:0 !important;border-top:0 !important;border-bottom:0 !important;float:left}.bk-root .slick-headerrow-column.ui-state-default,.bk-root .slick-footerrow-column.ui-state-default{padding:4px}.bk-root .slick-header-column-sorted{font-style:italic}.bk-root .slick-sort-indicator{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:6px;float:left}.bk-root .slick-sort-indicator-numbered{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:0;line-height:20px;float:left;font-family:Arial;font-style:normal;font-weight:bold;color:#6190cd}.bk-root .slick-sort-indicator-desc{background:url(images/sort-desc.gif)}.bk-root .slick-sort-indicator-asc{background:url(images/sort-asc.gif)}.bk-root .slick-resizable-handle{position:absolute;font-size:.1px;display:block;cursor:col-resize;width:9px;right:-5px;top:0;height:100%;z-index:1}.bk-root .slick-sortable-placeholder{background:silver}.bk-root .grid-canvas{position:relative;outline:0}.bk-root .slick-row.ui-widget-content,.bk-root .slick-row.ui-state-active{position:absolute;border:0;width:100%}.bk-root .slick-cell,.bk-root .slick-headerrow-column,.bk-root .slick-footerrow-column{position:absolute;border:1px solid transparent;border-right:1px dotted silver;border-bottom-color:silver;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;z-index:1;padding:1px 2px 2px 1px;margin:0;white-space:nowrap;cursor:default}.bk-root .slick-cell,.bk-root .slick-headerrow-column{border-bottom-color:silver}.bk-root .slick-footerrow-column{border-top-color:silver}.bk-root .slick-group-toggle{display:inline-block}.bk-root .slick-cell.highlighted{background:lightskyblue;background:rgba(0,0,255,0.2);-webkit-transition:all .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .5s}.bk-root .slick-cell.flashing{border:1px solid red !important}.bk-root .slick-cell.editable{z-index:11;overflow:visible;background:white;border-color:black;border-style:solid}.bk-root .slick-cell:focus{outline:0}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:.15;cursor:move}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:.7}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black}.bk-root .slick-header-columns{background:url('images/header-columns-bg.gif') repeat-x center bottom;border-bottom:1px solid silver}.bk-root .slick-header-column{background:url('images/header-columns-bg.gif') repeat-x center bottom;border-right:1px solid silver}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background:white url('images/header-columns-over-bg.gif') repeat-x center bottom}.bk-root .slick-headerrow{background:#fafafa}.bk-root .slick-headerrow-column{background:#fafafa;border-bottom:0;height:100%}.bk-root .slick-row.ui-state-active{background:#f5f7d7}.bk-root .slick-row{position:absolute;background:white;border:0;line-height:20px}.bk-root .slick-row.selected{z-index:10;background:#dfe8f6}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-group{border-bottom:2px solid silver}.bk-root .slick-group-toggle{width:9px;height:9px;margin-right:5px}.bk-root .slick-group-toggle.expanded{background:url(images/collapse.gif) no-repeat center center}.bk-root .slick-group-toggle.collapsed{background:url(images/expand.gif) no-repeat center center}.bk-root .slick-group-totals{color:gray;background:white}.bk-root .slick-group-select-checkbox{width:13px;height:13px;margin:3px 10px 0 0;display:inline-block}.bk-root .slick-group-select-checkbox.checked{background:url(images/GrpCheckboxY.png) no-repeat center center}.bk-root .slick-group-select-checkbox.unchecked{background:url(images/GrpCheckboxN.png) no-repeat center center}.bk-root .slick-cell.selected{background-color:beige}.bk-root .slick-cell.active{border-color:gray;border-style:solid}.bk-root .slick-sortable-placeholder{background:silver !important}.bk-root .slick-row.odd{background:#fafafa}.bk-root .slick-row.ui-state-active{background:#f5f7d7}.bk-root .slick-row.loading{opacity:.5}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:.2s;-webkit-animation-duration:.2s;-moz-animation-name:slickgrid-invalid-hilite;-webkit-animation-name:slickgrid-invalid-hilite}@-moz-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red}to{box-shadow:none}}@-webkit-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red}to{box-shadow:none}}.bk-root .slick-column-name,.bk-root .slick-sort-indicator{display:inline-block;float:left;margin-bottom:100px}.bk-root .slick-header-button{display:inline-block;float:right;vertical-align:top;margin:1px;margin-bottom:100px;height:15px;width:15px;background-repeat:no-repeat;background-position:center center;cursor:pointer}.bk-root .slick-header-button-hidden{width:0;-webkit-transition:.2s width;-ms-transition:.2s width;transition:.2s width}.bk-root .slick-header-column:hover>.slick-header-button{width:15px}.bk-root .slick-header-menubutton{position:absolute;right:0;top:0;bottom:0;width:14px;background-repeat:no-repeat;background-position:left center;background-image:url(../images/down.gif);cursor:pointer;display:none;border-left:thin ridge silver}.bk-root .slick-header-column:hover>.slick-header-menubutton,.bk-root .slick-header-column-active .slick-header-menubutton{display:inline-block}.bk-root .slick-header-menu{position:absolute;display:inline-block;margin:0;padding:2px;cursor:default}.bk-root .slick-header-menuitem{list-style:none;margin:0;padding:0;cursor:pointer}.bk-root .slick-header-menuicon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-right:4px;background-repeat:no-repeat;background-position:center center}.bk-root .slick-header-menucontent{display:inline-block;vertical-align:middle}.bk-root .slick-header-menuitem-disabled{color:silver}.bk-root .slick-columnpicker{border:1px solid #718bb7;background:#f0f0f0;padding:6px;-moz-box-shadow:2px 2px 2px silver;-webkit-box-shadow:2px 2px 2px silver;box-shadow:2px 2px 2px silver;min-width:150px;cursor:default;position:absolute;z-index:20;overflow:auto;resize:both}.bk-root .slick-columnpicker>.close{float:right}.bk-root .slick-columnpicker .title{font-size:16px;width:60%;border-bottom:solid 1px #d6d6d6;margin-bottom:10px}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:0}.bk-root .slick-columnpicker input{margin:4px}.bk-root .slick-columnpicker li a{display:block;padding:4px;font-weight:bold}.bk-root .slick-columnpicker li a:hover{background:white}.bk-root .slick-pager{width:100%;height:26px;border:1px solid gray;border-top:0;background:url('../images/header-columns-bg.gif') repeat-x center bottom;vertical-align:middle}.bk-root .slick-pager .slick-pager-status{display:inline-block;padding:6px}.bk-root .slick-pager .ui-icon-container{display:inline-block;margin:2px;border-color:gray}.bk-root .slick-pager .slick-pager-nav{display:inline-block;float:left;padding:2px}.bk-root .slick-pager .slick-pager-settings{display:block;float:right;padding:2px}.bk-root .slick-pager .slick-pager-settings *{vertical-align:middle}.bk-root .slick-pager .slick-pager-settings a{padding:2px;text-decoration:underline;cursor:pointer}.bk-root .slick-header-columns{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAWAIcAAKrM9tno++vz/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABYAAAgUAAUIHEiwoIAACBMqXMhwIQAAAQEAOw==\\\")}.bk-root .slick-group-toggle.expanded{background-image:url(\\\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIMwADCBxIUIDBgwIEChgwwECBAgQUFjBAkaJCABgxGlB4AGHCAAIQiBypEEECkScJqgwQEAA7\\\")}.bk-root .slick-group-toggle.collapsed{background-image:url(\\\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIOAADCBxIUIDBgwIEChgwAECBAgQUFjAAQIABAwoBaNSIMYCAAwIqGlSIAEHFkiQTIBCgkqDLAAEBADs=\\\")}.bk-root .slick-group-select-checkbox.checked{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAAEcSURBVChTjdI9S8NQFAbg/raQXVwCRRFE7GK7OXTwD+ikk066VF3a0ja0hQTyQdJrwNq0zrYSQRLEXMSWSlCIb8glqRcFD+9yz3nugXwU4n9XQqMoGjj36uBJsTwuaNo3EwBG4Yy7pe7Gv8YcvhJCGFVsjxsjxujj6OTSGlHv+U2WZUZbPWKOv1ZjT5a7pbIoiptbO5b73mwrjHa1B27l8VlTEIS1damlTnEE+EEN9/P8WrfH81qdAIGeXvTTmzltdCy46sEhxpKUINReZR9NnqZbr9puugxV3NjWh/k74WmmEdWhmUNy2jNmWRc6fZTVADCqao52u+DGWTACYNT3fRxwtatPufTNR4yCIGAUn5hS+vJHhWGY/ANx/A3tvdv+1tZmuwAAAABJRU5ErkJggg==\\\")}.bk-root .slick-group-select-checkbox.unchecked{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACXSURBVChT1dIxC4MwEAXg/v8/VOhQVDBNakV0KA6pxS4JhWRSIYPEJxwdDi1de7wleR+3JIf486w0hKCKRpSvvOhZcCmvNQBRuKqdah03U7UjNNH81rOaBYDo8SQaPX8JANFEaLaGBeAPaaY61rGksiN6TmR5H1j9CSoAosYYHLA7vTxYMvVEZa0liif23r93xjm3/oEYF8PiDn/I2FHCAAAAAElFTkSuQmCC\\\")}.bk-root .slick-sort-indicator-desc{background-image:url(\\\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgeAAUAGEgQgIAACBEKLHgwYcKFBh1KFNhQosOKEgMCADs=\\\")}.bk-root .slick-sort-indicator-asc{background-image:url(\\\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgbAAMIDABgoEGDABIeRJhQ4cKGEA8KmEiRosGAADs=\\\")}.bk-root .slick-header-menubutton{background-image:url(\\\"data:image/gif;base64,R0lGODlhDgAOAIABADtKYwAAACH5BAEAAAEALAAAAAAOAA4AAAISjI+py+0PHZgUsGobhTn6DxoFADs=\\\")}.bk-root .slick-pager{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .bk-data-table{box-sizing:content-box;font-size:11px}.bk-root .bk-data-table input[type=\\\"checkbox\\\"]{margin-left:4px;margin-right:4px}.bk-root .bk-cell-special-defaults{border-right-color:silver;border-right-style:solid;background:#f5f5f5}.bk-root .bk-cell-select{border-right-color:silver;border-right-style:solid;background:#f5f5f5}.bk-root .bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;color:gray}.bk-root .bk-header-index .slick-column-name{float:right}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-cell.active{border-style:dashed}.bk-root .slick-cell.editable{padding-left:0;padding-right:0}.bk-root .bk-cell-editor input,.bk-root .bk-cell-editor select{width:100%;height:100%;border:0;margin:0;padding:0;outline:0;background:transparent;vertical-align:baseline}.bk-root .bk-cell-editor input{padding-left:4px;padding-right:4px}.bk-root .bk-cell-editor-completion{font-size:11px}\\n/* END bokeh-tables.min.css */\");\n", + " },\n", + " function(Bokeh) {\n", + " /* BEGIN bokeh.min.js */\n", + " /*!\n", + " * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n", + " * All rights reserved.\n", + " * \n", + " * Redistribution and use in source and binary forms, with or without modification,\n", + " * are permitted provided that the following conditions are met:\n", + " * \n", + " * Redistributions of source code must retain the above copyright notice,\n", + " * this list of conditions and the following disclaimer.\n", + " * \n", + " * Redistributions in binary form must reproduce the above copyright notice,\n", + " * this list of conditions and the following disclaimer in the documentation\n", + " * and/or other materials provided with the distribution.\n", + " * \n", + " * Neither the name of Anaconda nor the names of any contributors\n", + " * may be used to endorse or promote products derived from this software\n", + " * without specific prior written permission.\n", + " * \n", + " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", + " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", + " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", + " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", + " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", + " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", + " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", + " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", + " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", + " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", + " * THE POSSIBILITY OF SUCH DAMAGE.\n", + " */\n", + " !function(t,e){var i,n,r,o,s;t.Bokeh=(i=[function(t,e,i){var n=t(160),r=t(35);i.overrides={};var o=r.clone(n);i.Models=function(t){var e=i.overrides[t]||o[t];if(null==e)throw new Error(\"Model '\"+t+\"' does not exist. This could be due to a widget\\n or a custom model not being registered before first usage.\");return e},i.Models.register=function(t,e){i.overrides[t]=e},i.Models.unregister=function(t){delete i.overrides[t]},i.Models.register_models=function(t,e,i){if(void 0===e&&(e=!1),null!=t)for(var n in t){var r=t[n];e||!o.hasOwnProperty(n)?o[n]=r:null!=i?i(n):console.warn(\"Model '\"+n+\"' was already registered\")}},i.register_models=i.Models.register_models,i.Models.registered_names=function(){return Object.keys(o)}},function(t,e,i){var n=t(17),r=t(54),o=t(300),s=t(301),a=t(2);i.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",i.DEFAULT_SESSION_ID=\"default\";var l=0,h=function(){function t(t,e,r,o,a){void 0===t&&(t=i.DEFAULT_SERVER_WEBSOCKET_URL),void 0===e&&(e=i.DEFAULT_SESSION_ID),void 0===r&&(r=null),void 0===o&&(o=null),void 0===a&&(a=null),this.url=t,this.id=e,this.args_string=r,this._on_have_session_hook=o,this._on_closed_permanently_hook=a,this._number=l++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_ack=null,this._pending_replies={},this._receiver=new s.Receiver,n.logger.debug(\"Creating websocket \"+this._number+\" to '\"+this.url+\"' session '\"+this.id+\"'\")}return t.prototype.connect=function(){var t=this;if(this.closed_permanently)return Promise.reject(new Error(\"Cannot connect() a closed ClientConnection\"));if(null!=this.socket)return Promise.reject(new Error(\"Already connected\"));this._pending_replies={},this._current_handler=null;try{var e=this.url+\"?bokeh-protocol-version=1.0&bokeh-session-id=\"+this.id;return null!=this.args_string&&this.args_string.length>0&&(e+=\"&\"+this.args_string),this.socket=new WebSocket(e),new Promise(function(e,i){t.socket.binaryType=\"arraybuffer\",t.socket.onopen=function(){return t._on_open(e,i)},t.socket.onmessage=function(e){return t._on_message(e)},t.socket.onclose=function(e){return t._on_close(e)},t.socket.onerror=function(){return t._on_error(i)}})}catch(t){return n.logger.error(\"websocket creation failed to url: \"+this.url),n.logger.error(\" - \"+t),Promise.reject(t)}},t.prototype.close=function(){this.closed_permanently||(n.logger.debug(\"Permanently closing websocket connection \"+this._number),this.closed_permanently=!0,null!=this.socket&&this.socket.close(1e3,\"close method called on ClientConnection \"+this._number),this.session._connection_closed(),null!=this._on_closed_permanently_hook&&(this._on_closed_permanently_hook(),this._on_closed_permanently_hook=null))},t.prototype._schedule_reconnect=function(t){var e=this;setTimeout(function(){e.closed_permanently||n.logger.info(\"Websocket connection \"+e._number+\" disconnected, will not attempt to reconnect\")},t)},t.prototype.send=function(t){if(null==this.socket)throw new Error(\"not connected so cannot send \"+t);t.send(this.socket)},t.prototype.send_with_reply=function(t){var e=this,i=new Promise(function(i,n){e._pending_replies[t.msgid()]=[i,n],e.send(t)});return i.then(function(t){if(\"ERROR\"===t.msgtype())throw new Error(\"Error reply \"+t.content.text);return t},function(t){throw t})},t.prototype._pull_doc_json=function(){var t=o.Message.create(\"PULL-DOC-REQ\",{}),e=this.send_with_reply(t);return e.then(function(t){if(!(\"doc\"in t.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return t.content.doc},function(t){throw t})},t.prototype._repull_session_doc=function(){var t=this;null==this.session?n.logger.debug(\"Pulling session for first time\"):n.logger.debug(\"Repulling session\"),this._pull_doc_json().then(function(e){if(null==t.session)if(t.closed_permanently)n.logger.debug(\"Got new document after connection was already closed\");else{var i=r.Document.from_json(e),s=r.Document._compute_patch_since_json(e,i);if(s.events.length>0){n.logger.debug(\"Sending \"+s.events.length+\" changes from model construction back to server\");var l=o.Message.create(\"PATCH-DOC\",{},s);t.send(l)}t.session=new a.ClientSession(t,i,t.id),n.logger.debug(\"Created a new session from new pulled doc\"),null!=t._on_have_session_hook&&(t._on_have_session_hook(t.session),t._on_have_session_hook=null)}else t.session.document.replace_with_json(e),n.logger.debug(\"Updated existing session with new pulled doc\")},function(t){throw t}).catch(function(t){null!=console.trace&&console.trace(t),n.logger.error(\"Failed to repull session \"+t)})},t.prototype._on_open=function(t,e){var i=this;n.logger.info(\"Websocket connection \"+this._number+\" is now open\"),this._pending_ack=[t,e],this._current_handler=function(t){i._awaiting_ack_handler(t)}},t.prototype._on_message=function(t){null==this._current_handler&&n.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(t.data)}catch(t){this._close_bad_protocol(t.toString())}if(null!=this._receiver.message){var e=this._receiver.message,i=e.problem();null!=i&&this._close_bad_protocol(i),this._current_handler(e)}},t.prototype._on_close=function(t){var e=this;n.logger.info(\"Lost websocket \"+this._number+\" connection, \"+t.code+\" (\"+t.reason+\")\"),this.socket=null,null!=this._pending_ack&&(this._pending_ack[1](new Error(\"Lost websocket connection, \"+t.code+\" (\"+t.reason+\")\")),this._pending_ack=null);for(var i=function(){for(var t in e._pending_replies){var i=e._pending_replies[t];return delete e._pending_replies[t],i}return null},r=i();null!=r;)r[1](\"Disconnected\"),r=i();this.closed_permanently||this._schedule_reconnect(2e3)},t.prototype._on_error=function(t){n.logger.debug(\"Websocket error on socket \"+this._number),t(new Error(\"Could not open websocket\"))},t.prototype._close_bad_protocol=function(t){n.logger.error(\"Closing connection: \"+t),null!=this.socket&&this.socket.close(1002,t)},t.prototype._awaiting_ack_handler=function(t){var e=this;\"ACK\"===t.msgtype()?(this._current_handler=function(t){return e._steady_state_handler(t)},this._repull_session_doc(),null!=this._pending_ack&&(this._pending_ack[0](this),this._pending_ack=null)):this._close_bad_protocol(\"First message was not an ACK\")},t.prototype._steady_state_handler=function(t){if(t.reqid()in this._pending_replies){var e=this._pending_replies[t.reqid()];delete this._pending_replies[t.reqid()],e[0](t)}else this.session.handle(t)},t}();i.ClientConnection=h,i.pull_session=function(t,e,i){return new Promise(function(r,o){var s=new h(t,e,i,function(t){try{r(t)}catch(e){throw n.logger.error(\"Promise handler threw an error, closing session \"+e),t.close(),e}},function(){o(new Error(\"Connection was closed before we successfully pulled a session\"))});s.connect().then(function(t){},function(t){throw n.logger.error(\"Failed to connect to Bokeh server \"+t),t})})}},function(t,e,i){var n=t(54),r=t(300),o=t(17),s=function(){function t(t,e,i){var n=this;this._connection=t,this.document=e,this.id=i,this._document_listener=function(t){return n._document_changed(t)},this.document.on_change(this._document_listener),this.event_manager=this.document.event_manager,this.event_manager.session=this}return t.prototype.handle=function(t){var e=t.msgtype();\"PATCH-DOC\"===e?this._handle_patch(t):\"OK\"===e?this._handle_ok(t):\"ERROR\"===e?this._handle_error(t):o.logger.debug(\"Doing nothing with message \"+t.msgtype())},t.prototype.close=function(){this._connection.close()},t.prototype.send_event=function(t){var e=r.Message.create(\"EVENT\",{},JSON.stringify(t.to_json()));this._connection.send(e)},t.prototype._connection_closed=function(){this.document.remove_on_change(this._document_listener)},t.prototype.request_server_info=function(){var t=r.Message.create(\"SERVER-INFO-REQ\",{}),e=this._connection.send_with_reply(t);return e.then(function(t){return t.content})},t.prototype.force_roundtrip=function(){return this.request_server_info().then(function(t){})},t.prototype._document_changed=function(t){if(t.setter_id!==this.id&&(!(t instanceof n.ModelChangedEvent)||t.attr in t.model.serializable_attributes())){var e=r.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch([t]));this._connection.send(e)}},t.prototype._handle_patch=function(t){this.document.apply_json_patch(t.content,t.buffers,this.id)},t.prototype._handle_ok=function(t){o.logger.trace(\"Unhandled OK reply to \"+t.reqid())},t.prototype._handle_error=function(t){o.logger.error(\"Unhandled ERROR reply to \"+t.reqid()+\": \"+t.content.text)},t}();i.ClientSession=s},function(t,e,i){var n=t(408);function r(t){return function(e){e.prototype.event_name=t}}var o=function(){function t(){}return t.prototype.to_json=function(){var t=this.event_name;return{event_name:t,event_values:this._to_json()}},t.prototype._to_json=function(){var t=this.origin;return{model_id:null!=t?t.id:null}},t}();i.BokehEvent=o;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"button_click\")],e)}(o);i.ButtonClick=s;var a=function(t){function e(e){var i=t.call(this)||this;return i.item=e,i}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.item;return n.__assign({},t.prototype._to_json.call(this),{item:e})},e=n.__decorate([r(\"menu_item_click\")],e)}(o);i.MenuItemClick=a;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(o);i.UIEvent=l;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"lodstart\")],e)}(l);i.LODStart=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"lodend\")],e)}(l);i.LODEnd=u;var c=function(t){function e(e,i){var n=t.call(this)||this;return n.geometry=e,n.final=i,n}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.geometry,i=this.final;return n.__assign({},t.prototype._to_json.call(this),{geometry:e,final:i})},e=n.__decorate([r(\"selectiongeometry\")],e)}(l);i.SelectionGeometry=c;var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"reset\")],e)}(l);i.Reset=_;var p=function(t){function e(e,i,n,r){var o=t.call(this)||this;return o.sx=e,o.sy=i,o.x=n,o.y=r,o}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.sx,i=this.sy,r=this.x,o=this.y;return n.__assign({},t.prototype._to_json.call(this),{sx:e,sy:i,x:r,y:o})},e}(l);i.PointEvent=p;var d=function(t){function e(e,i,n,r,o,s){var a=t.call(this,e,i,n,r)||this;return a.sx=e,a.sy=i,a.x=n,a.y=r,a.delta_x=o,a.delta_y=s,a}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.delta_x,i=this.delta_y;return n.__assign({},t.prototype._to_json.call(this),{delta_x:e,delta_y:i})},e=n.__decorate([r(\"pan\")],e)}(p);i.Pan=d;var f=function(t){function e(e,i,n,r,o){var s=t.call(this,e,i,n,r)||this;return s.sx=e,s.sy=i,s.x=n,s.y=r,s.scale=o,s}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.scale;return n.__assign({},t.prototype._to_json.call(this),{scale:e})},e=n.__decorate([r(\"pinch\")],e)}(p);i.Pinch=f;var v=function(t){function e(e,i,n,r,o){var s=t.call(this,e,i,n,r)||this;return s.sx=e,s.sy=i,s.x=n,s.y=r,s.delta=o,s}return n.__extends(e,t),e.prototype._to_json=function(){var e=this.delta;return n.__assign({},t.prototype._to_json.call(this),{delta:e})},e=n.__decorate([r(\"wheel\")],e)}(p);i.MouseWheel=v;var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"mousemove\")],e)}(p);i.MouseMove=m;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"mouseenter\")],e)}(p);i.MouseEnter=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"mouseleave\")],e)}(p);i.MouseLeave=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"tap\")],e)}(p);i.Tap=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"doubletap\")],e)}(p);i.DoubleTap=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"press\")],e)}(p);i.Press=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"panstart\")],e)}(p);i.PanStart=k;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"panend\")],e)}(p);i.PanEnd=T;var C=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"pinchstart\")],e)}(p);i.PinchStart=C;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([r(\"pinchend\")],e)}(p);i.PinchEnd=S},function(t,e,i){var n=t(408),r=t(24);i.build_views=function(t,e,i,o){void 0===o&&(o=function(t){return t.default_view});for(var s=r.difference(Object.keys(t),e.map(function(t){return t.id})),a=0,l=s;a\",\"*\"],i.HTTPMethod=[\"POST\",\"GET\"],i.HexTileOrientation=[\"pointytop\",\"flattop\"],i.HoverMode=[\"mouse\",\"hline\",\"vline\"],i.LatLon=[\"lat\",\"lon\"],i.LegendClickPolicy=[\"none\",\"hide\",\"mute\"],i.LegendLocation=i.Anchor,i.LineCap=[\"butt\",\"round\",\"square\"],i.LineJoin=[\"miter\",\"round\",\"bevel\"],i.LinePolicy=[\"prev\",\"next\",\"nearest\",\"interp\",\"none\"],i.Location=[\"above\",\"below\",\"left\",\"right\"],i.Logo=[\"normal\",\"grey\"],i.MarkerType=[\"asterisk\",\"circle\",\"circle_cross\",\"circle_x\",\"cross\",\"dash\",\"diamond\",\"diamond_cross\",\"hex\",\"inverted_triangle\",\"square\",\"square_cross\",\"square_x\",\"triangle\",\"x\"],i.Orientation=[\"vertical\",\"horizontal\"],i.OutputBackend=[\"canvas\",\"svg\",\"webgl\"],i.PaddingUnits=[\"percent\",\"absolute\"],i.Place=[\"above\",\"below\",\"left\",\"right\",\"center\"],i.PointPolicy=[\"snap_to_data\",\"follow_mouse\",\"none\"],i.RadiusDimension=[\"x\",\"y\",\"max\",\"min\"],i.RenderLevel=[\"image\",\"underlay\",\"glyph\",\"annotation\",\"overlay\"],i.RenderMode=[\"canvas\",\"css\"],i.ResetPolicy=[\"standard\",\"event_only\"],i.RoundingFunction=[\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"],i.Side=[\"above\",\"below\",\"left\",\"right\"],i.SizingMode=[\"stretch_width\",\"stretch_height\",\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"],i.SliderCallbackPolicy=[\"continuous\",\"throttle\",\"mouseup\"],i.Sort=[\"ascending\",\"descending\"],i.SpatialUnits=[\"screen\",\"data\"],i.StartEnd=[\"start\",\"end\"],i.StepMode=[\"after\",\"before\",\"center\"],i.TapBehavior=[\"select\",\"inspect\"],i.TextAlign=[\"left\",\"right\",\"center\"],i.TextBaseline=[\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"],i.TextureRepetition=[\"repeat\",\"repeat_x\",\"repeat_y\",\"no_repeat\"],i.TickLabelOrientation=[\"vertical\",\"horizontal\",\"parallel\",\"normal\"],i.TooltipAttachment=[\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"],i.UpdateMode=[\"replace\",\"append\"],i.VerticalAlign=[\"top\",\"middle\",\"bottom\"]},function(t,e,i){var n=t(408),r=t(22),o=t(19),s=t(37),a=t(18),l=t(40),h=t(24),u=t(35),c=t(46),_=t(33),p=function(t){function e(e){void 0===e&&(e={});var i=t.call(this)||this;for(var n in i._subtype=void 0,i.document=null,i.destroyed=new r.Signal0(i,\"destroyed\"),i.change=new r.Signal0(i,\"change\"),i.transformchange=new r.Signal0(i,\"transformchange\"),i.attributes={},i.properties={},i._set_after_defaults={},i._pending=!1,i._changing=!1,i.props){var o=i.props[n],s=o.type,a=o.default_value;if(null==s)throw new Error(\"undefined property type for \"+i.type+\".\"+n);i.properties[n]=new s(i,n,a)}null==e.id&&i.setv({id:l.uniqueId()},{silent:!0});var h=e.__deferred__||!1;return h&&delete(e=u.clone(e)).__deferred__,i.setv(e,{silent:!0}),h||i.finalize(),i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"HasProps\",this.prototype.props={},this.prototype.mixins=[],this.define({id:[a.Any]})},e._fix_default=function(t,e){return void 0===t?void 0:c.isFunction(t)?t:c.isObject(t)?c.isArray(t)?function(){return h.copy(t)}:function(){return u.clone(t)}:function(){return t}},e.define=function(t){var e=function(e){var n=t[e];if(null!=i.prototype.props[e])throw new Error(\"attempted to redefine property '\"+i.prototype.type+\".\"+e+\"'\");if(null!=i.prototype[e])throw new Error(\"attempted to redefine attribute '\"+i.prototype.type+\".\"+e+\"'\");Object.defineProperty(i.prototype,e,{get:function(){var t=this.getv(e);return t},set:function(t){var i;return this.setv(((i={})[e]=t,i)),this},configurable:!1,enumerable:!0});var r=n,o=r[0],s=r[1],a=r[2],l={type:o,default_value:i._fix_default(s,e),internal:a||!1},h=u.clone(i.prototype.props);h[e]=l,i.prototype.props=h},i=this;for(var n in t)e(n)},e.internal=function(t){var e={};for(var i in t){var n=t[i],r=n[0],o=n[1];e[i]=[r,o,!0]}this.define(e)},e.mixin=function(){for(var t=[],e=0;e0&&(this._pending=!0);for(var h=0;h1)return s(t,i);var o={x:e.x+r*(i.x-e.x),y:e.y+r*(i.y-e.y)};return s(t,o)}i.point_in_poly=function(t,e,i,n){for(var r=!1,o=i[i.length-1],s=n[n.length-1],a=0;ao&&(r=(i=[o,r])[0],o=i[1]),s>a&&(s=(n=[a,s])[0],a=n[1]),{minX:r,minY:s,maxX:o,maxY:a}},i.dist_2_pts=s,i.dist_to_segment_squared=a,i.dist_to_segment=function(t,e,i){return Math.sqrt(a(t,e,i))},i.check_2_segments_intersect=function(t,e,i,n,r,o,s,a){var l=(a-o)*(i-t)-(s-r)*(n-e);if(0==l)return{hit:!1,x:null,y:null};var h=e-o,u=t-r,c=(s-r)*h-(a-o)*u,_=(i-t)*h-(n-e)*u;u=_/l;var p=t+(h=c/l)*(i-t),d=e+h*(n-e);return{hit:h>0&&h<1&&u>0&&u<1,x:p,y:d}}},function(t,e,i){var n=t(408),r=t(14),o=t(27),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.children=[],e}return n.__extends(e,t),e}(r.Layoutable);i.Stack=s;var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._measure=function(t){for(var e=0,i=0,n=0,r=this.children;n0)for(var A=u(T.height/C.length),M=0,E=C;M0)for(var P=u(T.width/z.length),j=0,N=z;j0)for(var d=0;dv?v:y,m--}}}_=\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:t.width!=1/0&&this.is_width_expanding()?t.width:c.size.width;for(var b=0,x=0;x0)for(var x=0;xk?k:y,m--}}}var C=this._measure_cells(function(t,e){return{width:c.col_widths[e],height:c.row_heights[t]}}),S=C.row_heights,A=C.col_widths,M=C.size_hints,E=this._measure_totals(S,A);return{size:E,row_heights:S,col_widths:A,size_hints:M}},e.prototype._measure=function(t){var e=this._measure_grid(t).size;return e},e.prototype._set_geometry=function(e,i){t.prototype._set_geometry.call(this,e,i);for(var r=this._state,o=r.nrows,s=r.ncols,l=r.rspacing,_=r.cspacing,p=this._measure_grid(e),d=p.row_heights,f=p.col_widths,v=p.size_hints,m=this._state.rows.map(function(t,e){return n.__assign({},t,{top:0,height:d[e],get bottom(){return this.top+this.height}})}),g=this._state.cols.map(function(t,e){return n.__assign({},t,{left:0,width:f[e],get right(){return this.left+this.width}})}),y=v.map(function(t,e){return n.__assign({},e,{outer:new a.BBox,inner:new a.BBox})}),b=0,x=this.absolute?e.top:0;bi[e]}(s,a)?i=l(n*r):n=l(i/r);else\"fixed\"==s?n=l(i/r):\"fixed\"==a&&(i=l(n*r))}return{width:i,height:n}},t.prototype.measure=function(t){var e=this;if(!this.sizing.visible)return{width:0,height:0};var i=function(t){return\"fixed\"==e.sizing.width_policy&&null!=e.sizing.width?e.sizing.width:t},o=function(t){return\"fixed\"==e.sizing.height_policy&&null!=e.sizing.height?e.sizing.height:t},s=new r.Sizeable(t).shrink_by(this.sizing.margin).map(i,o),a=this._measure(s),l=this.clip_size(a),h=i(l.width),u=o(l.height),c=this.apply_aspect(s,{width:h,height:u});return n.__assign({},a,c)},t.prototype.compute=function(t){void 0===t&&(t={});var e=this.measure({width:null!=t.width&&this.is_width_expanding()?t.width:1/0,height:null!=t.height&&this.is_height_expanding()?t.height:1/0}),i=e.width,n=e.height,r=new o.BBox({left:0,top:0,width:i,height:n}),s=void 0;if(null!=e.inner){var a=e.inner,l=a.left,h=a.top,u=a.right,c=a.bottom;s=new o.BBox({left:l,top:h,right:i-u,bottom:n-c})}this.set_geometry(r,s)},Object.defineProperty(t.prototype,\"xview\",{get:function(){return this.bbox.xview},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yview\",{get:function(){return this.bbox.yview},enumerable:!0,configurable:!0}),t.prototype.clip_width=function(t){return a(this.sizing.min_width,s(t,this.sizing.max_width))},t.prototype.clip_height=function(t){return a(this.sizing.min_height,s(t,this.sizing.max_height))},t.prototype.clip_size=function(t){var e=t.width,i=t.height;return{width:this.clip_width(e),height:this.clip_height(i)}},t}();i.Layoutable=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._measure=function(t){var e,i,n=this.sizing,r=n.width_policy,o=n.height_policy;if(t.width==1/0)e=null!=this.sizing.width?this.sizing.width:0;else if(\"fixed\"==r)e=null!=this.sizing.width?this.sizing.width:0;else if(\"min\"==r)e=null!=this.sizing.width?s(t.width,this.sizing.width):0;else if(\"fit\"==r)e=null!=this.sizing.width?s(t.width,this.sizing.width):t.width;else{if(\"max\"!=r)throw new Error(\"unrechable\");e=null!=this.sizing.width?a(t.width,this.sizing.width):t.width}if(t.height==1/0)i=null!=this.sizing.height?this.sizing.height:0;else if(\"fixed\"==o)i=null!=this.sizing.height?this.sizing.height:0;else if(\"min\"==o)i=null!=this.sizing.height?s(t.height,this.sizing.height):0;else if(\"fit\"==o)i=null!=this.sizing.height?s(t.height,this.sizing.height):t.height;else{if(\"max\"!=o)throw new Error(\"unrechable\");i=null!=this.sizing.height?a(t.height,this.sizing.height):t.height}return{width:e,height:i}},e}(h);i.LayoutItem=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._measure=function(t){var e=this,i=this._content_size(),n=t.bounded_to(this.sizing.size).bounded_to(i),r=function(){switch(e.sizing.width_policy){case\"fixed\":return null!=e.sizing.width?e.sizing.width:i.width;case\"min\":return i.width;case\"fit\":return n.width;case\"max\":return Math.max(i.width,n.width);default:throw new Error(\"unexpected\")}}(),o=function(){switch(e.sizing.height_policy){case\"fixed\":return null!=e.sizing.height?e.sizing.height:i.height;case\"min\":return i.height;case\"fit\":return n.height;case\"max\":return Math.max(i.height,n.height);default:throw new Error(\"unexpected\")}}();return{width:r,height:o}},e}(h);i.ContentLayoutable=c},function(t,e,i){var n=t(408),r=t(16),o=t(14),s=t(46),a=Math.PI/2,l=\"left\",h=\"center\",u={above:{parallel:0,normal:-a,horizontal:0,vertical:-a},below:{parallel:0,normal:a,horizontal:0,vertical:a},left:{parallel:-a,normal:0,horizontal:0,vertical:-a},right:{parallel:a,normal:0,horizontal:0,vertical:a}},c={above:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"alphabetic\",vertical:\"middle\"},below:{justified:\"bottom\",parallel:\"hanging\",normal:\"middle\",horizontal:\"hanging\",vertical:\"middle\"},left:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"},right:{justified:\"top\",parallel:\"alphabetic\",normal:\"middle\",horizontal:\"middle\",vertical:\"alphabetic\"}},_={above:{justified:h,parallel:h,normal:l,horizontal:h,vertical:l},below:{justified:h,parallel:h,normal:l,horizontal:h,vertical:l},left:{justified:h,parallel:h,normal:\"right\",horizontal:\"right\",vertical:h},right:{justified:h,parallel:h,normal:l,horizontal:l,vertical:h}},p={above:\"right\",below:l,left:\"right\",right:l},d={above:l,below:\"right\",left:\"right\",right:l},f=function(t){function e(e,i){var n=t.call(this)||this;switch(n.side=e,n.obj=i,n.side){case\"above\":n._dim=0,n._normals=[0,-1];break;case\"below\":n._dim=0,n._normals=[0,1];break;case\"left\":n._dim=1,n._normals=[-1,0];break;case\"right\":n._dim=1,n._normals=[1,0];break;default:throw new Error(\"unreachable\")}return n.is_horizontal?n.set_sizing({width_policy:\"max\",height_policy:\"fixed\"}):n.set_sizing({width_policy:\"fixed\",height_policy:\"max\"}),n}return n.__extends(e,t),e.prototype._content_size=function(){return new r.Sizeable(this.get_oriented_size())},e.prototype.get_oriented_size=function(){var t=this.obj.get_size(),e=t.width,i=t.height;return!this.obj.rotate||this.is_horizontal?{width:e,height:i}:{width:i,height:e}},e.prototype.has_size_changed=function(){var t=this.get_oriented_size(),e=t.width,i=t.height;return this.is_horizontal?this.bbox.height!=i:this.bbox.width!=e},Object.defineProperty(e.prototype,\"dimension\",{get:function(){return this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"normals\",{get:function(){return this._normals},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"is_horizontal\",{get:function(){return 0==this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"is_vertical\",{get:function(){return 1==this._dim},enumerable:!0,configurable:!0}),e.prototype.apply_label_text_heuristics=function(t,e){var i,n,r=this.side;s.isString(e)?(i=c[r][e],n=_[r][e]):0===e?(i=\"whatever\",n=\"whatever\"):e<0?(i=\"middle\",n=p[r]):(i=\"middle\",n=d[r]),t.textBaseline=i,t.textAlign=n},e.prototype.get_label_angle_heuristic=function(t){return u[this.side][t]},e}(o.ContentLayoutable);i.SidePanel=f},function(t,e,i){var n=Math.min,r=Math.max,o=function(){function t(t){void 0===t&&(t={}),this.width=null!=t.width?t.width:0,this.height=null!=t.height?t.height:0}return t.prototype.bounded_to=function(e){var i=e.width,n=e.height;return new t({width:this.width==1/0&&null!=i?i:this.width,height:this.height==1/0&&null!=n?n:this.height})},t.prototype.expanded_to=function(e){var i=e.width,n=e.height;return new t({width:i!=1/0?r(this.width,i):this.width,height:n!=1/0?r(this.height,n):this.height})},t.prototype.expand_to=function(t){var e=t.width,i=t.height;this.width=r(this.width,e),this.height=r(this.height,i)},t.prototype.narrowed_to=function(e){var i=e.width,r=e.height;return new t({width:n(this.width,i),height:n(this.height,r)})},t.prototype.narrow_to=function(t){var e=t.width,i=t.height;this.width=n(this.width,e),this.height=n(this.height,i)},t.prototype.grow_by=function(e){var i=e.left,n=e.right,r=e.top,o=e.bottom,s=this.width+i+n,a=this.height+r+o;return new t({width:s,height:a})},t.prototype.shrink_by=function(e){var i=e.left,n=e.right,o=e.top,s=e.bottom,a=r(this.width-i-n,0),l=r(this.height-o-s,0);return new t({width:a,height:l})},t.prototype.map=function(e,i){return new t({width:e(this.width),height:(null!=i?i:e)(this.height)})},t}();i.Sizeable=o},function(t,e,i){var n=t(46),r={},o=function(t,e){this.name=t,this.level=e};i.LogLevel=o;var s=function(){function t(e,i){void 0===i&&(i=t.INFO),this._name=e,this.set_level(i)}return Object.defineProperty(t,\"levels\",{get:function(){return Object.keys(t.log_levels)},enumerable:!0,configurable:!0}),t.get=function(e,i){if(void 0===i&&(i=t.INFO),e.length>0){var n=r[e];return null==n&&(r[e]=n=new t(e,i)),n}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")},Object.defineProperty(t.prototype,\"level\",{get:function(){return this.get_level()},enumerable:!0,configurable:!0}),t.prototype.get_level=function(){return this._log_level},t.prototype.set_level=function(e){if(e instanceof o)this._log_level=e;else{if(!n.isString(e)||null==t.log_levels[e])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=t.log_levels[e]}var i=\"[\"+this._name+\"]\";for(var r in t.log_levels){var s=t.log_levels[r];s.level0){var d=this.source.selection_policy.hit_test(e,r);c=c||this.source.selection_policy.do_selection(d,this.source,i,n)}return c},e.prototype.inspect=function(t,e){var i=!1;if(t instanceof s.GlyphRendererView){var n=t.hit_test(e);if(null!=n){i=!n.is_empty();var r=this.get_or_create_inspector(t.model);r.update(n,!0,!1),this.source.setv({inspected:r},{silent:!0}),this.source.inspect.emit([t,{geometry:e}])}}else if(t instanceof a.GraphRendererView){var n=t.model.inspection_policy.hit_test(e,t);i=i||t.model.inspection_policy.do_inspection(n,e,t,!1,!1)}return i},e.prototype.clear=function(t){this.source.selected.clear(),null!=t&&this.get_or_create_inspector(t.model).clear()},e.prototype.get_or_create_inspector=function(t){return null==this.inspectors[t.id]&&(this.inspectors[t.id]=new o.Selection),this.inspectors[t.id]},e}(r.HasProps);i.SelectionManager=h,h.initClass()},function(t,e,i){var n=function(){function t(){this._dev=!1}return Object.defineProperty(t.prototype,\"dev\",{get:function(){return this._dev},set:function(t){this._dev=t},enumerable:!0,configurable:!0}),t}();i.Settings=n,i.settings=new n},function(t,e,i){var n=t(408),r=t(32),o=t(28),s=t(24),a=function(){function t(t,e){this.sender=t,this.name=e}return t.prototype.connect=function(t,e){void 0===e&&(e=null),h.has(this.sender)||h.set(this.sender,[]);var i=h.get(this.sender);if(null!=c(i,this,t,e))return!1;var n=e||t;u.has(n)||u.set(n,[]);var r=u.get(n),o={signal:this,slot:t,context:e};return i.push(o),r.push(o),!0},t.prototype.disconnect=function(t,e){void 0===e&&(e=null);var i=h.get(this.sender);if(null==i||0===i.length)return!1;var n=c(i,this,t,e);if(null==n)return!1;var r=e||t,o=u.get(r);return n.signal=null,p(i),p(o),!0},t.prototype.emit=function(t){for(var e=h.get(this.sender)||[],i=0,n=e;i0,\"'step' must be a positive number\"),null==e&&(e=t,t=0);for(var n=Math.max,o=Math.ceil,s=Math.abs,a=t<=e?i:-i,l=n(o(s(e-t)/i),0),h=Array(l),u=0;u=0?e:t.length+e]},i.zip=function(){for(var t=[],e=0;en||void 0===i)return 1;if(io&&(e=o),null==i||i>o-e?i=o-e:i<0&&(i=0);for(var s=o-i+n.length,a=new t.constructor(s),l=0;l0?0:n-1;r>=0&&ri&&(i=e);return i},i.max_by=function(t,e){if(0==t.length)throw new Error(\"max_by() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;rn&&(i=s,n=a)}return i},i.sum=function(t){for(var e=0,i=0,n=t.length;i=0&&u>=0))throw new Error(\"invalid bbox {left: \"+a+\", top: \"+l+\", width: \"+h+\", height: \"+u+\"}\");this.x0=a,this.y0=l,this.x1=a+h,this.y1=l+u}else{var c,a=void 0,_=void 0,p=void 0;if(\"width\"in t)if(\"left\"in t)a=t.left,_=a+t.width;else if(\"right\"in t)_=t.right,a=_-t.width;else{var d=t.width/2;a=t.hcenter-d,_=t.hcenter+d}else a=t.left,_=t.right;if(\"height\"in t)if(\"top\"in t)c=t.top,p=c+t.height;else if(\"bottom\"in t)p=t.bottom,c=p-t.height;else{var f=t.height/2;c=t.vcenter-f,p=t.vcenter+f}else c=t.top,p=t.bottom;if(!(a<=_&&c<=p))throw new Error(\"invalid bbox {left: \"+a+\", top: \"+c+\", right: \"+_+\", bottom: \"+p+\"}\");this.x0=a,this.y0=c,this.x1=_,this.y1=p}}return t.prototype.toString=function(){return\"BBox({left: \"+this.left+\", top: \"+this.top+\", width: \"+this.width+\", height: \"+this.height+\"})\"},Object.defineProperty(t.prototype,\"minX\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"minY\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"maxX\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"maxY\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"left\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"top\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"right\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"bottom\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"p0\",{get:function(){return[this.x0,this.y0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"p1\",{get:function(){return[this.x1,this.y1]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"x\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this.x1-this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this.y1-this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"rect\",{get:function(){return{left:this.left,top:this.top,width:this.width,height:this.height}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"h_range\",{get:function(){return{start:this.x0,end:this.x1}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"v_range\",{get:function(){return{start:this.y0,end:this.y1}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ranges\",{get:function(){return[this.h_range,this.v_range]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"aspect\",{get:function(){return this.width/this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hcenter\",{get:function(){return(this.left+this.right)/2},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vcenter\",{get:function(){return(this.top+this.bottom)/2},enumerable:!0,configurable:!0}),t.prototype.contains=function(t,e){return t>=this.x0&&t<=this.x1&&e>=this.y0&&e<=this.y1},t.prototype.clip=function(t,e){return tthis.x1&&(t=this.x1),ethis.y1&&(e=this.y1),[t,e]},t.prototype.union=function(e){return new t({x0:n(this.x0,e.x0),y0:n(this.y0,e.y0),x1:r(this.x1,e.x1),y1:r(this.y1,e.y1)})},t.prototype.equals=function(t){return this.x0==t.x0&&this.y0==t.y0&&this.x1==t.x1&&this.y1==t.y1},Object.defineProperty(t.prototype,\"xview\",{get:function(){var t=this;return{compute:function(e){return t.left+e},v_compute:function(e){for(var i=new Float64Array(e.length),n=t.left,r=0;re?(s&&(clearTimeout(s),s=null),a=h,o=t.apply(n,r),s||(n=r=null)):s||!1===i.trailing||(s=setTimeout(l,u)),o}},i.once=function(t){var e,i=!1;return function(){return i||(i=!0,e=t()),e}}},function(t,e,i){i.fixup_ctx=function(t){(function(t){t.setLineDash||(t.setLineDash=function(e){t.mozDash=e,t.webkitLineDash=e}),t.getLineDash||(t.getLineDash=function(){return t.mozDash})})(t),function(t){t.setLineDashOffset=function(e){t.lineDashOffset=e,t.mozDashOffset=e,t.webkitLineDashOffset=e},t.getLineDashOffset=function(){return t.mozDashOffset}}(t),function(t){t.setImageSmoothingEnabled=function(e){t.imageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.oImageSmoothingEnabled=e,t.webkitImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e},t.getImageSmoothingEnabled=function(){var e=t.imageSmoothingEnabled;return null==e||e}}(t),function(t){t.measureText&&null==t.html5MeasureText&&(t.html5MeasureText=t.measureText,t.measureText=function(e){var i=t.html5MeasureText(e);return i.ascent=1.6*t.html5MeasureText(\"m\").width,i})}(t),function(t){t.ellipse||(t.ellipse=function(e,i,n,r,o,s,a,l){void 0===l&&(l=!1);var h=.551784;t.translate(e,i),t.rotate(o);var u=n,c=r;l&&(u=-n,c=-r),t.moveTo(-u,0),t.bezierCurveTo(-u,c*h,-u*h,c,0,c),t.bezierCurveTo(u*h,c,u,c*h,u,0),t.bezierCurveTo(u,-c*h,u*h,-c,0,-c),t.bezierCurveTo(-u*h,-c,-u,-c*h,-u,0),t.rotate(-o),t.translate(-e,-i)})}(t)},i.get_scale_ratio=function(t,e,i){if(\"svg\"==i)return 1;if(e){var n=window.devicePixelRatio||1,r=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/r}return 1}},function(t,e,i){var n=t(41),r=t(24);function o(t){var e=Number(t).toString(16);return 1==e.length?\"0\"+e:e}function s(t){if(0==(t+=\"\").indexOf(\"#\"))return t;if(n.is_svg_color(t))return n.svg_colors[t];if(0==t.indexOf(\"rgb\")){var e=t.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\"),i=e.slice(0,3).map(o).join(\"\");return 4==e.length&&(i+=o(Math.floor(255*parseFloat(e[3])))),\"#\"+i.slice(0,8)}return t}function a(t){var e;switch(t.substring(0,4)){case\"rgba\":e={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":e={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(t))throw new Error(\"color expects integers for rgb in rgb/rgba tuple, received \"+t);var i=t.replace(e.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);if(i.length!=e.len)throw new Error(\"color expects rgba \"+e.len+\"-tuple, received \"+t);if(e.alpha&&!(0<=i[3]&&i[3]<=1))throw new Error(\"color expects rgba 4-tuple to have alpha value between 0 and 1\");if(r.includes(i.slice(0,3).map(function(t){return 0<=t&&t<=255}),!1))throw new Error(\"color expects rgb to have value between 0 and 255\");return!0}i.is_color=function(t){return n.is_svg_color(t.toLowerCase())||\"#\"==t.substring(0,1)||a(t)},i.rgb2hex=function(t,e,i){var n=o(255&t),r=o(255&e),s=o(255&i);return\"#\"+n+r+s},i.color2hex=s,i.color2rgba=function(t,e){if(void 0===e&&(e=1),!t)return[0,0,0,0];var i=s(t);(i=i.replace(/ |#/g,\"\")).length<=4&&(i=i.replace(/(.)/g,\"$1$1\"));for(var n=i.match(/../g).map(function(t){return parseInt(t,16)/255});n.length<3;)n.push(0);return n.length<4&&n.push(e),n.slice(0,4)},i.valid_rgb=a},function(t,e,i){var n;i.is_ie=(n=\"undefined\"!=typeof navigator?navigator.userAgent:\"\").indexOf(\"MSIE\")>=0||n.indexOf(\"Trident\")>0||n.indexOf(\"Edge\")>0,i.is_mobile=\"undefined\"!=typeof window&&(\"ontouchstart\"in window||navigator.maxTouchPoints>0),i.is_little_endian=function(){var t=new ArrayBuffer(4),e=new Uint8Array(t),i=new Uint32Array(t);i[1]=168496141;var n=!0;return 10==e[4]&&11==e[5]&&12==e[6]&&13==e[7]&&(n=!1),n}()},function(t,e,i){var n=t(24),r=t(33),o=t(46),s=function(){function t(){this._dict={}}return t.prototype._existing=function(t){return t in this._dict?this._dict[t]:null},t.prototype.add_value=function(t,e){var i=this._existing(t);null==i?this._dict[t]=e:o.isArray(i)?i.push(e):this._dict[t]=[i,e]},t.prototype.remove_value=function(t,e){var i=this._existing(t);if(o.isArray(i)){var s=n.difference(i,[e]);s.length>0?this._dict[t]=s:delete this._dict[t]}else r.isEqual(i,e)&&delete this._dict[t]},t.prototype.get_one=function(t,e){var i=this._existing(t);if(o.isArray(i)){if(1===i.length)return i[0];throw new Error(e)}return i},t}();i.MultiDict=s;var a=function(){function t(e){if(null==e)this._values=[];else if(e instanceof t)this._values=n.copy(e._values);else{this._values=[];for(var i=0,r=e;i2*Math.PI;)t-=2*Math.PI;return t}function r(t,e){return Math.abs(n(t-e))}function o(){return Math.random()}i.angle_norm=n,i.angle_dist=r,i.angle_between=function(t,e,i,o){var s=r(e,i);if(0==s)return!1;var a=n(t),l=r(e,a)<=s&&r(a,i)<=s;return 0==o?l:!l},i.random=o,i.randomIn=function(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))},i.atan2=function(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])},i.rnorm=function(t,e){for(var i,n;i=o(),n=(2*(n=o())-1)*Math.sqrt(1/Math.E*2),!(-4*i*i*Math.log(i)>=n*n););var r=n/i;return r=t+e*r},i.clamp=function(t,e,i){return t>i?i:tl[e][0]&&t0){this.index=new n(t.length);for(var e=0,i=t;eo&&(n=(e=[o,n])[0],o=e[1]),r>s&&(r=(i=[s,r])[0],s=i[1]),{minX:n,minY:r,maxX:o,maxY:s}},Object.defineProperty(t.prototype,\"bbox\",{get:function(){if(null==this.index)return r.empty();var t=this.index,e=t.minX,i=t.minY,n=t.maxX,o=t.maxY;return{minX:e,minY:i,maxX:n,maxY:o}},enumerable:!0,configurable:!0}),t.prototype.search=function(t){var e=this;if(null==this.index)return[];var i=this._normalize(t),n=i.minX,r=i.minY,o=i.maxX,s=i.maxY,a=this.index.search(n,r,o,s);return a.map(function(t){return e.points[t]})},t.prototype.indices=function(t){return this.search(t).map(function(t){var e=t.i;return e})},t}();i.SpatialIndex=o},function(t,e,i){var n=t(21);function r(){for(var t=new Array(32),e=0;e<32;e++)t[e]=\"0123456789ABCDEF\".substr(Math.floor(16*Math.random()),1);return t[12]=\"4\",t[16]=\"0123456789ABCDEF\".substr(3&t[16].charCodeAt(0)|8,1),t.join(\"\")}i.startsWith=function(t,e,i){return void 0===i&&(i=0),t.substr(i,e.length)==e},i.uuid4=r;var o=1e3;i.uniqueId=function(t){var e=n.settings.dev?\"j\"+o++:r();return null!=t?t+\"-\"+e:e},i.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,function(t){switch(t){case\"&\":return\"&\";case\"<\":return\"<\";case\">\":return\">\";case'\"':return\""\";case\"'\":return\"'\";case\"`\":return\"`\";default:return t}})},i.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,function(t,e){switch(e){case\"amp\":return\"&\";case\"lt\":return\"<\";case\"gt\":return\">\";case\"quot\":return'\"';case\"#x27\":return\"'\";case\"#x60\":return\"`\";default:return e}})},i.use_strict=function(t){return\"'use strict';\\n\"+t}},function(t,e,i){i.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},i.is_svg_color=function(t){return t in i.svg_colors}},function(t,e,i){var n=t(406),r=t(378),o=t(407),s=t(40),a=t(46);function l(t){for(var e=[],i=1;i.1&&Math.abs(t)<1e3):return\"%0.3f\";default:return\"%0.3e\"}}();return l(n,t)}return\"\"+t}function u(t,e,n,r){if(null==n)return h;if(null!=r&&(t in r||e in r)){var o=e in r?e:t,s=r[o];if(a.isString(s)){if(s in i.DEFAULT_FORMATTERS)return i.DEFAULT_FORMATTERS[s];throw new Error(\"Unknown tooltip field formatter type '\"+s+\"'\")}return function(t,e,i){return s.format(t,e,i)}}return i.DEFAULT_FORMATTERS.numeral}function c(t,e,i,n){if(\"$\"==t[0]){if(t.substring(1)in n)return n[t.substring(1)];throw new Error(\"Unknown special variable '\"+t+\"'\")}var r=e.get_column(t);if(null==r)return null;if(a.isNumber(i))return r[i];var o=r[i.index];if(a.isTypedArray(o)||a.isArray(o)){if(a.isArray(o[0])){var s=o[i.dim2];return s[i.dim1]}return o[i.flat_index]}return o}i.sprintf=l,i.DEFAULT_FORMATTERS={numeral:function(t,e,i){return r.format(t,e)},datetime:function(t,e,i){return o(t,e)},printf:function(t,e,i){return l(e,t)}},i.basic_formatter=h,i.get_formatter=u,i.get_value=c,i.replace_placeholders=function(t,e,i,n,r){void 0===r&&(r={});var o=t.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g,function(t,e,i){return\"\"+e});return t=(t=(t=t.replace(/@\\$name/g,function(t){return\"@{\"+r.name+\"}\"})).replace(/(^|[^\\$])\\$(\\w+)/g,function(t,e,i){return e+\"@$\"+i})).replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g,function(t,a,l,h,_){var p=c(l=null!=h?h:l,e,i,r);if(null==p)return\"\"+a+s.escape(\"???\");if(\"safe\"==_)return\"\"+a+p;var d=u(l,o,_,n);return\"\"+a+s.escape(d(p,_,r))})}},function(t,e,i){var n=t(5),r={};i.measure_font=function(t){if(null!=r[t])return r[t];var e=n.span({style:{font:t}},\"Hg\"),i=n.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),o=n.div({},e,i);document.body.appendChild(o);try{i.style.verticalAlign=\"baseline\";var s=n.offset(i).top-n.offset(e).top;i.style.verticalAlign=\"bottom\";var a=n.offset(i).top-n.offset(e).top,l={height:a,ascent:s,descent:a-s};return r[t]=l,l}finally{document.body.removeChild(o)}};var o={};i.measure_text=function(t,e){var i=o[e];if(null!=i){var r=i[t];if(null!=r)return r}else o[e]={};var s=n.div({style:{display:\"inline-block\",\"white-space\":\"nowrap\",font:e}},t);document.body.appendChild(s);try{var a=s.getBoundingClientRect(),l=a.width,h=a.height;return o[e][t]={width:l,height:h},{width:l,height:h}}finally{document.body.removeChild(s)}}},function(t,e,i){var n=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(t){return t(Date.now()),-1};i.throttle=function(t,e){var i=null,r=0,o=!1,s=function(){r=Date.now(),i=null,o=!1,t()};return function(){var t=Date.now(),a=e-(t-r);a<=0&&!o?(null!=i&&clearTimeout(i),o=!0,n(s)):i||o||(i=setTimeout(function(){return n(s)},a))}}},function(t,e,i){i.concat=function(t){for(var e=[],i=1;i\":case\"vertical_wave\":c.moveTo(h,0),c.lineTo(3*h,o),c.lineTo(h,r),c.stroke();break;case\"*\":case\"criss_cross\":l(c,r),s(c,r,o),a(c,r,o)}return u}var u=function(){function t(t,e){void 0===e&&(e=\"\"),this.obj=t,this.prefix=e,this.cache={};for(var i=0,n=this.attrs;i0;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}},t.prototype.interactive_start=function(t){null==this._interactive_plot&&(this._interactive_plot=t,this._interactive_plot.trigger_event(new a.LODStart)),this._interactive_timestamp=Date.now()},t.prototype.interactive_stop=function(t){null!=this._interactive_plot&&this._interactive_plot.id===t.id&&this._interactive_plot.trigger_event(new a.LODEnd),this._interactive_plot=null,this._interactive_timestamp=null},t.prototype.interactive_duration=function(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp},t.prototype.destructively_move=function(t){if(t===this)throw new Error(\"Attempted to overwrite a document with itself\");t.clear();var e=p.copy(this._roots);this.clear();for(var i=0,n=e;i=0&&this._callbacks.splice(e,1)},t.prototype._trigger_on_change=function(t){for(var e=0,i=this._callbacks;e0||p.difference(f,a).length>0)throw new Error(\"Not implemented: computing add/remove of document roots\");var g={},y=[];for(var b in i._all_models)if(b in o){var x=t._events_to_sync_objects(o[b],c[b],i,g);y=y.concat(x)}return{references:t._references_json(d.values(g),!1),events:y}},t.prototype.to_json_string=function(t){return void 0===t&&(t=!0),JSON.stringify(this.to_json(t))},t.prototype.to_json=function(e){void 0===e&&(e=!0);var i=this._roots.map(function(t){return t.id}),n=d.values(this._all_models);return{version:o.version,title:this._title,roots:{root_ids:i,references:t._references_json(n,e)}}},t.from_json_string=function(e){var i=JSON.parse(e);return t.from_json(i)},t.from_json=function(e){s.logger.debug(\"Creating Document from JSON\");var i=e.version,n=-1!==i.indexOf(\"+\")||-1!==i.indexOf(\"-\"),r=\"Library versions: JS (\"+o.version+\") / Python (\"+i+\")\";n||o.version===i?s.logger.debug(r):(s.logger.warn(\"JS/Python version mismatch\"),s.logger.warn(r));var a=e.roots,l=a.root_ids,h=a.references,u=t._instantiate_references_json(h,{});t._initialize_references_json(h,{},u);for(var c=new t,_=0,p=l;_\");if(\"SCRIPT\"==e.tagName){var r=n.div({class:i.BOKEH_ROOT});n.replaceWith(e,r),e=r}return e}i.BOKEH_ROOT=\"bk-root\",i._resolve_element=function(t){var e=t.elementid;return null!=e?r(e):document.body},i._resolve_root_elements=function(t){var e={};if(null!=t.roots)for(var i in t.roots)e[i]=r(t.roots[i]);return e}},function(t,e,i){var n=t(54),r=t(17),o=t(28),s=t(40),a=t(46),l=t(59),h=t(58),u=t(55),c=t(59);i.add_document_standalone=c.add_document_standalone,i.index=c.index;var _=t(58);i.add_document_from_session=_.add_document_from_session;var p=t(57);i.embed_items_notebook=p.embed_items_notebook,i.kernels=p.kernels;var d=t(55);function f(t,e,i,o){a.isString(t)&&(t=JSON.parse(s.unescape(t)));var c={};for(var _ in t){var p=t[_];c[_]=n.Document.from_json(p)}for(var d=0,f=e;d0?t.consume(e.buffers[0].buffer):t.consume(e.content.data);var i=t.message;null!=i&&this.apply_json_patch(i.content,i.buffers)}function u(t,e){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){o.logger.info(\"Registering Jupyter comms for target \"+t);var n=Jupyter.notebook.kernel.comm_manager;try{n.register_target(t,function(i){o.logger.info(\"Registering Jupyter comms for target \"+t);var n=new r.Receiver;i.on_msg(h.bind(e,n))})}catch(t){o.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else if(e.roots()[0].id in i.kernels){o.logger.info(\"Registering JupyterLab comms for target \"+t);var s=i.kernels[e.roots()[0].id];try{s.registerCommTarget(t,function(i){o.logger.info(\"Registering JupyterLab comms for target \"+t);var n=new r.Receiver;i.onMsg=h.bind(e,n)})}catch(t){o.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.\")}i.kernels={},i.embed_items_notebook=function(t,e){if(1!=s.size(t))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");for(var i=n.Document.from_json(s.values(t)[0]),r=0,o=e;r=0;e--)t.lineTo(this._upper_sx[e],this._upper_sy[e]);t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;ethis.sleft&&tthis.stop&&el||(_[r].push(u[f]),_[o].push(0));for(var f=0,v=c.length;fl||(p[r].push(c[f]),p[o].push(0));var m={major:this._format_major_labels(_[r],u)},g={major:[[],[]],minor:[[],[]]};return g.major[r]=i.v_compute(_[r]),g.minor[r]=i.v_compute(p[r]),g.major[o]=_[o],g.minor[o]=p[o],\"vertical\"==this.model.orientation&&(g.major[r]=d.map(g.major[r],function(e){return t-e}),g.minor[r]=d.map(g.minor[r],function(e){return t-e})),{coords:g,labels:m}},e}(r.AnnotationView);i.ColorBarView=m;var g=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"ColorBar\",this.prototype.default_view=m,this.mixins([\"text:major_label_\",\"text:title_\",\"line:major_tick_\",\"line:minor_tick_\",\"line:border_\",\"line:bar_\",\"fill:background_\"]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,function(){return new o.BasicTicker}],formatter:[c.Instance,function(){return new s.BasicTickFormatter}],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"8pt\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"10pt\",title_text_font_style:\"italic\"})},e}(r.Annotation);i.ColorBar=g,g.initClass()},function(t,e,i){var n=t(63);i.Annotation=n.Annotation;var r=t(64);i.Arrow=r.Arrow;var o=t(65);i.ArrowHead=o.ArrowHead;var s=t(65);i.OpenHead=s.OpenHead;var a=t(65);i.NormalHead=a.NormalHead;var l=t(65);i.TeeHead=l.TeeHead;var h=t(65);i.VeeHead=h.VeeHead;var u=t(66);i.Band=u.Band;var c=t(67);i.BoxAnnotation=c.BoxAnnotation;var _=t(68);i.ColorBar=_.ColorBar;var p=t(70);i.Label=p.Label;var d=t(71);i.LabelSet=d.LabelSet;var f=t(72);i.Legend=f.Legend;var v=t(73);i.LegendItem=v.LegendItem;var m=t(74);i.PolyAnnotation=m.PolyAnnotation;var g=t(75);i.Slope=g.Slope;var y=t(76);i.Span=y.Span;var b=t(77);i.TextAnnotation=b.TextAnnotation;var x=t(78);i.Title=x.Title;var w=t(79);i.ToolbarPanel=w.ToolbarPanel;var k=t(80);i.Tooltip=k.Tooltip;var T=t(81);i.Whisker=T.Whisker},function(t,e,i){var n=t(408),r=t(77),o=t(5),s=t(18),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.visuals.warm_cache()},e.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;this.visuals.text.set_value(t);var e=t.measureText(this.model.text),i=e.width,n=e.ascent;return{width:i,height:n}},e.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||o.undisplay(this.el),this.model.visible){var t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180;break;default:throw new Error(\"unreachable code\")}var e=null!=this.panel?this.panel:this.plot_view.frame,i=this.plot_view.frame.xscales[this.model.x_range_name],n=this.plot_view.frame.yscales[this.model.y_range_name],r=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),s=\"data\"==this.model.y_units?n.compute(this.model.y):e.yview.compute(this.model.y);r+=this.model.x_offset,s-=this.model.y_offset;var a=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);a(this.plot_view.canvas_view.ctx,this.model.text,r,s,t)}},e}(r.TextAnnotationView);i.LabelView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Label\",this.prototype.default_view=a,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[s.Number],x_units:[s.SpatialUnits,\"data\"],y:[s.Number],y_units:[s.SpatialUnits,\"data\"],text:[s.String],angle:[s.Angle,0],angle_units:[s.AngleUnits,\"rad\"],x_offset:[s.Number,0],y_offset:[s.Number,0],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},e}(r.TextAnnotation);i.Label=l,l.initClass()},function(t,e,i){var n=t(408),r=t(77),o=t(212),s=t(5),a=t(18),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){if(t.prototype.initialize.call(this),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(var e=0,i=this._text.length;e0?(this.el.style.top=_+\"px\",this.el.style.left=c+\"px\"):o.undisplay(this.el)}},e}(r.AnnotationView);i.TooltipView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Tooltip\",this.prototype.default_view=l,this.define({attachment:[s.TooltipAttachment,\"horizontal\"],inner_only:[s.Boolean,!0],show_arrow:[s.Boolean,!0]}),this.override({level:\"overlay\"}),this.internal({data:[s.Any,[]],custom:[s.Any]})},e.prototype.clear=function(){this.data=[]},e.prototype.add=function(t,e,i){this.data=this.data.concat([[t,e,i]])},e}(r.Annotation);i.Tooltip=h,h.initClass()},function(t,e,i){var n=t(408),r=t(63),o=t(212),s=t(65),a=t(18),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.set_data(this.model.source)},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return e.set_data(e.model.source)}),this.connect(this.model.source.patching,function(){return e.set_data(e.model.source)}),this.connect(this.model.source.change,function(){return e.set_data(e.model.source)})},e.prototype.set_data=function(e){t.prototype.set_data.call(this,e),this.visuals.warm_cache(e),this.plot_view.request_render()},e.prototype._map_data=function(){var t,e,i,n=this.plot_view.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.properties.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.properties.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.properties.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},e.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;if(this.visuals.line.doit)for(var e=0,i=this._lower_sx.length;ec&&(c=f)}return c>0&&(c+=n),c},Object.defineProperty(e.prototype,\"normals\",{get:function(){return this.panel.normals},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"dimension\",{get:function(){return this.panel.dimension},enumerable:!0,configurable:!0}),e.prototype.compute_labels=function(t){for(var e=this.model.formatter.doFormat(t,this),i=0;ih(l-_)?(n=c(u(o,s),l),r=u(c(o,s),_)):(n=u(o,s),r=c(o,s)),[n,r]}throw new Error(\"user bounds '\"+e+\"' not understood\")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rule_coords\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=new Array(2),a=new Array(2),l=[s,a];return l[t][0]=Math.max(r,i.min),l[t][1]=Math.min(o,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"tick_coords\",{get:function(){for(var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=this.model.ticker.get_ticks(r,o,i,this.loc,{}),a=s.major,l=s.minor,h=[[],[]],u=[[],[]],c=[i.min,i.max],_=c[0],p=c[1],d=0;dp||(h[t].push(a[d]),h[e].push(this.loc));for(var d=0;dp||(u[t].push(l[d]),u[e].push(this.loc));return{major:h,minor:u}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"loc\",{get:function(){var t=this.model.fixed_location;if(null!=t){if(a.isNumber(t))return t;var e=this.ranges,i=e[1];if(i instanceof l.FactorRange)return i.synthetic(t);throw new Error(\"unexpected\")}var n=this.ranges,r=n[1];switch(this.panel.side){case\"left\":case\"below\":return r.start;case\"right\":case\"above\":return r.end}},enumerable:!0,configurable:!0}),e.prototype.serializable_state=function(){return n.__assign({},t.prototype.serializable_state.call(this),{bbox:this.layout.bbox.rect})},e}(r.GuideRendererView);i.AxisView=_;var p=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Axis\",this.prototype.default_view=_,this.mixins([\"line:axis_\",\"line:major_tick_\",\"line:minor_tick_\",\"text:major_label_\",\"text:axis_label_\"]),this.define({bounds:[o.Any,\"auto\"],ticker:[o.Instance],formatter:[o.Instance],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],axis_label:[o.String,\"\"],axis_label_standoff:[o.Int,5],major_label_standoff:[o.Int,5],major_label_orientation:[o.Any,\"horizontal\"],major_label_overrides:[o.Any,{}],major_tick_in:[o.Number,2],major_tick_out:[o.Number,6],minor_tick_in:[o.Number,0],minor_tick_out:[o.Number,4],fixed_location:[o.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"8pt\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"10pt\",axis_label_text_font_style:\"italic\"})},e}(r.GuideRenderer);i.Axis=p,p.initClass()},function(t,e,i){var n=t(408),r=t(82),o=t(226),s=t(108),a=t(18),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){this._draw_group_separators(t,e,i)},e.prototype._draw_group_separators=function(t,e,i){var n,r=this.ranges[0],o=this.computed_bounds,s=o[0],a=o[1];if(r.tops&&!(r.tops.length<2)&&this.visuals.separator_line.doit){for(var l=this.dimension,h=(l+1)%2,u=[[],[]],c=0,_=0;_s&&v1&&(l.tops[e]=a.tops),l.tops[i]=a.tops.map(function(e){return t.loc}),l},enumerable:!0,configurable:!0}),e}(r.AxisView);i.CategoricalAxisView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"CategoricalAxis\",this.prototype.default_view=l,this.mixins([\"line:separator_\",\"text:group_\",\"text:subgroup_\"]),this.define({group_label_orientation:[a.Any,\"parallel\"],subgroup_label_orientation:[a.Any,\"parallel\"]}),this.override({ticker:function(){return new o.CategoricalTicker},formatter:function(){return new s.CategoricalTickFormatter},separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"8pt\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"8pt\"})},e}(r.Axis);i.CategoricalAxis=h,h.initClass()},function(t,e,i){var n=t(408),r=t(82),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"ContinuousAxis\"},e}(r.Axis);i.ContinuousAxis=o,o.initClass()},function(t,e,i){var n=t(408),r=t(87),o=t(109),s=t(229),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.LinearAxisView);i.DatetimeAxisView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"DatetimeAxis\",this.prototype.default_view=a,this.override({ticker:function(){return new s.DatetimeTicker},formatter:function(){return new o.DatetimeTickFormatter}})},e}(r.LinearAxis);i.DatetimeAxis=l,l.initClass()},function(t,e,i){var n=t(82);i.Axis=n.Axis;var r=t(83);i.CategoricalAxis=r.CategoricalAxis;var o=t(84);i.ContinuousAxis=o.ContinuousAxis;var s=t(85);i.DatetimeAxis=s.DatetimeAxis;var a=t(87);i.LinearAxis=a.LinearAxis;var l=t(88);i.LogAxis=l.LogAxis;var h=t(89);i.MercatorAxis=h.MercatorAxis},function(t,e,i){var n=t(408),r=t(82),o=t(84),s=t(107),a=t(225),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LinearAxisView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"LinearAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.BasicTicker},formatter:function(){return new s.BasicTickFormatter}})},e}(o.ContinuousAxis);i.LinearAxis=h,h.initClass()},function(t,e,i){var n=t(408),r=t(82),o=t(84),s=t(112),a=t(233),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LogAxisView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"LogAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.LogTicker},formatter:function(){return new s.LogTickFormatter}})},e}(o.ContinuousAxis);i.LogAxis=h,h.initClass()},function(t,e,i){var n=t(408),r=t(82),o=t(87),s=t(113),a=t(234),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.MercatorAxisView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"MercatorAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.MercatorTicker({dimension:\"lat\"})},formatter:function(){return new s.MercatorTickFormatter({dimension:\"lat\"})}})},e}(o.LinearAxis);i.MercatorAxis=h,h.initClass()},function(t,e,i){var n=t(408),r=t(62),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Callback\"},e}(r.Model);i.Callback=o,o.initClass()},function(t,e,i){var n=t(408),r=t(90),o=t(18),s=t(35),a=t(40),l=function(e){function i(t){return e.call(this,t)||this}return n.__extends(i,e),i.initClass=function(){this.prototype.type=\"CustomJS\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(i.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"cb_obj\",\"cb_data\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),i.prototype.execute=function(e,i){return void 0===i&&(i={}),this.func.apply(e,this.values.concat(e,i,t,{}))},i}(r.Callback);i.CustomJS=l,l.initClass()},function(t,e,i){var n=t(91);i.CustomJS=n.CustomJS;var r=t(93);i.OpenURL=r.OpenURL},function(t,e,i){var n=t(408),r=t(90),o=t(42),s=t(18),a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"OpenURL\",this.define({url:[s.String,\"http://\"],same_tab:[s.Boolean,!1]})},e.prototype.execute=function(t,e){for(var i=this,n=e.source,r=function(t){var e=o.replace_placeholders(i.url,n,t);i.same_tab?window.location.href=e:window.open(e)},s=n.selected,a=0,l=s.indices;a0?a.every(e,l.isBoolean)?(e.length!==t.get_length()&&s.logger.warn(\"BooleanFilter \"+this.id+\": length of booleans doesn't match data source\"),a.range(0,e.length).filter(function(t){return!0===e[t]})):(s.logger.warn(\"BooleanFilter \"+this.id+\": booleans should be array of booleans, defaulting to no filtering\"),null):(null!=e&&0==e.length?s.logger.warn(\"BooleanFilter \"+this.id+\": booleans is empty, defaulting to no filtering\"):s.logger.warn(\"BooleanFilter \"+this.id+\": booleans was not set, defaulting to no filtering\"),null)},e}(r.Filter);i.BooleanFilter=h,h.initClass()},function(t,e,i){var n=t(408),r=t(103),o=t(18),s=t(35),a=t(40),l=function(e){function i(t){return e.call(this,t)||this}return n.__extends(i,e),i.initClass=function(){this.prototype.type=\"CustomJSFilter\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(i.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"source\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),i.prototype.compute_indices=function(i){return this.filter=this.func.apply(this,this.values.concat([i,t,{}])),e.prototype.compute_indices.call(this,i)},i}(r.Filter);i.CustomJSFilter=l,l.initClass()},function(t,e,i){var n=t(408),r=t(62),o=t(18),s=t(46),a=t(24),l=t(17),h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Filter\",this.define({filter:[o.Array,null]})},e.prototype.compute_indices=function(t){var e=this.filter;return null!=e&&e.length>=0?s.isArrayOf(e,s.isBoolean)?a.range(0,e.length).filter(function(t){return!0===e[t]}):s.isArrayOf(e,s.isInteger)?e:(l.logger.warn(\"Filter \"+this.id+\": filter should either be array of only booleans or only integers, defaulting to no filtering\"),null):(l.logger.warn(\"Filter \"+this.id+\": filter was not set to be an array, defaulting to no filtering\"),null)},e}(r.Model);i.Filter=h,h.initClass()},function(t,e,i){var n=t(408),r=t(103),o=t(18),s=t(17),a=t(24),l=function(t){function e(e){var i=t.call(this,e)||this;return i.indices=null,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"GroupFilter\",this.define({column_name:[o.String],group:[o.String]})},e.prototype.compute_indices=function(t){var e=this,i=t.get_column(this.column_name);return null==i?(s.logger.warn(\"group filter: groupby column not found in data source\"),null):(this.indices=a.range(0,t.get_length()||0).filter(function(t){return i[t]===e.group}),0===this.indices.length&&s.logger.warn(\"group filter: group '\"+this.group+\"' did not match any values in column '\"+this.column_name+\"'\"),this.indices)},e}(r.Filter);i.GroupFilter=l,l.initClass()},function(t,e,i){var n=t(101);i.BooleanFilter=n.BooleanFilter;var r=t(102);i.CustomJSFilter=r.CustomJSFilter;var o=t(103);i.Filter=o.Filter;var s=t(104);i.GroupFilter=s.GroupFilter;var a=t(106);i.IndexFilter=a.IndexFilter},function(t,e,i){var n=t(408),r=t(103),o=t(18),s=t(17),a=t(46),l=t(24),h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"IndexFilter\",this.define({indices:[o.Array,null]})},e.prototype.compute_indices=function(t){return null!=this.indices&&this.indices.length>=0?l.every(this.indices,a.isInteger)?this.indices:(s.logger.warn(\"IndexFilter \"+this.id+\": indices should be array of integers, defaulting to no filtering\"),null):(s.logger.warn(\"IndexFilter \"+this.id+\": indices was not set, defaulting to no filtering\"),null)},e}(r.Filter);i.IndexFilter=h,h.initClass()},function(t,e,i){var n=t(408),r=t(116),o=t(18),s=t(46),a=function(t){function e(e){var i=t.call(this,e)||this;return i.last_precision=3,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"BasicTickFormatter\",this.define({precision:[o.Any,\"auto\"],use_scientific:[o.Boolean,!0],power_limit_high:[o.Number,5],power_limit_low:[o.Number,-3]})},Object.defineProperty(e.prototype,\"scientific_limit_low\",{get:function(){return Math.pow(10,this.power_limit_low)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"scientific_limit_high\",{get:function(){return Math.pow(10,this.power_limit_high)},enumerable:!0,configurable:!0}),e.prototype.doFormat=function(t,e){if(0==t.length)return[];var i=0;t.length>=2&&(i=Math.abs(t[1]-t[0])/1e4);var n=!1;if(this.use_scientific)for(var r=0,o=t;ri&&(l>=this.scientific_limit_high||l<=this.scientific_limit_low)){n=!0;break}}var h=new Array(t.length),u=this.precision;if(null==u||s.isNumber(u))if(n)for(var c=0,_=t.length;c<_;c++)h[c]=t[c].toExponential(u||void 0);else for(var c=0,_=t.length;c<_;c++)h[c]=t[c].toFixed(u||void 0).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");else for(var p=this.last_precision,d=this.last_precision<=15;d?p<=15:p>=15;d?p++:p--){var f=!0;if(n){for(var c=0,_=t.length;c<_;c++)if(h[c]=t[c].toExponential(p),c>0&&h[c]===h[c-1]){f=!1;break}if(f)break}else{for(var c=0,_=t.length;c<_;c++)if(h[c]=t[c].toFixed(p).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),c>0&&h[c]==h[c-1]){f=!1;break}if(f)break}if(f){this.last_precision=p;break}}return h},e}(r.TickFormatter);i.BasicTickFormatter=a,a.initClass()},function(t,e,i){var n=t(408),r=t(116),o=t(24),s=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"CategoricalTickFormatter\"},e.prototype.doFormat=function(t,e){return o.copy(t)},e}(r.TickFormatter);i.CategoricalTickFormatter=s,s.initClass()},function(t,e,i){var n=t(408),r=t(407),o=t(116),s=t(17),a=t(18),l=t(42),h=t(24),u=t(46);function c(t){return r(t,\"%Y %m %d %H %M %S\").split(/\\s+/).map(function(t){return parseInt(t,10)})}function _(t,e){if(u.isFunction(e))return e(t);var i=l.sprintf(\"$1%06d\",function(t){return Math.round(t/1e3%1*1e6)}(t));return-1==(e=e.replace(/((^|[^%])(%%)*)%f/,i)).indexOf(\"%\")?e:r(t,e)}var p=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"],d=function(t){function e(e){var i=t.call(this,e)||this;return i.strip_leading_zeros=!0,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"DatetimeTickFormatter\",this.define({microseconds:[a.Array,[\"%fus\"]],milliseconds:[a.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[a.Array,[\"%Ss\"]],minsec:[a.Array,[\":%M:%S\"]],minutes:[a.Array,[\":%M\",\"%Mm\"]],hourmin:[a.Array,[\"%H:%M\"]],hours:[a.Array,[\"%Hh\",\"%H:%M\"]],days:[a.Array,[\"%m/%d\",\"%a%d\"]],months:[a.Array,[\"%m/%Y\",\"%b %Y\"]],years:[a.Array,[\"%Y\"]]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this._update_width_formats()},e.prototype._update_width_formats=function(){var t=+r(new Date),e=function(e){var i=e.map(function(e){return _(t,e).length}),n=h.sort_by(h.zip(i,e),function(t){var e=t[0];return e});return h.unzip(n)};this._width_formats={microseconds:e(this.microseconds),milliseconds:e(this.milliseconds),seconds:e(this.seconds),minsec:e(this.minsec),minutes:e(this.minutes),hourmin:e(this.hourmin),hours:e(this.hours),days:e(this.days),months:e(this.months),years:e(this.years)}},e.prototype._get_resolution_str=function(t,e){var i=1.1*t;switch(!1){case!(i<.001):return\"microseconds\";case!(i<1):return\"milliseconds\";case!(i<60):return e>=60?\"minsec\":\"seconds\";case!(i<3600):return e>=3600?\"hourmin\":\"minutes\";case!(i<86400):return\"hours\";case!(i<2678400):return\"days\";case!(i<31536e3):return\"months\";default:return\"years\"}},e.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=Math.abs(t[t.length-1]-t[0])/1e3,n=i/(t.length-1),r=this._get_resolution_str(n,i),o=this._width_formats[r],a=o[1][0],l=[],h=p.indexOf(r),u={},d=0,f=p;d0&&r[o]==r[o-1]){n=!0;break}return n?this.basic_formatter.doFormat(t,e):r},e}(r.TickFormatter);i.LogTickFormatter=l,l.initClass()},function(t,e,i){var n=t(408),r=t(107),o=t(18),s=t(36),a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"MercatorTickFormatter\",this.define({dimension:[o.LatLon]})},e.prototype.doFormat=function(e,i){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==e.length)return[];var n=e.length,r=new Array(n);if(\"lon\"==this.dimension)for(var o=0;o=k&&m.push([x,S])}for(var A=this.model.properties.direction.value(),M=[],E=0,z=m;E=w&&v.push([b,C])}return o.create_hit_test_result_from_hits(v)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=.5*Math.min(Math.abs(o-n),Math.abs(s-r)),c=new Array(a);c[i]=.4*u;var _=new Array(a);_[i]=.8*u,this._render(t,[i],{sx:l,sy:h,sinner_radius:c,souter_radius:_})},e}(r.XYGlyphView);i.AnnulusView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Annulus\",this.prototype.default_view=l,this.mixins([\"line\",\"fill\"]),this.define({inner_radius:[s.DistanceSpec],outer_radius:[s.DistanceSpec]})},e}(r.XYGlyph);i.Annulus=h,h.initClass()},function(t,e,i){var n=t(408),r=t(153),o=t(149),s=t(18),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle;if(this.visuals.line.doit)for(var l=this.model.properties.direction.value(),h=0,u=e;h1?(_[i]=c,p[i]=c/u):(_[i]=c*u,p[i]=c),this._render(t,[i],{sx:l,sy:h,sw:_,sh:p,_angle:[0]})},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.EllipseOvalView=s;var a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"EllipseOval\"},e}(r.CenterRotatable);i.EllipseOval=a,a.initClass()},function(t,e,i){var n=t(408),r=t(9),o=t(18),s=t(27),a=t(36),l=t(51),h=t(50),u=t(62),c=t(17),_=t(25),p=t(35),d=t(46),f=t(136),v=t(192),m=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t._nohit_warned={},t}return n.__extends(i,e),Object.defineProperty(i.prototype,\"renderer\",{get:function(){return this.parent},enumerable:!0,configurable:!0}),i.prototype.initialize=function(){e.prototype.initialize.call(this),this._nohit_warned={},this.visuals=new l.Visuals(this.model);var i=this.renderer.plot_view.gl;if(null!=i){var n=null;try{n=t(474)}catch(t){if(\"MODULE_NOT_FOUND\"!==t.code)throw t;c.logger.warn(\"WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.\")}if(null!=n){var r=n[this.model.type+\"GLGlyph\"];null!=r&&(this.glglyph=new r(i.ctx,this))}}},i.prototype.set_visuals=function(t){this.visuals.warm_cache(t),null!=this.glglyph&&this.glglyph.set_visuals_changed()},i.prototype.render=function(t,e,i){t.beginPath(),null!=this.glglyph&&this.glglyph.render(t,e,i)||this._render(t,e,i)},i.prototype.has_finished=function(){return!0},i.prototype.notify_finished=function(){this.renderer.notify_finished()},i.prototype._bounds=function(t){return t},i.prototype.bounds=function(){return this._bounds(this.index.bbox)},i.prototype.log_bounds=function(){for(var t=s.empty(),e=this.index.search(s.positive_x()),i=0,n=e;it.maxX&&(t.maxX=r.maxX)}for(var o=this.index.search(s.positive_y()),a=0,l=o;at.maxY&&(t.maxY=h.maxY)}return this._bounds(t)},i.prototype.get_anchor_point=function(t,e,i){var n=i[0],r=i[1];switch(t){case\"center\":return{x:this.scenterx(e,n,r),y:this.scentery(e,n,r)};default:return null}},i.prototype.sdist=function(t,e,i,n,r){var o,s;void 0===n&&(n=\"edge\"),void 0===r&&(r=!1);var a=e.length;if(\"center\"==n){var l=_.map(i,function(t){return t/2});o=new Float64Array(a);for(var h=0;h=0;o--)t.lineTo(i[o],n[o]);t.closePath(),r.call(t)},e.prototype._render=function(t,e,i){var n=this,r=i.sx1,o=i.sx2,s=i.sy;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,r,o,s,t.fill)),this.visuals.hatch.doit2(t,0,function(){return n._inner(t,r,o,s,t.fill)},function(){return n.renderer.request_render()})},e.prototype.scenterx=function(t){return(this.sx1[t]+this.sx2[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._map_data=function(){this.sx1=this.renderer.xscale.v_compute(this._x1),this.sx2=this.renderer.xscale.v_compute(this._x2),this.sy=this.renderer.yscale.v_compute(this._y)},e}(r.AreaView);i.HAreaView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"HArea\",this.prototype.default_view=a,this.define({x1:[s.CoordinateSpec],x2:[s.CoordinateSpec],y:[s.CoordinateSpec]})},e}(r.Area);i.HArea=l,l.initClass()},function(t,e,i){var n=t(408),r=t(122),o=t(18),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._index_data=function(){return this._index_box(this._y.length)},e.prototype._lrtb=function(t){var e=Math.min(this._left[t],this._right[t]),i=Math.max(this._left[t],this._right[t]),n=this._y[t]+.5*this._height[t],r=this._y[t]-.5*this._height[t];return[e,i,n,r]},e.prototype._map_data=function(){this.sy=this.renderer.yscale.v_compute(this._y),this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"),this.sleft=this.renderer.xscale.v_compute(this._left),this.sright=this.renderer.xscale.v_compute(this._right);var t=this.sy.length;this.stop=new Float64Array(t),this.sbottom=new Float64Array(t);for(var e=0;e0){n=this._image[e];var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e];n=a.concat(o),this._height[e]=o.length,this._width[e]=o[0].length}var s=t.v_compute(n);this._set_image_data_from_buffer(e,s)}},e.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h0){n=this._image[e].buffer;var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var s=this._image[e],a=o.concat(s);n=new ArrayBuffer(4*a.length);for(var l=new Uint32Array(n),h=0,u=a.length;h0?(o.logger.trace(\"ImageURL failed to load \"+a+\" image, retrying in \"+n+\" ms\"),setTimeout(function(){return l.src=a},n)):o.logger.warn(\"ImageURL unable to load \"+a+\" image after \"+i+\" retries\"),t.retries[e]-=1},l.onload=function(){t.image[e]=l,t.renderer.request_render()},l.src=a},s=this,l=0,h=this._url.length;l1&&(t.stroke(),o=!1)}o?t.lineTo(n[h],r[h]):(t.beginPath(),t.moveTo(n[h],r[h]),o=!0),s=h}o&&t.stroke()},e.prototype._hit_point=function(t){for(var e=this,i=s.create_empty_hit_test_result(),n={x:t.sx,y:t.sy},r=9999,o=Math.max(2,this.visuals.line.line_width.value()/2),a=0,l=this.sx.length-1;a0&&(l[h]=c)}return a.indices=s.keys(l).map(function(t){return parseInt(t,10)}),a.multiline_indices=l,a},e.prototype.get_interpolation_hit=function(t,e,i){var n=[this._xs[t][e],this._ys[t][e],this._xs[t][e+1],this._ys[t][e+1]],r=n[0],o=n[1],s=n[2],a=n[3];return u.line_interpolation(this.renderer,i,r,o,s,a)},e.prototype.draw_legend_for_index=function(t,e,i){u.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(h.GlyphView);i.MultiLineView=c;var _=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"MultiLine\",this.prototype.default_view=c,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\"])},e}(h.Glyph);i.MultiLine=_,_.initClass()},function(t,e,i){var n=t(408),r=t(39),o=t(127),s=t(149),a=t(24),l=t(25),h=t(9),u=t(46),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e1)for(var s=1,l=this._xs[e][n].length;s1){for(var m=!1,g=1;g0;){var o=a.find_last_index(r,function(t){return h.isStrictNaN(t)}),s=void 0;o>=0?s=r.splice(o):(s=r,r=[]);var l=s.filter(function(t){return!h.isStrictNaN(t)});e[i].push(l)}}return e},e.prototype._index_data=function(){for(var t=this._build_discontinuous_object(this._xs),e=this._build_discontinuous_object(this._ys),i=[],n=0,o=this._xs.length;n=0,x=i-this.sy1[a]<=this.sh[a]&&i-this.sy1[a]>=0;x&&w&&m.push(a)}var A=s.create_empty_hit_test_result();return A.indices=m,A},e.prototype._map_dist_corner_for_data_side_length=function(t,e,i){for(var n=t.length,r=new Float64Array(n),o=new Float64Array(n),s=0;s1&&(t.stroke(),c=!1)}c?(t.lineTo(m,y),t.lineTo(g,b)):(t.beginPath(),t.moveTo(h[v],u[v]),c=!0),_=v}t.lineTo(h[p-1],u[p-1]),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.StepView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Step\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({mode:[s.StepMode,\"before\"]})},e}(r.XYGlyph);i.Step=l,l.initClass()},function(t,e,i){var n=t(408),r=t(153),o=t(9),s=t(18),a=t(43),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._rotate_point=function(t,e,i,n,r){var o=(t-i)*Math.cos(r)-(e-n)*Math.sin(r)+i,s=(t-i)*Math.sin(r)+(e-n)*Math.cos(r)+n;return[o,s]},e.prototype._text_bounds=function(t,e,i,n){var r=[t,t+i,t+i,t,t],o=[e,e,e-n,e-n,e];return[r,o]},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i._x_offset,s=i._y_offset,l=i._angle,h=i._text;this._sys=[],this._sxs=[];for(var u=0,c=e;u=0;o--)t.lineTo(e[o],n[o]);t.closePath(),r.call(t)},e.prototype._render=function(t,e,i){var n=this,r=i.sx,o=i.sy1,s=i.sy2;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,r,o,s,t.fill)),this.visuals.hatch.doit2(t,0,function(){return n._inner(t,r,o,s,t.fill)},function(){return n.renderer.request_render()})},e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.sy1[t]+this.sy2[t])/2},e.prototype._map_data=function(){this.sx=this.renderer.xscale.v_compute(this._x),this.sy1=this.renderer.yscale.v_compute(this._y1),this.sy2=this.renderer.yscale.v_compute(this._y2)},e}(r.AreaView);i.VAreaView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"VArea\",this.prototype.default_view=a,this.define({x:[s.CoordinateSpec],y1:[s.CoordinateSpec],y2:[s.CoordinateSpec]})},e}(r.Area);i.VArea=l,l.initClass()},function(t,e,i){var n=t(408),r=t(122),o=t(18),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._x.length)},e.prototype._lrtb=function(t){var e=this._x[t]-this._width[t]/2,i=this._x[t]+this._width[t]/2,n=Math.max(this._top[t],this._bottom[t]),r=Math.min(this._top[t],this._bottom[t]);return[e,i,n,r]},e.prototype._map_data=function(){this.sx=this.renderer.xscale.v_compute(this._x),this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"),this.stop=this.renderer.yscale.v_compute(this._top),this.sbottom=this.renderer.yscale.v_compute(this._bottom);var t=this.sx.length;this.sleft=new Float64Array(t),this.sright=new Float64Array(t);for(var e=0;eo[1]&&(i=o[1]);else{e=o[0],i=o[1];for(var a=0,l=this.plot_view.axis_views;a0||y>0)return{width:g>0?g:void 0,height:y>0?y:void 0}}return{}})},e.prototype.serializable_state=function(){return n.__assign({},t.prototype.serializable_state.call(this),{bbox:this.layout.bbox.rect,children:this.child_views.map(function(t){return t.serializable_state()})})},e}(u.DOMView);i.LayoutDOMView=c;var _=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"LayoutDOM\",this.define({width:[l.Number,null],height:[l.Number,null],min_width:[l.Number,null],min_height:[l.Number,null],max_width:[l.Number,null],max_height:[l.Number,null],margin:[l.Any,[0,0,0,0]],width_policy:[l.Any,\"auto\"],height_policy:[l.Any,\"auto\"],aspect_ratio:[l.Any,null],sizing_mode:[l.SizingMode,null],visible:[l.Boolean,!0],disabled:[l.Boolean,!1],align:[l.Any,\"start\"],background:[l.Color,null],css_classes:[l.Array,[]]})},e}(r.Model);i.LayoutDOM=_,_.initClass()},function(t,e,i){var n=t(408),r=t(161),o=t(11),s=t(18),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._update_layout=function(){var t=this.child_views.map(function(t){return t.layout});this.layout=new o.Row(t),this.layout.cols=this.model.cols,this.layout.spacing=[0,this.model.spacing],this.layout.set_sizing(this.box_sizing())},e}(r.BoxView);i.RowView=a;var l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Row\",this.prototype.default_view=a,this.define({cols:[s.Any,\"auto\"]})},e}(r.Box);i.Row=l,l.initClass()},function(t,e,i){var n=t(408),r=t(166),o=t(13),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),Object.defineProperty(e.prototype,\"child_models\",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype._update_layout=function(){this.layout=new o.LayoutItem,this.layout.set_sizing(this.box_sizing())},e}(r.LayoutDOMView);i.SpacerView=s;var a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Spacer\",this.prototype.default_view=s},e}(r.LayoutDOM);i.Spacer=a,a.initClass()},function(t,e,i){var n=t(408),r=t(13),o=t(5),s=t(24),a=t(18),l=t(166),h=t(62),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.properties.tabs.change,function(){return e.rebuild()}),this.connect(this.model.properties.active.change,function(){return e.on_active_change()})},Object.defineProperty(e.prototype,\"child_models\",{get:function(){return this.model.tabs.map(function(t){return t.child})},enumerable:!0,configurable:!0}),e.prototype._update_layout=function(){var t=this.model.tabs_location,e=\"above\"==t||\"below\"==t,i=this.scroll_el,a=this.headers_el;this.header=new(function(t){function r(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(r,t),r.prototype._measure=function(n){var r=o.size(i),l=o.children(a).slice(0,3).map(function(t){return o.size(t)}),h=t.prototype._measure.call(this,n),u=h.width,c=h.height;if(e){var _=r.width+s.sum(l.map(function(t){return t.width}));return{width:n.width!=1/0?n.width:_,height:c}}var p=r.height+s.sum(l.map(function(t){return t.height}));return{width:u,height:n.height!=1/0?n.height:p}},r}(r.ContentBox))(this.header_el),e?this.header.set_sizing({width_policy:\"fit\",height_policy:\"fixed\"}):this.header.set_sizing({width_policy:\"fixed\",height_policy:\"fit\"});var l=1,h=1;switch(t){case\"above\":l-=1;break;case\"below\":l+=1;break;case\"left\":h-=1;break;case\"right\":h+=1}var u={layout:this.header,row:l,col:h},c=this.child_views.map(function(t){return{layout:t.layout,row:1,col:1}});this.layout=new r.Grid([u].concat(c)),this.layout.set_sizing(this.box_sizing())},e.prototype.update_position=function(){t.prototype.update_position.call(this),this.header_el.style.position=\"absolute\",o.position(this.header_el,this.header.bbox);var e=this.model.tabs_location,i=\"above\"==e||\"below\"==e,n=o.size(this.scroll_el),r=o.scroll_size(this.headers_el);if(i){var s=this.header.bbox.width;r.width>s?(this.wrapper_el.style.maxWidth=s-n.width+\"px\",o.display(this.scroll_el)):(this.wrapper_el.style.maxWidth=\"\",o.undisplay(this.scroll_el))}else{var a=this.header.bbox.height;r.height>a?(this.wrapper_el.style.maxHeight=a-n.height+\"px\",o.display(this.scroll_el)):(this.wrapper_el.style.maxHeight=\"\",o.undisplay(this.scroll_el))}for(var l=this.child_views,h=0,u=l;hi-1&&(e.model.active=i-1)}}),r.appendChild(a)}return r});this.headers_el=o.div({class:[\"bk-headers\"]},l),this.wrapper_el=o.div({class:\"bk-headers-wrapper\"},this.headers_el);var h=o.div({class:[\"bk-btn\",\"bk-btn-default\"],disabled:\"\"},o.div({class:[\"bk-caret\",\"bk-left\"]})),u=o.div({class:[\"bk-btn\",\"bk-btn-default\"]},o.div({class:[\"bk-caret\",\"bk-right\"]})),c=0,_=function(t){return function(){var i=e.model.tabs.length;0==(c=\"left\"==t?Math.max(c-1,0):Math.min(c+1,i-1))?h.setAttribute(\"disabled\",\"\"):h.removeAttribute(\"disabled\"),c==i-1?u.setAttribute(\"disabled\",\"\"):u.removeAttribute(\"disabled\");var n=o.children(e.headers_el).slice(0,c).map(function(t){return t.getBoundingClientRect()});if(r){var a=-s.sum(n.map(function(t){return t.width}));e.headers_el.style.left=a+\"px\"}else{var l=-s.sum(n.map(function(t){return t.height}));e.headers_el.style.top=l+\"px\"}}};h.addEventListener(\"click\",_(\"left\")),u.addEventListener(\"click\",_(\"right\")),this.scroll_el=o.div({class:\"bk-btn-group\"},h,u),this.header_el=o.div({class:[\"bk-tabs-header\",a]},this.scroll_el,this.wrapper_el),this.el.appendChild(this.header_el)},e.prototype.change_active=function(t){t!=this.model.active&&(this.model.active=t,null!=this.model.callback&&this.model.callback.execute(this.model))},e.prototype.on_active_change=function(){for(var t=this.model.active,e=o.children(this.headers_el),i=0,n=e;i=i.length?h:i[p],s[u]=d},c=0,_=t.length;c<_;c++)u(c,_)}},function(t,e,i){var n=t(408),r=t(172),o=t(180),s=t(18),a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"CategoricalMarkerMapper\",this.define({factors:[s.Array],markers:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.MarkerType,\"circle\"]})},e.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.markers,e,this.start,this.end,this.default_value),e},e}(o.Mapper);i.CategoricalMarkerMapper=a,a.initClass()},function(t,e,i){var n=t(408),r=t(172),o=t(180),s=t(18),a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"CategoricalPatternMapper\",this.define({factors:[s.Array],patterns:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.HatchPatternType,\" \"]})},e.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.patterns,e,this.start,this.end,this.default_value),e},e}(o.Mapper);i.CategoricalPatternMapper=a,a.initClass()},function(t,e,i){var n=t(408),r=t(180),o=t(18),s=t(46),a=t(30),l=t(31);function h(t){return s.isNumber(t)?t:(\"#\"!=t[0]&&(t=a.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16))}function u(t){for(var e=new Uint32Array(t.length),i=0,n=t.length;iu?null!=a?a:i[u]:i[m]}else e[p]=i[u]}},e}(r.ContinuousColorMapper);i.LinearColorMapper=s,s.initClass()},function(t,e,i){var n=t(408),r=t(176),o=t(25),s=null!=Math.log1p?Math.log1p:function(t){return Math.log(1+t)},a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"LogColorMapper\"},e.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,a=n.low_color,l=n.high_color,h=i.length,u=null!=this.low?this.low:o.min(t),c=null!=this.high?this.high:o.max(t),_=h/(s(c)-s(u)),p=i.length-1,d=0,f=t.length;dc)e[d]=null!=l?l:i[p];else if(v!=c)if(vp&&(g=p),e[d]=i[g]}else e[d]=i[p]}},e}(r.ContinuousColorMapper);i.LogColorMapper=a,a.initClass()},function(t,e,i){var n=t(408),r=t(297),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Mapper\"},e.prototype.compute=function(t){throw new Error(\"mapping single values is not supported\")},e}(r.Transform);i.Mapper=o,o.initClass()},function(t,e,i){var n=t(408),r=t(183),o=Math.sqrt(3);function s(t,e){t.moveTo(-e,e),t.lineTo(e,-e),t.moveTo(-e,-e),t.lineTo(e,e)}function a(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function l(t,e){t.moveTo(0,e),t.lineTo(e/1.5,0),t.lineTo(0,-e),t.lineTo(-e/1.5,0),t.closePath()}function h(t,e){var i=e*o,n=i/3;t.moveTo(-e,n),t.lineTo(e,n),t.lineTo(0,n-i),t.closePath()}function u(t,e,i,n,r){var o=.65*i;a(t,i),s(t,o),n.doit&&(n.set_vectorize(t,e),t.stroke())}function c(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function _(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),s(t,i),t.stroke())}function p(t,e,i,n,r){a(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function d(t,e,i,n,r){l(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function f(t,e,i,n,r){l(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function v(t,e,i,n,r){!function(t,e){var i=e/2,n=o*i;t.moveTo(e,0),t.lineTo(i,-n),t.lineTo(-i,-n),t.lineTo(-e,0),t.lineTo(-i,n),t.lineTo(i,n),t.closePath()}(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function m(t,e,i,n,r){t.rotate(Math.PI),h(t,i),t.rotate(-Math.PI),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function g(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function y(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function b(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),s(t,i),t.stroke())}function x(t,e,i,n,r){h(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function w(t,e,i,n,r){!function(t,e){t.moveTo(-e,0),t.lineTo(e,0)}(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function k(t,e,i,n,r){s(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function T(t,e){var i=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(i,t),i.initClass=function(){this.prototype._render_one=e},i}(r.MarkerView);i.initClass();var o=function(e){function r(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(r,e),r.initClass=function(){this.prototype.default_view=i,this.prototype.type=t},r}(r.Marker);return o.initClass(),o}i.Asterisk=T(\"Asterisk\",u),i.CircleCross=T(\"CircleCross\",c),i.CircleX=T(\"CircleX\",_),i.Cross=T(\"Cross\",p),i.Dash=T(\"Dash\",w),i.Diamond=T(\"Diamond\",d),i.DiamondCross=T(\"DiamondCross\",f),i.Hex=T(\"Hex\",v),i.InvertedTriangle=T(\"InvertedTriangle\",m),i.Square=T(\"Square\",g),i.SquareCross=T(\"SquareCross\",y),i.SquareX=T(\"SquareX\",b),i.Triangle=T(\"Triangle\",x),i.X=T(\"X\",k),i.marker_funcs={asterisk:u,circle:function(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())},circle_cross:c,circle_x:_,cross:p,diamond:d,diamond_cross:f,hex:v,inverted_triangle:m,square:g,square_cross:y,square_x:b,triangle:x,dash:w,x:k}},function(t,e,i){var n=t(408);n.__exportStar(t(181),i);var r=t(183);i.Marker=r.Marker;var o=t(184);i.Scatter=o.Scatter},function(t,e,i){var n=t(408),r=t(153),o=t(9),s=t(18),a=t(24),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=0,l=e;a=2){this.map.setZoom(r);var o=this._get_projected_bounds(),s=o[0],a=o[1];a-s<0&&this.map.setZoom(n)}this.unpause()}this._set_bokeh_ranges()},e.prototype._build_map=function(){var t=this,e=google.maps;this.map_types={satellite:e.MapTypeId.SATELLITE,terrain:e.MapTypeId.TERRAIN,roadmap:e.MapTypeId.ROADMAP,hybrid:e.MapTypeId.HYBRID};var i=this.model.map_options,n={center:new e.LatLng(i.lat,i.lng),zoom:i.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[i.map_type],scaleControl:i.scale_control,tilt:i.tilt};null!=i.styles&&(n.styles=JSON.parse(i.styles)),this.map=new e.Map(this.canvas_view.map_el,n),e.event.addListener(this.map,\"idle\",function(){return t._set_bokeh_ranges()}),e.event.addListener(this.map,\"bounds_changed\",function(){return t._set_bokeh_ranges()}),e.event.addListenerOnce(this.map,\"tilesloaded\",function(){return t._render_finished()}),this.connect(this.model.properties.map_options.change,function(){return t._update_options()}),this.connect(this.model.map_options.properties.styles.change,function(){return t._update_styles()}),this.connect(this.model.map_options.properties.lat.change,function(){return t._update_center(\"lat\")}),this.connect(this.model.map_options.properties.lng.change,function(){return t._update_center(\"lng\")}),this.connect(this.model.map_options.properties.zoom.change,function(){return t._update_zoom()}),this.connect(this.model.map_options.properties.map_type.change,function(){return t._update_map_type()}),this.connect(this.model.map_options.properties.scale_control.change,function(){return t._update_scale_control()}),this.connect(this.model.map_options.properties.tilt.change,function(){return t._update_tilt()})},e.prototype._render_finished=function(){this._tiles_loaded=!0,this.notify_finished()},e.prototype.has_finished=function(){return t.prototype.has_finished.call(this)&&!0===this._tiles_loaded},e.prototype._get_latlon_bounds=function(){var t=this.map.getBounds(),e=t.getNorthEast(),i=t.getSouthWest(),n=i.lng(),r=e.lng(),o=i.lat(),s=e.lat();return[n,r,o,s]},e.prototype._get_projected_bounds=function(){var t=this._get_latlon_bounds(),e=t[0],i=t[1],n=t[2],r=t[3],s=o.wgs84_mercator.forward([e,n]),a=s[0],l=s[1],h=o.wgs84_mercator.forward([i,r]),u=h[0],c=h[1];return[a,u,l,c]},e.prototype._set_bokeh_ranges=function(){var t=this._get_projected_bounds(),e=t[0],i=t[1],n=t[2],r=t[3];this.frame.x_range.setv({start:e,end:i}),this.frame.y_range.setv({start:n,end:r})},e.prototype._update_center=function(t){var e=this.map.getCenter().toJSON();e[t]=this.model.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()},e.prototype._update_map_type=function(){this.map.setOptions({mapTypeId:this.map_types[this.model.map_options.map_type]})},e.prototype._update_scale_control=function(){this.map.setOptions({scaleControl:this.model.map_options.scale_control})},e.prototype._update_tilt=function(){this.map.setOptions({tilt:this.model.map_options.tilt})},e.prototype._update_options=function(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()},e.prototype._update_styles=function(){this.map.setOptions({styles:JSON.parse(this.model.map_options.styles)})},e.prototype._update_zoom=function(){this.map.setOptions({zoom:this.model.map_options.zoom}),this._set_bokeh_ranges()},e.prototype._map_hook=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3];this.canvas_view.map_el.style.top=n+\"px\",this.canvas_view.map_el.style.left=i+\"px\",this.canvas_view.map_el.style.width=r+\"px\",this.canvas_view.map_el.style.height=o+\"px\",null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map()},e.prototype._paint_empty=function(t,e){var i=this.layout._width.value,n=this.layout._height.value,r=e[0],o=e[1],s=e[2],a=e[3];t.clearRect(0,0,i,n),t.beginPath(),t.moveTo(0,0),t.lineTo(0,n),t.lineTo(i,n),t.lineTo(i,0),t.lineTo(0,0),t.moveTo(r,o),t.lineTo(r+s,o),t.lineTo(r+s,o+a),t.lineTo(r,o+a),t.lineTo(r,o),t.closePath(),null!=this.model.border_fill_color&&(t.fillStyle=this.model.border_fill_color,t.fill())},e}(s.PlotView);i.GMapPlotView=l},function(t,e,i){var n=t(185);i.MapOptions=n.MapOptions;var r=t(185);i.GMapOptions=r.GMapOptions;var o=t(185);i.GMapPlot=o.GMapPlot;var s=t(188);i.Plot=s.Plot},function(t,e,i){var n=t(408),r=t(18),o=t(22),s=t(24),a=t(35),l=t(46),h=t(166),u=t(78),c=t(204),_=t(286),p=t(212),d=t(197),f=t(191),v=t(189);i.PlotView=v.PlotView;var m=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Plot\",this.prototype.default_view=v.PlotView,this.mixins([\"line:outline_\",\"fill:background_\",\"fill:border_\"]),this.define({toolbar:[r.Instance,function(){return new _.Toolbar}],toolbar_location:[r.Location,\"right\"],toolbar_sticky:[r.Boolean,!0],plot_width:[r.Number,600],plot_height:[r.Number,600],frame_width:[r.Number,null],frame_height:[r.Number,null],title:[r.Any,function(){return new u.Title({text:\"\"})}],title_location:[r.Location,\"above\"],above:[r.Array,[]],below:[r.Array,[]],left:[r.Array,[]],right:[r.Array,[]],center:[r.Array,[]],renderers:[r.Array,[]],x_range:[r.Instance,function(){return new f.DataRange1d}],extra_x_ranges:[r.Any,{}],y_range:[r.Instance,function(){return new f.DataRange1d}],extra_y_ranges:[r.Any,{}],x_scale:[r.Instance,function(){return new c.LinearScale}],y_scale:[r.Instance,function(){return new c.LinearScale}],lod_factor:[r.Number,10],lod_interval:[r.Number,300],lod_threshold:[r.Number,2e3],lod_timeout:[r.Number,500],hidpi:[r.Boolean,!0],output_backend:[r.OutputBackend,\"canvas\"],min_border:[r.Number,5],min_border_top:[r.Number,null],min_border_left:[r.Number,null],min_border_bottom:[r.Number,null],min_border_right:[r.Number,null],inner_width:[r.Number],inner_height:[r.Number],outer_width:[r.Number],outer_height:[r.Number],match_aspect:[r.Boolean,!1],aspect_scale:[r.Number,1],reset_policy:[r.ResetPolicy,\"standard\"]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"})},Object.defineProperty(e.prototype,\"width\",{get:function(){var t=this.getv(\"width\");return null!=t?t:this.plot_width},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){var t=this.getv(\"height\");return null!=t?t:this.plot_height},enumerable:!0,configurable:!0}),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.reset=new o.Signal0(this,\"reset\");for(var e=0,i=a.values(this.extra_x_ranges).concat(this.x_range);e=0},i.prototype.can_redo=function(){return this.state.index=h.end&&(r=!0,h.end=_,(e||i)&&(h.start=_+d)),null!=p&&p<=h.start&&(r=!0,h.start=p,(e||i)&&(h.end=p-d))):(null!=_&&_>=h.start&&(r=!0,h.start=_,(e||i)&&(h.end=_+d)),null!=p&&p<=h.end&&(r=!0,h.end=p,(e||i)&&(h.start=p-d)))}}if(!(i&&r&&n))for(var f=0,v=t;f0&&u0&&u>n&&(l=(n-h)/(u-h)),l=Math.max(0,Math.min(1,l))}return l},i.prototype.update_range=function(t,e,i,n){void 0===e&&(e=!1),void 0===i&&(i=!1),void 0===n&&(n=!0),this.pause();var r=this.frame,o=r.x_ranges,s=r.y_ranges;if(null==t){for(var a in o){var l=o[a];l.reset()}for(var h in s){var l=s[h];l.reset()}this.update_dataranges()}else{var u=[];for(var c in o){var l=o[c];u.push([l,t.xrs[c]])}for(var _ in s){var l=s[_];u.push([l,t.yrs[_]])}i&&this._update_ranges_together(u),this._update_ranges_individually(u,e,i,n)}this.unpause()},i.prototype.reset_range=function(){this.update_range(null)},i.prototype._invalidate_layout=function(){var t=this;(function(){for(var e=0,i=t.model.side_panels;e=0&&it.model.lod_timeout&&e.interactive_stop(t.model),t.request_paint()},this.model.lod_timeout):e.interactive_stop(this.model)}for(var n in this.renderer_views){var r=this.renderer_views[n];if(null==this.range_update_timestamp||r instanceof a.GlyphRendererView&&r.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}}var o=this.canvas_view.ctx,s=this.canvas.pixel_ratio;o.save(),o.scale(s,s),o.translate(.5,.5);var l=[this.frame._left.value,this.frame._top.value,this.frame._width.value,this.frame._height.value];if(this._map_hook(o,l),this._paint_empty(o,l),this.prepare_webgl(s,l),this.clear_webgl(),this.visuals.outline_line.doit){o.save(),this.visuals.outline_line.set_value(o);var h=l[0],u=l[1],c=l[2],_=l[3];h+c==this.layout._width.value&&(c-=1),u+_==this.layout._height.value&&(_-=1),o.strokeRect(h,u,c,_),o.restore()}this._paint_levels(o,[\"image\",\"underlay\",\"glyph\"],l,!0),this._paint_levels(o,[\"annotation\"],l,!1),this._paint_levels(o,[\"overlay\"],l,!1),null==this._initial_state_info.range&&this.set_initial_range(),o.restore()}},i.prototype._paint_levels=function(t,e,i,n){for(var r=0,o=e;r0&&(e=e.filter(function(e){return h.includes(t,e.name)})),s.logger.debug(\"computed \"+e.length+\" renderers for DataRange1d \"+this.id);for(var l=0,u=e;l_&&(\"start\"==this.follow?r=n+c*_:\"end\"==this.follow&&(n=r-c*_)),[n,r]},e.prototype.update=function(t,e,i,n){if(!this.have_updated_interactively){var r=this.computed_renderers(),o=this._compute_plot_bounds(r,t);null!=n&&(o=this.adjust_bounds_for_aspect(o,n)),this._plot_bounds[i]=o;var s=this._compute_min_max(this._plot_bounds,e),a=s[0],l=s[1],h=this._compute_range(a,l),u=h[0],c=h[1];null!=this._initial_start&&(\"log\"==this.scale_hint?this._initial_start>0&&(u=this._initial_start):u=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?this._initial_end>0&&(c=this._initial_end):c=this._initial_end);var _=[this.start,this.end],p=_[0],d=_[1];if(u!=p||c!=d){var f={};u!=p&&(f.start=u),c!=d&&(f.end=c),this.setv(f)}\"auto\"==this.bounds&&this.setv({bounds:[u,c]},{silent:!0}),this.change.emit()}},e.prototype.reset=function(){this.have_updated_interactively=!1,this.setv({range_padding:this._initial_range_padding,range_padding_units:this._initial_range_padding_units,follow:this._initial_follow,follow_interval:this._initial_follow_interval,default_span:this._initial_default_span},{silent:!0}),this.change.emit()},e}(r.DataRange);i.DataRange1d=u,u.initClass()},function(t,e,i){var n=t(408),r=t(194),o=t(18),s=t(25),a=t(24),l=t(46);function h(t,e,i){void 0===i&&(i=0);for(var n={},r=0;rthis.end},enumerable:!0,configurable:!0}),e}(r.Model);i.Range=a,a.initClass()},function(t,e,i){var n=t(408),r=t(194),o=t(18),s=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Range1d\",this.define({start:[o.Number,0],end:[o.Number,1],reset_start:[o.Number],reset_end:[o.Number]})},e.prototype._set_auto_bounds=function(){if(\"auto\"==this.bounds){var t=Math.min(this.reset_start,this.reset_end),e=Math.max(this.reset_start,this.reset_end);this.setv({bounds:[t,e]},{silent:!0})}},e.prototype.initialize=function(){t.prototype.initialize.call(this),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()},Object.defineProperty(e.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),e.prototype.reset=function(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()},e}(r.Range);i.Range1d=s,s.initClass()},function(t,e,i){var n=t(408),r=t(201),o=t(18),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.RendererView);i.DataRendererView=s;var a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"DataRenderer\",this.define({x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({level:\"glyph\"})},e}(r.Renderer);i.DataRenderer=a,a.initClass()},function(t,e,i){var n=t(408),r=t(196),o=t(136),s=t(211),a=t(17),l=t(18),h=t(25),u=t(24),c=t(35),_=t(192),p={fill:{},line:{}},d={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}},v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this);var e=this.model.glyph,i=u.includes(e.mixins,\"fill\"),n=u.includes(e.mixins,\"line\"),r=c.clone(e.attributes);function o(t){var o=c.clone(r);return i&&c.extend(o,t.fill),n&&c.extend(o,t.line),new e.constructor(o)}delete r.id,this.glyph=this.build_glyph_view(e);var s=this.model.selection_glyph;null==s?s=o({fill:{},line:{}}):\"auto\"===s&&(s=o(p)),this.selection_glyph=this.build_glyph_view(s);var a=this.model.nonselection_glyph;null==a?a=o({fill:{},line:{}}):\"auto\"===a&&(a=o(f)),this.nonselection_glyph=this.build_glyph_view(a);var l=this.model.hover_glyph;null!=l&&(this.hover_glyph=this.build_glyph_view(l));var h=this.model.muted_glyph;null!=h&&(this.muted_glyph=this.build_glyph_view(h));var _=o(d);this.decimated_glyph=this.build_glyph_view(_),this.xscale=this.plot_view.frame.xscales[this.model.x_range_name],this.yscale=this.plot_view.frame.yscales[this.model.y_range_name],this.set_data(!1)},e.prototype.build_glyph_view=function(t){return new t.default_view({model:t,parent:this})},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.glyph.change,function(){return e.set_data()}),this.connect(this.model.data_source.change,function(){return e.set_data()}),this.connect(this.model.data_source.streaming,function(){return e.set_data()}),this.connect(this.model.data_source.patching,function(t){return e.set_data(!0,t)}),this.connect(this.model.data_source.selected.change,function(){return e.request_render()}),this.connect(this.model.data_source._select,function(){return e.request_render()}),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,function(){return e.request_render()}),this.connect(this.model.properties.view.change,function(){return e.set_data()}),this.connect(this.model.view.change,function(){return e.set_data()});var i=this.plot_view.frame,n=i.x_ranges,r=i.y_ranges;for(var o in n){var s=n[o];s instanceof _.FactorRange&&this.connect(s.change,function(){return e.set_data()})}for(var a in r){var s=r[a];s instanceof _.FactorRange&&this.connect(s.change,function(){return e.set_data()})}this.connect(this.model.glyph.transformchange,function(){return e.set_data()})},e.prototype.have_selection_glyphs=function(){return null!=this.selection_glyph&&null!=this.nonselection_glyph},e.prototype.set_data=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=null);var i=Date.now(),n=this.model.data_source;this.all_indices=this.model.view.indices,this.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.glyph.set_data(n,this.all_indices,e),this.glyph.set_visuals(n),this.decimated_glyph.set_visuals(n),this.have_selection_glyphs()&&(this.selection_glyph.set_visuals(n),this.nonselection_glyph.set_visuals(n)),null!=this.hover_glyph&&this.hover_glyph.set_visuals(n),null!=this.muted_glyph&&this.muted_glyph.set_visuals(n);var r=this.plot_model.lod_factor;this.decimated=[];for(var o=0,s=Math.floor(this.all_indices.length/r);o0?d[\"1d\"].indices:function(){for(var t=[],e=0,i=Object.keys(d[\"2d\"].indices);e0&&!i&&null!=y&&this.all_indices.length>y?(s=this.decimated,f=this.decimated_glyph,v=this.decimated_glyph,m=this.selection_glyph):(f=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,v=this.nonselection_glyph,m=this.selection_glyph),null!=this.hover_glyph&&g.length&&(s=u.difference(s,g));var b,x=null;if(c.length&&this.have_selection_glyphs()){for(var w=Date.now(),k={},T=0,C=c;T0){for(var a=i[0],l=0,h=i;l0){for(var a=i[0],l=0,h=i;l0?this.selected_glyphs[0]:null},enumerable:!0,configurable:!0}),e.prototype.add_to_selected_glyphs=function(t){this.selected_glyphs.push(t)},e.prototype.update=function(t,e,i){this.final=e,i?this.update_through_union(t):(this.indices=t.indices,this.line_indices=t.line_indices,this.selected_glyphs=t.selected_glyphs,this.get_view=t.get_view,this.multiline_indices=t.multiline_indices,this.image_indices=t.image_indices)},e.prototype.clear=function(){this.final=!0,this.indices=[],this.line_indices=[],this.multiline_indices={},this.get_view=function(){return null},this.selected_glyphs=[]},e.prototype.is_empty=function(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length},e.prototype.update_through_union=function(t){this.indices=s.union(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},e.prototype.update_through_intersection=function(t){this.indices=s.intersection(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},e}(r.Model);i.Selection=l,l.initClass()},function(t,e,i){var n=t(408),r=t(217),o=t(17),s=t(18),a=function(t){function e(e){var i=t.call(this,e)||this;return i.initialized=!1,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"AjaxDataSource\",this.define({content_type:[s.String,\"application/json\"],http_headers:[s.Any,{}],method:[s.HTTPMethod,\"POST\"],if_modified:[s.Boolean,!1]})},e.prototype.destroy=function(){null!=this.interval&&clearInterval(this.interval),t.prototype.destroy.call(this)},e.prototype.setup=function(){var t=this;!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)&&(this.interval=setInterval(function(){return t.get_data(t.mode,t.max_size,t.if_modified)},this.polling_interval))},e.prototype.get_data=function(t,e,i){var n=this;void 0===e&&(e=0),void 0===i&&(i=!1);var r=this.prepare_request();r.addEventListener(\"load\",function(){return n.do_load(r,t,e)}),r.addEventListener(\"error\",function(){return n.do_error(r)}),r.send()},e.prototype.prepare_request=function(){var t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);var e=this.http_headers;for(var i in e){var n=e[i];t.setRequestHeader(i,n)}return t},e.prototype.do_load=function(t,e,i){if(200===t.status){var n=JSON.parse(t.responseText);this.load_data(n,e,i)}},e.prototype.do_error=function(t){o.logger.error(\"Failed to fetch JSON from \"+this.data_url+\" with code \"+t.status)},e}(r.RemoteDataSource);i.AjaxDataSource=a,a.initClass()},function(t,e,i){var n=t(408),r=t(62),o=t(18),s=t(209),a=t(24),l=t(213),h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"CDSView\",this.define({filters:[o.Array,[]],source:[o.Instance]}),this.internal({indices:[o.Array,[]],indices_map:[o.Any,{}]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.compute_indices()},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.properties.filters.change,function(){e.compute_indices(),e.change.emit()});var i=function(){var t=function(){return e.compute_indices()};null!=e.source&&(e.connect(e.source.change,t),e.source instanceof l.ColumnarDataSource&&(e.connect(e.source.streaming,t),e.connect(e.source.patching,t)))},n=null!=this.source;n?i():this.connect(this.properties.source.change,function(){n||(i(),n=!0)})},e.prototype.compute_indices=function(){var t=this,e=this.filters.map(function(e){return e.compute_indices(t.source)}).filter(function(t){return null!=t});e.length>0?this.indices=a.intersection.apply(this,e):this.source instanceof l.ColumnarDataSource&&(this.indices=this.source.get_indices()),this.indices_map_to_subset()},e.prototype.indices_map_to_subset=function(){this.indices_map={};for(var t=0;ti?n.slice(-i):n}if(h.isTypedArray(t)){var r=t.length+e.length;if(null!=i&&r>i){var o=r-i,s=t.length,n=void 0;t.length1&&o.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");for(var p=t.coordinates[0],c=0;c1&&o.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),v.push(y[0])}for(var u=v.reduce(r),c=0;ci&&l0&&h.length>0){for(var _=r/u,p=s.range(0,u).map(function(t){return t*_}),d=0,f=p.slice(1);d1?this.interval=(e[1]-e[0])*o.ONE_DAY:this.interval=31*o.ONE_DAY},e.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=function(t,e){var i=o.last_month_no_later_than(new Date(t)),n=o.last_month_no_later_than(new Date(e));n.setUTCMonth(n.getUTCMonth()+1);for(var r=[],s=i;r.push(o.copy_date(s)),s.setUTCMonth(s.getUTCMonth()+1),!(s>n););return r}(t,e),s=this.days,l=this.interval,h=a.concat(r.map(function(t){return function(t,e){for(var i=t.getUTCMonth(),n=[],r=0,a=s;r0&&r.length>0){for(var f=_/s,v=o.range(0,s).map(function(t){return t*f}),m=0,g=v.slice(1);m0&&r.length>0){for(var M=Math.pow(l,A)/s,v=o.range(1,s+1).map(function(t){return t*M}),E=0,z=v;E1?this.interval=(e[1]-e[0])*o.ONE_MONTH:this.interval=12*o.ONE_MONTH},e.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=function(t,e){var i=o.last_year_no_later_than(new Date(t)),n=o.last_year_no_later_than(new Date(e));n.setUTCFullYear(n.getUTCFullYear()+1);for(var r=[],s=i;r.push(o.copy_date(s)),s.setUTCFullYear(s.getUTCFullYear()+1),!(s>n););return r}(t,e),s=this.months,l=a.concat(r.map(function(t){return s.map(function(e){var i=o.copy_date(t);return i.setUTCMonth(e),i})})),h=l.map(function(t){return t.getTime()}),u=h.filter(function(i){return t<=i&&i<=e});return{major:u,minor:[]}},e}(r.SingleIntervalTicker);i.MonthsTicker=l,l.initClass()},function(t,e,i){var n=t(408),r=t(228),o=t(18),s=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"SingleIntervalTicker\",this.define({interval:[o.Number]})},e.prototype.get_interval=function(t,e,i){return this.interval},Object.defineProperty(e.prototype,\"min_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"max_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),e}(r.ContinuousTicker);i.SingleIntervalTicker=s,s.initClass()},function(t,e,i){var n=t(408),r=t(62),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Ticker\"},e}(r.Model);i.Ticker=o,o.initClass()},function(t,e,i){function n(t){return new Date(t.getTime())}function r(t){var e=n(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}i.ONE_MILLI=1,i.ONE_SECOND=1e3,i.ONE_MINUTE=60*i.ONE_SECOND,i.ONE_HOUR=60*i.ONE_MINUTE,i.ONE_DAY=24*i.ONE_HOUR,i.ONE_MONTH=30*i.ONE_DAY,i.ONE_YEAR=365*i.ONE_DAY,i.copy_date=n,i.last_month_no_later_than=r,i.last_year_no_later_than=function(t){var e=r(t);return e.setUTCMonth(0),e}},function(t,e,i){var n=t(408),r=t(225),o=t(236),s=t(238),a=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"YearsTicker\"},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.interval=s.ONE_YEAR,this.basic_ticker=new r.BasicTicker({num_minor_ticks:0})},e.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=s.last_year_no_later_than(new Date(t)).getUTCFullYear(),o=s.last_year_no_later_than(new Date(e)).getUTCFullYear(),a=this.basic_ticker.get_ticks_no_defaults(r,o,i,n).major,l=a.map(function(t){return Date.UTC(t,0,1)}),h=l.filter(function(i){return t<=i&&i<=e});return{major:h,minor:[]}},e}(o.SingleIntervalTicker);i.YearsTicker=a,a.initClass()},function(t,e,i){var n=t(408),r=t(243),o=t(18),s=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"BBoxTileSource\",this.define({use_latlon:[o.Boolean,!1]})},e.prototype.get_image_url=function(t,e,i){var n,r,o,s,a,l,h=this.string_lookup_replace(this.url,this.extra_url_vars);return this.use_latlon?(n=this.get_tile_geographic_bounds(t,e,i),s=n[0],l=n[1],o=n[2],a=n[3]):(r=this.get_tile_meter_bounds(t,e,i),s=r[0],l=r[1],o=r[2],a=r[3]),h.replace(\"{XMIN}\",s.toString()).replace(\"{YMIN}\",l.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",a.toString())},e}(r.MercatorTileSource);i.BBoxTileSource=s,s.initClass()},function(t,e,i){var n=t(46),r=function(){function t(){this.images=[]}return t.prototype.pop=function(){var t=this.images.pop();return null!=t?t:new Image},t.prototype.push=function(t){var e;this.images.length>50||(n.isArray(t)?(e=this.images).push.apply(e,t):this.images.push(t))},t}();i.ImagePool=r},function(t,e,i){var n=t(240);i.BBoxTileSource=n.BBoxTileSource;var r=t(243);i.MercatorTileSource=r.MercatorTileSource;var o=t(244);i.QUADKEYTileSource=o.QUADKEYTileSource;var s=t(245);i.TileRenderer=s.TileRenderer;var a=t(246);i.TileSource=a.TileSource;var l=t(248);i.TMSTileSource=l.TMSTileSource;var h=t(249);i.WMTSTileSource=h.WMTSTileSource},function(t,e,i){var n=t(408),r=t(246),o=t(18),s=t(24),a=t(247),l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"MercatorTileSource\",this.define({snap_to_zoom:[o.Boolean,!1],wrap_around:[o.Boolean,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})},e.prototype.initialize=function(){var e=this;t.prototype.initialize.call(this),this._resolutions=s.range(this.min_zoom,this.max_zoom+1).map(function(t){return e.get_resolution(t)})},e.prototype._computed_initial_resolution=function(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size},e.prototype.is_valid_tile=function(t,e,i){return!(!this.wrap_around&&(t<0||t>=Math.pow(2,i))||e<0||e>=Math.pow(2,i))},e.prototype.parent_by_tile_xyz=function(t,e,i){var n=this.tile_xyz_to_quadkey(t,e,i),r=n.substring(0,n.length-1);return this.quadkey_to_tile_xyz(r)},e.prototype.get_resolution=function(t){return this._computed_initial_resolution()/Math.pow(2,t)},e.prototype.get_resolution_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e;return[n,r]},e.prototype.get_level_by_extent=function(t,e,i){for(var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=0,a=0,l=this._resolutions;ah){if(0==s)return 0;if(s>0)return s-1}s+=1}return s-1},e.prototype.get_closest_level_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=this._resolutions.reduce(function(t,e){return Math.abs(e-o)_?(h=s-r,u*=c):(h*=_,u=a-o)}var p=(h-(s-r))/2,d=(u-(a-o))/2;return[r-p,o-d,s+p,a+d]},e.prototype.tms_to_wmts=function(t,e,i){return[t,Math.pow(2,i)-1-e,i]},e.prototype.wmts_to_tms=function(t,e,i){return[t,Math.pow(2,i)-1-e,i]},e.prototype.pixels_to_meters=function(t,e,i){var n=this.get_resolution(i),r=t*n-this.x_origin_offset,o=e*n-this.y_origin_offset;return[r,o]},e.prototype.meters_to_pixels=function(t,e,i){var n=this.get_resolution(i),r=(t+this.x_origin_offset)/n,o=(e+this.y_origin_offset)/n;return[r,o]},e.prototype.pixels_to_tile=function(t,e){var i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;var n=Math.max(Math.ceil(e/this.tile_size)-1,0);return[i,n]},e.prototype.pixels_to_raster=function(t,e,i){var n=this.tile_size<=h;d--)for(var f=l;f<=c;f++)this.is_valid_tile(f,d,e)&&p.push([f,d,e,this.get_tile_meter_bounds(f,d,e)]);return this.sort_tiles_from_center(p,[l,h,c,_]),p},e.prototype.quadkey_to_tile_xyz=function(t){for(var e=0,i=0,n=t.length,r=n;r>0;r--){var o=t.charAt(n-r),s=1<0;r--){var o=1<0;)if(a=a.substring(0,a.length-1),r=this.quadkey_to_tile_xyz(a),t=r[0],e=r[1],i=r[2],o=this.denormalize_xyz(t,e,i,s),t=o[0],e=o[1],i=o[2],this.tile_xyz_to_key(t,e,i)in this.tiles)return[t,e,i];return[0,0,0]},e.prototype.normalize_xyz=function(t,e,i){if(this.wrap_around){var n=Math.pow(2,i);return[(t%n+n)%n,e,i]}return[t,e,i]},e.prototype.denormalize_xyz=function(t,e,i,n){return[t+n*Math.pow(2,i),e,i]},e.prototype.denormalize_meters=function(t,e,i,n){return[t+2*n*Math.PI*6378137,e]},e.prototype.calculate_world_x_by_tile_xyz=function(t,e,i){return Math.floor(t/Math.pow(2,i))},e}(r.TileSource);i.MercatorTileSource=l,l.initClass()},function(t,e,i){var n=t(408),r=t(243),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"QUADKEYTileSource\"},e.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2],l=this.tile_xyz_to_quadkey(o,s,a);return n.replace(\"{Q}\",l)},e}(r.MercatorTileSource);i.QUADKEYTileSource=o,o.initClass()},function(t,e,i){var n=t(408),r=t(241),o=t(249),s=t(196),a=t(195),l=t(5),h=t(18),u=t(24),c=t(46),_=t(20),p=t(212),d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){this._tiles=[],t.prototype.initialize.call(this)},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.tile_source.change,function(){return e.request_render()})},e.prototype.get_extent=function(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]},Object.defineProperty(e.prototype,\"map_plot\",{get:function(){return this.plot_model},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"map_canvas\",{get:function(){return this.plot_view.canvas_view.ctx},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"map_frame\",{get:function(){return this.plot_view.frame},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"x_range\",{get:function(){return this.map_plot.x_range},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"y_range\",{get:function(){return this.map_plot.y_range},enumerable:!0,configurable:!0}),e.prototype._set_data=function(){this.pool=new r.ImagePool,this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0},e.prototype._update_attribution=function(){null!=this.attribution_el&&l.removeElement(this.attribution_el);var t=this.model.tile_source.attribution;if(c.isString(t)&&t.length>0){var e=this.plot_view,i=e.layout,n=e.frame,r=i._width.value-n._right.value,o=i._height.value-n._bottom.value,s=n._width.value;this.attribution_el=l.div({class:\"bk-tile-attribution\",style:{position:\"absolute\",right:r+\"px\",bottom:o+\"px\",\"max-width\":s-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"7pt\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}});var a=this.plot_view.canvas_view.events_el;a.appendChild(this.attribution_el),this.attribution_el.innerHTML=t,this.attribution_el.title=this.attribution_el.textContent.replace(/\\s*\\n\\s*/g,\" \")}},e.prototype._map_data=function(){this.initial_extent=this.get_extent();var t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value,t);this.x_range.start=e[0],this.y_range.start=e[1],this.x_range.end=e[2],this.y_range.end=e[3],this.x_range instanceof a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._update_attribution()},e.prototype._on_tile_load=function(t,e){t.img=e.target,t.loaded=!0,this.request_render()},e.prototype._on_tile_cache_load=function(t,e){t.img=e.target,t.loaded=!0,t.finished=!0,this.notify_finished()},e.prototype._on_tile_error=function(t){t.finished=!0},e.prototype._create_tile=function(t,e,i,n,r){void 0===r&&(r=!1);var o=this.model.tile_source.normalize_xyz(t,e,i),s=o[0],a=o[1],l=o[2],h=this.pool.pop(),u={img:h,tile_coords:[t,e,i],normalized_coords:[s,a,l],quadkey:this.model.tile_source.tile_xyz_to_quadkey(t,e,i),cache_key:this.model.tile_source.tile_xyz_to_key(t,e,i),bounds:n,loaded:!1,finished:!1,x_coord:n[0],y_coord:n[3]};h.onload=r?this._on_tile_cache_load.bind(this,u):this._on_tile_load.bind(this,u),h.onerror=this._on_tile_error.bind(this,u),h.alt=\"\",h.src=this.model.tile_source.get_image_url(s,a,l),this.model.tile_source.tiles[u.cache_key]=u,this._tiles.push(u)},e.prototype._enforce_aspect_ratio=function(){if(this._last_height!==this.map_frame._height.value||this._last_width!==this.map_frame._width.value){var t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame._height.value,this.map_frame._width.value),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame._height.value,this.map_frame._width.value,e);this.x_range.setv({start:i[0],end:i[2]}),this.y_range.setv({start:i[1],end:i[3]}),this.extent=i,this._last_height=this.map_frame._height.value,this._last_width=this.map_frame._width.value}},e.prototype.has_finished=function(){if(!t.prototype.has_finished.call(this))return!1;if(0===this._tiles.length)return!1;for(var e=0,i=this._tiles;en&&(r=this.extent,l=n,h=!0),h&&(this.x_range.setv({x_range:{start:r[0],end:r[2]}}),this.y_range.setv({start:r[1],end:r[3]}),this.extent=r),this.extent=r;for(var c=e.get_tiles_by_extent(r,l),_=[],p=[],d=[],f=[],v=0,m=c;v=a?[1,d/a]:[a/d,1])[0];return t[0]<=e[0]?(n=t[0],(r=t[0]+_*f)>l&&(r=l)):(r=t[0],(n=t[0]-_*f)u&&(o=u)):(o=t[1],(s=t[1]-_/a)r.end)&&(this.v_axis_only=!0),(io.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model)},e.prototype._pan=function(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)},e.prototype._pan_end=function(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})},e.prototype._update=function(t,e){var i,n,r,o,s,a,l=this.plot_view.frame,h=t-this.last_dx,u=e-this.last_dy,c=l.bbox.h_range,_=c.start-h,p=c.end-h,d=l.bbox.v_range,f=d.start-u,v=d.end-u,m=this.model.dimensions;\"width\"!=m&&\"both\"!=m||this.v_axis_only?(i=c.start,n=c.end,r=0):(i=_,n=p,r=-h),\"height\"!=m&&\"both\"!=m||this.h_axis_only?(o=d.start,s=d.end,a=0):(o=f,s=v,a=-u),this.last_dx=t,this.last_dy=e;var g=l.xscales,y=l.yscales,b={};for(var x in g){var w=g[x],k=w.r_invert(i,n),T=k[0],C=k[1];b[x]={start:T,end:C}}var S={};for(var A in y){var w=y[A],M=w.r_invert(o,s),T=M[0],C=M[1];S[A]={start:T,end:C}}this.pan_info={xrs:b,yrs:S,sdx:r,sdy:a},this.plot_view.update_range(this.pan_info,!0)},e}(r.GestureToolView);i.PanToolView=s;var a=function(t){function e(e){var i=t.call(this,e)||this;return i.tool_name=\"Pan\",i.event_type=\"pan\",i.default_order=10,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"PanTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"]})},Object.defineProperty(e.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Pan\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"icon\",{get:function(){switch(this.dimensions){case\"both\":return\"bk-tool-icon-pan\";case\"width\":return\"bk-tool-icon-xpan\";case\"height\":return\"bk-tool-icon-ypan\"}},enumerable:!0,configurable:!0}),e}(r.GestureTool);i.PanTool=a,a.initClass()},function(t,e,i){var n=t(408),r=t(274),o=t(74),s=t(5),a=t(18),l=t(24),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.data={sx:[],sy:[]}},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return e._active_change()})},e.prototype._active_change=function(){this.model.active||this._clear_data()},e.prototype._keyup=function(t){t.keyCode==s.Keys.Enter&&this._clear_data()},e.prototype._doubletap=function(t){var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()},e.prototype._clear_data=function(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})},e.prototype._tap=function(t){var e=t.sx,i=t.sy,n=this.plot_view.frame;n.bbox.contains(e,i)&&(this.data.sx.push(e),this.data.sy.push(i),this.model.overlay.update({xs:l.copy(this.data.sx),ys:l.copy(this.data.sy)}))},e.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},e.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_view.frame,r=i.xscales[e.x_range_name],o=i.yscales[e.y_range_name],s=r.v_invert(t.sx),a=o.v_invert(t.sy),l=n.__assign({x:s,y:a},t);null!=this.model.callback&&this.model.callback.execute(this.model,{geometry:l})},e}(r.SelectToolView);i.PolySelectToolView=h;var u=function(){return new o.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},c=function(t){function e(e){var i=t.call(this,e)||this;return i.tool_name=\"Poly Select\",i.icon=\"bk-tool-icon-polygon-select\",i.event_type=\"tap\",i.default_order=11,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"PolySelectTool\",this.prototype.default_view=h,this.define({callback:[a.Any],overlay:[a.Instance,u]})},e}(r.SelectTool);i.PolySelectTool=c,c.initClass()},function(t,e,i){var n=t(408),r=t(67),o=t(17),s=t(18),a=t(269);function l(t){switch(t){case 1:return 2;case 2:return 1;case 4:return 5;case 5:return 4;default:return t}}function h(t,e,i,n){if(null==e)return!1;var r=i.compute(e);return Math.abs(t-r)r.right)&&(o=!1)}if(null!=r.bottom&&null!=r.top){var a=n.invert(e);(ar.top)&&(o=!1)}return o}function c(t,e,i){var n=0;return t>=i.start&&t<=i.end&&(n+=1),e>=i.start&&e<=i.end&&(n+=1),n}function _(t,e,i,n){var r=e.compute(t),o=e.invert(r+i);return o>=n.start&&o<=n.end?o:t}function p(t,e,i){return t>e.start?(e.end=t,i):(e.end=e.start,e.start=t,l(i))}function d(t,e,i){return t=u&&(t.start=l,t.end=h)}i.flip_side=l,i.is_near=h,i.is_inside=u,i.sides_inside=c,i.compute_value=_,i.compute_end_side=p,i.compute_start_side=d,i.update_range=f;var v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.side=0,this.model.update_overlay_from_ranges()},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),null!=this.model.x_range&&this.connect(this.model.x_range.change,function(){return e.model.update_overlay_from_ranges()}),null!=this.model.y_range&&this.connect(this.model.y_range.change,function(){return e.model.update_overlay_from_ranges()})},e.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=this.model.x_range,i=this.model.y_range,n=this.plot_view.frame,o=n.xscales.default,s=n.yscales.default,a=this.model.overlay,l=a.left,c=a.right,_=a.top,p=a.bottom,d=this.model.overlay.properties.line_width.value()+r.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(h(t.sx,l,o,d)?this.side=1:h(t.sx,c,o,d)?this.side=2:u(t.sx,t.sy,o,s,a)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&h(t.sy,p,s,d)&&(this.side=4),0==this.side&&h(t.sy,_,s,d)?this.side=5:u(t.sx,t.sy,o,s,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))},e.prototype._pan=function(t){var e=this.plot_view.frame,i=t.deltaX-this.last_dx,n=t.deltaY-this.last_dy,r=this.model.x_range,o=this.model.y_range,s=e.xscales.default,a=e.yscales.default;if(null!=r)if(3==this.side||7==this.side)f(r,s,i,e.x_range);else if(1==this.side){var l=_(r.start,s,i,e.x_range);this.side=d(l,r,this.side)}else if(2==this.side){var h=_(r.end,s,i,e.x_range);this.side=p(h,r,this.side)}if(null!=o)if(6==this.side||7==this.side)f(o,a,n,e.y_range);else if(4==this.side){o.start=_(o.start,a,n,e.y_range);var l=_(o.start,a,n,e.y_range);this.side=d(l,o,this.side)}else if(5==this.side){o.end=_(o.end,a,n,e.y_range);var h=_(o.end,a,n,e.y_range);this.side=p(h,o,this.side)}this.last_dx=t.deltaX,this.last_dy=t.deltaY},e.prototype._pan_end=function(t){this.side=0},e}(a.GestureToolView);i.RangeToolView=v;var m=function(){return new r.BoxAnnotation({level:\"overlay\",render_mode:\"canvas\",fill_color:\"lightgrey\",fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:.5},line_dash:[2,2]})},g=function(t){function e(e){var i=t.call(this,e)||this;return i.tool_name=\"Range Tool\",i.icon=\"bk-tool-icon-range\",i.event_type=\"pan\",i.default_order=1,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"RangeTool\",this.prototype.default_view=v,this.define({x_range:[s.Instance,null],x_interaction:[s.Boolean,!0],y_range:[s.Instance,null],y_interaction:[s.Boolean,!0],overlay:[s.Instance,m]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.overlay.in_cursor=\"grab\",this.overlay.ew_cursor=null!=this.x_range&&this.x_interaction?\"ew-resize\":null,this.overlay.ns_cursor=null!=this.y_range&&this.y_interaction?\"ns-resize\":null},e.prototype.update_overlay_from_ranges=function(){null==this.x_range&&null==this.y_range&&(this.overlay.left=null,this.overlay.right=null,this.overlay.bottom=null,this.overlay.top=null,o.logger.warn(\"RangeTool not configured with any Ranges.\")),null==this.x_range?(this.overlay.left=null,this.overlay.right=null):(this.overlay.left=this.x_range.start,this.overlay.right=this.x_range.end),null==this.y_range?(this.overlay.bottom=null,this.overlay.top=null):(this.overlay.bottom=this.y_range.start,this.overlay.top=this.y_range.end)},e}(a.GestureTool);i.RangeTool=g,g.initClass()},function(t,e,i){var n=t(408),r=t(269),o=t(197),s=t(198),a=t(289),l=t(18),h=t(5),u=t(3),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),Object.defineProperty(e.prototype,\"computed_renderers\",{get:function(){var t=this.model.renderers,e=this.plot_model.renderers,i=this.model.names;return a.compute_renderers(t,e,i)},enumerable:!0,configurable:!0}),e.prototype._computed_renderers_by_data_source=function(){for(var t={},e=0,i=this.computed_renderers;e.9?e=.9:e<-.9&&(e=-.9),this._update_ranges(e)},e.prototype._update_ranges=function(t){var e,i,n,r,o=this.plot_view.frame,s=o.bbox.h_range,a=o.bbox.v_range,l=[s.start,s.end],h=l[0],u=l[1],c=[a.start,a.end],_=c[0],p=c[1];switch(this.model.dimension){case\"height\":var d=Math.abs(p-_);e=h,i=u,n=_-d*t,r=p-d*t;break;case\"width\":var f=Math.abs(u-h);e=h-f*t,i=u-f*t,n=_,r=p;break;default:throw new Error(\"this shouldn't have happened\")}var v=o.xscales,m=o.yscales,g={};for(var y in v){var b=v[y],x=b.r_invert(e,i),w=x[0],k=x[1];g[y]={start:w,end:k}}var T={};for(var C in m){var b=m[C],S=b.r_invert(n,r),w=S[0],k=S[1];T[C]={start:w,end:k}}var A={xrs:g,yrs:T,factor:t};this.plot_view.push_state(\"wheel_pan\",{range:A}),this.plot_view.update_range(A,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model)},e}(r.GestureToolView);i.WheelPanToolView=s;var a=function(t){function e(e){var i=t.call(this,e)||this;return i.tool_name=\"Wheel Pan\",i.icon=\"bk-tool-icon-wheel-pan\",i.event_type=\"scroll\",i.default_order=12,i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"WheelPanTool\",this.prototype.default_view=s,this.define({dimension:[o.Dimension,\"width\"]}),this.internal({speed:[o.Number,.001]})},Object.defineProperty(e.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimension)},enumerable:!0,configurable:!0}),e}(r.GestureTool);i.WheelPanTool=a,a.initClass()},function(t,e,i){var n=t(408),r=t(269),o=t(48),s=t(18),a=t(31),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pinch=function(t){var e,i=t.sx,n=t.sy,r=t.scale;e=r>=1?20*(r-1):-20/r,this._scroll({type:\"wheel\",sx:i,sy:n,delta:e})},e.prototype._scroll=function(t){var e=this.plot_view.frame,i=e.bbox.h_range,n=e.bbox.v_range,r=t.sx,s=t.sy,a=this.model.dimensions,l=(\"width\"==a||\"both\"==a)&&i.start=0){var m=_.match(/\\$color(\\[.*\\])?:(\\w*)/),g=m[1],y=void 0===g?\"\":g,b=m[2],x=t.get_column(b);if(null==x){var w=c.span({},b+\" unknown\");v.appendChild(w);continue}var k=y.indexOf(\"hex\")>=0,T=y.indexOf(\"swatch\")>=0,C=f.isNumber(e)?x[e]:null;if(null==C){var S=c.span({},\"(null)\");v.appendChild(S);continue}k&&(C=p.color2hex(C));var r=c.span({},C);v.appendChild(r),T&&(r=c.span({class:\"bk-tooltip-color-block\",style:{backgroundColor:C}},\" \"),v.appendChild(r))}else{var r=c.span();r.innerHTML=u.replace_placeholders(_.replace(\"$~\",\"$data_\"),t,e,this.model.formatters,i),v.appendChild(r)}}return o},e}(r.InspectToolView);i.HoverToolView=y;var b=function(t){function e(e){var i=t.call(this,e)||this;return i.tool_name=\"Hover\",i.icon=\"bk-tool-icon-hover\",i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"HoverTool\",this.prototype.default_view=y,this.define({tooltips:[_.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[_.Any,{}],renderers:[_.Any,\"auto\"],names:[_.Array,[]],mode:[_.HoverMode,\"mouse\"],point_policy:[_.PointPolicy,\"snap_to_data\"],line_policy:[_.LinePolicy,\"nearest\"],show_arrow:[_.Boolean,!0],anchor:[_.Anchor,\"center\"],attachment:[_.TooltipAttachment,\"horizontal\"],callback:[_.Any]})},e}(r.InspectTool);i.HoverTool=b,b.initClass()},function(t,e,i){var n=t(408),r=t(259),o=t(283),s=t(18),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.InspectToolView=a;var l=function(t){function e(e){var i=t.call(this,e)||this;return i.event_type=\"move\",i}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"InspectTool\",this.prototype.button_view=o.OnOffButtonView,this.define({toggleable:[s.Boolean,!0]}),this.override({active:!0})},e}(r.ButtonTool);i.InspectTool=l,l.initClass()},function(t,e,i){var n=t(408),r=t(259),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active?this.el.classList.add(\"bk-active\"):this.el.classList.remove(\"bk-active\")},e.prototype._clicked=function(){var t=this.model.active;this.model.active=!t},e}(r.ButtonToolButtonView);i.OnOffButtonView=o},function(t,e,i){var n=t(408),r=t(18),o=t(50),s=t(24),a=t(62),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),Object.defineProperty(e.prototype,\"plot_view\",{get:function(){return this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"plot_model\",{get:function(){return this.parent.model},enumerable:!0,configurable:!0}),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){e.model.active?e.activate():e.deactivate()})},e.prototype.activate=function(){},e.prototype.deactivate=function(){},e}(o.View);i.ToolView=l;var h=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Tool\",this.internal({active:[r.Boolean,!1]})},Object.defineProperty(e.prototype,\"synthetic_renderers\",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype._get_dim_tooltip=function(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}},e.prototype._get_dim_limits=function(t,e,i,n){var r,o=t[0],a=t[1],l=e[0],h=e[1],u=i.bbox.h_range;\"width\"==n||\"both\"==n?(r=[s.min([o,l]),s.max([o,l])],r=[s.max([r[0],u.start]),s.min([r[1],u.end])]):r=[u.start,u.end];var c,_=i.bbox.v_range;return\"height\"==n||\"both\"==n?(c=[s.min([a,h]),s.max([a,h])],c=[s.max([c[0],_.start]),s.min([c[1],_.end])]):c=[_.start,_.end],[r,c]},e}(a.Model);i.Tool=h,h.initClass()},function(t,e,i){var n=t(408),r=t(18),o=t(22),s=t(62),a=t(282),l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"ToolProxy\",this.define({tools:[r.Array,[]],active:[r.Boolean,!1],disabled:[r.Boolean,!1]})},Object.defineProperty(e.prototype,\"button_view\",{get:function(){return this.tools[0].button_view},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"event_type\",{get:function(){return this.tools[0].event_type},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"tooltip\",{get:function(){return this.tools[0].tooltip},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"tool_name\",{get:function(){return this.tools[0].tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"icon\",{get:function(){return this.tools[0].computed_icon},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"toggleable\",{get:function(){var t=this.tools[0];return t instanceof a.InspectTool&&t.toggleable},enumerable:!0,configurable:!0}),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.do=new o.Signal0(this,\"do\")},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.do,function(){return e.doit()}),this.connect(this.properties.active.change,function(){return e.set_active()})},e.prototype.doit=function(){for(var t=0,e=this.tools;t0)if(\"multi\"==c)for(var T=0,C=k;T0&&this.actions.push(x(k))}for(var w in this.inspectors=[],i){var k=i[w];k.length>0&&this.inspectors.push(x(k,!0))}for(var E in this.gestures){var _=this.gestures[E];0!=_.tools.length&&(_.tools=a.sort_by(_.tools,function(t){return t.default_order}),\"pinch\"!=E&&\"scroll\"!=E&&\"multi\"!=E&&(_.tools[0].active=!0))}},e}(_.ToolbarBase);i.ProxyToolbar=v,v.initClass();var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.initialize=function(){this.model.toolbar.toolbar_location=this.model.toolbar_location,t.prototype.initialize.call(this)},Object.defineProperty(e.prototype,\"child_models\",{get:function(){return[this.model.toolbar]},enumerable:!0,configurable:!0}),e.prototype._update_layout=function(){this.layout=new f.ContentBox(this.child_views[0].el);var t=this.model.toolbar;t.horizontal?this.layout.set_sizing({width_policy:\"fit\",min_width:100,height_policy:\"fixed\"}):this.layout.set_sizing({width_policy:\"fixed\",height_policy:\"fit\",min_height:100})},e}(d.LayoutDOMView);i.ToolbarBoxView=m;var g=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"ToolbarBox\",this.prototype.default_view=m,this.define({toolbar:[r.Instance],toolbar_location:[r.Location,\"right\"]})},e}(d.LayoutDOM);i.ToolbarBox=g,g.initClass()},function(t,e,i){var n=t(24);i.compute_renderers=function(t,e,i){if(null==t)return[];var r=\"auto\"==t?e:t;return i.length>0&&(r=r.filter(function(t){return n.includes(i,t.name)})),r}},function(t,e,i){var n=t(408),r=t(297),o=t(18),s=t(35),a=t(40),l=function(e){function i(t){return e.call(this,t)||this}return n.__extends(i,e),i.initClass=function(){this.prototype.type=\"CustomJSTransform\",this.define({args:[o.Any,{}],func:[o.String,\"\"],v_func:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(i.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),i.prototype._make_transform=function(t,e){var i=this.use_strict?a.use_strict(e):e;return new(Function.bind.apply(Function,[void 0].concat(this.names,[t,\"require\",\"exports\",i])))},Object.defineProperty(i.prototype,\"scalar_transform\",{get:function(){return this._make_transform(\"x\",this.func)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,\"vector_transform\",{get:function(){return this._make_transform(\"xs\",this.v_func)},enumerable:!0,configurable:!0}),i.prototype.compute=function(e){return this.scalar_transform.apply(this,this.values.concat([e,t,{}]))},i.prototype.v_compute=function(e){return this.vector_transform.apply(this,this.values.concat([e,t,{}]))},i}(r.Transform);i.CustomJSTransform=l,l.initClass()},function(t,e,i){var n=t(408),r=t(297),o=t(192),s=t(18),a=t(46),l=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Dodge\",this.define({value:[s.Number,0],range:[s.Instance]})},e.prototype.v_compute=function(t){var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!a.isArrayableOf(t,a.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;ne.x?-1:t.x==e.x?0:1}):r.sort(function(t,e){return t.xthis._x_sorted[this._x_sorted.length-1])return NaN}else{if(tthis._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(t==this._x_sorted[0])return this._y_sorted[0];var e=r.find_last_index(this._x_sorted,function(e){return ethis._x_sorted[this._x_sorted.length-1])return NaN}else{if(tthis._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}var e;switch(this.mode){case\"after\":e=s.find_last_index(this._x_sorted,function(e){return t>=e});break;case\"before\":e=s.find_index(this._x_sorted,function(e){return t<=e});break;case\"center\":var i=this._x_sorted.map(function(e){return Math.abs(e-t)}),n=s.min(i);e=s.find_index(i,function(t){return n===t});break;default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=e?this._y_sorted[e]:NaN},e}(r.Interpolator);i.StepInterpolator=a,a.initClass()},function(t,e,i){var n=t(408),r=t(62),o=function(t){function e(e){return t.call(this,e)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"Transform\"},e}(r.Model);i.Transform=o,o.initClass()},function(t,e,i){var n,r,o,s;\"undefined\"==typeof Map&&t(359),\"undefined\"==typeof WeakMap&&t(371),\"undefined\"==typeof Promise&&t(365).polyfill(),void 0===Math.log10&&(Math.log10=function(t){return Math.log(t)*Math.LOG10E}),void 0===Number.isInteger&&(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t}),void 0===String.prototype.repeat&&(String.prototype.repeat=function(t){if(null==this)throw new TypeError(\"can't convert \"+this+\" to object\");var e=\"\"+this;if((t=+t)!=t&&(t=0),t<0)throw new RangeError(\"repeat count must be non-negative\");if(t==1/0)throw new RangeError(\"repeat count must be less than infinity\");if(t=Math.floor(t),0==e.length||0==t)return\"\";if(e.length*t>=1<<28)throw new RangeError(\"repeat count must not overflow maximum string size\");for(var i=\"\";1==(1&t)&&(i+=e),0!=(t>>>=1);)e+=e;return i}),void 0===Array.from&&(Array.from=(n=Object.prototype.toString,r=function(t){return\"function\"==typeof t||\"[object Function]\"===n.call(t)},o=Math.pow(2,53)-1,s=function(t){var e=function(t){var e=Number(t);return isNaN(e)?0:0!==e&&isFinite(e)?(e>0?1:-1)*Math.floor(Math.abs(e)):e}(t);return Math.min(Math.max(e,0),o)},function(t){var e=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var i,n=arguments.length>1?arguments[1]:void 0;if(void 0!==n){if(!r(n))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");arguments.length>2&&(i=arguments[2])}for(var o=s(e.length),a=r(this)?Object(new this(o)):new Array(o),l=0\n", + " // 13. If IsConstructor(C) is true, then\n", + " ;l0)throw new Error(\"BokehJS only supports receiving buffers, not sending\");var i=JSON.stringify(this.header),n=JSON.stringify(this.metadata),r=JSON.stringify(this.content);t.send(i),t.send(n),t.send(r)},t.prototype.msgid=function(){return this.header.msgid},t.prototype.msgtype=function(){return this.header.msgtype},t.prototype.reqid=function(){return this.header.reqid},t.prototype.problem=function(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"},t}();i.Message=r},function(t,e,i){var n=t(300),r=function(){function t(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}return t.prototype.consume=function(t){this._current_consumer(t)},t.prototype._HEADER=function(t){this._assume_text(t),this.message=null,this._partial=null,this._fragments=[t],this._buf_header=null,this._current_consumer=this._METADATA},t.prototype._METADATA=function(t){this._assume_text(t),this._fragments.push(t),this._current_consumer=this._CONTENT},t.prototype._CONTENT=function(t){this._assume_text(t),this._fragments.push(t);var e=this._fragments.slice(0,3),i=e[0],r=e[1],o=e[2];this._partial=n.Message.assemble(i,r,o),this._check_complete()},t.prototype._BUFFER_HEADER=function(t){this._assume_text(t),this._buf_header=t,this._current_consumer=this._BUFFER_PAYLOAD},t.prototype._BUFFER_PAYLOAD=function(t){this._assume_binary(t),this._partial.assemble_buffer(this._buf_header,t),this._check_complete()},t.prototype._assume_text=function(t){if(t instanceof ArrayBuffer)throw new Error(\"Expected text fragment but received binary fragment\")},t.prototype._assume_binary=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")},t.prototype._check_complete=function(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER},t}();i.Receiver=r},function(t,e,i){i.safely=function(t,e){void 0===e&&(e=!1);try{return t()}catch(t){if(function(t){var e=document.createElement(\"div\");e.style.backgroundColor=\"#f2dede\",e.style.border=\"1px solid #a94442\",e.style.borderRadius=\"4px\",e.style.display=\"inline-block\",e.style.fontFamily=\"sans-serif\",e.style.marginTop=\"5px\",e.style.minWidth=\"200px\",e.style.padding=\"5px 5px 5px 10px\",e.classList.add(\"bokeh-error-box-into-flames\");var i=document.createElement(\"span\");i.style.backgroundColor=\"#a94442\",i.style.borderRadius=\"0px 4px 0px 0px\",i.style.color=\"white\",i.style.cursor=\"pointer\",i.style.cssFloat=\"right\",i.style.fontSize=\"0.8em\",i.style.margin=\"-6px -6px 0px 0px\",i.style.padding=\"2px 5px 4px 5px\",i.title=\"close\",i.setAttribute(\"aria-label\",\"close\"),i.appendChild(document.createTextNode(\"x\")),i.addEventListener(\"click\",function(){return s.removeChild(e)});var n=document.createElement(\"h3\");n.style.color=\"#a94442\",n.style.margin=\"8px 0px 0px 0px\",n.style.padding=\"0px\",n.appendChild(document.createTextNode(\"Bokeh Error\"));var r=document.createElement(\"pre\");r.style.whiteSpace=\"unset\",r.style.overflowX=\"auto\";var o=t instanceof Error?t.message:t;r.appendChild(document.createTextNode(o)),e.appendChild(i),e.appendChild(n),e.appendChild(r);var s=document.getElementsByTagName(\"body\")[0];s.insertBefore(e,s.firstChild)}(t),e)return;throw t}}},function(t,e,i){function n(){var t=document.getElementsByTagName(\"body\")[0],e=document.getElementsByClassName(\"bokeh-test-div\");1==e.length&&(t.removeChild(e[0]),delete e[0]);var i=document.createElement(\"div\");i.classList.add(\"bokeh-test-div\"),i.style.display=\"none\",t.insertBefore(i,t.firstChild)}i.results={},i.init=function(){n()},i.record=function(t,e){i.results[t]=e,n()},i.count=function(t){null==i.results[t]&&(i.results[t]=0),i.results[t]+=1,n()},i.clear=function(){for(var t=0,e=Object.keys(i.results);t1?((e=n).width=arguments[0],e.height=arguments[1]):e=t||n,!(this instanceof i))return new i(e);this.width=e.width||n.width,this.height=e.height||n.height,this.enableMirroring=void 0!==e.enableMirroring?e.enableMirroring:n.enableMirroring,this.canvas=this,this.__document=e.document||document,e.ctx?this.__ctx=e.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[this.__getStyleState()],this.__groupStack=[],this.__root=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this.__root.setAttribute(\"version\",1.1),this.__root.setAttribute(\"xmlns\",\"http://www.w3.org/2000/svg\"),this.__root.setAttributeNS(\"http://www.w3.org/2000/xmlns/\",\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),this.__root.setAttribute(\"width\",this.width),this.__root.setAttribute(\"height\",this.height),this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"),this.__root.appendChild(this.__currentElement)}).prototype.__createElement=function(t,e,i){void 0===e&&(e={});var n,r,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t),s=Object.keys(e);for(i&&(o.setAttribute(\"fill\",\"none\"),o.setAttribute(\"stroke\",\"none\")),n=0;n0){\"path\"===this.__currentElement.nodeName&&(this.__currentElementsToStyle||(this.__currentElementsToStyle={element:e,children:[]}),this.__currentElementsToStyle.children.push(this.__currentElement),this.__applyCurrentDefaultPath());var i=this.__createElement(\"g\");e.appendChild(i),this.__currentElement=i}var n=this.__currentElement.getAttribute(\"transform\");n?n+=\" \":n=\"\",n+=t,this.__currentElement.setAttribute(\"transform\",n)},i.prototype.scale=function(t,e){void 0===e&&(e=t),this.__addTransform(s(\"scale({x},{y})\",{x:t,y:e}))},i.prototype.rotate=function(t){var e=180*t/Math.PI;this.__addTransform(s(\"rotate({angle},{cx},{cy})\",{angle:e,cx:0,cy:0}))},i.prototype.translate=function(t,e){this.__addTransform(s(\"translate({x},{y})\",{x:t,y:e}))},i.prototype.transform=function(t,e,i,n,r,o){this.__addTransform(s(\"matrix({a},{b},{c},{d},{e},{f})\",{a:t,b:e,c:i,d:n,e:r,f:o}))},i.prototype.beginPath=function(){var t;this.__currentDefaultPath=\"\",this.__currentPosition={},t=this.__createElement(\"path\",{},!0),this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t},i.prototype.__applyCurrentDefaultPath=function(){var t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)},i.prototype.__addPathCommand=function(t){this.__currentDefaultPath+=\" \",this.__currentDefaultPath+=t},i.prototype.moveTo=function(t,e){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.__currentPosition={x:t,y:e},this.__addPathCommand(s(\"M {x} {y}\",{x:t,y:e}))},i.prototype.closePath=function(){this.__currentDefaultPath&&this.__addPathCommand(\"Z\")},i.prototype.lineTo=function(t,e){this.__currentPosition={x:t,y:e},this.__currentDefaultPath.indexOf(\"M\")>-1?this.__addPathCommand(s(\"L {x} {y}\",{x:t,y:e})):this.__addPathCommand(s(\"M {x} {y}\",{x:t,y:e}))},i.prototype.bezierCurveTo=function(t,e,i,n,r,o){this.__currentPosition={x:r,y:o},this.__addPathCommand(s(\"C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}\",{cp1x:t,cp1y:e,cp2x:i,cp2y:n,x:r,y:o}))},i.prototype.quadraticCurveTo=function(t,e,i,n){this.__currentPosition={x:i,y:n},this.__addPathCommand(s(\"Q {cpx} {cpy} {x} {y}\",{cpx:t,cpy:e,x:i,y:n}))};var h=function(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]};i.prototype.arcTo=function(t,e,i,n,r){var o=this.__currentPosition&&this.__currentPosition.x,s=this.__currentPosition&&this.__currentPosition.y;if(void 0!==o&&void 0!==s){if(r<0)throw new Error(\"IndexSizeError: The radius provided (\"+r+\") is negative.\");if(o===t&&s===e||t===i&&e===n||0===r)this.lineTo(t,e);else{var a=h([o-t,s-e]),l=h([i-t,n-e]);if(a[0]*l[1]!=a[1]*l[0]){var u=a[0]*l[0]+a[1]*l[1],c=Math.acos(Math.abs(u)),_=h([a[0]+l[0],a[1]+l[1]]),p=r/Math.sin(c/2),d=t+p*_[0],f=e+p*_[1],v=[-a[1],a[0]],m=[l[1],-l[0]],g=function(t){var e=t[0],i=t[1];return i>=0?Math.acos(e):-Math.acos(e)},y=g(v),b=g(m);this.lineTo(d+v[0]*r,f+v[1]*r),this.arc(d,f,r,y,b)}else this.lineTo(t,e)}}},i.prototype.stroke=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill stroke markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\")},i.prototype.fill=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke fill markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\")},i.prototype.rect=function(t,e,i,n){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.lineTo(t,e),this.closePath()},i.prototype.fillRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"fill\")},i.prototype.strokeRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"stroke\")},i.prototype.__clearCanvas=function(){for(var t=this.__closestGroupOrSvg(),e=t.getAttribute(\"transform\"),i=this.__root.childNodes[1],n=i.childNodes,r=n.length-1;r>=0;r--)n[r]&&i.removeChild(n[r]);this.__currentElement=i,this.__groupStack=[],e&&this.__addTransform(e)},i.prototype.clearRect=function(t,e,i,n){if(0!==t||0!==e||i!==this.width||n!==this.height){var r,o=this.__closestGroupOrSvg();r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n,fill:\"#FFFFFF\"},!0),o.appendChild(r)}else this.__clearCanvas()},i.prototype.createLinearGradient=function(t,e,i,r){var o=this.__createElement(\"linearGradient\",{id:a(this.__ids),x1:t+\"px\",x2:i+\"px\",y1:e+\"px\",y2:r+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(o),new n(o,this)},i.prototype.createRadialGradient=function(t,e,i,r,o,s){var l=this.__createElement(\"radialGradient\",{id:a(this.__ids),cx:r+\"px\",cy:o+\"px\",r:s+\"px\",fx:t+\"px\",fy:e+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(l),new n(l,this)},i.prototype.__parseFont=function(){var t=/^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i.exec(this.font),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\",href:null};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),this.__fontHref&&(e.href=this.__fontHref),e},i.prototype.__wrapTextLink=function(t,e){if(t.href){var i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e},i.prototype.__applyText=function(t,e,i,n){var r,o,s=this.__parseFont(),a=this.__closestGroupOrSvg(),h=this.__createElement(\"text\",{\"font-family\":s.family,\"font-size\":s.size,\"font-style\":s.style,\"font-weight\":s.weight,\"text-decoration\":s.decoration,x:e,y:i,\"text-anchor\":(r=this.textAlign,o={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"},o[r]||o.start),\"dominant-baseline\":l(this.textBaseline)},!0);h.appendChild(this.__document.createTextNode(t)),this.__currentElement=h,this.__applyStyleToCurrentElement(n),a.appendChild(this.__wrapTextLink(s,h))},i.prototype.fillText=function(t,e,i){this.__applyText(t,e,i,\"fill\")},i.prototype.strokeText=function(t,e,i){this.__applyText(t,e,i,\"stroke\")},i.prototype.measureText=function(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)},i.prototype.arc=function(t,e,i,n,r,o){if(n!==r){n%=2*Math.PI,r%=2*Math.PI,n===r&&(r=(r+2*Math.PI-.001*(o?-1:1))%(2*Math.PI));var a=t+i*Math.cos(r),l=e+i*Math.sin(r),h=t+i*Math.cos(n),u=e+i*Math.sin(n),c=o?0:1,_=0,p=r-n;p<0&&(p+=2*Math.PI),_=o?p>Math.PI?0:1:p>Math.PI?1:0,this.lineTo(h,u),this.__addPathCommand(s(\"A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}\",{rx:i,ry:i,xAxisRotation:0,largeArcFlag:_,sweepFlag:c,endX:a,endY:l})),this.__currentPosition={x:a,y:l}}},i.prototype.clip=function(){var t=this.__closestGroupOrSvg(),e=this.__createElement(\"clipPath\"),i=a(this.__ids),n=this.__createElement(\"g\");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),e.setAttribute(\"id\",i),e.appendChild(this.__currentElement),this.__defs.appendChild(e),t.setAttribute(\"clip-path\",s(\"url(#{id})\",{id:i})),t.appendChild(n),this.__currentElement=n},i.prototype.drawImage=function(){var t,e,n,r,o,s,a,l,h,u,c,_,p,d,f=Array.prototype.slice.call(arguments),v=f[0],m=0,g=0;if(3===f.length)t=f[1],e=f[2],o=v.width,s=v.height,n=o,r=s;else if(5===f.length)t=f[1],e=f[2],n=f[3],r=f[4],o=v.width,s=v.height;else{if(9!==f.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);m=f[1],g=f[2],o=f[3],s=f[4],t=f[5],e=f[6],n=f[7],r=f[8]}a=this.__closestGroupOrSvg(),this.__currentElement;var y=\"translate(\"+t+\", \"+e+\")\";if(v instanceof i){if((l=v.getSvg().cloneNode(!0)).childNodes&&l.childNodes.length>1){for(h=l.childNodes[0];h.childNodes.length;)d=h.childNodes[0].getAttribute(\"id\"),this.__ids[d]=d,this.__defs.appendChild(h.childNodes[0]);if(u=l.childNodes[1]){var b,x=u.getAttribute(\"transform\");b=x?x+\" \"+y:y,u.setAttribute(\"transform\",b),a.appendChild(u)}}}else\"IMG\"===v.nodeName?((c=this.__createElement(\"image\")).setAttribute(\"width\",n),c.setAttribute(\"height\",r),c.setAttribute(\"preserveAspectRatio\",\"none\"),(m||g||o!==v.width||s!==v.height)&&((_=this.__document.createElement(\"canvas\")).width=n,_.height=r,(p=_.getContext(\"2d\")).drawImage(v,m,g,o,s,0,0,n,r),v=_),c.setAttribute(\"transform\",y),c.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===v.nodeName?v.toDataURL():v.getAttribute(\"src\")),a.appendChild(c)):\"CANVAS\"===v.nodeName&&((c=this.__createElement(\"image\")).setAttribute(\"width\",n),c.setAttribute(\"height\",r),c.setAttribute(\"preserveAspectRatio\",\"none\"),(_=this.__document.createElement(\"canvas\")).width=n,_.height=r,(p=_.getContext(\"2d\")).imageSmoothingEnabled=!1,p.mozImageSmoothingEnabled=!1,p.oImageSmoothingEnabled=!1,p.webkitImageSmoothingEnabled=!1,p.drawImage(v,m,g,o,s,0,0,n,r),v=_,c.setAttribute(\"transform\",y),c.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",v.toDataURL()),a.appendChild(c))},i.prototype.createPattern=function(t,e){var n,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),s=a(this.__ids);return o.setAttribute(\"id\",s),o.setAttribute(\"width\",t.width),o.setAttribute(\"height\",t.height),\"CANVAS\"===t.nodeName||\"IMG\"===t.nodeName?((n=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\")).setAttribute(\"width\",t.width),n.setAttribute(\"height\",t.height),n.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===t.nodeName?t.toDataURL():t.getAttribute(\"src\")),o.appendChild(n),this.__defs.appendChild(o)):t instanceof i&&(o.appendChild(t.__root.childNodes[1]),this.__defs.appendChild(o)),new r(o,this)},i.prototype.setLineDash=function(t){t&&t.length>0?this.lineDash=t.join(\",\"):this.lineDash=null},i.prototype.drawFocusRing=function(){},i.prototype.createImageData=function(){},i.prototype.getImageData=function(){},i.prototype.putImageData=function(){},i.prototype.globalCompositeOperation=function(){},i.prototype.setTransform=function(){},\"object\"==typeof window&&(window.C2S=i),\"object\"==typeof e&&\"object\"==typeof e.exports&&(e.exports=i)}()},function(t,e,i){var n,r=t(329),o=t(339),s=t(344),a=t(338),l=t(344),h=t(346),u=Function.prototype.bind,c=Object.defineProperty,_=Object.prototype.hasOwnProperty;n=function(t,e,i){var n,o=h(e)&&l(e.value);return delete(n=r(e)).writable,delete n.value,n.get=function(){return!i.overwriteDefinition&&_.call(this,t)?o:(e.value=u.call(o,i.resolveContext?i.resolveContext(this):this),c(this,t,e),this[t])},n},e.exports=function(t){var e=o(arguments[1]);return null!=e.resolveContext&&s(e.resolveContext),a(t,function(t,i){return n(i,t,e)})}},function(t,e,i){var n=t(326),r=t(339),o=t(332),s=t(347);(e.exports=function(t,e){var i,o,a,l,h;return arguments.length<2||\"string\"!=typeof t?(l=e,e=t,t=null):l=arguments[2],null==t?(i=a=!0,o=!1):(i=s.call(t,\"c\"),o=s.call(t,\"e\"),a=s.call(t,\"w\")),h={value:e,configurable:i,enumerable:o,writable:a},l?n(r(l),h):h}).gs=function(t,e,i){var a,l,h,u;return\"string\"!=typeof t?(h=i,i=e,e=t,t=null):h=arguments[3],null==e?e=void 0:o(e)?null==i?i=void 0:o(i)||(h=i,i=void 0):(h=e,e=i=void 0),null==t?(a=!0,l=!1):(a=s.call(t,\"c\"),l=s.call(t,\"e\")),u={get:e,set:i,configurable:a,enumerable:l},h?n(r(h),u):u}},function(t,e,i){var n=t(346);e.exports=function(){return n(this).length=0,this}},function(t,e,i){var n=t(320),r=t(324),o=t(346),s=Array.prototype.indexOf,a=Object.prototype.hasOwnProperty,l=Math.abs,h=Math.floor;e.exports=function(t){var e,i,u,c;if(!n(t))return s.apply(this,arguments);for(i=r(o(this).length),u=arguments[1],u=isNaN(u)?0:u>=0?h(u):r(this.length)-h(l(u)),e=u;e=55296&&g<=56319&&(w+=t[++i]),w=k?_.call(k,T,w,f):w,e?(p.value=w,d(v,f,p)):v[f]=w,++f;m=f}if(void 0===m)for(m=s(t.length),e&&(v=new e(m)),i=0;i0?1:-1}},function(t,e,i){e.exports=t(321)()?Number.isNaN:t(322)},function(t,e,i){e.exports=function(){var t=Number.isNaN;return\"function\"==typeof t&&!t({})&&t(NaN)&&!t(34)}},function(t,e,i){e.exports=function(t){return t!=t}},function(t,e,i){var n=t(317),r=Math.abs,o=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*o(r(t)):t}},function(t,e,i){var n=t(323),r=Math.max;e.exports=function(t){return r(0,n(t))}},function(t,e,i){var n=t(344),r=t(346),o=Function.prototype.bind,s=Function.prototype.call,a=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(t,e){return function(i,h){var u,c=arguments[2],_=arguments[3];return i=Object(r(i)),n(h),u=a(i),_&&u.sort(\"function\"==typeof _?o.call(_,i):void 0),\"function\"!=typeof t&&(t=u[t]),s.call(t,u,function(t,n){return l.call(i,t)?s.call(h,c,i[t],t,i,n):e})}}},function(t,e,i){e.exports=t(327)()?Object.assign:t(328)},function(t,e,i){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\")}},function(t,e,i){var n=t(335),r=t(346),o=Math.max;e.exports=function(t,e){var i,s,a,l=o(arguments.length,2);for(t=Object(r(t)),a=function(n){try{t[n]=e[n]}catch(t){i||(i=t)}},s=1;s-1}},function(t,e,i){var n=Object.prototype.toString,r=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===r)||!1}},function(t,e,i){var n=Object.create(null),r=Math.random;e.exports=function(){var t;do{t=r().toString(36).slice(2)}while(n[t]);return t}},function(t,e,i){var n,r=t(341),o=t(347),s=t(307),a=t(366),l=t(355),h=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?o.call(e,\"key+value\")?\"key+value\":o.call(e,\"key\")?\"key\":\"value\":\"value\",h(this,\"__kind__\",s(\"\",e))},r&&r(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:s(function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t})}),h(n.prototype,a.toStringTag,s(\"c\",\"Array Iterator\"))},function(t,e,i){var n=t(313),r=t(344),o=t(350),s=t(354),a=Array.isArray,l=Function.prototype.call,h=Array.prototype.some;e.exports=function(t,e){var i,u,c,_,p,d,f,v,m=arguments[2];if(a(t)||n(t)?i=\"array\":o(t)?i=\"string\":t=s(t),r(e),c=function(){_=!0},\"array\"!==i)if(\"string\"!==i)for(u=t.next();!u.done;){if(l.call(e,m,u.value,c),_)return;u=t.next()}else for(d=t.length,p=0;p=55296&&v<=56319&&(f+=t[++p]),l.call(e,m,f,c),!_);++p);else h.call(t,function(t){return l.call(e,m,t,c),_})}},function(t,e,i){var n=t(313),r=t(350),o=t(352),s=t(357),a=t(358),l=t(366).iterator;e.exports=function(t){return\"function\"==typeof a(t)[l]?t[l]():n(t)?new o(t):r(t)?new s(t):new o(t)}},function(t,e,i){var n,r=t(308),o=t(326),s=t(344),a=t(346),l=t(307),h=t(306),u=t(366),c=Object.defineProperty,_=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");_(this,{__list__:l(\"w\",a(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(s(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,_(n.prototype,o({_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,i){e>=t&&(this.__redo__[i]=++e)},this),this.__redo__.push(t)):c(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,i){e>t&&(this.__redo__[i]=--e)},this)))}),_onClear:l(function(){this.__redo__&&r.call(this.__redo__),this.__nextIndex__=0})}))),c(n.prototype,u.iterator,l(function(){return this}))},function(t,e,i){var n=t(313),r=t(334),o=t(350),s=t(366).iterator,a=Array.isArray;e.exports=function(t){return!(!r(t)||!a(t)&&!o(t)&&!n(t)&&\"function\"!=typeof t[s])}},function(t,e,i){var n,r=t(341),o=t(307),s=t(366),a=t(355),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),a.call(this,t),l(this,\"__length__\",o(\"\",t.length))},r&&r(n,a),delete n.prototype.constructor,n.prototype=Object.create(a.prototype,{_next:o(function(){if(this.__list__)return this.__nextIndex__=55296&&e<=56319?i+this.__list__[this.__nextIndex__++]:i})}),l(n.prototype,s.toStringTag,o(\"c\",\"String Iterator\"))},function(t,e,i){var n=t(356);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},function(t,e,i){t(360)()||Object.defineProperty(t(316),\"Map\",{value:t(364),configurable:!0,enumerable:!1,writable:!0})},function(t,e,i){e.exports=function(){var t,e,i;if(\"function\"!=typeof Map)return!1;try{t=new Map([[\"raz\",\"one\"],[\"dwa\",\"two\"],[\"trzy\",\"three\"]])}catch(t){return!1}return\"[object Map]\"===String(t)&&3===t.size&&\"function\"==typeof t.clear&&\"function\"==typeof t.delete&&\"function\"==typeof t.entries&&\"function\"==typeof t.forEach&&\"function\"==typeof t.get&&\"function\"==typeof t.has&&\"function\"==typeof t.keys&&\"function\"==typeof t.set&&\"function\"==typeof t.values&&(e=t.entries(),!1===(i=e.next()).done&&!!i.value&&\"raz\"===i.value[0]&&\"one\"===i.value[1])}},function(t,e,i){e.exports=\"undefined\"!=typeof Map&&\"[object Map]\"===Object.prototype.toString.call(new Map)},function(t,e,i){e.exports=t(340)(\"key\",\"value\",\"key+value\")},function(t,e,i){var n,r=t(341),o=t(307),s=t(355),a=t(366).toStringTag,l=t(362),h=Object.defineProperties,u=s.prototype._unBind;n=e.exports=function(t,e){if(!(this instanceof n))return new n(t,e);s.call(this,t.__mapKeysData__,t),e&&l[e]||(e=\"key+value\"),h(this,{__kind__:o(\"\",e),__values__:o(\"w\",t.__mapValuesData__)})},r&&r(n,s),n.prototype=Object.create(s.prototype,{constructor:o(n),_resolve:o(function(t){return\"value\"===this.__kind__?this.__values__[t]:\"key\"===this.__kind__?this.__list__[t]:[this.__list__[t],this.__values__[t]]}),_unBind:o(function(){this.__values__=null,u.call(this)}),toString:o(function(){return\"[object Map Iterator]\"})}),Object.defineProperty(n.prototype,a,o(\"c\",\"Map Iterator\"))},function(t,e,i){var n,r=t(308),o=t(309),s=t(341),a=t(344),l=t(346),h=t(307),u=t(375),c=t(366),_=t(358),p=t(353),d=t(363),f=t(361),v=Function.prototype.call,m=Object.defineProperties,g=Object.getPrototypeOf;e.exports=n=function(){var t,e,i,r=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return i=f&&s&&Map!==n?s(new Map,g(this)):this,null!=r&&_(r),m(i,{__mapKeysData__:h(\"c\",t=[]),__mapValuesData__:h(\"c\",e=[])}),r?(p(r,function(i){var n=l(i)[0];i=i[1],-1===o.call(t,n)&&(t.push(n),e.push(i))},i),i):i},f&&(s&&s(n,Map),n.prototype=Object.create(Map.prototype,{constructor:h(n)})),u(m(n.prototype,{clear:h(function(){this.__mapKeysData__.length&&(r.call(this.__mapKeysData__),r.call(this.__mapValuesData__),this.emit(\"_clear\"))}),delete:h(function(t){var e=o.call(this.__mapKeysData__,t);return-1!==e&&(this.__mapKeysData__.splice(e,1),this.__mapValuesData__.splice(e,1),this.emit(\"_delete\",e,t),!0)}),entries:h(function(){return new d(this,\"key+value\")}),forEach:h(function(t){var e,i,n=arguments[1];for(a(t),e=this.entries(),i=e._next();void 0!==i;)v.call(t,n,this.__mapValuesData__[i],this.__mapKeysData__[i],this),i=e._next()}),get:h(function(t){var e=o.call(this.__mapKeysData__,t);if(-1!==e)return this.__mapValuesData__[e]}),has:h(function(t){return-1!==o.call(this.__mapKeysData__,t)}),keys:h(function(){return new d(this,\"key\")}),set:h(function(t,e){var i,n=o.call(this.__mapKeysData__,t);return-1===n&&(n=this.__mapKeysData__.push(t)-1,i=!0),this.__mapValuesData__[n]=e,i&&this.emit(\"_add\",n,t),this}),size:h.gs(function(){return this.__mapKeysData__.length}),values:h(function(){return new d(this,\"value\")}),toString:h(function(){return\"[object Map]\"})})),Object.defineProperty(n.prototype,c.iterator,h(function(){return this.entries()})),Object.defineProperty(n.prototype,c.toStringTag,h(\"c\",\"Map\"))},function(t,e,i){\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.6+9869a4bc\n", + " */\n", + " !function(t,n){\"object\"==typeof i&&void 0!==e?e.exports=n():t.ES6Promise=n()}(this,function(){\"use strict\";function e(t){return\"function\"==typeof t}var i=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},n=0,r=void 0,o=void 0,s=function(t,e){p[n]=t,p[n+1]=e,2===(n+=2)&&(o?o(d):y())},a=\"undefined\"!=typeof window?window:void 0,l=a||{},h=l.MutationObserver||l.WebKitMutationObserver,u=\"undefined\"==typeof self&&\"undefined\"!=typeof process&&\"[object process]\"==={}.toString.call(process),c=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function _(){var t=setTimeout;return function(){return t(d,1)}}var p=new Array(1e3);function d(){for(var t=0;t0;){var n=i-1>>1,r=this.values[n];if(e>=r)break;this.ids[i]=this.ids[n],this.values[i]=r,i=n}this.ids[i]=t,this.values[i]=e},t.prototype.pop=function(){if(0!==this.length){var t=this.ids[0];if(this.length--,this.length>0){for(var e=this.ids[0]=this.ids[this.length],i=this.values[0]=this.values[this.length],n=this.length>>1,r=0;r=i)break;this.ids[r]=a,this.values[r]=l,r=o}this.ids[r]=e,this.values[r]=i}return this.ids.pop(),this.values.pop(),t}},t.prototype.peek=function(){return this.ids[0]},t.prototype.peekValue=function(){return this.values[0]};var e=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],i=function(i,n,r,o){if(void 0===n&&(n=16),void 0===r&&(r=Float64Array),void 0===i)throw new Error(\"Missing required argument: numItems.\");if(isNaN(i)||i<=0)throw new Error(\"Unpexpected numItems value: \"+i+\".\");this.numItems=+i,this.nodeSize=Math.min(Math.max(+n,2),65535);var s=i,a=s;this._levelBounds=[4*s];do{s=Math.ceil(s/this.nodeSize),a+=s,this._levelBounds.push(4*a)}while(1!==s);this.ArrayType=r||Float64Array,this.IndexArrayType=a<16384?Uint16Array:Uint32Array;var l=e.indexOf(this.ArrayType),h=4*a*this.ArrayType.BYTES_PER_ELEMENT;if(l<0)throw new Error(\"Unexpected typed array class: \"+r+\".\");o&&o instanceof ArrayBuffer?(this.data=o,this._boxes=new this.ArrayType(this.data,8,4*a),this._indices=new this.IndexArrayType(this.data,8+h,a),this._pos=4*a,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1]):(this.data=new ArrayBuffer(8+h+a*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*a),this._indices=new this.IndexArrayType(this.data,8+h,a),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(this.data,0,2).set([251,48+l]),new Uint16Array(this.data,2,1)[0]=n,new Uint32Array(this.data,4,1)[0]=i),this._queue=new t};function n(t,e,i){return t>1;e[r]>t?n=r:i=r+1}return e[i]}function o(t,e,i,n,r){var o=t[n];t[n]=t[r],t[r]=o;var s=4*n,a=4*r,l=e[s],h=e[s+1],u=e[s+2],c=e[s+3];e[s]=e[a],e[s+1]=e[a+1],e[s+2]=e[a+2],e[s+3]=e[a+3],e[a]=l,e[a+1]=h,e[a+2]=u,e[a+3]=c;var _=i[n];i[n]=i[r],i[r]=_}function s(t,e){var i=t^e,n=65535^i,r=65535^(t|e),o=t&(65535^e),s=i|n>>1,a=i>>1^i,l=r>>1^n&o>>1^r,h=i&r>>1^o>>1^o;a=(i=s)&(n=a)>>2^n&(i^n)>>2,l^=i&(r=l)>>2^n&(o=h)>>2,h^=n&r>>2^(i^n)&o>>2,a=(i=s=i&i>>2^n&n>>2)&(n=a)>>4^n&(i^n)>>4,l^=i&(r=l)>>4^n&(o=h)>>4,h^=n&r>>4^(i^n)&o>>4,l^=(i=s=i&i>>4^n&n>>4)&(r=l)>>8^(n=a)&(o=h)>>8;var u=t^e,c=(n=(h^=n&r>>8^(i^n)&o>>8)^h>>1)|65535^(u|(i=l^l>>1));return((c=1431655765&((c=858993459&((c=252645135&((c=16711935&(c|c<<8))|c<<4))|c<<2))|c<<1))<<1|(u=1431655765&((u=858993459&((u=252645135&((u=16711935&(u|u<<8))|u<<4))|u<<2))|u<<1)))>>>0}return i.from=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");var n=new Uint8Array(t,0,2),r=n[0],o=n[1];if(251!==r)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(o>>4!=3)throw new Error(\"Got v\"+(o>>4)+\" data when expected v3.\");var s=new Uint16Array(t,2,1),a=s[0],l=new Uint32Array(t,4,1),h=l[0];return new i(h,a,e[15&o],t)},i.prototype.add=function(t,e,i,n){var r=this._pos>>2;this._indices[r]=r,this._boxes[this._pos++]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=i,this._boxes[this._pos++]=n,tthis.maxX&&(this.maxX=i),n>this.maxY&&(this.maxY=n)},i.prototype.finish=function(){if(this._pos>>2!==this.numItems)throw new Error(\"Added \"+(this._pos>>2)+\" items when expected \"+this.numItems+\".\");for(var t=this.maxX-this.minX,e=this.maxY-this.minY,i=new Uint32Array(this.numItems),n=0;n=s)){for(var a=e[r+s>>1],l=r-1,h=s+1;;){do{l++}while(e[l]a);if(l>=h)break;o(e,i,n,l,h)}t(e,i,n,r,h),t(e,i,n,h+1,s)}}(i,this._boxes,this._indices,0,this.numItems-1);for(var p=0,d=0;pg&&(g=T),C>y&&(y=C)}this._indices[this._pos>>2]=b,this._boxes[this._pos++]=v,this._boxes[this._pos++]=m,this._boxes[this._pos++]=g,this._boxes[this._pos++]=y}},i.prototype.search=function(t,e,i,n,r){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var o=this._boxes.length-4,s=this._levelBounds.length-1,a=[],l=[];void 0!==o;){for(var h=Math.min(o+4*this.nodeSize,this._levelBounds[s]),u=o;u>2];ithis._boxes[u+2]||e>this._boxes[u+3]||(o<4*this.numItems?(void 0===r||r(c))&&l.push(c):(a.push(c),a.push(s-1)))}s=a.pop(),o=a.pop()}return l},i.prototype.neighbors=function(t,e,i,o,s){if(void 0===i&&(i=1/0),void 0===o&&(o=1/0),this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var a=this._boxes.length-4,l=this._queue,h=[],u=o*o;void 0!==a;){for(var c=Math.min(a+4*this.nodeSize,r(a,this._levelBounds)),_=a;_>2],d=n(t,this._boxes[_],this._boxes[_+2]),f=n(e,this._boxes[_+1],this._boxes[_+3]),v=d*d+f*f;a<4*this.numItems?(void 0===s||s(p))&&l.push(-p-1,v):l.push(p,v)}for(;l.length&&l.peek()<0;){var m=l.peekValue();if(m>u)return l.clear(),h;if(h.push(-l.pop()-1),h.length===i)return l.clear(),h}a=l.pop()}return l.clear(),h},i},\"object\"==typeof i&&void 0!==e?e.exports=r():(n=n||self).Flatbush=r()},function(t,e,i){\n", + " /*! Hammer.JS - v2.0.7 - 2016-04-22\n", + " * http://hammerjs.github.io/\n", + " *\n", + " * Copyright (c) 2016 Jorik Tangelder;\n", + " * Licensed under the MIT license */\n", + " !function(t,i,n,r){\"use strict\";var o,s=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],a=i.createElement(\"div\"),l=\"function\",h=Math.round,u=Math.abs,c=Date.now;function _(t,e,i){return setTimeout(y(t,i),e)}function p(t,e,i){return!!Array.isArray(t)&&(d(t,i[e],i),!0)}function d(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==r)for(n=0;n\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",o=t.console&&(t.console.warn||t.console.log);return o&&o.call(t.console,r,n),e.apply(this,arguments)}}o=\"function\"!=typeof Object.assign?function(t){if(t===r||null===t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),i=1;i-1}function S(t){return t.trim().split(/\\s+/g)}function A(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var n=0;ni[e]}):n.sort()),n}function z(t,e){for(var i,n,o=e[0].toUpperCase()+e.slice(1),a=0;a1&&!i.firstMultiple?i.firstMultiple=Q(e):1===o&&(i.firstMultiple=!1);var s=i.firstInput,a=i.firstMultiple,l=a?a.center:s.center,h=e.center=tt(n);e.timeStamp=c(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=rt(l,h),e.distance=nt(l,h),function(t,e){var i=e.center,n=t.offsetDelta||{},r=t.prevDelta||{},o=t.prevInput||{};e.eventType!==B&&o.eventType!==I||(r=t.prevDelta={x:o.deltaX||0,y:o.deltaY||0},n=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=r.x+(i.x-n.x),e.deltaY=r.y+(i.y-n.y)}(i,e),e.offsetDirection=it(e.deltaX,e.deltaY);var _,p,d=et(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=u(d.x)>u(d.y)?d.x:d.y,e.scale=a?(_=a.pointers,nt((p=n)[0],p[1],K)/nt(_[0],_[1],K)):1,e.rotation=a?function(t,e){return rt(e[1],e[0],K)+rt(t[1],t[0],K)}(a.pointers,n):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,function(t,e){var i,n,o,s,a=t.lastInterval||e,l=e.timeStamp-a.timeStamp;if(e.eventType!=L&&(l>F||a.velocity===r)){var h=e.deltaX-a.deltaX,c=e.deltaY-a.deltaY,_=et(l,h,c);n=_.x,o=_.y,i=u(_.x)>u(_.y)?_.x:_.y,s=it(h,c),t.lastInterval=e}else i=a.velocity,n=a.velocityX,o=a.velocityY,s=a.direction;e.velocity=i,e.velocityX=n,e.velocityY=o,e.direction=s}(i,e);var f=t.element;T(e.srcEvent.target,f)&&(f=e.srcEvent.target),e.target=f}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function Q(t){for(var e=[],i=0;i=u(e)?t<0?G:U:e<0?Y:q}function nt(t,e,i){i||(i=J);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function rt(t,e,i){i||(i=J);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return 180*Math.atan2(r,n)/Math.PI}$.prototype={handler:function(){},init:function(){this.evEl&&w(this.element,this.evEl,this.domHandler),this.evTarget&&w(this.target,this.evTarget,this.domHandler),this.evWin&&w(P(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&k(this.element,this.evEl,this.domHandler),this.evTarget&&k(this.target,this.evTarget,this.domHandler),this.evWin&&k(P(this.element),this.evWin,this.domHandler)}};var ot={mousedown:B,mousemove:R,mouseup:I},st=\"mousedown\",at=\"mousemove mouseup\";function lt(){this.evEl=st,this.evWin=at,this.pressed=!1,$.apply(this,arguments)}g(lt,$,{handler:function(t){var e=ot[t.type];e&B&&0===t.button&&(this.pressed=!0),e&R&&1!==t.which&&(e=I),this.pressed&&(e&I&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var ht={pointerdown:B,pointermove:R,pointerup:I,pointercancel:L,pointerout:L},ut={2:\"touch\",3:\"pen\",4:\"mouse\",5:\"kinect\"},ct=\"pointerdown\",_t=\"pointermove pointerup pointercancel\";function pt(){this.evEl=ct,this.evWin=_t,$.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(ct=\"MSPointerDown\",_t=\"MSPointerMove MSPointerUp MSPointerCancel\"),g(pt,$,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=ht[n],o=ut[t.pointerType]||t.pointerType,s=\"touch\"==o,a=A(e,t.pointerId,\"pointerId\");r&B&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(I|L)&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),i&&e.splice(a,1))}});var dt={touchstart:B,touchmove:R,touchend:I,touchcancel:L},ft=\"touchstart\",vt=\"touchstart touchmove touchend touchcancel\";function mt(){this.evTarget=ft,this.evWin=vt,this.started=!1,$.apply(this,arguments)}g(mt,$,{handler:function(t){var e=dt[t.type];if(e===B&&(this.started=!0),this.started){var i=function(t,e){var i=M(t.touches),n=M(t.changedTouches);return e&(I|L)&&(i=E(i.concat(n),\"identifier\",!0)),[i,n]}.call(this,t,e);e&(I|L)&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:\"touch\",srcEvent:t})}}});var gt={touchstart:B,touchmove:R,touchend:I,touchcancel:L},yt=\"touchstart touchmove touchend touchcancel\";function bt(){this.evTarget=yt,this.targetIds={},$.apply(this,arguments)}g(bt,$,{handler:function(t){var e=gt[t.type],i=function(t,e){var i=M(t.touches),n=this.targetIds;if(e&(B|R)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,o,s=M(t.changedTouches),a=[],l=this.target;if(o=i.filter(function(t){return T(t.target,l)}),e===B)for(r=0;r-1&&n.splice(t,1)},xt)}}g(kt,$,{handler:function(t,e,i){var n=\"touch\"==i.pointerType,r=\"mouse\"==i.pointerType;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)(function(t,e){t&B?(this.primaryTouch=e.changedPointers[0].identifier,Tt.call(this,e)):t&(I|L)&&Tt.call(this,e)}).call(this,e,i);else if(r&&function(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,i=this.state;function n(i){e.manager.emit(i,t)}i=Bt&&n(e.options.event+Vt(i))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Yt.prototype.attrTest.call(this,t)&&(this.state&Dt||!(this.state&Dt)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Gt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),g(Xt,Yt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[Et]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&Dt)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),g(Ht,Lt,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[At]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distancee.time;if(this._input=t,!n||!i||t.eventType&(I|L)&&!r)this.reset();else if(t.eventType&B)this.reset(),this._timer=_(function(){this.state=Rt,this.tryEmit()},e.time,this);else if(t.eventType&I)return Rt;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===Rt&&(t&&t.eventType&I?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=c(),this.manager.emit(this.options.event,this._input)))}}),g(Wt,Yt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[Et]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&Dt)}}),g(Jt,Yt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:X|H,pointers:1},getTouchAction:function(){return qt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(X|H)?e=t.overallVelocity:i&X?e=t.overallVelocityX:i&H&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&u(e)>this.options.velocity&&t.eventType&I},emit:function(t){var e=Gt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),g(Kt,Lt,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Mt]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distance-1?function(t,e){var i,n,r,o,s;return s=t.toString(),i=s.split(\"e\")[0],o=s.split(\"e\")[1],n=i.split(\".\")[0],r=i.split(\".\")[1]||\"\",s=n+r+u(o-r.length),e>0&&(s+=\".\"+u(e)),s}(t,e):(i(t*s)/s).toFixed(e),n&&(r=new RegExp(\"0{1,\"+n+\"}$\"),o=o.replace(r,\"\")),o}function _(t,e,i){return e.indexOf(\"$\")>-1?function(t,e,i){var n,o,a=e,l=a.indexOf(\"$\"),h=a.indexOf(\"(\"),u=a.indexOf(\"+\"),c=a.indexOf(\"-\"),_=\"\",d=\"\";if(-1===a.indexOf(\"$\")?\"infix\"===r[s].currency.position?(d=r[s].currency.symbol,r[s].currency.spaceSeparated&&(d=\" \"+d+\" \")):r[s].currency.spaceSeparated&&(_=\" \"):a.indexOf(\" $\")>-1?(_=\" \",a=a.replace(\" $\",\"\")):a.indexOf(\"$ \")>-1?(_=\" \",a=a.replace(\"$ \",\"\")):a=a.replace(\"$\",\"\"),o=p(t,a,i,d),-1===e.indexOf(\"$\"))switch(r[s].currency.position){case\"postfix\":o.indexOf(\")\")>-1?((o=o.split(\"\")).splice(-1,0,_+r[s].currency.symbol),o=o.join(\"\")):o=o+_+r[s].currency.symbol;break;case\"infix\":break;case\"prefix\":o.indexOf(\"(\")>-1||o.indexOf(\"-\")>-1?(o=o.split(\"\"),n=Math.max(h,c)+1,o.splice(n,0,r[s].currency.symbol+_),o=o.join(\"\")):o=r[s].currency.symbol+_+o;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else l<=1?o.indexOf(\"(\")>-1||o.indexOf(\"+\")>-1||o.indexOf(\"-\")>-1?(o=o.split(\"\"),n=1,(l-1?((o=o.split(\"\")).splice(-1,0,_+r[s].currency.symbol),o=o.join(\"\")):o=o+_+r[s].currency.symbol;return o}(t,e,i):e.indexOf(\"%\")>-1?function(t,e,i){var n,r=\"\";return t*=100,e.indexOf(\" %\")>-1?(r=\" \",e=e.replace(\" %\",\"\")):e=e.replace(\"%\",\"\"),(n=p(t,e,i)).indexOf(\")\")>-1?((n=n.split(\"\")).splice(-1,0,r+\"%\"),n=n.join(\"\")):n=n+r+\"%\",n}(t,e,i):e.indexOf(\":\")>-1?function(t){var e=Math.floor(t/60/60),i=Math.floor((t-60*e*60)/60),n=Math.round(t-60*e*60-60*i);return e+\":\"+(i<10?\"0\"+i:i)+\":\"+(n<10?\"0\"+n:n)}(t):p(t,e,i)}function p(t,e,i,n){var o,l,h,u,_,p,d,f,v,m,g,y,b,x,w,k,T,C,S,A=!1,M=!1,E=!1,z=\"\",O=!1,P=!1,j=!1,N=!1,D=!1,F=\"\",B=\"\",R=Math.abs(t),I=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],L=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],V=\"\",G=!1,U=!1;if(0===t&&null!==a)return a;if(!isFinite(t))return\"\"+t;if(0===e.indexOf(\"{\")){var Y=e.indexOf(\"}\");if(-1===Y)throw Error('Format should also contain a \"}\"');y=e.slice(1,Y),e=e.slice(Y+1)}else y=\"\";if(e.indexOf(\"}\")===e.length-1){var q=e.indexOf(\"{\");if(-1===q)throw Error('Format should also contain a \"{\"');b=e.slice(q+1,-1),e=e.slice(0,q+1)}else b=\"\";if(S=-1===e.indexOf(\".\")?e.match(/([0-9]+).*/):e.match(/([0-9]+)\\..*/),C=null===S?-1:S[1].length,-1!==e.indexOf(\"-\")&&(G=!0),e.indexOf(\"(\")>-1?(A=!0,e=e.slice(1,-1)):e.indexOf(\"+\")>-1&&(M=!0,e=e.replace(/\\+/g,\"\")),e.indexOf(\"a\")>-1){if(m=e.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],m=parseInt(m[0],10),O=e.indexOf(\"aK\")>=0,P=e.indexOf(\"aM\")>=0,j=e.indexOf(\"aB\")>=0,N=e.indexOf(\"aT\")>=0,D=O||P||j||N,e.indexOf(\" a\")>-1?(z=\" \",e=e.replace(\" a\",\"\")):e=e.replace(\"a\",\"\"),_=Math.floor(Math.log(R)/Math.LN10)+1,d=0==(d=_%3)?3:d,m&&0!==R&&(p=Math.floor(Math.log(R)/Math.LN10)+1-m,f=3*~~((Math.min(m,_)-d)/3),R/=Math.pow(10,f),-1===e.indexOf(\".\")&&m>3))for(e+=\"[.]\",k=(k=0===p?0:3*~~(p/3)-p)<0?k+3:k,o=0;o=Math.pow(10,12)&&!D||N?(z+=r[s].abbreviations.trillion,t/=Math.pow(10,12)):R=Math.pow(10,9)&&!D||j?(z+=r[s].abbreviations.billion,t/=Math.pow(10,9)):R=Math.pow(10,6)&&!D||P?(z+=r[s].abbreviations.million,t/=Math.pow(10,6)):(R=Math.pow(10,3)&&!D||O)&&(z+=r[s].abbreviations.thousand,t/=Math.pow(10,3)))}if(e.indexOf(\"b\")>-1)for(e.indexOf(\" b\")>-1?(F=\" \",e=e.replace(\" b\",\"\")):e=e.replace(\"b\",\"\"),u=0;u<=I.length;u++)if(l=Math.pow(1024,u),h=Math.pow(1024,u+1),t>=l&&t0&&(t/=l);break}if(e.indexOf(\"d\")>-1)for(e.indexOf(\" d\")>-1?(F=\" \",e=e.replace(\" d\",\"\")):e=e.replace(\"d\",\"\"),u=0;u<=L.length;u++)if(l=Math.pow(1e3,u),h=Math.pow(1e3,u+1),t>=l&&t0&&(t/=l);break}if(e.indexOf(\"o\")>-1&&(e.indexOf(\" o\")>-1?(B=\" \",e=e.replace(\" o\",\"\")):e=e.replace(\"o\",\"\"),r[s].ordinal&&(B+=r[s].ordinal(t))),e.indexOf(\"[.]\")>-1&&(E=!0,e=e.replace(\"[.]\",\".\")),v=t.toString().split(\".\")[0],g=e.split(\".\")[1],x=e.indexOf(\",\"),g){if(-1!==g.indexOf(\"*\")?V=c(t,t.toString().split(\".\")[1].length,i):g.indexOf(\"[\")>-1?(g=(g=g.replace(\"]\",\"\")).split(\"[\"),V=c(t,g[0].length+g[1].length,i,g[1].length)):V=c(t,g.length,i),v=V.split(\".\")[0],V.split(\".\")[1].length){var X=n?z+n:r[s].delimiters.decimal;V=X+V.split(\".\")[1]}else V=\"\";E&&0===Number(V.slice(1))&&(V=\"\")}else v=c(t,null,i);return v.indexOf(\"-\")>-1&&(v=v.slice(1),U=!0),v.length-1&&(v=v.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+r[s].delimiters.thousands)),0===e.indexOf(\".\")&&(v=\"\"),w=e.indexOf(\"(\"),T=e.indexOf(\"-\"),y+(w2||(s.length<2?!s[0].match(/^\\d+.*\\d$/)||s[0].match(l):1===s[0].length?!s[0].match(/^\\d+$/)||s[0].match(l)||!s[1].match(/^\\d+$/):!s[0].match(/^\\d+.*\\d$/)||s[0].match(l)||!s[1].match(/^\\d+$/))))},e.exports={format:function(t,e,i,r){return null!=i&&i!==n.culture()&&n.setCulture(i),_(Number(t),null!=e?e:l,null==r?Math.round:r)}}},function(t,e,i){var n=t(399),r=t(397),o=t(401),s=t(396),a=t(387),l=t(392);function h(t,e){if(!(this instanceof h))return new h(t);e=e||function(t){if(t)throw t};var i=n(t);if(\"object\"==typeof i){var o=h.projections.get(i.projName);if(o){if(i.datumCode&&\"none\"!==i.datumCode){var u=a[i.datumCode];u&&(i.datum_params=u.towgs84?u.towgs84.split(\",\"):null,i.ellps=u.ellipse,i.datumName=u.datumName?u.datumName:i.datumCode)}i.k0=i.k0||1,i.axis=i.axis||\"enu\";var c=s.sphere(i.a,i.b,i.rf,i.ellps,i.sphere),_=s.eccentricity(c.a,c.b,c.rf,i.R_A),p=i.datum||l(i.datumCode,i.datum_params,c.a,c.b,_.es,_.ep2);r(this,i),r(this,o),this.a=c.a,this.b=c.b,this.rf=c.rf,this.sphere=c.sphere,this.es=_.es,this.e=_.e,this.ep2=_.ep2,this.datum=p,this.init(),e(null,this)}else e(t)}else e(t)}h.projections=o,h.projections.start(),e.exports=h},function(t,e,i){e.exports=function(t,e,i){var n,r,o,s=i.x,a=i.y,l=i.z||0,h={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==i.z)switch(0===o?(n=s,r=\"x\"):1===o?(n=a,r=\"y\"):(n=l,r=\"z\"),t.axis[o]){case\"e\":h[r]=n;break;case\"w\":h[r]=-n;break;case\"n\":h[r]=n;break;case\"s\":h[r]=-n;break;case\"u\":void 0!==i[r]&&(h.z=n);break;case\"d\":void 0!==i[r]&&(h.z=-n);break;default:return null}return h}},function(t,e,i){var n=2*Math.PI,r=t(384);e.exports=function(t){return Math.abs(t)<=3.14159265359?t:t-r(t)*n}},function(t,e,i){e.exports=function(t,e,i){var n=t*e;return i/Math.sqrt(1-n*n)}},function(t,e,i){var n=Math.PI/2;e.exports=function(t,e){for(var i,r,o=.5*t,s=n-2*Math.atan(e),a=0;a<=15;a++)if(i=t*Math.sin(s),r=n-2*Math.atan(e*Math.pow((1-i)/(1+i),o))-s,s+=r,Math.abs(r)<=1e-10)return s;return-9999}},function(t,e,i){e.exports=function(t){return t<0?-1:1}},function(t,e,i){e.exports=function(t){var e={x:t[0],y:t[1]};return t.length>2&&(e.z=t[2]),t.length>3&&(e.m=t[3]),e}},function(t,e,i){var n=Math.PI/2;e.exports=function(t,e,i){var r=t*i,o=.5*t;return r=Math.pow((1-r)/(1+r),o),Math.tan(.5*(n-e))/r}},function(t,e,i){i.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},i.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},i.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},i.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},i.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},i.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},i.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},i.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},i.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},i.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},i.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},i.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},i.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},i.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},i.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},i.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},function(t,e,i){i.MERIT={a:6378137,rf:298.257,ellipseName:\"MERIT 1983\"},i.SGS85={a:6378136,rf:298.257,ellipseName:\"Soviet Geodetic System 85\"},i.GRS80={a:6378137,rf:298.257222101,ellipseName:\"GRS 1980(IUGG, 1980)\"},i.IAU76={a:6378140,rf:298.257,ellipseName:\"IAU 1976\"},i.airy={a:6377563.396,b:6356256.91,ellipseName:\"Airy 1830\"},i.APL4={a:6378137,rf:298.25,ellipseName:\"Appl. Physics. 1965\"},i.NWL9D={a:6378145,rf:298.25,ellipseName:\"Naval Weapons Lab., 1965\"},i.mod_airy={a:6377340.189,b:6356034.446,ellipseName:\"Modified Airy\"},i.andrae={a:6377104.43,rf:300,ellipseName:\"Andrae 1876 (Den., Iclnd.)\"},i.aust_SA={a:6378160,rf:298.25,ellipseName:\"Australian Natl & S. Amer. 1969\"},i.GRS67={a:6378160,rf:298.247167427,ellipseName:\"GRS 67(IUGG 1967)\"},i.bessel={a:6377397.155,rf:299.1528128,ellipseName:\"Bessel 1841\"},i.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:\"Bessel 1841 (Namibia)\"},i.clrk66={a:6378206.4,b:6356583.8,ellipseName:\"Clarke 1866\"},i.clrk80={a:6378249.145,rf:293.4663,ellipseName:\"Clarke 1880 mod.\"},i.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:\"Clarke 1858\"},i.CPM={a:6375738.7,rf:334.29,ellipseName:\"Comm. des Poids et Mesures 1799\"},i.delmbr={a:6376428,rf:311.5,ellipseName:\"Delambre 1810 (Belgium)\"},i.engelis={a:6378136.05,rf:298.2566,ellipseName:\"Engelis 1985\"},i.evrst30={a:6377276.345,rf:300.8017,ellipseName:\"Everest 1830\"},i.evrst48={a:6377304.063,rf:300.8017,ellipseName:\"Everest 1948\"},i.evrst56={a:6377301.243,rf:300.8017,ellipseName:\"Everest 1956\"},i.evrst69={a:6377295.664,rf:300.8017,ellipseName:\"Everest 1969\"},i.evrstSS={a:6377298.556,rf:300.8017,ellipseName:\"Everest (Sabah & Sarawak)\"},i.fschr60={a:6378166,rf:298.3,ellipseName:\"Fischer (Mercury Datum) 1960\"},i.fschr60m={a:6378155,rf:298.3,ellipseName:\"Fischer 1960\"},i.fschr68={a:6378150,rf:298.3,ellipseName:\"Fischer 1968\"},i.helmert={a:6378200,rf:298.3,ellipseName:\"Helmert 1906\"},i.hough={a:6378270,rf:297,ellipseName:\"Hough\"},i.intl={a:6378388,rf:297,ellipseName:\"International 1909 (Hayford)\"},i.kaula={a:6378163,rf:298.24,ellipseName:\"Kaula 1961\"},i.lerch={a:6378139,rf:298.257,ellipseName:\"Lerch 1979\"},i.mprts={a:6397300,rf:191,ellipseName:\"Maupertius 1738\"},i.new_intl={a:6378157.5,b:6356772.2,ellipseName:\"New International 1967\"},i.plessis={a:6376523,rf:6355863,ellipseName:\"Plessis 1817 (France)\"},i.krass={a:6378245,rf:298.3,ellipseName:\"Krassovsky, 1942\"},i.SEasia={a:6378155,b:6356773.3205,ellipseName:\"Southeast Asia\"},i.walbeck={a:6376896,b:6355834.8467,ellipseName:\"Walbeck\"},i.WGS60={a:6378165,rf:298.3,ellipseName:\"WGS 60\"},i.WGS66={a:6378145,rf:298.25,ellipseName:\"WGS 66\"},i.WGS7={a:6378135,rf:298.26,ellipseName:\"WGS 72\"},i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},function(t,e,i){i.greenwich=0,i.lisbon=-9.131906111111,i.paris=2.337229166667,i.bogota=-74.080916666667,i.madrid=-3.687938888889,i.rome=12.452333333333,i.bern=7.439583333333,i.jakarta=106.807719444444,i.ferro=-17.666666666667,i.brussels=4.367975,i.stockholm=18.058277777778,i.athens=23.7163375,i.oslo=10.722916666667},function(t,e,i){i.ft={to_meter:.3048},i[\"us-ft\"]={to_meter:1200/3937}},function(t,e,i){var n=t(379),r=t(404),o=n(\"WGS84\");function s(t,e,i){var n;return Array.isArray(i)?(n=r(t,e,i),3===i.length?[n.x,n.y,n.z]:[n.x,n.y]):r(t,e,i)}function a(t){return t instanceof n?t:t.oProj?t.oProj:n(t)}e.exports=function(t,e,i){t=a(t);var n,r=!1;return void 0===e?(e=t,t=o,r=!0):(void 0!==e.x||Array.isArray(e))&&(i=e,e=t,t=o,r=!0),e=a(e),i?s(t,e,i):(n={forward:function(i){return s(t,e,i)},inverse:function(i){return s(e,t,i)}},r&&(n.oProj=e),n)}},function(t,e,i){var n=1,r=2,o=4,s=5,a=484813681109536e-20;e.exports=function(t,e,i,l,h,u){var c={};return c.datum_type=o,t&&\"none\"===t&&(c.datum_type=s),e&&(c.datum_params=e.map(parseFloat),0===c.datum_params[0]&&0===c.datum_params[1]&&0===c.datum_params[2]||(c.datum_type=n),c.datum_params.length>3&&(0===c.datum_params[3]&&0===c.datum_params[4]&&0===c.datum_params[5]&&0===c.datum_params[6]||(c.datum_type=r,c.datum_params[3]*=a,c.datum_params[4]*=a,c.datum_params[5]*=a,c.datum_params[6]=c.datum_params[6]/1e6+1))),c.a=i,c.b=l,c.es=h,c.ep2=u,c}},function(t,e,i){var n=Math.PI/2;i.compareDatums=function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||Math.abs(this.es-e.es)>5e-11)&&(1===t.datum_type?this.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])},i.geodeticToGeocentric=function(t,e,i){var r,o,s,a,l=t.x,h=t.y,u=t.z?t.z:0;if(h<-n&&h>-1.001*n)h=-n;else if(h>n&&h<1.001*n)h=n;else if(h<-n||h>n)return null;return l>Math.PI&&(l-=2*Math.PI),o=Math.sin(h),a=Math.cos(h),s=o*o,{x:((r=i/Math.sqrt(1-e*s))+u)*a*Math.cos(l),y:(r+u)*a*Math.sin(l),z:(r*(1-e)+u)*o}},i.geocentricToGeodetic=function(t,e,i,r){var o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x=t.x,w=t.y,k=t.z?t.z:0;if(o=Math.sqrt(x*x+w*w),s=Math.sqrt(x*x+w*w+k*k),o/i<1e-12){if(g=0,s/i<1e-12)return y=n,b=-r,{x:t.x,y:t.y,z:t.z}}else g=Math.atan2(w,x);a=k/s,l=o/s,h=1/Math.sqrt(1-e*(2-e)*l*l),_=l*(1-e)*h,p=a*h,m=0;do{m++,c=i/Math.sqrt(1-e*p*p),u=e*c/(c+(b=o*_+k*p-c*(1-e*p*p))),h=1/Math.sqrt(1-u*(2-u)*l*l),v=(f=a*h)*_-(d=l*(1-u)*h)*p,_=d,p=f}while(v*v>1e-24&&m<30);return y=Math.atan(f/Math.abs(d)),{x:g,y:y,z:b}},i.geocentricToWgs84=function(t,e,i){if(1===e)return{x:t.x+i[0],y:t.y+i[1],z:t.z+i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6];return{x:h*(t.x-l*t.y+a*t.z)+n,y:h*(l*t.x+t.y-s*t.z)+r,z:h*(-a*t.x+s*t.y+t.z)+o}}},i.geocentricFromWgs84=function(t,e,i){if(1===e)return{x:t.x-i[0],y:t.y-i[1],z:t.z-i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6],u=(t.x-n)/h,c=(t.y-r)/h,_=(t.z-o)/h;return{x:u+l*c-a*_,y:-l*u+c+s*_,z:a*u-s*c+_}}}},function(t,e,i){var n=1,r=2,o=t(393);function s(t){return t===n||t===r}e.exports=function(t,e,i){return o.compareDatums(t,e)?i:5===t.datum_type||5===e.datum_type?i:t.es!==e.es||t.a!==e.a||s(t.datum_type)||s(e.datum_type)?(i=o.geodeticToGeocentric(i,t.es,t.a),s(t.datum_type)&&(i=o.geocentricToWgs84(i,t.datum_type,t.datum_params)),s(e.datum_type)&&(i=o.geocentricFromWgs84(i,e.datum_type,e.datum_params)),o.geocentricToGeodetic(i,e.es,e.a,e.b)):i}},function(t,e,i){var n=t(398),r=t(400),o=t(405);function s(t){var e=this;if(2===arguments.length){var i=arguments[1];\"string\"==typeof i?\"+\"===i.charAt(0)?s[t]=r(arguments[1]):s[t]=o(arguments[1]):s[t]=i}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?s.apply(e,t):s(t)});if(\"string\"==typeof t){if(t in s)return s[t]}else\"EPSG\"in t?s[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?s[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?s[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n(s),e.exports=s},function(t,e,i){var n=t(388);i.eccentricity=function(t,e,i,n){var r=t*t,o=e*e,s=(r-o)/r,a=0;n?(r=(t*=1-s*(.16666666666666666+s*(.04722222222222222+.022156084656084655*s)))*t,s=0):a=Math.sqrt(s);var l=(r-o)/o;return{es:s,e:a,ep2:l}},i.sphere=function(t,e,i,r,o){if(!t){var s=n[r];s||(s=n.WGS84),t=s.a,e=s.b,i=s.rf}return i&&!e&&(e=(1-1/i)*t),(0===i||Math.abs(t-e)<1e-10)&&(o=!0,e=t),{a:t,b:e,rf:i,sphere:o}}},function(t,e,i){e.exports=function(t,e){var i,n;if(t=t||{},!e)return t;for(n in e)void 0!==(i=e[n])&&(t[n]=i);return t}},function(t,e,i){e.exports=function(t){t(\"EPSG:4326\",\"+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees\"),t(\"EPSG:4269\",\"+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees\"),t(\"EPSG:3857\",\"+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs\"),t.WGS84=t[\"EPSG:4326\"],t[\"EPSG:3785\"]=t[\"EPSG:3857\"],t.GOOGLE=t[\"EPSG:3857\"],t[\"EPSG:900913\"]=t[\"EPSG:3857\"],t[\"EPSG:102113\"]=t[\"EPSG:3857\"]}},function(t,e,i){var n=t(395),r=t(405),o=t(400),s=[\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\"];e.exports=function(t){return function(t){return\"string\"==typeof t}(t)?function(t){return t in n}(t)?n[t]:function(t){return s.some(function(e){return t.indexOf(e)>-1})}(t)?r(t):function(t){return\"+\"===t[0]}(t)?o(t):void 0:t}},function(t,e,i){var n=.017453292519943295,r=t(389),o=t(390);e.exports=function(t){var e,i,s,a={},l=t.split(\"+\").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var i=e.split(\"=\");return i.push(!0),t[i[0].toLowerCase()]=i[1],t},{}),h={proj:\"projName\",datum:\"datumCode\",rf:function(t){a.rf=parseFloat(t)},lat_0:function(t){a.lat0=t*n},lat_1:function(t){a.lat1=t*n},lat_2:function(t){a.lat2=t*n},lat_ts:function(t){a.lat_ts=t*n},lon_0:function(t){a.long0=t*n},lon_1:function(t){a.long1=t*n},lon_2:function(t){a.long2=t*n},alpha:function(t){a.alpha=parseFloat(t)*n},lonc:function(t){a.longc=t*n},x_0:function(t){a.x0=parseFloat(t)},y_0:function(t){a.y0=parseFloat(t)},k_0:function(t){a.k0=parseFloat(t)},k:function(t){a.k0=parseFloat(t)},a:function(t){a.a=parseFloat(t)},b:function(t){a.b=parseFloat(t)},r_a:function(){a.R_A=!0},zone:function(t){a.zone=parseInt(t,10)},south:function(){a.utmSouth=!0},towgs84:function(t){a.datum_params=t.split(\",\").map(function(t){return parseFloat(t)})},to_meter:function(t){a.to_meter=parseFloat(t)},units:function(t){a.units=t,o[t]&&(a.to_meter=o[t].to_meter)},from_greenwich:function(t){a.from_greenwich=t*n},pm:function(t){a.from_greenwich=(r[t]?r[t]:parseFloat(t))*n},nadgrids:function(t){\"@null\"===t?a.datumCode=\"none\":a.nadgrids=t},axis:function(t){3===t.length&&-1!==\"ewnsud\".indexOf(t.substr(0,1))&&-1!==\"ewnsud\".indexOf(t.substr(1,1))&&-1!==\"ewnsud\".indexOf(t.substr(2,1))&&(a.axis=t)}};for(e in l)i=l[e],e in h?\"function\"==typeof(s=h[e])?s(i):a[s]=i:a[e]=i;return\"string\"==typeof a.datumCode&&\"WGS84\"!==a.datumCode&&(a.datumCode=a.datumCode.toLowerCase()),a}},function(t,e,i){var n=[t(403),t(402)],r={},o=[];function s(t,e){var i=o.length;return t.names?(o[i]=t,t.names.forEach(function(t){r[t.toLowerCase()]=i}),this):(console.log(e),!0)}i.add=s,i.get=function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==r[e]&&o[r[e]]?o[r[e]]:void 0},i.start=function(){n.forEach(s)}},function(t,e,i){function n(t){return t}i.init=function(){},i.forward=n,i.inverse=n,i.names=[\"longlat\",\"identity\"]},function(t,e,i){var n=t(382),r=Math.PI/2,o=57.29577951308232,s=t(381),a=Math.PI/4,l=t(386),h=t(383);i.init=function(){var t=this.b/this.a;this.es=1-t*t,\"x0\"in this||(this.x0=0),\"y0\"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=n(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},i.forward=function(t){var e,i,n=t.x,h=t.y;if(h*o>90&&h*o<-90&&n*o>180&&n*o<-180)return null;if(Math.abs(Math.abs(h)-r)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*s(n-this.long0),i=this.y0+this.a*this.k0*Math.log(Math.tan(a+.5*h));else{var u=Math.sin(h),c=l(this.e,h,u);e=this.x0+this.a*this.k0*s(n-this.long0),i=this.y0-this.a*this.k0*Math.log(c)}return t.x=e,t.y=i,t},i.inverse=function(t){var e,i,n=t.x-this.x0,o=t.y-this.y0;if(this.sphere)i=r-2*Math.atan(Math.exp(-o/(this.a*this.k0)));else{var a=Math.exp(-o/(this.a*this.k0));if(-9999===(i=h(this.e,a)))return null}return e=s(this.long0+n/(this.a*this.k0)),t.x=e,t.y=i,t},i.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"]},function(t,e,i){var n=.017453292519943295,r=57.29577951308232,o=1,s=2,a=t(394),l=t(380),h=t(379),u=t(385);e.exports=function t(e,i,c){var _;return Array.isArray(c)&&(c=u(c)),e.datum&&i.datum&&function(t,e){return(t.datum.datum_type===o||t.datum.datum_type===s)&&\"WGS84\"!==e.datumCode||(e.datum.datum_type===o||e.datum.datum_type===s)&&\"WGS84\"!==t.datumCode}(e,i)&&(_=new h(\"WGS84\"),c=t(e,_,c),e=_),\"enu\"!==e.axis&&(c=l(e,!1,c)),\"longlat\"===e.projName?c={x:c.x*n,y:c.y*n}:(e.to_meter&&(c={x:c.x*e.to_meter,y:c.y*e.to_meter}),c=e.inverse(c)),e.from_greenwich&&(c.x+=e.from_greenwich),c=a(e.datum,i.datum,c),i.from_greenwich&&(c={x:c.x-i.grom_greenwich,y:c.y}),\"longlat\"===i.projName?c={x:c.x*r,y:c.y*r}:(c=i.forward(c),i.to_meter&&(c={x:c.x/i.to_meter,y:c.y/i.to_meter})),\"enu\"!==i.axis?l(i,!0,c):c}},function(t,e,i){var n=.017453292519943295,r=t(397);function o(t,e,i){t[e]=i.map(function(t){var e={};return s(t,e),e}).reduce(function(t,e){return r(t,e)},{})}function s(t,e){var i;Array.isArray(t)?(\"PARAMETER\"===(i=t.shift())&&(i=t.shift()),1===t.length?Array.isArray(t[0])?(e[i]={},s(t[0],e[i])):e[i]=t[0]:t.length?\"TOWGS84\"===i?e[i]=t:(e[i]={},[\"UNIT\",\"PRIMEM\",\"VERT_DATUM\"].indexOf(i)>-1?(e[i]={name:t[0].toLowerCase(),convert:t[1]},3===t.length&&(e[i].auth=t[2])):\"SPHEROID\"===i?(e[i]={name:t[0],a:t[1],rf:t[2]},4===t.length&&(e[i].auth=t[3])):[\"GEOGCS\",\"GEOCCS\",\"DATUM\",\"VERT_CS\",\"COMPD_CS\",\"LOCAL_CS\",\"FITTED_CS\",\"LOCAL_DATUM\"].indexOf(i)>-1?(t[0]=[\"name\",t[0]],o(e,i,t)):t.every(function(t){return Array.isArray(t)})?o(e,i,t):s(t,e[i])):e[i]=!0):e[t]=!0}function a(t){return t*n}e.exports=function(t,e){var i=JSON.parse((\",\"+t).replace(/\\s*\\,\\s*([A-Z_0-9]+?)(\\[)/g,',[\"$1\",').slice(1).replace(/\\s*\\,\\s*([A-Z_0-9]+?)\\]/g,',\"$1\"]').replace(/,\\[\"VERTCS\".+/,\"\")),n=i.shift(),o=i.shift();i.unshift([\"name\",o]),i.unshift([\"type\",n]),i.unshift(\"output\");var l={};return s(i,l),function(t){function e(e){var i=t.to_meter||1;return parseFloat(e,10)*i}\"GEOGCS\"===t.type?t.projName=\"longlat\":\"LOCAL_CS\"===t.type?(t.projName=\"identity\",t.local=!0):\"object\"==typeof t.PROJECTION?t.projName=Object.keys(t.PROJECTION)[0]:t.projName=t.PROJECTION,t.UNIT&&(t.units=t.UNIT.name.toLowerCase(),\"metre\"===t.units&&(t.units=\"meter\"),t.UNIT.convert&&(\"GEOGCS\"===t.type?t.DATUM&&t.DATUM.SPHEROID&&(t.to_meter=parseFloat(t.UNIT.convert,10)*t.DATUM.SPHEROID.a):t.to_meter=parseFloat(t.UNIT.convert,10))),t.GEOGCS&&(t.GEOGCS.DATUM?t.datumCode=t.GEOGCS.DATUM.name.toLowerCase():t.datumCode=t.GEOGCS.name.toLowerCase(),\"d_\"===t.datumCode.slice(0,2)&&(t.datumCode=t.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==t.datumCode&&\"new_zealand_1949\"!==t.datumCode||(t.datumCode=\"nzgd49\"),\"wgs_1984\"===t.datumCode&&(\"Mercator_Auxiliary_Sphere\"===t.PROJECTION&&(t.sphere=!0),t.datumCode=\"wgs84\"),\"_ferro\"===t.datumCode.slice(-6)&&(t.datumCode=t.datumCode.slice(0,-6)),\"_jakarta\"===t.datumCode.slice(-8)&&(t.datumCode=t.datumCode.slice(0,-8)),~t.datumCode.indexOf(\"belge\")&&(t.datumCode=\"rnb72\"),t.GEOGCS.DATUM&&t.GEOGCS.DATUM.SPHEROID&&(t.ellps=t.GEOGCS.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===t.ellps.toLowerCase().slice(0,13)&&(t.ellps=\"intl\"),t.a=t.GEOGCS.DATUM.SPHEROID.a,t.rf=parseFloat(t.GEOGCS.DATUM.SPHEROID.rf,10)),~t.datumCode.indexOf(\"osgb_1936\")&&(t.datumCode=\"osgb36\")),t.b&&!isFinite(t.b)&&(t.b=t.a),[[\"standard_parallel_1\",\"Standard_Parallel_1\"],[\"standard_parallel_2\",\"Standard_Parallel_2\"],[\"false_easting\",\"False_Easting\"],[\"false_northing\",\"False_Northing\"],[\"central_meridian\",\"Central_Meridian\"],[\"latitude_of_origin\",\"Latitude_Of_Origin\"],[\"latitude_of_origin\",\"Central_Parallel\"],[\"scale_factor\",\"Scale_Factor\"],[\"k0\",\"scale_factor\"],[\"latitude_of_center\",\"Latitude_of_center\"],[\"lat0\",\"latitude_of_center\",a],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longc\",\"longitude_of_center\",a],[\"x0\",\"false_easting\",e],[\"y0\",\"false_northing\",e],[\"long0\",\"central_meridian\",a],[\"lat0\",\"latitude_of_origin\",a],[\"lat0\",\"standard_parallel_1\",a],[\"lat1\",\"standard_parallel_1\",a],[\"lat2\",\"standard_parallel_2\",a],[\"alpha\",\"azimuth\",a],[\"srsCode\",\"name\"]].forEach(function(e){return i=t,r=(n=e)[0],o=n[1],void(!(r in i)&&o in i&&(i[r]=i[o],3===n.length&&(i[r]=n[2](i[r]))));var i,n,r,o}),t.long0||!t.longc||\"Albers_Conic_Equal_Area\"!==t.projName&&\"Lambert_Azimuthal_Equal_Area\"!==t.projName||(t.long0=t.longc),t.lat_ts||!t.lat1||\"Stereographic_South_Pole\"!==t.projName&&\"Polar Stereographic (variant B)\"!==t.projName||(t.lat0=a(t.lat1>0?90:-90),t.lat_ts=t.lat1)}(l.output),r(e,l.output)}},function(t,e,i){!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(i){return function(i,n){var r,o,s,a,l,h,u,c,_,p=1,d=i.length,f=\"\";for(o=0;o=0),a.type){case\"b\":r=parseInt(r,10).toString(2);break;case\"c\":r=String.fromCharCode(parseInt(r,10));break;case\"d\":case\"i\":r=parseInt(r,10);break;case\"j\":r=JSON.stringify(r,null,a.width?parseInt(a.width):0);break;case\"e\":r=a.precision?parseFloat(r).toExponential(a.precision):parseFloat(r).toExponential();break;case\"f\":r=a.precision?parseFloat(r).toFixed(a.precision):parseFloat(r);break;case\"g\":r=a.precision?String(Number(r.toPrecision(a.precision))):parseFloat(r);break;case\"o\":r=(parseInt(r,10)>>>0).toString(8);break;case\"s\":r=String(r),r=a.precision?r.substring(0,a.precision):r;break;case\"t\":r=String(!!r),r=a.precision?r.substring(0,a.precision):r;break;case\"T\":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=a.precision?r.substring(0,a.precision):r;break;case\"u\":r=parseInt(r,10)>>>0;break;case\"v\":r=r.valueOf(),r=a.precision?r.substring(0,a.precision):r;break;case\"x\":r=(parseInt(r,10)>>>0).toString(16);break;case\"X\":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}t.json.test(a.type)?f+=r:(!t.number.test(a.type)||c&&!a.sign?_=\"\":(_=c?\"+\":\"-\",r=r.toString().replace(t.sign,\"\")),h=a.pad_char?\"0\"===a.pad_char?\"0\":a.pad_char.charAt(1):\" \",u=a.width-(_+r).length,l=a.width&&u>0?h.repeat(u):\"\",f+=a.align?_+r+l:\"0\"===h?_+l+r:l+_+r)}return f}(function(e){if(r[e])return r[e];for(var i,n=e,o=[],s=0;n;){if(null!==(i=t.text.exec(n)))o.push(i[0]);else if(null!==(i=t.modulo.exec(n)))o.push(\"%\");else{if(null===(i=t.placeholder.exec(n)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(i[2]){s|=1;var a=[],l=i[2],h=[];if(null===(h=t.key.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(a.push(h[1]);\"\"!==(l=l.substring(h[0].length));)if(null!==(h=t.key_access.exec(l)))a.push(h[1]);else{if(null===(h=t.index_access.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");a.push(h[1])}i[2]=a}else s|=2;if(3===s)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");o.push({placeholder:i[0],param_no:i[1],keys:i[2],sign:i[3],pad_char:i[4],align:i[5],width:i[6],precision:i[7],type:i[8]})}n=n.substring(i[0].length)}return r[e]=o}(i),arguments)}function n(t,i){return e.apply(null,[t].concat(i||[]))}var r=Object.create(null);void 0!==i&&(i.sprintf=e,i.vsprintf=n),\"undefined\"!=typeof window&&(window.sprintf=e,window.vsprintf=n)}()},function(t,e,i){!function(t){\"object\"==typeof e&&e.exports?e.exports=t():this.tz=t()}(function(){function t(t,e,i){var n,r=e.day[1];do{n=new Date(Date.UTC(i,e.month,Math.abs(r++)))}while(e.day[0]<7&&n.getUTCDay()!=e.day[0]);return(n={clock:e.clock,sort:n.getTime(),rule:e,save:6e4*e.save,offset:t.offset})[n.clock]=n.sort+6e4*e.time,n.posix?n.wallclock=n[n.clock]+(t.offset+e.saved):n.posix=n[n.clock]-(t.offset+e.saved),n}function e(e,i,n){var r,o,s,a,l,h,u,c=e[e.zone],_=[],p=new Date(n).getUTCFullYear(),d=1;for(r=1,o=c.length;r=p-d;--u)for(r=0,o=h.length;r=_[r][i]&&_[r][_[r].clock]>s[_[r].clock]&&(a=_[r])}return a&&((l=/^(.*)\\/(.*)$/.exec(s.format))?a.abbrev=l[a.save?2:1]:a.abbrev=s.format.replace(/%s/,a.rule.letter)),a||s}function i(t,i){return\"UTC\"==t.zone?i:(t.entry=e(t,\"posix\",i),i+t.entry.offset+t.entry.save)}function n(t,i){return\"UTC\"==t.zone?i:(t.entry=n=e(t,\"wallclock\",i),0<(r=i-n.wallclock)&&r9)e+=h*l[u-10];else{if(o=new Date(i(t,e)),u<7)for(;h;)o.setUTCDate(o.getUTCDate()+a),o.getUTCDay()==u&&(h-=a);else 7==u?o.setUTCFullYear(o.getUTCFullYear()+h):8==u?o.setUTCMonth(o.getUTCMonth()+h):o.setUTCDate(o.getUTCDate()+h);null==(e=n(t,o.getTime()))&&(e=n(t,o.getTime()+864e5*a)-864e5*a)}return e}var o={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(t,e,i,n){var r,o,s=this.entry.offset+this.entry.save,a=Math.abs(s/1e3),l=[],h=3600;for(r=0;r<3;r++)l.push((\"0\"+Math.floor(a/h)).slice(-2)),a%=h,h/=60;return\"^\"!=i||s?(\"^\"==i&&(n=3),3==n?(o=(o=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=i&&(o=o.replace(/:00$/,\"\"))):n?(o=l.slice(0,n+1).join(\":\"),\"^\"==i&&(o=o.replace(/:00$/,\"\"))):o=l.slice(0,2).join(\"\"),o=(o=(s<0?\"-\":\"+\")+o).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[i]||\"$1$2\")):\"Z\"},\"%\":function(t){return\"%\"},n:function(t){return\"\\n\"},t:function(t){return\"\\t\"},U:function(t){return h(t,0)},W:function(t){return h(t,1)},V:function(t){return u(t)[0]},G:function(t){return u(t)[1]},g:function(t){return u(t)[1]%100},j:function(t){return Math.floor((t.getTime()-Date.UTC(t.getUTCFullYear(),0))/864e5)+1},s:function(t){return Math.floor(t.getTime()/1e3)},C:function(t){return Math.floor(t.getUTCFullYear()/100)},N:function(t){return t.getTime()%1e3*1e6},m:function(t){return t.getUTCMonth()+1},Y:function(t){return t.getUTCFullYear()},y:function(t){return t.getUTCFullYear()%100},H:function(t){return t.getUTCHours()},M:function(t){return t.getUTCMinutes()},S:function(t){return t.getUTCSeconds()},e:function(t){return t.getUTCDate()},d:function(t){return t.getUTCDate()},u:function(t){return t.getUTCDay()||7},w:function(t){return t.getUTCDay()},l:function(t){return t.getUTCHours()%12||12},I:function(t){return t.getUTCHours()%12||12},k:function(t){return t.getUTCHours()},Z:function(t){return this.entry.abbrev},a:function(t){return this[this.locale].day.abbrev[t.getUTCDay()]},A:function(t){return this[this.locale].day.full[t.getUTCDay()]},h:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},b:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},B:function(t){return this[this.locale].month.full[t.getUTCMonth()]},P:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)].toLowerCase()},p:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)]},R:function(t,e){return this.convert([e,\"%H:%M\"])},T:function(t,e){return this.convert([e,\"%H:%M:%S\"])},D:function(t,e){return this.convert([e,\"%m/%d/%y\"])},F:function(t,e){return this.convert([e,\"%Y-%m-%d\"])},x:function(t,e){return this.convert([e,this[this.locale].date])},r:function(t,e){return this.convert([e,this[this.locale].time12||\"%I:%M:%S\"])},X:function(t,e){return this.convert([e,this[this.locale].time24])},c:function(t,e){return this.convert([e,this[this.locale].dateTime])},convert:function(t){if(!t.length)return\"1.0.22\";var e,o,s,l,h,u=Object.create(this),c=[];for(e=0;e=r?Math.floor((i-r)/7)+1:0}function u(t){var e,i,n;return i=t.getUTCFullYear(),e=new Date(Date.UTC(i,0)).getUTCDay(),(n=h(t,1)+(e>1&&e<=4?1:0))?53!=n||4==e||3==e&&29==new Date(i,1,29).getDate()?[n,t.getUTCFullYear()]:[1,t.getUTCFullYear()+1]:(i=t.getUTCFullYear()-1,e=new Date(Date.UTC(i,0)).getUTCDay(),[n=4==e||3==e&&29==new Date(i,1,29).getDate()?53:52,t.getUTCFullYear()-1])}return s=s.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,function(t){o[t].pad=2}),o.N.pad=9,o.j.pad=3,o.k.style=\"_\",o.l.style=\"_\",o.e.style=\"_\",function(){return o.convert(arguments)}})},function(t,e,i){\n", + " /*! *****************************************************************************\n", + " Copyright (c) Microsoft Corporation. All rights reserved.\n", + " Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n", + " this file except in compliance with the License. You may obtain a copy of the\n", + " License at http://www.apache.org/licenses/LICENSE-2.0\n", + " \n", + " THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n", + " KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n", + " WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n", + " MERCHANTABLITY OR NON-INFRINGEMENT.\n", + " \n", + " See the Apache Version 2.0 License for specific language governing permissions\n", + " and limitations under the License.\n", + " ***************************************************************************** */\n", + " var n,r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x;!function(t){var i=\"object\"==typeof global?global:\"object\"==typeof self?self:\"object\"==typeof this?this:{};function n(t,e){return t!==i&&(\"function\"==typeof Object.create?Object.defineProperty(t,\"__esModule\",{value:!0}):t.__esModule=!0),function(i,n){return t[i]=e?e(i,n):n}}\"object\"==typeof e&&\"object\"==typeof e.exports?t(n(i,n(e.exports))):t(n(i))}(function(t){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};n=function(t,i){function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)},r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i=0;a--)(r=t[a])&&(s=(o<3?r(s):o>3?r(e,i,s):r(e,i))||s);return o>3&&s&&Object.defineProperty(e,i,s),s},a=function(t,e){return function(i,n){e(i,n,t)}},l=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},h=function(t,e,i,n){return new(i||(i=Promise))(function(r,o){function s(t){try{l(n.next(t))}catch(t){o(t)}}function a(t){try{l(n.throw(t))}catch(t){o(t)}}function l(t){t.done?r(t.value):new i(function(e){e(t.value)}).then(s,a)}l((n=n.apply(t,e||[])).next())})},u=function(t,e){var i,n,r,o,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},\"function\"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(i)throw new TypeError(\"Generator is already executing.\");for(;s;)try{if(i=1,n&&(r=2&o[0]?n.return:o[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,o[1])).done)return r;switch(n=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){s=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}}},p=function(t,e){var i=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,o=i.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s},d=function(){for(var t=[],e=0;e1||a(t,e)})})}function a(t,e){try{(i=r[t](e)).value instanceof f?Promise.resolve(i.value.v).then(l,h):u(o[0][2],i)}catch(t){u(o[0][3],t)}var i}function l(t){a(\"next\",t)}function h(t){a(\"throw\",t)}function u(t,e){t(e),o.shift(),o.length&&a(o[0][0],o[0][1])}},m=function(t){var e,i;return e={},n(\"next\"),n(\"throw\",function(t){throw t}),n(\"return\"),e[Symbol.iterator]=function(){return this},e;function n(n,r){e[n]=t[n]?function(e){return(i=!i)?{value:f(t[n](e)),done:\"return\"===n}:r?r(e):e}:r}},g=function(t){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var e,i=t[Symbol.asyncIterator];return i?i.call(t):(t=_(t),e={},n(\"next\"),n(\"throw\"),n(\"return\"),e[Symbol.asyncIterator]=function(){return this},e);function n(i){e[i]=t[i]&&function(e){return new Promise(function(n,r){e=t[i](e),function(t,e,i,n){Promise.resolve(n).then(function(e){t({value:e,done:i})},e)}(n,r,e.done,e.value)})}}},y=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e},x=function(t){return t&&t.__esModule?t:{default:t}},t(\"__extends\",n),t(\"__assign\",r),t(\"__rest\",o),t(\"__decorate\",s),t(\"__param\",a),t(\"__metadata\",l),t(\"__awaiter\",h),t(\"__generator\",u),t(\"__exportStar\",c),t(\"__values\",_),t(\"__read\",p),t(\"__spread\",d),t(\"__await\",f),t(\"__asyncGenerator\",v),t(\"__asyncDelegator\",m),t(\"__asyncValues\",g),t(\"__makeTemplateObject\",y),t(\"__importStar\",b),t(\"__importDefault\",x)})}],n={base:0,\"client/connection\":1,\"client/session\":2,\"core/bokeh_events\":3,\"core/build_views\":4,\"core/dom\":5,\"core/dom_view\":6,\"core/enums\":7,\"core/has_props\":8,\"core/hittest\":9,\"core/layout/alignments\":10,\"core/layout/grid\":11,\"core/layout/html\":12,\"core/layout/index\":13,\"core/layout/layoutable\":14,\"core/layout/side_panel\":15,\"core/layout/types\":16,\"core/logging\":17,\"core/properties\":18,\"core/property_mixins\":19,\"core/selection_manager\":20,\"core/settings\":21,\"core/signaling\":22,\"core/ui_events\":23,\"core/util/array\":24,\"core/util/arrayable\":25,\"core/util/assert\":26,\"core/util/bbox\":27,\"core/util/callback\":28,\"core/util/canvas\":29,\"core/util/color\":30,\"core/util/compat\":31,\"core/util/data_structures\":32,\"core/util/eq\":33,\"core/util/math\":34,\"core/util/object\":35,\"core/util/projections\":36,\"core/util/refs\":37,\"core/util/serialization\":38,\"core/util/spatial\":39,\"core/util/string\":40,\"core/util/svg_colors\":41,\"core/util/templating\":42,\"core/util/text\":43,\"core/util/throttle\":44,\"core/util/typed_array\":45,\"core/util/types\":46,\"core/util/wheel\":47,\"core/util/zoom\":48,\"core/vectorization\":49,\"core/view\":50,\"core/visuals\":51,\"document/document\":52,\"document/events\":53,\"document/index\":54,\"embed/dom\":55,\"embed/index\":56,\"embed/notebook\":57,\"embed/server\":58,\"embed/standalone\":59,index:60,main:61,model:62,\"models/annotations/annotation\":63,\"models/annotations/arrow\":64,\"models/annotations/arrow_head\":65,\"models/annotations/band\":66,\"models/annotations/box_annotation\":67,\"models/annotations/color_bar\":68,\"models/annotations/index\":69,\"models/annotations/label\":70,\"models/annotations/label_set\":71,\"models/annotations/legend\":72,\"models/annotations/legend_item\":73,\"models/annotations/poly_annotation\":74,\"models/annotations/slope\":75,\"models/annotations/span\":76,\"models/annotations/text_annotation\":77,\"models/annotations/title\":78,\"models/annotations/toolbar_panel\":79,\"models/annotations/tooltip\":80,\"models/annotations/whisker\":81,\"models/axes/axis\":82,\"models/axes/categorical_axis\":83,\"models/axes/continuous_axis\":84,\"models/axes/datetime_axis\":85,\"models/axes/index\":86,\"models/axes/linear_axis\":87,\"models/axes/log_axis\":88,\"models/axes/mercator_axis\":89,\"models/callbacks/callback\":90,\"models/callbacks/customjs\":91,\"models/callbacks/index\":92,\"models/callbacks/open_url\":93,\"models/canvas/canvas\":94,\"models/canvas/cartesian_frame\":95,\"models/canvas/index\":96,\"models/expressions/cumsum\":97,\"models/expressions/expression\":98,\"models/expressions/index\":99,\"models/expressions/stack\":100,\"models/filters/boolean_filter\":101,\"models/filters/customjs_filter\":102,\"models/filters/filter\":103,\"models/filters/group_filter\":104,\"models/filters/index\":105,\"models/filters/index_filter\":106,\"models/formatters/basic_tick_formatter\":107,\"models/formatters/categorical_tick_formatter\":108,\"models/formatters/datetime_tick_formatter\":109,\"models/formatters/func_tick_formatter\":110,\"models/formatters/index\":111,\"models/formatters/log_tick_formatter\":112,\"models/formatters/mercator_tick_formatter\":113,\"models/formatters/numeral_tick_formatter\":114,\"models/formatters/printf_tick_formatter\":115,\"models/formatters/tick_formatter\":116,\"models/glyphs/annular_wedge\":117,\"models/glyphs/annulus\":118,\"models/glyphs/arc\":119,\"models/glyphs/area\":120,\"models/glyphs/bezier\":121,\"models/glyphs/box\":122,\"models/glyphs/center_rotatable\":123,\"models/glyphs/circle\":124,\"models/glyphs/ellipse\":125,\"models/glyphs/ellipse_oval\":126,\"models/glyphs/glyph\":127,\"models/glyphs/harea\":128,\"models/glyphs/hbar\":129,\"models/glyphs/hex_tile\":130,\"models/glyphs/image\":131,\"models/glyphs/image_base\":132,\"models/glyphs/image_rgba\":133,\"models/glyphs/image_url\":134,\"models/glyphs/index\":135,\"models/glyphs/line\":136,\"models/glyphs/multi_line\":137,\"models/glyphs/multi_polygons\":138,\"models/glyphs/oval\":139,\"models/glyphs/patch\":140,\"models/glyphs/patches\":141,\"models/glyphs/quad\":142,\"models/glyphs/quadratic\":143,\"models/glyphs/ray\":144,\"models/glyphs/rect\":145,\"models/glyphs/segment\":146,\"models/glyphs/step\":147,\"models/glyphs/text\":148,\"models/glyphs/utils\":149,\"models/glyphs/varea\":150,\"models/glyphs/vbar\":151,\"models/glyphs/wedge\":152,\"models/glyphs/xy_glyph\":153,\"models/graphs/graph_hit_test_policy\":154,\"models/graphs/index\":155,\"models/graphs/layout_provider\":156,\"models/graphs/static_layout_provider\":157,\"models/grids/grid\":158,\"models/grids/index\":159,\"models/index\":160,\"models/layouts/box\":161,\"models/layouts/column\":162,\"models/layouts/grid_box\":163,\"models/layouts/html_box\":164,\"models/layouts/index\":165,\"models/layouts/layout_dom\":166,\"models/layouts/row\":167,\"models/layouts/spacer\":168,\"models/layouts/tabs\":169,\"models/layouts/widget_box\":170,\"models/mappers/categorical_color_mapper\":171,\"models/mappers/categorical_mapper\":172,\"models/mappers/categorical_marker_mapper\":173,\"models/mappers/categorical_pattern_mapper\":174,\"models/mappers/color_mapper\":175,\"models/mappers/continuous_color_mapper\":176,\"models/mappers/index\":177,\"models/mappers/linear_color_mapper\":178,\"models/mappers/log_color_mapper\":179,\"models/mappers/mapper\":180,\"models/markers/defs\":181,\"models/markers/index\":182,\"models/markers/marker\":183,\"models/markers/scatter\":184,\"models/plots/gmap_plot\":185,\"models/plots/gmap_plot_canvas\":186,\"models/plots/index\":187,\"models/plots/plot\":188,\"models/plots/plot_canvas\":189,\"models/ranges/data_range\":190,\"models/ranges/data_range1d\":191,\"models/ranges/factor_range\":192,\"models/ranges/index\":193,\"models/ranges/range\":194,\"models/ranges/range1d\":195,\"models/renderers/data_renderer\":196,\"models/renderers/glyph_renderer\":197,\"models/renderers/graph_renderer\":198,\"models/renderers/guide_renderer\":199,\"models/renderers/index\":200,\"models/renderers/renderer\":201,\"models/scales/categorical_scale\":202,\"models/scales/index\":203,\"models/scales/linear_scale\":204,\"models/scales/log_scale\":205,\"models/scales/scale\":206,\"models/selections/index\":207,\"models/selections/interaction_policy\":208,\"models/selections/selection\":209,\"models/sources/ajax_data_source\":210,\"models/sources/cds_view\":211,\"models/sources/column_data_source\":212,\"models/sources/columnar_data_source\":213,\"models/sources/data_source\":214,\"models/sources/geojson_data_source\":215,\"models/sources/index\":216,\"models/sources/remote_data_source\":217,\"models/sources/server_sent_data_source\":218,\"models/sources/web_data_source\":219,\"models/textures/canvas_texture\":220,\"models/textures/image_url_texture\":221,\"models/textures/index\":222,\"models/textures/texture\":223,\"models/tickers/adaptive_ticker\":224,\"models/tickers/basic_ticker\":225,\"models/tickers/categorical_ticker\":226,\"models/tickers/composite_ticker\":227,\"models/tickers/continuous_ticker\":228,\"models/tickers/datetime_ticker\":229,\"models/tickers/days_ticker\":230,\"models/tickers/fixed_ticker\":231,\"models/tickers/index\":232,\"models/tickers/log_ticker\":233,\"models/tickers/mercator_ticker\":234,\"models/tickers/months_ticker\":235,\"models/tickers/single_interval_ticker\":236,\"models/tickers/ticker\":237,\"models/tickers/util\":238,\"models/tickers/years_ticker\":239,\"models/tiles/bbox_tile_source\":240,\"models/tiles/image_pool\":241,\"models/tiles/index\":242,\"models/tiles/mercator_tile_source\":243,\"models/tiles/quadkey_tile_source\":244,\"models/tiles/tile_renderer\":245,\"models/tiles/tile_source\":246,\"models/tiles/tile_utils\":247,\"models/tiles/tms_tile_source\":248,\"models/tiles/wmts_tile_source\":249,\"models/tools/actions/action_tool\":250,\"models/tools/actions/custom_action\":251,\"models/tools/actions/help_tool\":252,\"models/tools/actions/redo_tool\":253,\"models/tools/actions/reset_tool\":254,\"models/tools/actions/save_tool\":255,\"models/tools/actions/undo_tool\":256,\"models/tools/actions/zoom_in_tool\":257,\"models/tools/actions/zoom_out_tool\":258,\"models/tools/button_tool\":259,\"models/tools/edit/box_edit_tool\":260,\"models/tools/edit/edit_tool\":261,\"models/tools/edit/freehand_draw_tool\":262,\"models/tools/edit/point_draw_tool\":263,\"models/tools/edit/poly_draw_tool\":264,\"models/tools/edit/poly_edit_tool\":265,\"models/tools/edit/poly_tool\":266,\"models/tools/gestures/box_select_tool\":267,\"models/tools/gestures/box_zoom_tool\":268,\"models/tools/gestures/gesture_tool\":269,\"models/tools/gestures/lasso_select_tool\":270,\"models/tools/gestures/pan_tool\":271,\"models/tools/gestures/poly_select_tool\":272,\"models/tools/gestures/range_tool\":273,\"models/tools/gestures/select_tool\":274,\"models/tools/gestures/tap_tool\":275,\"models/tools/gestures/wheel_pan_tool\":276,\"models/tools/gestures/wheel_zoom_tool\":277,\"models/tools/index\":278,\"models/tools/inspectors/crosshair_tool\":279,\"models/tools/inspectors/customjs_hover\":280,\"models/tools/inspectors/hover_tool\":281,\"models/tools/inspectors/inspect_tool\":282,\"models/tools/on_off_button\":283,\"models/tools/tool\":284,\"models/tools/tool_proxy\":285,\"models/tools/toolbar\":286,\"models/tools/toolbar_base\":287,\"models/tools/toolbar_box\":288,\"models/tools/util\":289,\"models/transforms/customjs_transform\":290,\"models/transforms/dodge\":291,\"models/transforms/index\":292,\"models/transforms/interpolator\":293,\"models/transforms/jitter\":294,\"models/transforms/linear_interpolator\":295,\"models/transforms/step_interpolator\":296,\"models/transforms/transform\":297,polyfill:298,\"protocol/index\":299,\"protocol/message\":300,\"protocol/receiver\":301,safely:302,testing:303,version:304},r={},(s=(o=function(t){var e=r[t];if(!e){var s=function(t){if(\"number\"==typeof t)return t;if(\"bokehjs\"===t)return 61;\"@bokehjs/\"===t.slice(0,\"@bokehjs/\".length)&&(t=t.slice(\"@bokehjs/\".length));var e=n[t];if(null!=e)return e;var i=t.length>0&&\"/\"===t[t.lenght-1],r=n[t+(i?\"\":\"/\")+\"index\"];return null!=r?r:t}(t);if(e=r[s])r[t]=e;else{if(!i[s]){var a=new Error(\"Cannot find module '\"+t+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}e={exports:{}},r[s]=e,r[t]=e,i[s].call(e.exports,o,e,e.exports)}}return e.exports})(61)).require=o,s.register_plugin=function(t,e,r){for(var a in t)i[a]=t[a];for(var a in e)n[a]=e[a];var l=o(r);for(var a in l)s[a]=l[a];return l},s)}(this);\n", + " //# sourceMappingURL=bokeh.min.js.map\n", + " /* END bokeh.min.js */\n", + " },\n", + " \n", + " function(Bokeh) {\n", + " /* BEGIN bokeh-widgets.min.js */\n", + " /*!\n", + " * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n", + " * All rights reserved.\n", + " * \n", + " * Redistribution and use in source and binary forms, with or without modification,\n", + " * are permitted provided that the following conditions are met:\n", + " * \n", + " * Redistributions of source code must retain the above copyright notice,\n", + " * this list of conditions and the following disclaimer.\n", + " * \n", + " * Redistributions in binary form must reproduce the above copyright notice,\n", + " * this list of conditions and the following disclaimer in the documentation\n", + " * and/or other materials provided with the distribution.\n", + " * \n", + " * Neither the name of Anaconda nor the names of any contributors\n", + " * may be used to endorse or promote products derived from this software\n", + " * without specific prior written permission.\n", + " * \n", + " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", + " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", + " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", + " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", + " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", + " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", + " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", + " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", + " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", + " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", + " * THE POSSIBILITY OF SUCH DAMAGE.\n", + " */\n", + " !function(t,e){var n;n=t.Bokeh,function(t,e,i){if(null!=n)return n.register_plugin(t,{\"models/widgets/abstract_button\":418,\"models/widgets/abstract_icon\":419,\"models/widgets/abstract_slider\":420,\"models/widgets/autocomplete_input\":421,\"models/widgets/button\":422,\"models/widgets/button_group\":423,\"models/widgets/checkbox_button_group\":424,\"models/widgets/checkbox_group\":425,\"models/widgets/color_picker\":426,\"models/widgets/control\":427,\"models/widgets/date_picker\":428,\"models/widgets/date_range_slider\":429,\"models/widgets/date_slider\":430,\"models/widgets/div\":431,\"models/widgets/dropdown\":432,\"models/widgets/index\":433,\"models/widgets/input_group\":434,\"models/widgets/input_widget\":435,\"models/widgets/main\":436,\"models/widgets/markup\":437,\"models/widgets/multiselect\":438,\"models/widgets/paragraph\":439,\"models/widgets/password_input\":440,\"models/widgets/pretext\":441,\"models/widgets/radio_button_group\":442,\"models/widgets/radio_group\":443,\"models/widgets/range_slider\":444,\"models/widgets/selectbox\":445,\"models/widgets/slider\":446,\"models/widgets/spinner\":447,\"models/widgets/text_input\":448,\"models/widgets/textarea_input\":449,\"models/widgets/toggle\":450,\"models/widgets/widget\":461},436);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({418:function(t,e,n){var i=t(408),o=t(18),r=t(5),s=t(4),a=t(427),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.initialize=function(){t.prototype.initialize.call(this),this.icon_views={}},e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()})},e.prototype.remove=function(){s.remove_views(this.icon_views),t.prototype.remove.call(this)},e.prototype._render_button=function(){for(var t=[],e=0;e0&&(this.model.value=this.menu.children[this._hover_index].textContent,this.input_el.focus(),this._hide_menu())},e.prototype._update_completions=function(t){r.empty(this.menu);for(var e=0,n=t;e0&&this.menu.children[0].classList.add(\"bk-active\")},e.prototype._show_menu=function(){var t=this;if(!this._open){this._open=!0,this._hover_index=0,this._last_value=this.model.value,r.display(this.menu);var e=function(n){var i=n.target;i instanceof HTMLElement&&!t.el.contains(i)&&(document.removeEventListener(\"click\",e),t._hide_menu())};document.addEventListener(\"click\",e)}},e.prototype._hide_menu=function(){this._open&&(this._open=!1,r.undisplay(this.menu))},e.prototype._menu_click=function(t){t.target!=t.currentTarget&&t.target instanceof Element&&(this.model.value=t.target.textContent,this.input_el.focus(),this._hide_menu())},e.prototype._menu_hover=function(t){if(t.target!=t.currentTarget&&t.target instanceof Element){var e=0;for(e=0;e0&&(this.menu.children[this._hover_index].classList.remove(\"bk-active\"),this._hover_index=a.clamp(t,0,e-1),this.menu.children[this._hover_index].classList.add(\"bk-active\"))},e.prototype._keydown=function(t){},e.prototype._keyup=function(t){switch(t.keyCode){case r.Keys.Enter:this.change_input();break;case r.Keys.Esc:this._hide_menu();break;case r.Keys.Up:this._bump_hover(this._hover_index-1);break;case r.Keys.Down:this._bump_hover(this._hover_index+1);break;default:var e=this.input_el.value;if(e.length<=1)return void this._hide_menu();for(var n=[],i=0,o=this.model.completions;ii||this._o.position.indexOf(\"right\")>-1&&a-e+t.offsetWidth>0)&&(a=a-e+t.offsetWidth),(this._o.reposition&&l+n>o+r||this._o.position.indexOf(\"top\")>-1&&l-n-t.offsetHeight>0)&&(l=l-n-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}};var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){var e=this;null!=this._picker&&this._picker.destroy(),t.prototype.render.call(this),this.input_el=r.input({type:\"text\",class:\"bk-input\",disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=new a({field:this.input_el,defaultDate:new Date(this.model.value),setDefaultDate:!0,minDate:null!=this.model.min_date?new Date(this.model.min_date):void 0,maxDate:null!=this.model.max_date?new Date(this.model.max_date):void 0,onSelect:function(t){return e._on_select(t)}}),this._root_element.appendChild(this._picker.el)},e.prototype._on_select=function(t){this.model.value=t.toDateString(),this.change_input()},e}(o.InputWidgetView);n.DatePickerView=l;var u=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"DatePicker\",this.prototype.default_view=l,this.define({value:[s.Any,(new Date).toDateString()],min_date:[s.Any],max_date:[s.Any]})},e}(o.InputWidget);n.DatePicker=u,u.initClass()},429:function(t,e,n){var i=t(408),o=t(407),r=t(420),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(r.AbstractSliderView);n.DateRangeSliderView=s;var a=function(t){function e(e){var n=t.call(this,e)||this;return n.behaviour=\"drag\",n.connected=[!1,!0,!1],n}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"DateRangeSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},e.prototype._formatter=function(t,e){return o(t,e)},e}(r.AbstractSlider);n.DateRangeSlider=a,a.initClass()},430:function(t,e,n){var i=t(408),o=t(407),r=t(420),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return e},e}(r.AbstractSliderView);n.DateSliderView=s;var a=function(t){function e(e){var n=t.call(this,e)||this;return n.behaviour=\"tap\",n.connected=[!0,!1],n}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"DateSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},e.prototype._formatter=function(t,e){return o(t,e)},e}(r.AbstractSlider);n.DateSlider=a,a.initClass()},431:function(t,e,n){var i=t(408),o=t(437),r=t(18),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.render_as_text?this.markup_el.textContent=this.model.text:this.markup_el.innerHTML=this.model.text},e}(o.MarkupView);n.DivView=s;var a=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"Div\",this.prototype.default_view=s,this.define({render_as_text:[r.Boolean,!1]})},e}(o.Markup);n.Div=a,a.initClass()},432:function(t,e,n){var i=t(408),o=t(418),r=t(3),s=t(5),a=t(18),l=t(46),u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._open=!1,e}return i.__extends(e,t),e.prototype.render=function(){var e=this;t.prototype.render.call(this);var n=s.div({class:[\"bk-caret\",\"bk-down\"]});if(this.model.is_split){var i=this._render_button(n);i.classList.add(\"bk-dropdown-toggle\"),i.addEventListener(\"click\",function(){return e._toggle_menu()}),this.group_el.appendChild(i)}else this.button_el.appendChild(n);var o=this.model.menu.map(function(t,n){if(null==t)return s.div({class:\"bk-divider\"});var i=l.isString(t)?t:t[0],o=s.div({},i);return o.addEventListener(\"click\",function(){return e._item_click(n)}),o});this.menu=s.div({class:[\"bk-menu\",\"bk-below\"]},o),this.el.appendChild(this.menu),s.undisplay(this.menu)},e.prototype._show_menu=function(){var t=this;if(!this._open){this._open=!0,s.display(this.menu);var e=function(n){var i=n.target;i instanceof HTMLElement&&!t.el.contains(i)&&(document.removeEventListener(\"click\",e),t._hide_menu())};document.addEventListener(\"click\",e)}},e.prototype._hide_menu=function(){this._open&&(this._open=!1,s.undisplay(this.menu))},e.prototype._toggle_menu=function(){this._open?this._hide_menu():this._show_menu()},e.prototype.click=function(){this.model.is_split?(this._hide_menu(),this.model.trigger_event(new r.ButtonClick),this.model.value=this.model.default_value,null!=this.model.callback&&this.model.callback.execute(this.model),t.prototype.click.call(this)):this._toggle_menu()},e.prototype._item_click=function(t){this._hide_menu();var e=this.model.menu[t];if(null!=e){var n=l.isString(e)?e:e[1];l.isString(n)?(this.model.trigger_event(new r.MenuItemClick(n)),this.model.value=n,null!=this.model.callback&&this.model.callback.execute(this.model)):(n.execute(this.model,{index:t}),null!=this.model.callback&&this.model.callback.execute(this.model))}},e}(o.AbstractButtonView);n.DropdownView=u;var c=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"Dropdown\",this.prototype.default_view=u,this.define({split:[a.Boolean,!1],menu:[a.Array,[]],value:[a.String],default_value:[a.String]}),this.override({label:\"Dropdown\"})},Object.defineProperty(e.prototype,\"is_split\",{get:function(){return this.split||null!=this.default_value},enumerable:!0,configurable:!0}),e}(o.AbstractButton);n.Dropdown=c,c.initClass()},433:function(t,e,n){var i=t(418);n.AbstractButton=i.AbstractButton;var o=t(419);n.AbstractIcon=o.AbstractIcon;var r=t(421);n.AutocompleteInput=r.AutocompleteInput;var s=t(422);n.Button=s.Button;var a=t(424);n.CheckboxButtonGroup=a.CheckboxButtonGroup;var l=t(425);n.CheckboxGroup=l.CheckboxGroup;var u=t(426);n.ColorPicker=u.ColorPicker;var c=t(428);n.DatePicker=c.DatePicker;var h=t(429);n.DateRangeSlider=h.DateRangeSlider;var d=t(430);n.DateSlider=d.DateSlider;var p=t(431);n.Div=p.Div;var f=t(432);n.Dropdown=f.Dropdown;var m=t(435);n.InputWidget=m.InputWidget;var v=t(437);n.Markup=v.Markup;var g=t(438);n.MultiSelect=g.MultiSelect;var _=t(439);n.Paragraph=_.Paragraph;var y=t(440);n.PasswordInput=y.PasswordInput;var b=t(441);n.PreText=b.PreText;var w=t(442);n.RadioButtonGroup=w.RadioButtonGroup;var x=t(443);n.RadioGroup=x.RadioGroup;var k=t(444);n.RangeSlider=k.RangeSlider;var S=t(445);n.Select=S.Select;var C=t(446);n.Slider=C.Slider;var D=t(447);n.Spinner=D.Spinner;var E=t(448);n.TextInput=E.TextInput;var M=t(449);n.TextAreaInput=M.TextAreaInput;var A=t(450);n.Toggle=A.Toggle;var N=t(461);n.Widget=N.Widget},434:function(t,e,n){var i=t(408),o=t(427),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()})},e}(o.ControlView);n.InputGroupView=r;var s=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"InputGroup\"},e}(o.Control);n.InputGroup=s,s.initClass()},435:function(t,e,n){var i=t(408),o=t(427),r=t(5),s=t(18),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.properties.title.change,function(){e.label_el.textContent=e.model.title})},e.prototype.render=function(){t.prototype.render.call(this);var e=this.model.title;this.label_el=r.label({style:{display:0==e.length?\"none\":\"\"}},e),this.group_el=r.div({class:\"bk-input-group\"},this.label_el),this.el.appendChild(this.group_el)},e.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},e}(o.ControlView);n.InputWidgetView=a;var l=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"InputWidget\",this.define({title:[s.String,\"\"],callback:[s.Any]})},e}(o.Control);n.InputWidget=l,l.initClass()},436:function(t,e,n){var i=t(433);n.Widgets=i;var o=t(0);o.register_models(i)},437:function(t,e,n){var i=t(408),o=t(13),r=t(5),s=t(18),a=t(461),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){e.render(),e.root.compute_layout()})},e.prototype._update_layout=function(){this.layout=new o.VariadicBox(this.el),this.layout.set_sizing(this.box_sizing())},e.prototype.render=function(){t.prototype.render.call(this);var e=i.__assign({},this.model.style,{display:\"inline-block\"});this.markup_el=r.div({class:\"bk-clearfix\",style:e}),this.el.appendChild(this.markup_el)},e}(a.WidgetView);n.MarkupView=l;var u=function(t){function e(e){return t.call(this,e)||this}return i.__extends(e,t),e.initClass=function(){this.prototype.type=\"Markup\",this.define({text:[s.String,\"\"],style:[s.Any,{}]})},e}(a.Widget);n.Markup=u,u.initClass()},438:function(t,e,n){var i=t(408),o=t(5),r=t(46),s=t(32),a=t(18),l=t(435),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.properties.value.change,function(){return e.render_selection()}),this.connect(this.model.properties.options.change,function(){return e.render()}),this.connect(this.model.properties.name.change,function(){return e.render()}),this.connect(this.model.properties.title.change,function(){return e.render()}),this.connect(this.model.properties.size.change,function(){return e.render()}),this.connect(this.model.properties.disabled.change,function(){return e.render()})},e.prototype.render=function(){var e=this;t.prototype.render.call(this);var n=this.model.options.map(function(t){var e,n;return r.isString(t)?e=n=t:(e=t[0],n=t[1]),o.option({value:e},n)});this.select_el=o.select({multiple:!0,class:\"bk-input\",name:this.model.name,disabled:this.model.disabled},n),this.select_el.addEventListener(\"change\",function(){return e.change_input()}),this.group_el.appendChild(this.select_el),this.render_selection()},e.prototype.render_selection=function(){for(var t=new s.Set(this.model.value),e=0,n=Array.from(this.el.querySelectorAll(\"option\"));e0&&(s(t,e),setTimeout(function(){a(t,e)},n))}function o(t){return Array.isArray(t)?t:[t]}function r(t){var e=(t=String(t)).split(\".\");return e.length>1?e[1].length:0}function s(t,e){t.classList?t.classList.add(e):t.className+=\" \"+e}function a(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function l(t){var e=void 0!==window.pageXOffset,n=\"CSS1Compat\"===(t.compatMode||\"\"),i=e?window.pageXOffset:n?t.documentElement.scrollLeft:t.body.scrollLeft,o=e?window.pageYOffset:n?t.documentElement.scrollTop:t.body.scrollTop;return{x:i,y:o}}function u(t,e){return 100/(e-t)}function c(t,e){return 100*e/(t[1]-t[0])}function h(t,e){for(var n=1;t>=e[n];)n+=1;return n}function d(t,e,n){if(n>=t.slice(-1)[0])return 100;var i,o,r,s,a=h(n,t);return i=t[a-1],o=t[a],r=e[a-1],s=e[a],r+function(t,e){return c(t,t[0]<0?e+Math.abs(t[0]):e-t[0])}([i,o],n)/u(r,s)}function p(t,e,n,i){if(100===i)return i;var o,r,s=h(i,t);return n?(o=t[s-1],r=t[s],i-o>(r-o)/2?r:o):e[s-1]?t[s-1]+function(t,e){return Math.round(t/e)*e}(i-t[s-1],e[s-1]):i}function f(e,i,o){var r;if(\"number\"==typeof i&&(i=[i]),\"[object Array]\"!==Object.prototype.toString.call(i))throw new Error(\"noUiSlider (\"+t+\"): 'range' contains invalid value.\");if(!n(r=\"min\"===e?0:\"max\"===e?100:parseFloat(e))||!n(i[0]))throw new Error(\"noUiSlider (\"+t+\"): 'range' value isn't numeric.\");o.xPct.push(r),o.xVal.push(i[0]),r?o.xSteps.push(!isNaN(i[1])&&i[1]):isNaN(i[1])||(o.xSteps[0]=i[1]),o.xHighestCompleteStep.push(0)}function m(t,e,n){if(!e)return!0;n.xSteps[t]=c([n.xVal[t],n.xVal[t+1]],e)/u(n.xPct[t],n.xPct[t+1]);var i=(n.xVal[t+1]-n.xVal[t])/n.xNumSteps[t],o=Math.ceil(Number(i.toFixed(3))-1),r=n.xVal[t]+n.xNumSteps[t]*o;n.xHighestCompleteStep[t]=r}function v(t,e,n){this.xPct=[],this.xVal=[],this.xSteps=[n||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i,o=[];for(i in t)t.hasOwnProperty(i)&&o.push([t[i],i]);for(o.length&&\"object\"==typeof o[0][0]?o.sort(function(t,e){return t[0][0]-e[0][0]}):o.sort(function(t,e){return t[0]-e[0]}),i=0;i=100)return t.slice(-1)[0];var i,o,r,s,a=h(n,e);return i=t[a-1],o=t[a],r=e[a-1],s=e[a],function(t,e){return e*(t[1]-t[0])/100+t[0]}([i,o],(n-r)*u(r,s))}(this.xVal,this.xPct,t)},v.prototype.getStep=function(t){return t=p(this.xPct,this.xSteps,this.snap,t)},v.prototype.getNearbySteps=function(t){var e=h(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e-0],step:this.xNumSteps[e-0],highestStep:this.xHighestCompleteStep[e-0]}}},v.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(r);return Math.max.apply(null,t)},v.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var g={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function _(e){if(function(t){return\"object\"==typeof t&&\"function\"==typeof t.to&&\"function\"==typeof t.from}(e))return!0;throw new Error(\"noUiSlider (\"+t+\"): 'format' requires 'to' and 'from' methods.\")}function y(e,i){if(!n(i))throw new Error(\"noUiSlider (\"+t+\"): 'step' is not numeric.\");e.singleStep=i}function b(e,n){if(\"object\"!=typeof n||Array.isArray(n))throw new Error(\"noUiSlider (\"+t+\"): 'range' is not an object.\");if(void 0===n.min||void 0===n.max)throw new Error(\"noUiSlider (\"+t+\"): Missing 'min' or 'max' in 'range'.\");if(n.min===n.max)throw new Error(\"noUiSlider (\"+t+\"): 'range' 'min' and 'max' cannot be equal.\");e.spectrum=new v(n,e.snap,e.singleStep)}function w(e,n){if(n=o(n),!Array.isArray(n)||!n.length)throw new Error(\"noUiSlider (\"+t+\"): 'start' option is incorrect.\");e.handles=n.length,e.start=n}function x(e,n){if(e.snap=n,\"boolean\"!=typeof n)throw new Error(\"noUiSlider (\"+t+\"): 'snap' option must be a boolean.\")}function k(e,n){if(e.animate=n,\"boolean\"!=typeof n)throw new Error(\"noUiSlider (\"+t+\"): 'animate' option must be a boolean.\")}function S(e,n){if(e.animationDuration=n,\"number\"!=typeof n)throw new Error(\"noUiSlider (\"+t+\"): 'animationDuration' option must be a number.\")}function C(e,n){var i,o=[!1];if(\"lower\"===n?n=[!0,!1]:\"upper\"===n&&(n=[!1,!0]),!0===n||!1===n){for(i=1;i=50)throw new Error(\"noUiSlider (\"+t+\"): 'padding' option must be less than half the range.\")}}function N(e,n){switch(n){case\"ltr\":e.dir=0;break;case\"rtl\":e.dir=1;break;default:throw new Error(\"noUiSlider (\"+t+\"): 'direction' option was not recognized.\")}}function V(e,n){if(\"string\"!=typeof n)throw new Error(\"noUiSlider (\"+t+\"): 'behaviour' must be a string containing options.\");var i=n.indexOf(\"tap\")>=0,o=n.indexOf(\"drag\")>=0,r=n.indexOf(\"fixed\")>=0,s=n.indexOf(\"snap\")>=0,a=n.indexOf(\"hover\")>=0;if(r){if(2!==e.handles)throw new Error(\"noUiSlider (\"+t+\"): 'fixed' behaviour must be used with 2 handles\");E(e,e.start[1]-e.start[0])}e.events={tap:i||s,drag:o,fixed:r,snap:s,hover:a}}function I(e,n){if(e.multitouch=n,\"boolean\"!=typeof n)throw new Error(\"noUiSlider (\"+t+\"): 'multitouch' option must be a boolean.\")}function T(e,n){if(!1!==n)if(!0===n){e.tooltips=[];for(var i=0;i-1?1:\"steps\"===e?2:0,!r&&a&&(f=0),c===y&&l||(o[d.toFixed(5)]=[c,f]),u=d}}),o}(i,n,a),u=e.format||{to:Math.round};return f=b.appendChild(P(l,o,u))}function O(){var t=c.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][r.ort];return 0===r.ort?t.width||c[e]:t.height||c[e]}function B(t,e,n,i){var o=function(o){return!b.hasAttribute(\"disabled\")&&(s=b,a=r.cssClasses.tap,(s.classList?!s.classList.contains(a):!new RegExp(\"\\\\b\"+a+\"\\\\b\").test(s.className))&&!!(o=function(t,e,n){var i,o,s=0===t.type.indexOf(\"touch\"),a=0===t.type.indexOf(\"mouse\"),u=0===t.type.indexOf(\"pointer\");if(0===t.type.indexOf(\"MSPointer\")&&(u=!0),s&&r.multitouch){var c=function(t){return t.target===n||n.contains(t.target)};if(\"touchstart\"===t.type){var h=Array.prototype.filter.call(t.touches,c);if(h.length>1)return!1;i=h[0].pageX,o=h[0].pageY}else{var d=Array.prototype.find.call(t.changedTouches,c);if(!d)return!1;i=d.pageX,o=d.pageY}}else if(s){if(t.touches.length>1)return!1;i=t.changedTouches[0].pageX,o=t.changedTouches[0].pageY}return e=e||l(E),(a||u)&&(i=t.clientX+e.x,o=t.clientY+e.y),t.pageOffset=e,t.points=[i,o],t.cursor=a||u,t}(o,i.pageOffset,i.target||e))&&!(t===g.start&&void 0!==o.buttons&&o.buttons>1)&&(!i.hover||!o.buttons)&&(y||o.preventDefault(),o.calcPoint=o.points[r.ort],void n(o,i)));var s,a},s=[];return t.split(\" \").forEach(function(t){e.addEventListener(t,o,!!y&&{passive:!0}),s.push([t,o])}),s}function W(t){var e,n,i,o,s,a,u=t-(e=c,n=r.ort,i=e.getBoundingClientRect(),o=e.ownerDocument,s=o.documentElement,a=l(o),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(a.x=0),n?i.top+a.y-s.clientTop:i.left+a.x-s.clientLeft),h=100*u/O();return r.dir?100-h:h}function F(t,e,n,i){var o=n.slice(),r=[!t,t],s=[t,!t];i=i.slice(),t&&i.reverse(),i.length>1?i.forEach(function(t,n){var i=K(o,t,o[t]+e,r[n],s[n],!1);!1===i?e=0:(e=i-o[t],o[t]=i)}):r=s=[!0];var a=!1;i.forEach(function(t,i){a=Q(t,n[t]+e,r[i],s[i])||a}),a&&i.forEach(function(t){j(\"update\",t),j(\"slide\",t)})}function j(t,e,n){Object.keys(D).forEach(function(i){var o=i.split(\".\")[0];t===o&&D[i].forEach(function(t){t.call(p,C.map(r.format.to),e,C.slice(),n||!1,w.slice())})})}function z(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&H(t,e)}function Y(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return H(t,e);var n=(r.dir?-1:1)*(t.calcPoint-e.startCalcPoint),i=100*n/e.baseSize;F(n>0,i,e.locations,e.handleNumbers)}function H(t,n){n.handle&&(a(n.handle,r.cssClasses.active),k-=1),n.listeners.forEach(function(t){M.removeEventListener(t[0],t[1])}),0===k&&(a(b,r.cssClasses.drag),$(),t.cursor&&(A.style.cursor=\"\",A.removeEventListener(\"selectstart\",e))),n.handleNumbers.forEach(function(t){j(\"change\",t),j(\"set\",t),j(\"end\",t)})}function G(t,n){var i;if(1===n.handleNumbers.length){var o=h[n.handleNumbers[0]];if(o.hasAttribute(\"disabled\"))return!1;i=o.children[0],k+=1,s(i,r.cssClasses.active)}t.stopPropagation();var a=[],l=B(g.move,M,Y,{target:t.target,handle:i,listeners:a,startCalcPoint:t.calcPoint,baseSize:O(),pageOffset:t.pageOffset,handleNumbers:n.handleNumbers,buttonsProperty:t.buttons,locations:w.slice()}),u=B(g.end,M,H,{target:t.target,handle:i,listeners:a,handleNumbers:n.handleNumbers}),c=B(\"mouseout\",M,z,{target:t.target,handle:i,listeners:a,handleNumbers:n.handleNumbers});a.push.apply(a,l.concat(u,c)),t.cursor&&(A.style.cursor=getComputedStyle(t.target).cursor,h.length>1&&s(b,r.cssClasses.drag),A.addEventListener(\"selectstart\",e,!1)),n.handleNumbers.forEach(function(t){j(\"start\",t)})}function q(t){t.stopPropagation();var e=W(t.calcPoint),n=function(t){var e=100,n=!1;return h.forEach(function(i,o){if(!i.hasAttribute(\"disabled\")){var r=Math.abs(w[o]-t);r1&&(i&&e>0&&(n=Math.max(n,t[e-1]+r.margin)),o&&e1&&r.limit&&(i&&e>0&&(n=Math.min(n,t[e-1]+r.limit)),o&&e50?-1:1,n=3+(h.length+e*t);h[t].childNodes[0].style.zIndex=n})}function Q(t,e,n,i){return!1!==(e=K(w,t,e,n,i,!1))&&(function(t,e){w[t]=e,C[t]=S.fromStepping(e);var n=function(){h[t].style[r.style]=J(e),Z(t),Z(t+1)};window.requestAnimationFrame&&r.useRequestAnimationFrame?window.requestAnimationFrame(n):n()}(t,e),!0)}function Z(t){if(d[t]){var e=0,n=100;0!==t&&(e=w[t-1]),t!==d.length-1&&(n=w[t]),d[t].style[r.style]=J(e),d[t].style[r.styleOposite]=J(100-n)}}function tt(t,e){null!==t&&!1!==t&&(\"number\"==typeof t&&(t=String(t)),!1===(t=r.format.from(t))||isNaN(t)||Q(e,S.toStepping(t),!1,!1))}function et(t,e){var n=o(t),s=void 0===w[0];e=void 0===e||!!e,n.forEach(tt),r.animate&&!s&&i(b,r.cssClasses.tap,r.animationDuration),x.forEach(function(t){Q(t,w[t],!0,!1)}),$(),x.forEach(function(t){j(\"update\",t),null!==n[t]&&e&&j(\"set\",t)})}function nt(){var t=C.map(r.format.to);return 1===t.length?t[0]:t}function it(t,e){D[t]=D[t]||[],D[t].push(e),\"update\"===t.split(\".\")[0]&&h.forEach(function(t,e){j(\"update\",e)})}if(b.noUiSlider)throw new Error(\"noUiSlider (\"+t+\"): Slider was already initialized.\");return function(t){s(t,r.cssClasses.target),0===r.dir?s(t,r.cssClasses.ltr):s(t,r.cssClasses.rtl),0===r.ort?s(t,r.cssClasses.horizontal):s(t,r.cssClasses.vertical),c=N(t,r.cssClasses.base)}(b),function(t,e){h=[],(d=[]).push(I(e,t[0]));for(var n=0;nn.stepAfter.startValue&&(o=n.stepAfter.startValue-i),r=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===t?o=null:0===t&&(r=null);var s=S.countStepDecimals();return null!==o&&!1!==o&&(o=Number(o.toFixed(s))),null!==r&&!1!==r&&(r=Number(r.toFixed(s))),[r,o]})},on:it,off:function(t){var e=t&&t.split(\".\")[0],n=e&&t.substring(e.length);Object.keys(D).forEach(function(t){var i=t.split(\".\")[0],o=t.substring(i.length);e&&e!==i||n&&n!==o||delete D[t]})},get:nt,set:et,reset:function(t){et(r.start,t)},__moveHandles:function(t,e,n){F(t,e,w,n)},options:u,updateOptions:function(t,e){var n=nt(),i=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\"];i.forEach(function(e){void 0!==t[e]&&(u[e]=t[e])});var o=U(u);i.forEach(function(e){void 0!==t[e]&&(r[e]=o[e])}),S=o.spectrum,r.margin=o.margin,r.limit=o.limit,r.padding=o.padding,r.pips&&L(r.pips),w=[],et(t.start||n,e)},target:b,removePips:R,pips:L},(v=r.events).fixed||h.forEach(function(t,e){B(g.start,t.children[0],G,{handleNumbers:[e]})}),v.tap&&B(g.start,c,q,{}),v.hover&&B(g.move,c,X,{hover:!0}),v.drag&&d.forEach(function(t,e){if(!1!==t&&0!==e&&e!==d.length-1){var n=h[e-1],i=h[e],o=[t];s(t,r.cssClasses.draggable),v.fixed&&(o.push(n.children[0]),o.push(i.children[0])),o.forEach(function(t){B(g.start,t,G,{handles:[n,i],handleNumbers:[e-1,e]})})}}),et(r.start),r.pips&&L(r.pips),r.tooltips&&(m=h.map(T),it(\"update\",function(t,e,n){if(m[e]){var i=t[e];!0!==r.tooltips[e]&&(i=r.tooltips[e].to(n[e])),m[e].innerHTML=i}})),it(\"update\",function(t,e,n,i,o){x.forEach(function(t){var e=h[t],i=K(w,t,0,!0,!0,!0),s=K(w,t,100,!0,!0,!0),a=o[t],l=r.ariaFormat.to(n[t]);e.children[0].setAttribute(\"aria-valuemin\",i.toFixed(1)),e.children[0].setAttribute(\"aria-valuemax\",s.toFixed(1)),e.children[0].setAttribute(\"aria-valuenow\",a.toFixed(1)),e.children[0].setAttribute(\"aria-valuetext\",l)})}),p}return{version:t,create:function(e,n){if(!e||!e.nodeName)throw new Error(\"noUiSlider (\"+t+\"): create requires a single element, got: \"+e);var i=U(n),o=W(e,i,n);return e.noUiSlider=o,o}}},\"object\"==typeof n?e.exports=i():window.noUiSlider=i()},453:function(t,e,n){var i=function(t,e,n,i){t.addEventListener(e,n,!!i)},o=function(t,e,n,i){t.removeEventListener(e,n,!!i)},r=function(t,e){return-1!==(\" \"+t.className+\" \").indexOf(\" \"+e+\" \")},s=function(t,e){r(t,e)||(t.className=\"\"===t.className?e:t.className+\" \"+e)},a=function(t,e){var n;t.className=(n=(\" \"+t.className+\" \").replace(\" \"+e+\" \",\" \")).trim?n.trim():n.replace(/^\\s+|\\s+$/g,\"\")},l=function(t){return/Array/.test(Object.prototype.toString.call(t))},u=function(t){return/Date/.test(Object.prototype.toString.call(t))&&!isNaN(t.getTime())},c=function(t){var e=t.getDay();return 0===e||6===e},h=function(t){\n", + " // solution lifted from date.js (MIT license): https://github.com/datejs/Datejs\n", + " return t%4==0&&t%100!=0||t%400==0},d=function(t,e){return[31,h(t)?29:28,31,30,31,30,31,31,30,31,30,31][e]},p=function(t){u(t)&&t.setHours(0,0,0,0)},f=function(t,e){return t.getTime()===e.getTime()},m=function(t,e,n){var i,o;for(i in e)(o=void 0!==t[i])&&\"object\"==typeof e[i]&&null!==e[i]&&void 0===e[i].nodeName?u(e[i])?n&&(t[i]=new Date(e[i].getTime())):l(e[i])?n&&(t[i]=e[i].slice(0)):t[i]=m({},e[i],n):!n&&o||(t[i]=e[i]);return t},v=function(t,e,n){var i;document.createEvent?((i=document.createEvent(\"HTMLEvents\")).initEvent(e,!0,!1),i=m(i,n),t.dispatchEvent(i)):document.createEventObject&&(i=document.createEventObject(),i=m(i,n),t.fireEvent(\"on\"+e,i))},g=function(t){return t.month<0&&(t.year-=Math.ceil(Math.abs(t.month)/12),t.month+=12),t.month>11&&(t.year+=Math.floor(Math.abs(t.month)/12),t.month-=12),t},_={field:null,bound:void 0,ariaLabel:\"Use the arrow keys to pick a date\",position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},y=function(t,e,n){for(e+=t.firstDay;e>=7;)e-=7;return n?t.i18n.weekdaysShort[e]:t.i18n.weekdays[e]},b=function(t){var e=[],n=\"false\";if(t.isEmpty){if(!t.showDaysInNextAndPreviousMonths)return'';e.push(\"is-outside-current-month\"),t.enableSelectionDaysInNextAndPreviousMonths||e.push(\"is-selection-disabled\")}return t.isDisabled&&e.push(\"is-disabled\"),t.isToday&&e.push(\"is-today\"),t.isSelected&&(e.push(\"is-selected\"),n=\"true\"),t.hasEvent&&e.push(\"has-event\"),t.isInRange&&e.push(\"is-inrange\"),t.isStartRange&&e.push(\"is-startrange\"),t.isEndRange&&e.push(\"is-endrange\"),'\"},w=function(t,e,n){var i=new Date(n,e,t),o=function(t){t.setHours(0,0,0,0);var e=t.getDate(),n=t.getDay(),i=function(t){return(t+7-1)%7};t.setDate(e+3-i(n));var o=new Date(t.getFullYear(),0,4),r=(t.getTime()-o.getTime())/864e5;return 1+Math.round((r-3+i(o.getDay()))/7)}(i);return''+o+\"\"},x=function(t,e,n,i){return''+(e?t.reverse():t).join(\"\")+\"\"},k=function(t,e,n,i,o,r){var s,a,u,c,h,d=t._o,p=n===d.minYear,f=n===d.maxYear,m='
',v=!0,g=!0;for(u=[],s=0;s<12;s++)u.push('\");for(c='
'+d.i18n.months[i]+'
\",l(d.yearRange)?(s=d.yearRange[0],a=d.yearRange[1]+1):(s=n-d.yearRange,a=1+n+d.yearRange),u=[];s=d.minYear&&u.push('\");return h='
'+n+d.yearSuffix+'
\",d.showMonthAfterYear?m+=h+c:m+=c+h,p&&(0===i||d.minMonth>=i)&&(v=!1),f&&(11===i||d.maxMonth<=i)&&(g=!1),0===e&&(m+='\"),e===t._o.numberOfMonths-1&&(m+='\"),m+=\"
\"},S=function(t,e,n){return''+function(t){var e,n=[];for(t.showWeekNumber&&n.push(\"\"),e=0;e<7;e++)n.push('\");return\"\"+(t.isRTL?n.reverse():n).join(\"\")+\"\"}(t)+\"\"+e.join(\"\")+\"
'+y(t,e,!0)+\"
\"},C=function(t){var e=this,n=e.config(t);e._onMouseDown=function(t){if(e._v){var i=(t=t||window.event).target||t.srcElement;if(i)if(r(i,\"is-disabled\")||(!r(i,\"pika-button\")||r(i,\"is-empty\")||r(i.parentNode,\"is-disabled\")?r(i,\"pika-prev\")?e.prevMonth():r(i,\"pika-next\")&&e.nextMonth():(e.setDate(new Date(i.getAttribute(\"data-pika-year\"),i.getAttribute(\"data-pika-month\"),i.getAttribute(\"data-pika-day\"))),n.bound&&setTimeout(function(){e.hide(),n.blurFieldOnSelect&&n.field&&n.field.blur()},100))),r(i,\"pika-select\"))e._c=!0;else{if(!t.preventDefault)return t.returnValue=!1,!1;t.preventDefault()}}},e._onChange=function(t){var n=(t=t||window.event).target||t.srcElement;n&&(r(n,\"pika-select-month\")?e.gotoMonth(n.value):r(n,\"pika-select-year\")&&e.gotoYear(n.value))},e._onKeyChange=function(t){if(t=t||window.event,e.isVisible())switch(t.keyCode){case 13:case 27:n.field&&n.field.blur();break;case 37:e.adjustDate(\"subtract\",1);break;case 38:e.adjustDate(\"subtract\",7);break;case 39:e.adjustDate(\"add\",1);break;case 40:e.adjustDate(\"add\",7);break;case 8:case 46:e.setDate(null)}},e._parseFieldValue=function(){return n.parse?n.parse(n.field.value,n.format):new Date(Date.parse(n.field.value))},e._onInputChange=function(t){var n;t.firedBy!==e&&(n=e._parseFieldValue(),u(n)&&e.setDate(n),e._v||e.show())},e._onInputFocus=function(){e.show()},e._onInputClick=function(){e.show()},e._onInputBlur=function(){var t=document.activeElement;do{if(r(t,\"pika-single\"))return}while(t=t.parentNode);e._c||(e._b=setTimeout(function(){e.hide()},50)),e._c=!1},e._onClick=function(t){var i=(t=t||window.event).target||t.srcElement,o=i;if(i){do{if(r(o,\"pika-single\")||o===n.trigger)return}while(o=o.parentNode);e._v&&i!==n.trigger&&o!==n.trigger&&e.hide()}},e.el=document.createElement(\"div\"),e.el.className=\"pika-single\"+(n.isRTL?\" is-rtl\":\"\")+(n.theme?\" \"+n.theme:\"\"),i(e.el,\"mousedown\",e._onMouseDown,!0),i(e.el,\"touchend\",e._onMouseDown,!0),i(e.el,\"change\",e._onChange),n.keyboardInput&&i(document,\"keydown\",e._onKeyChange),n.field&&(n.container?n.container.appendChild(e.el):n.bound?document.body.appendChild(e.el):n.field.parentNode.insertBefore(e.el,n.field.nextSibling),i(n.field,\"change\",e._onInputChange),n.defaultDate||(n.defaultDate=e._parseFieldValue(),n.setDefaultDate=!0));var o=n.defaultDate;u(o)?n.setDefaultDate?e.setDate(o,!0):e.gotoDate(o):e.gotoDate(new Date),n.bound?(this.hide(),e.el.className+=\" is-bound\",i(n.trigger,\"click\",e._onInputClick),i(n.trigger,\"focus\",e._onInputFocus),i(n.trigger,\"blur\",e._onInputBlur)):this.show()};C.prototype={config:function(t){this._o||(this._o=m({},_,!0));var e=m(this._o,t,!0);e.isRTL=!!e.isRTL,e.field=e.field&&e.field.nodeName?e.field:null,e.theme=\"string\"==typeof e.theme&&e.theme?e.theme:null,e.bound=!!(void 0!==e.bound?e.field&&e.bound:e.field),e.trigger=e.trigger&&e.trigger.nodeName?e.trigger:e.field,e.disableWeekends=!!e.disableWeekends,e.disableDayFn=\"function\"==typeof e.disableDayFn?e.disableDayFn:null;var n=parseInt(e.numberOfMonths,10)||1;if(e.numberOfMonths=n>4?4:n,u(e.minDate)||(e.minDate=!1),u(e.maxDate)||(e.maxDate=!1),e.minDate&&e.maxDate&&e.maxDate100&&(e.yearRange=100);return e},toString:function(t){return t=t||this._o.format,u(this._d)?this._o.toString?this._o.toString(this._d,t):this._d.toDateString():\"\"},getDate:function(){return u(this._d)?new Date(this._d.getTime()):null},setDate:function(t,e){if(!t)return this._d=null,this._o.field&&(this._o.field.value=\"\",v(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof t&&(t=new Date(Date.parse(t))),u(t)){var n=this._o.minDate,i=this._o.maxDate;u(n)&&ti&&(t=i),this._d=new Date(t.getTime()),p(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),v(this._o.field,\"change\",{firedBy:this})),e||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},clear:function(){this.setDate(null)},gotoDate:function(t){var e=!0;if(u(t)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),o=t.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),e=o=o&&(this._y=o,!isNaN(s)&&this._m>s&&(this._m=s));for(var l=0;l\";this.el.innerHTML=a,n.bound&&\"hidden\"!==n.field.type&&setTimeout(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",n.ariaLabel)}},adjustPosition:function(){var t,e,n,i,o,r,l,u,c,h,d,p;if(!this._o.container){if(this.el.style.position=\"absolute\",t=this._o.trigger,e=t,n=this.el.offsetWidth,i=this.el.offsetHeight,o=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,l=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,d=!0,p=!0,\"function\"==typeof t.getBoundingClientRect)h=t.getBoundingClientRect(),u=h.left+window.pageXOffset,c=h.bottom+window.pageYOffset;else for(u=e.offsetLeft,c=e.offsetTop+e.offsetHeight;e=e.offsetParent;)u+=e.offsetLeft,c+=e.offsetTop;(this._o.reposition&&u+n>o||this._o.position.indexOf(\"right\")>-1&&u-n+t.offsetWidth>0)&&(u=u-n+t.offsetWidth,d=!1),(this._o.reposition&&c+i>r+l||this._o.position.indexOf(\"top\")>-1&&c-i-t.offsetHeight>0)&&(c=c-i-t.offsetHeight,p=!1),this.el.style.left=u+\"px\",this.el.style.top=c+\"px\",s(this.el,d?\"left-aligned\":\"right-aligned\"),s(this.el,p?\"bottom-aligned\":\"top-aligned\"),a(this.el,d?\"right-aligned\":\"left-aligned\"),a(this.el,p?\"top-aligned\":\"bottom-aligned\")}},render:function(t,e,n){var i=this._o,o=new Date,r=d(t,e),s=new Date(t,e,1).getDay(),a=[],l=[];p(o),i.firstDay>0&&(s-=i.firstDay)<0&&(s+=7);for(var h=0===e?11:e-1,m=11===e?0:e+1,v=0===e?t-1:t,g=11===e?t+1:t,_=d(v,h),y=r+s,k=y;k>7;)k-=7;y+=7-k;for(var C=!1,D=0,E=0;D=r+s,T=D-s+1,P=e,R=t,L=i.startRange&&f(i.startRange,M),O=i.endRange&&f(i.endRange,M),B=i.startRange&&i.endRange&&i.startRangei.maxDate||i.disableWeekends&&c(M)||i.disableDayFn&&i.disableDayFn(M);I&&(D/g,\">\")},t}(e(62).Model);n.CellFormatter=u;var d=function(e){function t(t){return e.call(this,t)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"StringFormatter\",this.define({font_style:[a.FontStyle,\"normal\"],text_align:[a.TextAlign,\"left\"],text_color:[a.Color]})},t.prototype.doFormat=function(e,t,n,o,r){var i=this.font_style,l=this.text_align,a=this.text_color,c=s.div({},null==n?\"\":\"\"+n);switch(i){case\"bold\":c.style.fontWeight=\"bold\";break;case\"italic\":c.style.fontStyle=\"italic\"}return null!=l&&(c.style.textAlign=l),null!=a&&(c.style.color=a),c.outerHTML},t}(u);n.StringFormatter=d,d.initClass();var p=function(e){function t(t){return e.call(this,t)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumberFormatter\",this.define({format:[a.String,\"0,0\"],language:[a.String,\"en\"],rounding:[a.RoundingFunction,\"round\"]})},t.prototype.doFormat=function(t,n,o,i,l){var a=this,s=this.format,c=this.language,u=function(){switch(a.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}();return o=r.format(o,s,c,u),e.prototype.doFormat.call(this,t,n,o,i,l)},t}(d);n.NumberFormatter=p,p.initClass();var f=function(e){function t(t){return e.call(this,t)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"BooleanFormatter\",this.define({icon:[a.String,\"check\"]})},t.prototype.doFormat=function(e,t,n,o,r){return n?s.i({class:this.icon}).outerHTML:\"\"},t}(u);n.BooleanFormatter=f,f.initClass();var h=function(e){function t(t){return e.call(this,t)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"DateFormatter\",this.define({format:[a.String,\"ISO-8601\"]})},t.prototype.getFormat=function(){switch(this.format){case\"ATOM\":case\"W3C\":case\"RFC-3339\":case\"ISO-8601\":return\"%Y-%m-%d\";case\"COOKIE\":return\"%a, %d %b %Y\";case\"RFC-850\":return\"%A, %d-%b-%y\";case\"RFC-1123\":case\"RFC-2822\":return\"%a, %e %b %Y\";case\"RSS\":case\"RFC-822\":case\"RFC-1036\":return\"%a, %e %b %y\";case\"TIMESTAMP\":return;default:return this.format}},t.prototype.doFormat=function(t,n,o,r,i){o=c.isString(o)?parseInt(o,10):o;var a=l(o,this.getFormat());return e.prototype.doFormat.call(this,t,n,a,r,i)},t}(u);n.DateFormatter=h,h.initClass();var g=function(e){function t(t){return e.call(this,t)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"HTMLTemplateFormatter\",this.define({template:[a.String,\"<%= value %>\"]})},t.prototype.doFormat=function(e,t,n,r,l){var a=this.template;return null==n?\"\":i(a)(o.__assign({},l,{value:n}))},t}(u);n.HTMLTemplateFormatter=g,g.initClass()},456:function(e,t,n){var o=e(408),r=e(469).Grid,i=e(467).RowSelectionModel,l=e(466).CheckboxSelectColumn,a=e(465).CellExternalCopyManager,s=e(18),c=e(40),u=e(46),d=e(24),p=e(35),f=e(17),h=e(13),g=e(460),m=e(461);n.DTINDEX_NAME=\"__bkdt_internal_index__\";var v=function(){function e(e,t){if(this.source=e,this.view=t,n.DTINDEX_NAME in this.source.data)throw new Error(\"special name \"+n.DTINDEX_NAME+\" cannot be used as a data table column\");this.index=this.view.indices}return e.prototype.getLength=function(){return this.index.length},e.prototype.getItem=function(e){for(var t={},o=0,r=p.keys(this.source.data);od?c:-c;if(0!=p)return p}return 0})},e}();n.DataProvider=v;var w=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._in_selection_update=!1,t._warned_not_reorderable=!1,t}return o.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.source.streaming,function(){return t.updateGrid()}),this.connect(this.model.source.patching,function(){return t.updateGrid()}),this.connect(this.model.source.change,function(){return t.updateGrid()}),this.connect(this.model.source.properties.data.change,function(){return t.updateGrid()}),this.connect(this.model.source.selected.change,function(){return t.updateSelection()}),this.connect(this.model.source.selected.properties.indices.change,function(){return t.updateSelection()})},t.prototype._update_layout=function(){this.layout=new h.LayoutItem,this.layout.set_sizing(this.box_sizing())},t.prototype.update_position=function(){e.prototype.update_position.call(this),this.grid.resizeCanvas()},t.prototype.updateGrid=function(){var e=this;this.model.view.compute_indices(),this.data.constructor(this.model.source,this.model.view);var t=this.grid.getColumns(),n=this.grid.getSortColumns().map(function(n){return{sortCol:{field:t[e.grid.getColumnIndex(n.columnId)].field},sortAsc:n.sortAsc}});this.data.sort(n),this.grid.invalidate(),this.grid.render()},t.prototype.updateSelection=function(){var e=this;if(!this._in_selection_update){var t=this.model.source.selected.indices.map(function(t){return e.data.index.indexOf(t)});this._in_selection_update=!0,this.grid.setSelectedRows(t),this._in_selection_update=!1;var n=this.grid.getViewport(),o=this.model.get_scroll_index(n,t);null!=o&&this.grid.scrollRowToTop(o)}},t.prototype.newIndexColumn=function(){return{id:c.uniqueId(),name:this.model.index_header,field:n.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:\"bk-cell-index\",headerCssClass:\"bk-header-index\"}},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-data-table\")},t.prototype.render=function(){var e,t=this,n=this.model.columns.map(function(e){return e.toColumn()});if(\"checkbox\"==this.model.selectable&&(e=new l({cssClass:\"bk-cell-select\"}),n.unshift(e.getColumnDefinition())),null!=this.model.index_position){var o=this.model.index_position,s=this.newIndexColumn();-1==o?n.push(s):o<-1?n.splice(o+1,0,s):n.splice(o,0,s)}var c=this.model.reorderable;!c||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(f.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),c=!1);var d={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:c,forceFitColumns:this.model.fit_columns,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:!1,rowHeight:this.model.row_height};if(this.data=new v(this.model.source,this.model.view),this.grid=new r(this.el,this.data,n,d),this.grid.onSort.subscribe(function(e,o){n=o.sortCols,t.data.sort(n),t.grid.invalidate(),t.updateSelection(),t.grid.render(),t.model.header_row||t._hide_header(),t.model.update_sort_columns(n)}),!1!==this.model.selectable){this.grid.setSelectionModel(new i({selectActiveRow:null==e})),null!=e&&this.grid.registerPlugin(e);var p={dataItemColumnValueExtractor:function(e,t){var n=e[t.field];return u.isString(n)&&(n=n.replace(/\\n/g,\"\\\\n\")),n},includeHeaderWhenCopying:!1};this.grid.registerPlugin(new a(p)),this.grid.onSelectedRowsChanged.subscribe(function(e,n){t._in_selection_update||(t.model.source.selected.indices=n.rows.map(function(e){return t.data.index[e]}))}),this.updateSelection(),this.model.header_row||this._hide_header()}},t.prototype._hide_header=function(){for(var e=0,t=Array.from(this.el.querySelectorAll(\".slick-header-columns\"));e0&&t-1 in e)}y.fn=y.prototype={jquery:\"3.4.0\",constructor:y,length:0,toArray:function(){return i.call(this)},get:function(e){return null==e?i.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=y.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return y.each(this,e)},map:function(e){return this.pushStack(y.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(i.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n+~]|\"+M+\")\"+M+\"*\"),q=new RegExp(M+\"|>\"),X=new RegExp(j),K=new RegExp(\"^\"+F+\"$\"),U={ID:new RegExp(\"^#(\"+F+\")\"),CLASS:new RegExp(\"^\\\\.(\"+F+\")\"),TAG:new RegExp(\"^(\"+F+\"|[*])\"),ATTR:new RegExp(\"^\"+W),PSEUDO:new RegExp(\"^\"+j),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+M+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+M+\"*(?:([+-]|)\"+M+\"*(\\\\d+)|))\"+M+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+_+\")$\",\"i\"),needsContext:new RegExp(\"^\"+M+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+M+\"*((?:-\\\\d)?\\\\d*)\"+M+\"*\\\\)|)(?=[^-]|$)\",\"i\")},G=/HTML$/i,Y=/^(?:input|select|textarea|button)$/i,Q=/^h\\d$/i,J=/^[^{]+\\{\\s*\\[native \\w/,Z=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,ee=/[+~]/,te=new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\"+M+\"?|(\"+M+\")|.)\",\"ig\"),ne=function(e,t,n){var o=\"0x\"+t-65536;return o!=o||n?t:o<0?String.fromCharCode(o+65536):String.fromCharCode(o>>10|55296,1023&o|56320)},oe=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,re=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},ie=function(){p()},le=ye(function(e){return!0===e.disabled&&\"fieldset\"===e.nodeName.toLowerCase()},{dir:\"parentNode\",next:\"legend\"});try{$.apply(A=I.call(b.childNodes),b.childNodes),A[b.childNodes.length].nodeType}catch(e){$={apply:A.length?function(e,t){H.apply(e,I.call(t))}:function(e,t){for(var n=e.length,o=0;e[n++]=t[o++];);e.length=n-1}}}function ae(e,t,o,r){var i,a,c,u,d,h,v,w=t&&t.ownerDocument,x=t?t.nodeType:9;if(o=o||[],\"string\"!=typeof e||!e||1!==x&&9!==x&&11!==x)return o;if(!r&&((t?t.ownerDocument||t:b)!==f&&p(t),t=t||f,g)){if(11!==x&&(d=Z.exec(e)))if(i=d[1]){if(9===x){if(!(c=t.getElementById(i)))return o;if(c.id===i)return o.push(c),o}else if(w&&(c=w.getElementById(i))&&C(t,c)&&c.id===i)return o.push(c),o}else{if(d[2])return $.apply(o,t.getElementsByTagName(e)),o;if((i=d[3])&&n.getElementsByClassName&&t.getElementsByClassName)return $.apply(o,t.getElementsByClassName(i)),o}if(n.qsa&&!T[e+\" \"]&&(!m||!m.test(e))&&(1!==x||\"object\"!==t.nodeName.toLowerCase())){if(v=e,w=t,1===x&&q.test(e)){for((u=t.getAttribute(\"id\"))?u=u.replace(oe,re):t.setAttribute(\"id\",u=y),a=(h=l(e)).length;a--;)h[a]=\"#\"+u+\" \"+Ce(h[a]);v=h.join(\",\"),w=ee.test(e)&&ve(t.parentNode)||t}try{return $.apply(o,w.querySelectorAll(v)),o}catch(t){T(e,!0)}finally{u===y&&t.removeAttribute(\"id\")}}}return s(e.replace(B,\"$1\"),t,o,r)}function se(){var e=[];return function t(n,r){return e.push(n+\" \")>o.cacheLength&&delete t[e.shift()],t[n+\" \"]=r}}function ce(e){return e[y]=!0,e}function ue(e){var t=f.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function de(e,t){for(var n=e.split(\"|\"),r=n.length;r--;)o.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,o=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(o)return o;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function fe(e){return function(t){return\"input\"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return(\"input\"===n||\"button\"===n)&&t.type===e}}function ge(e){return function(t){return\"form\"in t?t.parentNode&&!1===t.disabled?\"label\"in t?\"label\"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&le(t)===e:t.disabled===e:\"label\"in t&&t.disabled===e}}function me(e){return ce(function(t){return t=+t,ce(function(n,o){for(var r,i=e([],n.length,t),l=i.length;l--;)n[r=i[l]]&&(n[r]=!(o[r]=n[r]))})})}function ve(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=ae.support={},i=ae.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!G.test(t||n&&n.nodeName||\"HTML\")},p=ae.setDocument=function(e){var t,r,l=e?e.ownerDocument||e:b;return l!==f&&9===l.nodeType&&l.documentElement?(h=(f=l).documentElement,g=!i(f),b!==f&&(r=f.defaultView)&&r.top!==r&&(r.addEventListener?r.addEventListener(\"unload\",ie,!1):r.attachEvent&&r.attachEvent(\"onunload\",ie)),n.attributes=ue(function(e){return e.className=\"i\",!e.getAttribute(\"className\")}),n.getElementsByTagName=ue(function(e){return e.appendChild(f.createComment(\"\")),!e.getElementsByTagName(\"*\").length}),n.getElementsByClassName=J.test(f.getElementsByClassName),n.getById=ue(function(e){return h.appendChild(e).id=y,!f.getElementsByName||!f.getElementsByName(y).length}),n.getById?(o.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute(\"id\")===t}},o.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(o.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return n&&n.value===t}},o.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,o,r,i=t.getElementById(e);if(i){if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i];for(r=t.getElementsByName(e),o=0;i=r[o++];)if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i]}return[]}}),o.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,o=[],r=0,i=t.getElementsByTagName(e);if(\"*\"===e){for(;n=i[r++];)1===n.nodeType&&o.push(n);return o}return i},o.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},v=[],m=[],(n.qsa=J.test(f.querySelectorAll))&&(ue(function(e){h.appendChild(e).innerHTML=\"\",e.querySelectorAll(\"[msallowcapture^='']\").length&&m.push(\"[*^$]=\"+M+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||m.push(\"\\\\[\"+M+\"*(?:value|\"+_+\")\"),e.querySelectorAll(\"[id~=\"+y+\"-]\").length||m.push(\"~=\"),e.querySelectorAll(\":checked\").length||m.push(\":checked\"),e.querySelectorAll(\"a#\"+y+\"+*\").length||m.push(\".#.+[+~]\")}),ue(function(e){e.innerHTML=\"\";var t=f.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&m.push(\"name\"+M+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&m.push(\":enabled\",\":disabled\"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&m.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),m.push(\",.*:\")})),(n.matchesSelector=J.test(w=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ue(function(e){n.disconnectedMatch=w.call(e,\"*\"),w.call(e,\"[s!='']:x\"),v.push(\"!=\",j)}),m=m.length&&new RegExp(m.join(\"|\")),v=v.length&&new RegExp(v.join(\"|\")),t=J.test(h.compareDocumentPosition),C=t||J.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,o=t&&t.parentNode;return e===o||!(!o||1!==o.nodeType||!(n.contains?n.contains(o):e.compareDocumentPosition&&16&e.compareDocumentPosition(o)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return d=!0,0;var o=!e.compareDocumentPosition-!t.compareDocumentPosition;return o||(1&(o=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===o?e===f||e.ownerDocument===b&&C(b,e)?-1:t===f||t.ownerDocument===b&&C(b,t)?1:u?L(u,e)-L(u,t):0:4&o?-1:1)}:function(e,t){if(e===t)return d=!0,0;var n,o=0,r=e.parentNode,i=t.parentNode,l=[e],a=[t];if(!r||!i)return e===f?-1:t===f?1:r?-1:i?1:u?L(u,e)-L(u,t):0;if(r===i)return pe(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)a.unshift(n);for(;l[o]===a[o];)o++;return o?pe(l[o],a[o]):l[o]===b?-1:a[o]===b?1:0},f):f},ae.matches=function(e,t){return ae(e,null,null,t)},ae.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),n.matchesSelector&&g&&!T[t+\" \"]&&(!v||!v.test(t))&&(!m||!m.test(t)))try{var o=w.call(e,t);if(o||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return o}catch(e){T(t,!0)}return ae(t,f,null,[e]).length>0},ae.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),C(e,t)},ae.attr=function(e,t){(e.ownerDocument||e)!==f&&p(e);var r=o.attrHandle[t.toLowerCase()],i=r&&D.call(o.attrHandle,t.toLowerCase())?r(e,t,!g):void 0;return void 0!==i?i:n.attributes||!g?e.getAttribute(t):(i=e.getAttributeNode(t))&&i.specified?i.value:null},ae.escape=function(e){return(e+\"\").replace(oe,re)},ae.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},ae.uniqueSort=function(e){var t,o=[],r=0,i=0;if(d=!n.detectDuplicates,u=!n.sortStable&&e.slice(0),e.sort(P),d){for(;t=e[i++];)t===e[i]&&(r=o.push(i));for(;r--;)e.splice(o[r],1)}return u=null,e},r=ae.getText=function(e){var t,n=\"\",o=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=r(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[o++];)n+=r(t);return n},(o=ae.selectors={cacheLength:50,createPseudo:ce,match:U,attrHandle:{},find:{},relative:{\">\":{dir:\"parentNode\",first:!0},\" \":{dir:\"parentNode\"},\"+\":{dir:\"previousSibling\",first:!0},\"~\":{dir:\"previousSibling\"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||\"\").replace(te,ne),\"~=\"===e[2]&&(e[3]=\" \"+e[3]+\" \"),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),\"nth\"===e[1].slice(0,3)?(e[3]||ae.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(\"even\"===e[3]||\"odd\"===e[3])),e[5]=+(e[7]+e[8]||\"odd\"===e[3])):e[3]&&ae.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return U.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&X.test(n)&&(t=l(n,!0))&&(t=n.indexOf(\")\",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=R[e+\" \"];return t||(t=new RegExp(\"(^|\"+M+\")\"+e+\"(\"+M+\"|$)\"))&&R(e,function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")})},ATTR:function(e,t,n){return function(o){var r=ae.attr(o,e);return null==r?\"!=\"===t:!t||(r+=\"\",\"=\"===t?r===n:\"!=\"===t?r!==n:\"^=\"===t?n&&0===r.indexOf(n):\"*=\"===t?n&&r.indexOf(n)>-1:\"$=\"===t?n&&r.slice(-n.length)===n:\"~=\"===t?(\" \"+r.replace(V,\" \")+\" \").indexOf(n)>-1:\"|=\"===t&&(r===n||r.slice(0,n.length+1)===n+\"-\"))}},CHILD:function(e,t,n,o,r){var i=\"nth\"!==e.slice(0,3),l=\"last\"!==e.slice(-4),a=\"of-type\"===t;return 1===o&&0===r?function(e){return!!e.parentNode}:function(t,n,s){var c,u,d,p,f,h,g=i!==l?\"nextSibling\":\"previousSibling\",m=t.parentNode,v=a&&t.nodeName.toLowerCase(),w=!s&&!a,C=!1;if(m){if(i){for(;g;){for(p=t;p=p[g];)if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;h=g=\"only\"===e&&!h&&\"nextSibling\"}return!0}if(h=[l?m.firstChild:m.lastChild],l&&w){for(C=(f=(c=(u=(d=(p=m)[y]||(p[y]={}))[p.uniqueID]||(d[p.uniqueID]={}))[e]||[])[0]===x&&c[1])&&c[2],p=f&&m.childNodes[f];p=++f&&p&&p[g]||(C=f=0)||h.pop();)if(1===p.nodeType&&++C&&p===t){u[e]=[x,f,C];break}}else if(w&&(C=f=(c=(u=(d=(p=t)[y]||(p[y]={}))[p.uniqueID]||(d[p.uniqueID]={}))[e]||[])[0]===x&&c[1]),!1===C)for(;(p=++f&&p&&p[g]||(C=f=0)||h.pop())&&((a?p.nodeName.toLowerCase()!==v:1!==p.nodeType)||!++C||(w&&((u=(d=p[y]||(p[y]={}))[p.uniqueID]||(d[p.uniqueID]={}))[e]=[x,C]),p!==t)););return(C-=r)===o||C%o==0&&C/o>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||ae.error(\"unsupported pseudo: \"+e);return r[y]?r(t):r.length>1?(n=[e,e,\"\",t],o.setFilters.hasOwnProperty(e.toLowerCase())?ce(function(e,n){for(var o,i=r(e,t),l=i.length;l--;)e[o=L(e,i[l])]=!(n[o]=i[l])}):function(e){return r(e,0,n)}):r}},pseudos:{not:ce(function(e){var t=[],n=[],o=a(e.replace(B,\"$1\"));return o[y]?ce(function(e,t,n,r){for(var i,l=o(e,null,r,[]),a=e.length;a--;)(i=l[a])&&(e[a]=!(t[a]=i))}):function(e,r,i){return t[0]=e,o(t,null,i,n),t[0]=null,!n.pop()}}),has:ce(function(e){return function(t){return ae(e,t).length>0}}),contains:ce(function(e){return e=e.replace(te,ne),function(t){return(t.textContent||r(t)).indexOf(e)>-1}}),lang:ce(function(e){return K.test(e||\"\")||ae.error(\"unsupported lang: \"+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute(\"xml:lang\")||t.getAttribute(\"lang\"))return(n=n.toLowerCase())===e||0===n.indexOf(e+\"-\")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&!!e.checked||\"option\"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return Q.test(e.nodeName)},input:function(e){return Y.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&\"button\"===e.type||\"button\"===t},text:function(e){var t;return\"input\"===e.nodeName.toLowerCase()&&\"text\"===e.type&&(null==(t=e.getAttribute(\"type\"))||\"text\"===t.toLowerCase())},first:me(function(){return[0]}),last:me(function(e,t){return[t-1]}),eq:me(function(e,t,n){return[n<0?n+t:n]}),even:me(function(e,t){for(var n=0;nt?t:n;--o>=0;)e.push(o);return e}),gt:me(function(e,t,n){for(var o=n<0?n+t:n;++o1?function(t,n,o){for(var r=e.length;r--;)if(!e[r](t,n,o))return!1;return!0}:e[0]}function xe(e,t,n,o,r){for(var i,l=[],a=0,s=e.length,c=null!=t;a-1&&(i[c]=!(l[c]=d))}}else v=xe(v===l?v.splice(h,v.length):v),r?r(null,l,v,s):$.apply(l,v)})}function Re(e){for(var t,n,r,i=e.length,l=o.relative[e[0].type],a=l||o.relative[\" \"],s=l?1:0,u=ye(function(e){return e===t},a,!0),d=ye(function(e){return L(t,e)>-1},a,!0),p=[function(e,n,o){var r=!l&&(o||n!==c)||((t=n).nodeType?u(e,n,o):d(e,n,o));return t=null,r}];s1&&be(p),s>1&&Ce(e.slice(0,s-1).concat({value:\" \"===e[s-2].type?\"*\":\"\"})).replace(B,\"$1\"),n,s0,r=e.length>0,i=function(i,l,a,s,u){var d,h,m,v=0,w=\"0\",C=i&&[],y=[],b=c,S=i||r&&o.find.TAG(\"*\",u),R=x+=null==b?1:Math.random()||.1,E=S.length;for(u&&(c=l===f||l||u);w!==E&&null!=(d=S[w]);w++){if(r&&d){for(h=0,l||d.ownerDocument===f||(p(d),a=!g);m=e[h++];)if(m(d,l||f,a)){s.push(d);break}u&&(x=R)}n&&((d=!m&&d)&&v--,i&&C.push(d))}if(v+=w,n&&w!==v){for(h=0;m=t[h++];)m(C,y,l,a);if(i){if(v>0)for(;w--;)C[w]||y[w]||(y[w]=N.call(s));y=xe(y)}$.apply(s,y),u&&!i&&y.length>0&&v+t.length>1&&ae.uniqueSort(s)}return u&&(x=R,c=b),C};return n?ce(i):i}(i,r))).selector=e}return a},s=ae.select=function(e,t,n,r){var i,s,c,u,d,p=\"function\"==typeof e&&e,f=!r&&l(e=p.selector||e);if(n=n||[],1===f.length){if((s=f[0]=f[0].slice(0)).length>2&&\"ID\"===(c=s[0]).type&&9===t.nodeType&&g&&o.relative[s[1].type]){if(!(t=(o.find.ID(c.matches[0].replace(te,ne),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(s.shift().value.length)}for(i=U.needsContext.test(e)?0:s.length;i--&&(c=s[i],!o.relative[u=c.type]);)if((d=o.find[u])&&(r=d(c.matches[0].replace(te,ne),ee.test(s[0].type)&&ve(t.parentNode)||t))){if(s.splice(i,1),!(e=r.length&&Ce(s)))return $.apply(n,r),n;break}}return(p||a(e,f))(r,t,!g,n,!t||ee.test(e)&&ve(t.parentNode)||t),n},n.sortStable=y.split(\"\").sort(P).join(\"\")===y,n.detectDuplicates=!!d,p(),n.sortDetached=ue(function(e){return 1&e.compareDocumentPosition(f.createElement(\"fieldset\"))}),ue(function(e){return e.innerHTML=\"\",\"#\"===e.firstChild.getAttribute(\"href\")})||de(\"type|href|height|width\",function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)}),n.attributes&&ue(function(e){return e.innerHTML=\"\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")})||de(\"value\",function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue}),ue(function(e){return null==e.getAttribute(\"disabled\")})||de(_,function(e,t,n){var o;if(!n)return!0===e[t]?t.toLowerCase():(o=e.getAttributeNode(t))&&o.specified?o.value:null}),ae}(e);y.find=S,y.expr=S.selectors,y.expr[\":\"]=y.expr.pseudos,y.uniqueSort=y.unique=S.uniqueSort,y.text=S.getText,y.isXMLDoc=S.isXML,y.contains=S.contains,y.escapeSelector=S.escape;var R=function(e,t,n){for(var o=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&y(e).is(n))break;o.push(e)}return o},E=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=y.expr.match.needsContext;function T(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var P=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i;function D(e,t,n){return g(t)?y.grep(e,function(e,o){return!!t.call(e,o,e)!==n}):t.nodeType?y.grep(e,function(e){return e===t!==n}):\"string\"!=typeof t?y.grep(e,function(e){return s.call(t,e)>-1!==n}):y.filter(t,e,n)}y.filter=function(e,t,n){var o=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===o.nodeType?y.find.matchesSelector(o,e)?[o]:[]:y.find.matches(e,y.grep(t,function(e){return 1===e.nodeType}))},y.fn.extend({find:function(e){var t,n,o=this.length,r=this;if(\"string\"!=typeof e)return this.pushStack(y(e).filter(function(){for(t=0;t1?y.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,\"string\"==typeof e&&k.test(e)?y(e):e||[],!1).length}});var A,N=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/;(y.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||A,\"string\"==typeof e){if(!(r=\"<\"===e[0]&&\">\"===e[e.length-1]&&e.length>=3?[null,e,null]:N.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof y?t[0]:t,y.merge(this,y.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:o,!0)),P.test(r[1])&&y.isPlainObject(t))for(r in t)g(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=o.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(y):y.makeArray(e,this)}).prototype=y.fn,A=y(o);var H=/^(?:parents|prev(?:Until|All))/,$={children:!0,contents:!0,next:!0,prev:!0};function I(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}y.fn.extend({has:function(e){var t=y(e,this),n=t.length;return this.filter(function(){for(var e=0;e-1:1===n.nodeType&&y.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(i.length>1?y.uniqueSort(i):i)},index:function(e){return e?\"string\"==typeof e?s.call(y(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(y.uniqueSort(y.merge(this.get(),y(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),y.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return R(e,\"parentNode\")},parentsUntil:function(e,t,n){return R(e,\"parentNode\",n)},next:function(e){return I(e,\"nextSibling\")},prev:function(e){return I(e,\"previousSibling\")},nextAll:function(e){return R(e,\"nextSibling\")},prevAll:function(e){return R(e,\"previousSibling\")},nextUntil:function(e,t,n){return R(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return R(e,\"previousSibling\",n)},siblings:function(e){return E((e.parentNode||{}).firstChild,e)},children:function(e){return E(e.firstChild)},contents:function(e){return void 0!==e.contentDocument?e.contentDocument:(T(e,\"template\")&&(e=e.content||e),y.merge([],e.childNodes))}},function(e,t){y.fn[e]=function(n,o){var r=y.map(this,t,n);return\"Until\"!==e.slice(-5)&&(o=n),o&&\"string\"==typeof o&&(r=y.filter(o,r)),this.length>1&&($[e]||y.uniqueSort(r),H.test(e)&&r.reverse()),this.pushStack(r)}});var L=/[^\\x20\\t\\r\\n\\f]+/g;function _(e){return e}function M(e){throw e}function F(e,t,n,o){var r;try{e&&g(r=e.promise)?r.call(e).done(t).fail(n):e&&g(r=e.then)?r.call(e,t,n):t.apply(void 0,[e].slice(o))}catch(e){n.apply(void 0,[e])}}y.Callbacks=function(e){e=\"string\"==typeof e?function(e){var t={};return y.each(e.match(L)||[],function(e,n){t[n]=!0}),t}(e):y.extend({},e);var t,n,o,r,i=[],l=[],a=-1,s=function(){for(r=r||e.once,o=t=!0;l.length;a=-1)for(n=l.shift();++a-1;)i.splice(n,1),n<=a&&a--}),this},has:function(e){return e?y.inArray(e,i)>-1:i.length>0},empty:function(){return i&&(i=[]),this},disable:function(){return r=l=[],i=n=\"\",this},disabled:function(){return!i},lock:function(){return r=l=[],n||t||(i=n=\"\"),this},locked:function(){return!!r},fireWith:function(e,n){return r||(n=[e,(n=n||[]).slice?n.slice():n],l.push(n),t||s()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!o}};return c},y.extend({Deferred:function(t){var n=[[\"notify\",\"progress\",y.Callbacks(\"memory\"),y.Callbacks(\"memory\"),2],[\"resolve\",\"done\",y.Callbacks(\"once memory\"),y.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",y.Callbacks(\"once memory\"),y.Callbacks(\"once memory\"),1,\"rejected\"]],o=\"pending\",r={state:function(){return o},always:function(){return i.done(arguments).fail(arguments),this},catch:function(e){return r.then(null,e)},pipe:function(){var e=arguments;return y.Deferred(function(t){y.each(n,function(n,o){var r=g(e[o[4]])&&e[o[4]];i[o[1]](function(){var e=r&&r.apply(this,arguments);e&&g(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[o[0]+\"With\"](this,r?[e]:arguments)})}),e=null}).promise()},then:function(t,o,r){var i=0;function l(t,n,o,r){return function(){var a=this,s=arguments,c=function(){var e,c;if(!(t=i&&(o!==M&&(a=void 0,s=[e]),n.rejectWith(a,s))}};t?u():(y.Deferred.getStackHook&&(u.stackTrace=y.Deferred.getStackHook()),e.setTimeout(u))}}return y.Deferred(function(e){n[0][3].add(l(0,e,g(r)?r:_,e.notifyWith)),n[1][3].add(l(0,e,g(t)?t:_)),n[2][3].add(l(0,e,g(o)?o:M))}).promise()},promise:function(e){return null!=e?y.extend(e,r):r}},i={};return y.each(n,function(e,t){var l=t[2],a=t[5];r[t[1]]=l.add,a&&l.add(function(){o=a},n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),l.add(t[3].fire),i[t[0]]=function(){return i[t[0]+\"With\"](this===i?void 0:this,arguments),this},i[t[0]+\"With\"]=l.fireWith}),r.promise(i),t&&t.call(i,i),i},when:function(e){var t=arguments.length,n=t,o=Array(n),r=i.call(arguments),l=y.Deferred(),a=function(e){return function(n){o[e]=this,r[e]=arguments.length>1?i.call(arguments):n,--t||l.resolveWith(o,r)}};if(t<=1&&(F(e,l.done(a(n)).resolve,l.reject,!t),\"pending\"===l.state()||g(r[n]&&r[n].then)))return l.then();for(;n--;)F(r[n],a(n),l.reject);return l.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;y.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&W.test(t.name)&&e.console.warn(\"jQuery.Deferred exception: \"+t.message,t.stack,n)},y.readyException=function(t){e.setTimeout(function(){throw t})};var j=y.Deferred();function V(){o.removeEventListener(\"DOMContentLoaded\",V),e.removeEventListener(\"load\",V),y.ready()}y.fn.ready=function(e){return j.then(e).catch(function(e){y.readyException(e)}),this},y.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--y.readyWait:y.isReady)||(y.isReady=!0,!0!==e&&--y.readyWait>0||j.resolveWith(o,[y]))}}),y.ready.then=j.then,\"complete\"===o.readyState||\"loading\"!==o.readyState&&!o.documentElement.doScroll?e.setTimeout(y.ready):(o.addEventListener(\"DOMContentLoaded\",V),e.addEventListener(\"load\",V));var B=function(e,t,n,o,r,i,l){var a=0,s=e.length,c=null==n;if(\"object\"===C(n))for(a in r=!0,n)B(e,t,a,n[a],!0,i,l);else if(void 0!==o&&(r=!0,g(o)||(l=!0),c&&(l?(t.call(e,o),t=null):(c=t,t=function(e,t,n){return c.call(y(e),n)})),t))for(;a1,null,!0)},removeData:function(e){return this.each(function(){Y.remove(this,e)})}}),y.extend({queue:function(e,t,n){var o;if(e)return t=(t||\"fx\")+\"queue\",o=G.get(e,t),n&&(!o||Array.isArray(n)?o=G.access(e,t,y.makeArray(n)):o.push(n)),o||[]},dequeue:function(e,t){t=t||\"fx\";var n=y.queue(e,t),o=n.length,r=n.shift(),i=y._queueHooks(e,t);\"inprogress\"===r&&(r=n.shift(),o--),r&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete i.stop,r.call(e,function(){y.dequeue(e,t)},i)),!o&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return G.get(e,n)||G.access(e,n,{empty:y.Callbacks(\"once memory\").add(function(){G.remove(e,[t+\"queue\",n])})})}}),y.fn.extend({queue:function(e,t){var n=2;return\"string\"!=typeof e&&(t=e,e=\"fx\",n--),arguments.length\\x20\\t\\r\\n\\f]*)/i,he=/^$|^module$|\\/(?:java|ecma)script/i,ge={option:[1,\"\"],thead:[1,\"\",\"
\"],col:[2,\"\",\"
\"],tr:[2,\"\",\"
\"],td:[3,\"\",\"
\"],_default:[0,\"\",\"\"]};function me(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&T(e,t)?y.merge([e],n):n}function ve(e,t){for(var n=0,o=e.length;n-1)r&&r.push(i);else if(c=re(i),l=me(d.appendChild(i),\"script\"),c&&ve(l),n)for(u=0;i=l[u++];)he.test(i.type||\"\")&&n.push(i);return d}we=o.createDocumentFragment().appendChild(o.createElement(\"div\")),(Ce=o.createElement(\"input\")).setAttribute(\"type\",\"radio\"),Ce.setAttribute(\"checked\",\"checked\"),Ce.setAttribute(\"name\",\"t\"),we.appendChild(Ce),h.checkClone=we.cloneNode(!0).cloneNode(!0).lastChild.checked,we.innerHTML=\"\",h.noCloneChecked=!!we.cloneNode(!0).lastChild.defaultValue;var xe=/^key/,Se=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Re=/^([^.]*)(?:\\.(.+)|)/;function Ee(){return!0}function ke(){return!1}function Te(e,t){return e===function(){try{return o.activeElement}catch(e){}}()==(\"focus\"===t)}function Pe(e,t,n,o,r,i){var l,a;if(\"object\"==typeof t){for(a in\"string\"!=typeof n&&(o=o||n,n=void 0),t)Pe(e,a,n,o,t[a],i);return e}if(null==o&&null==r?(r=n,o=n=void 0):null==r&&(\"string\"==typeof n?(r=o,o=void 0):(r=o,o=n,n=void 0)),!1===r)r=ke;else if(!r)return e;return 1===i&&(l=r,(r=function(e){return y().off(e),l.apply(this,arguments)}).guid=l.guid||(l.guid=y.guid++)),e.each(function(){y.event.add(this,t,r,o,n)})}function De(e,t,n){n?(G.set(e,t,!1),y.event.add(e,t,{namespace:!1,handler:function(e){var o,r,l=G.get(this,t);if(1&e.isTrigger&&this[t]){if(l)(y.event.special[t]||{}).delegateType&&e.stopPropagation();else if(l=i.call(arguments),G.set(this,t,l),o=n(this,t),this[t](),l!==(r=G.get(this,t))||o?G.set(this,t,!1):r=void 0,l!==r)return e.stopImmediatePropagation(),e.preventDefault(),r}else l&&(G.set(this,t,y.event.trigger(y.extend(l.shift(),y.Event.prototype),l,this)),e.stopImmediatePropagation())}})):y.event.add(e,t,Ee)}y.event={global:{},add:function(e,t,n,o,r){var i,l,a,s,c,u,d,p,f,h,g,m=G.get(e);if(m)for(n.handler&&(n=(i=n).handler,r=i.selector),r&&y.find.matchesSelector(oe,r),n.guid||(n.guid=y.guid++),(s=m.events)||(s=m.events={}),(l=m.handle)||(l=m.handle=function(t){return void 0!==y&&y.event.triggered!==t.type?y.event.dispatch.apply(e,arguments):void 0}),c=(t=(t||\"\").match(L)||[\"\"]).length;c--;)f=g=(a=Re.exec(t[c])||[])[1],h=(a[2]||\"\").split(\".\").sort(),f&&(d=y.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=y.event.special[f]||{},u=y.extend({type:f,origType:g,data:o,handler:n,guid:n.guid,selector:r,needsContext:r&&y.expr.match.needsContext.test(r),namespace:h.join(\".\")},i),(p=s[f])||((p=s[f]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(e,o,h,l)||e.addEventListener&&e.addEventListener(f,l)),d.add&&(d.add.call(e,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),y.event.global[f]=!0)},remove:function(e,t,n,o,r){var i,l,a,s,c,u,d,p,f,h,g,m=G.hasData(e)&&G.get(e);if(m&&(s=m.events)){for(c=(t=(t||\"\").match(L)||[\"\"]).length;c--;)if(f=g=(a=Re.exec(t[c])||[])[1],h=(a[2]||\"\").split(\".\").sort(),f){for(d=y.event.special[f]||{},p=s[f=(o?d.delegateType:d.bindType)||f]||[],a=a[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),l=i=p.length;i--;)u=p[i],!r&&g!==u.origType||n&&n.guid!==u.guid||a&&!a.test(u.namespace)||o&&o!==u.selector&&(\"**\"!==o||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));l&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,m.handle)||y.removeEvent(e,f,m.handle),delete s[f])}else for(f in s)y.event.remove(e,f+t[c],n,o,!0);y.isEmptyObject(s)&&G.remove(e,\"handle events\")}},dispatch:function(e){var t,n,o,r,i,l,a=y.event.fix(e),s=new Array(arguments.length),c=(G.get(this,\"events\")||{})[a.type]||[],u=y.event.special[a.type]||{};for(s[0]=a,t=1;t=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(\"click\"!==e.type||!0!==c.disabled)){for(i=[],l={},n=0;n-1:y.find(r,this,null,[c]).length),l[r]&&i.push(o);i.length&&a.push({elem:c,handlers:i})}return c=this,s\\x20\\t\\r\\n\\f]*)[^>]*)\\/>/gi,Ne=/\\s*$/g;function Ie(e,t){return T(e,\"table\")&&T(11!==t.nodeType?t:t.firstChild,\"tr\")&&y(e).children(\"tbody\")[0]||e}function Le(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function _e(e){return\"true/\"===(e.type||\"\").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute(\"type\"),e}function Me(e,t){var n,o,r,i,l,a,s,c;if(1===t.nodeType){if(G.hasData(e)&&(i=G.access(e),l=G.set(t,i),c=i.events))for(r in delete l.handle,l.events={},c)for(n=0,o=c[r].length;n1&&\"string\"==typeof m&&!h.checkClone&&He.test(m))return e.each(function(r){var i=e.eq(r);v&&(t[0]=m.call(this,r,i.html())),Fe(i,t,n,o)});if(p&&(i=(r=be(t,e[0].ownerDocument,!1,e,o)).firstChild,1===r.childNodes.length&&(r=i),i||o)){for(s=(a=y.map(me(r,\"script\"),Le)).length;d\")},clone:function(e,t,n){var o,r,i,l,a,s,c,u=e.cloneNode(!0),d=re(e);if(!(h.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||y.isXMLDoc(e)))for(l=me(u),o=0,r=(i=me(e)).length;o0&&ve(l,!d&&me(e,\"script\")),u},cleanData:function(e){for(var t,n,o,r=y.event.special,i=0;void 0!==(n=e[i]);i++)if(K(n)){if(t=n[G.expando]){if(t.events)for(o in t.events)r[o]?y.event.remove(n,o):y.removeEvent(n,o,t.handle);n[G.expando]=void 0}n[Y.expando]&&(n[Y.expando]=void 0)}}}),y.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return B(this,function(e){return void 0===e?y.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Fe(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Ie(this,e).appendChild(e)})},prepend:function(){return Fe(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ie(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Fe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Fe(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(y.cleanData(me(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return y.clone(this,e,t)})},html:function(e){return B(this,function(e){var t=this[0]||{},n=0,o=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!Ne.test(e)&&!ge[(fe.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=y.htmlPrefilter(e);try{for(;n=0&&(s+=Math.max(0,Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-i-s-a-.5))||0),s}function tt(e,t,n){var o=Ve(e),r=(!h.boxSizingReliable()||n)&&\"border-box\"===y.css(e,\"boxSizing\",!1,o),i=r,l=ze(e,t,o),a=\"offset\"+t[0].toUpperCase()+t.slice(1);if(je.test(l)){if(!n)return l;l=\"auto\"}return(!h.boxSizingReliable()&&r||\"auto\"===l||!parseFloat(l)&&\"inline\"===y.css(e,\"display\",!1,o))&&e.getClientRects().length&&(r=\"border-box\"===y.css(e,\"boxSizing\",!1,o),(i=a in e)&&(l=e[a])),(l=parseFloat(l)||0)+et(e,t,n||(r?\"border\":\"content\"),i,o,l)+\"px\"}function nt(e,t,n,o,r){return new nt.prototype.init(e,t,n,o,r)}y.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=ze(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,o){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,i,l,a=X(t),s=Ye.test(t),c=e.style;if(s||(t=Ue(a)),l=y.cssHooks[t]||y.cssHooks[a],void 0===n)return l&&\"get\"in l&&void 0!==(r=l.get(e,!1,o))?r:c[t];\"string\"===(i=typeof n)&&(r=te.exec(n))&&r[1]&&(n=se(e,t,r),i=\"number\"),null!=n&&n==n&&(\"number\"!==i||s||(n+=r&&r[3]||(y.cssNumber[a]?\"\":\"px\")),h.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(c[t]=\"inherit\"),l&&\"set\"in l&&void 0===(n=l.set(e,n,o))||(s?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,o){var r,i,l,a=X(t);return Ye.test(t)||(t=Ue(a)),(l=y.cssHooks[t]||y.cssHooks[a])&&\"get\"in l&&(r=l.get(e,!0,n)),void 0===r&&(r=ze(e,t,o)),\"normal\"===r&&t in Je&&(r=Je[t]),\"\"===n||n?(i=parseFloat(r),!0===n||isFinite(i)?i||0:r):r}}),y.each([\"height\",\"width\"],function(e,t){y.cssHooks[t]={get:function(e,n,o){if(n)return!Ge.test(y.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,t,o):ae(e,Qe,function(){return tt(e,t,o)})},set:function(e,n,o){var r,i=Ve(e),l=!h.scrollboxSize()&&\"absolute\"===i.position,a=(l||o)&&\"border-box\"===y.css(e,\"boxSizing\",!1,i),s=o?et(e,t,o,a,i):0;return a&&l&&(s-=Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-parseFloat(i[t])-et(e,t,\"border\",!1,i)-.5)),s&&(r=te.exec(n))&&\"px\"!==(r[3]||\"px\")&&(e.style[t]=n,n=y.css(e,t)),Ze(0,n,s)}}}),y.cssHooks.marginLeft=Oe(h.reliableMarginLeft,function(e,t){if(t)return(parseFloat(ze(e,\"marginLeft\"))||e.getBoundingClientRect().left-ae(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+\"px\"}),y.each({margin:\"\",padding:\"\",border:\"Width\"},function(e,t){y.cssHooks[e+t]={expand:function(n){for(var o=0,r={},i=\"string\"==typeof n?n.split(\" \"):[n];o<4;o++)r[e+ne[o]+t]=i[o]||i[o-2]||i[0];return r}},\"margin\"!==e&&(y.cssHooks[e+t].set=Ze)}),y.fn.extend({css:function(e,t){return B(this,function(e,t,n){var o,r,i={},l=0;if(Array.isArray(t)){for(o=Ve(e),r=t.length;l1)}}),y.Tween=nt,nt.prototype={constructor:nt,init:function(e,t,n,o,r,i){this.elem=e,this.prop=n,this.easing=r||y.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=o,this.unit=i||(y.cssNumber[n]?\"\":\"px\")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=y.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}},nt.prototype.init.prototype=nt.prototype,nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=y.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){y.fx.step[e.prop]?y.fx.step[e.prop](e):1!==e.elem.nodeType||!y.cssHooks[e.prop]&&null==e.elem.style[Ue(e.prop)]?e.elem[e.prop]=e.now:y.style(e.elem,e.prop,e.now+e.unit)}}},nt.propHooks.scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},y.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},y.fx=nt.prototype.init,y.fx.step={};var ot,rt,it=/^(?:toggle|show|hide)$/,lt=/queueHooks$/;function at(){rt&&(!1===o.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(at):e.setTimeout(at,y.fx.interval),y.fx.tick())}function st(){return e.setTimeout(function(){ot=void 0}),ot=Date.now()}function ct(e,t){var n,o=0,r={height:e};for(t=t?1:0;o<4;o+=2-t)r[\"margin\"+(n=ne[o])]=r[\"padding\"+n]=e;return t&&(r.opacity=r.width=e),r}function ut(e,t,n){for(var o,r=(dt.tweeners[t]||[]).concat(dt.tweeners[\"*\"]),i=0,l=r.length;i1)},removeAttr:function(e){return this.each(function(){y.removeAttr(this,e)})}}),y.extend({attr:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?y.prop(e,t,n):(1===i&&y.isXMLDoc(e)||(r=y.attrHooks[t.toLowerCase()]||(y.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void y.removeAttr(e,t):r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+\"\"),n):r&&\"get\"in r&&null!==(o=r.get(e,t))?o:null==(o=y.find.attr(e,t))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!h.radioValue&&\"radio\"===t&&T(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,o=0,r=t&&t.match(L);if(r&&1===e.nodeType)for(;n=r[o++];)e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?y.removeAttr(e,n):e.setAttribute(n,n),n}},y.each(y.expr.match.bool.source.match(/\\w+/g),function(e,t){var n=ft[t]||y.find.attr;ft[t]=function(e,t,o){var r,i,l=t.toLowerCase();return o||(i=ft[l],ft[l]=r,r=null!=n(e,t,o)?l:null,ft[l]=i),r}});var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function mt(e){return(e.match(L)||[]).join(\" \")}function vt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}function wt(e){return Array.isArray(e)?e:\"string\"==typeof e&&e.match(L)||[]}y.fn.extend({prop:function(e,t){return B(this,y.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[y.propFix[e]||e]})}}),y.extend({prop:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&y.isXMLDoc(e)||(t=y.propFix[t]||t,r=y.propHooks[t]),void 0!==n?r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:e[t]=n:r&&\"get\"in r&&null!==(o=r.get(e,t))?o:e[t]},propHooks:{tabIndex:{get:function(e){var t=y.find.attr(e,\"tabindex\");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),h.optSelected||(y.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),y.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],function(){y.propFix[this.toLowerCase()]=this}),y.fn.extend({addClass:function(e){var t,n,o,r,i,l,a,s=0;if(g(e))return this.each(function(t){y(this).addClass(e.call(this,t,vt(this)))});if((t=wt(e)).length)for(;n=this[s++];)if(r=vt(n),o=1===n.nodeType&&\" \"+mt(r)+\" \"){for(l=0;i=t[l++];)o.indexOf(\" \"+i+\" \")<0&&(o+=i+\" \");r!==(a=mt(o))&&n.setAttribute(\"class\",a)}return this},removeClass:function(e){var t,n,o,r,i,l,a,s=0;if(g(e))return this.each(function(t){y(this).removeClass(e.call(this,t,vt(this)))});if(!arguments.length)return this.attr(\"class\",\"\");if((t=wt(e)).length)for(;n=this[s++];)if(r=vt(n),o=1===n.nodeType&&\" \"+mt(r)+\" \"){for(l=0;i=t[l++];)for(;o.indexOf(\" \"+i+\" \")>-1;)o=o.replace(\" \"+i+\" \",\" \");r!==(a=mt(o))&&n.setAttribute(\"class\",a)}return this},toggleClass:function(e,t){var n=typeof e,o=\"string\"===n||Array.isArray(e);return\"boolean\"==typeof t&&o?t?this.addClass(e):this.removeClass(e):g(e)?this.each(function(n){y(this).toggleClass(e.call(this,n,vt(this),t),t)}):this.each(function(){var t,r,i,l;if(o)for(r=0,i=y(this),l=wt(e);t=l[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&\"boolean\"!==n||((t=vt(this))&&G.set(this,\"__className__\",t),this.setAttribute&&this.setAttribute(\"class\",t||!1===e?\"\":G.get(this,\"__className__\")||\"\"))})},hasClass:function(e){var t,n,o=0;for(t=\" \"+e+\" \";n=this[o++];)if(1===n.nodeType&&(\" \"+mt(vt(n))+\" \").indexOf(t)>-1)return!0;return!1}});var Ct=/\\r/g;y.fn.extend({val:function(e){var t,n,o,r=this[0];return arguments.length?(o=g(e),this.each(function(n){var r;1===this.nodeType&&(null==(r=o?e.call(this,n,y(this).val()):e)?r=\"\":\"number\"==typeof r?r+=\"\":Array.isArray(r)&&(r=y.map(r,function(e){return null==e?\"\":e+\"\"})),(t=y.valHooks[this.type]||y.valHooks[this.nodeName.toLowerCase()])&&\"set\"in t&&void 0!==t.set(this,r,\"value\")||(this.value=r))})):r?(t=y.valHooks[r.type]||y.valHooks[r.nodeName.toLowerCase()])&&\"get\"in t&&void 0!==(n=t.get(r,\"value\"))?n:\"string\"==typeof(n=r.value)?n.replace(Ct,\"\"):null==n?\"\":n:void 0}}),y.extend({valHooks:{option:{get:function(e){var t=y.find.attr(e,\"value\");return null!=t?t:mt(y.text(e))}},select:{get:function(e){var t,n,o,r=e.options,i=e.selectedIndex,l=\"select-one\"===e.type,a=l?null:[],s=l?i+1:r.length;for(o=i<0?s:l?i:0;o-1)&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),y.each([\"radio\",\"checkbox\"],function(){y.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=y.inArray(y(e).val(),t)>-1}},h.checkOn||(y.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})}),h.focusin=\"onfocusin\"in e;var yt=/^(?:focusinfocus|focusoutblur)$/,bt=function(e){e.stopPropagation()};y.extend(y.event,{trigger:function(t,n,r,i){var l,a,s,c,u,p,f,h,v=[r||o],w=d.call(t,\"type\")?t.type:t,C=d.call(t,\"namespace\")?t.namespace.split(\".\"):[];if(a=h=s=r=r||o,3!==r.nodeType&&8!==r.nodeType&&!yt.test(w+y.event.triggered)&&(w.indexOf(\".\")>-1&&(C=w.split(\".\"),w=C.shift(),C.sort()),u=w.indexOf(\":\")<0&&\"on\"+w,(t=t[y.expando]?t:new y.Event(w,\"object\"==typeof t&&t)).isTrigger=i?2:3,t.namespace=C.join(\".\"),t.rnamespace=t.namespace?new RegExp(\"(^|\\\\.)\"+C.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:y.makeArray(n,[t]),f=y.event.special[w]||{},i||!f.trigger||!1!==f.trigger.apply(r,n))){if(!i&&!f.noBubble&&!m(r)){for(c=f.delegateType||w,yt.test(c+w)||(a=a.parentNode);a;a=a.parentNode)v.push(a),s=a;s===(r.ownerDocument||o)&&v.push(s.defaultView||s.parentWindow||e)}for(l=0;(a=v[l++])&&!t.isPropagationStopped();)h=a,t.type=l>1?c:f.bindType||w,(p=(G.get(a,\"events\")||{})[t.type]&&G.get(a,\"handle\"))&&p.apply(a,n),(p=u&&a[u])&&p.apply&&K(a)&&(t.result=p.apply(a,n),!1===t.result&&t.preventDefault());return t.type=w,i||t.isDefaultPrevented()||f._default&&!1!==f._default.apply(v.pop(),n)||!K(r)||u&&g(r[w])&&!m(r)&&((s=r[u])&&(r[u]=null),y.event.triggered=w,t.isPropagationStopped()&&h.addEventListener(w,bt),r[w](),t.isPropagationStopped()&&h.removeEventListener(w,bt),y.event.triggered=void 0,s&&(r[u]=s)),t.result}},simulate:function(e,t,n){var o=y.extend(new y.Event,n,{type:e,isSimulated:!0});y.event.trigger(o,null,t)}}),y.fn.extend({trigger:function(e,t){return this.each(function(){y.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return y.event.trigger(e,t,n,!0)}}),h.focusin||y.each({focus:\"focusin\",blur:\"focusout\"},function(e,t){var n=function(e){y.event.simulate(t,e.target,y.event.fix(e))};y.event.special[t]={setup:function(){var o=this.ownerDocument||this,r=G.access(o,t);r||o.addEventListener(e,n,!0),G.access(o,t,(r||0)+1)},teardown:function(){var o=this.ownerDocument||this,r=G.access(o,t)-1;r?G.access(o,t,r):(o.removeEventListener(e,n,!0),G.remove(o,t))}}});var xt=e.location,St=Date.now(),Rt=/\\?/;y.parseXML=function(t){var n;if(!t||\"string\"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,\"text/xml\")}catch(e){n=void 0}return n&&!n.getElementsByTagName(\"parsererror\").length||y.error(\"Invalid XML: \"+t),n};var Et=/\\[\\]$/,kt=/\\r?\\n/g,Tt=/^(?:submit|button|image|reset|file)$/i,Pt=/^(?:input|select|textarea|keygen)/i;function Dt(e,t,n,o){var r;if(Array.isArray(t))y.each(t,function(t,r){n||Et.test(e)?o(e,r):Dt(e+\"[\"+(\"object\"==typeof r&&null!=r?t:\"\")+\"]\",r,n,o)});else if(n||\"object\"!==C(t))o(e,t);else for(r in t)Dt(e+\"[\"+r+\"]\",t[r],n,o)}y.param=function(e,t){var n,o=[],r=function(e,t){var n=g(t)?t():t;o[o.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(null==e)return\"\";if(Array.isArray(e)||e.jquery&&!y.isPlainObject(e))y.each(e,function(){r(this.name,this.value)});else for(n in e)Dt(n,e[n],t,r);return o.join(\"&\")},y.fn.extend({serialize:function(){return y.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=y.prop(this,\"elements\");return e?y.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!y(this).is(\":disabled\")&&Pt.test(this.nodeName)&&!Tt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=y(this).val();return null==n?null:Array.isArray(n)?y.map(n,function(e){return{name:t.name,value:e.replace(kt,\"\\r\\n\")}}):{name:t.name,value:n.replace(kt,\"\\r\\n\")}}).get()}});var At=/%20/g,Nt=/#.*$/,Ht=/([?&])_=[^&]*/,$t=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,It=/^(?:GET|HEAD)$/,Lt=/^\\/\\//,_t={},Mt={},Ft=\"*/\".concat(\"*\"),Wt=o.createElement(\"a\");function jt(e){return function(t,n){\"string\"!=typeof t&&(n=t,t=\"*\");var o,r=0,i=t.toLowerCase().match(L)||[];if(g(n))for(;o=i[r++];)\"+\"===o[0]?(o=o.slice(1)||\"*\",(e[o]=e[o]||[]).unshift(n)):(e[o]=e[o]||[]).push(n)}}function Vt(e,t,n,o){var r={},i=e===Mt;function l(a){var s;return r[a]=!0,y.each(e[a]||[],function(e,a){var c=a(t,n,o);return\"string\"!=typeof c||i||r[c]?i?!(s=c):void 0:(t.dataTypes.unshift(c),l(c),!1)}),s}return l(t.dataTypes[0])||!r[\"*\"]&&l(\"*\")}function Bt(e,t){var n,o,r=y.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((r[n]?e:o||(o={}))[n]=t[n]);return o&&y.extend(!0,e,o),e}Wt.href=xt.href,y.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:xt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(xt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":Ft,text:\"text/plain\",html:\"text/html\",xml:\"application/xml, text/xml\",json:\"application/json, text/javascript\"},contents:{xml:/\\bxml\\b/,html:/\\bhtml/,json:/\\bjson\\b/},responseFields:{xml:\"responseXML\",text:\"responseText\",json:\"responseJSON\"},converters:{\"* text\":String,\"text html\":!0,\"text json\":JSON.parse,\"text xml\":y.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Bt(Bt(e,y.ajaxSettings),t):Bt(y.ajaxSettings,e)},ajaxPrefilter:jt(_t),ajaxTransport:jt(Mt),ajax:function(t,n){\"object\"==typeof t&&(n=t,t=void 0),n=n||{};var r,i,l,a,s,c,u,d,p,f,h=y.ajaxSetup({},n),g=h.context||h,m=h.context&&(g.nodeType||g.jquery)?y(g):y.event,v=y.Deferred(),w=y.Callbacks(\"once memory\"),C=h.statusCode||{},b={},x={},S=\"canceled\",R={readyState:0,getResponseHeader:function(e){var t;if(u){if(!a)for(a={};t=$t.exec(l);)a[t[1].toLowerCase()+\" \"]=(a[t[1].toLowerCase()+\" \"]||[]).concat(t[2]);t=a[e.toLowerCase()+\" \"]}return null==t?null:t.join(\", \")},getAllResponseHeaders:function(){return u?l:null},setRequestHeader:function(e,t){return null==u&&(e=x[e.toLowerCase()]=x[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==u&&(h.mimeType=e),this},statusCode:function(e){var t;if(e)if(u)R.always(e[R.status]);else for(t in e)C[t]=[C[t],e[t]];return this},abort:function(e){var t=e||S;return r&&r.abort(t),E(0,t),this}};if(v.promise(R),h.url=((t||h.url||xt.href)+\"\").replace(Lt,xt.protocol+\"//\"),h.type=n.method||n.type||h.method||h.type,h.dataTypes=(h.dataType||\"*\").toLowerCase().match(L)||[\"\"],null==h.crossDomain){c=o.createElement(\"a\");try{c.href=h.url,c.href=c.href,h.crossDomain=Wt.protocol+\"//\"+Wt.host!=c.protocol+\"//\"+c.host}catch(e){h.crossDomain=!0}}if(h.data&&h.processData&&\"string\"!=typeof h.data&&(h.data=y.param(h.data,h.traditional)),Vt(_t,h,n,R),u)return R;for(p in(d=y.event&&h.global)&&0==y.active++&&y.event.trigger(\"ajaxStart\"),h.type=h.type.toUpperCase(),h.hasContent=!It.test(h.type),i=h.url.replace(Nt,\"\"),h.hasContent?h.data&&h.processData&&0===(h.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(h.data=h.data.replace(At,\"+\")):(f=h.url.slice(i.length),h.data&&(h.processData||\"string\"==typeof h.data)&&(i+=(Rt.test(i)?\"&\":\"?\")+h.data,delete h.data),!1===h.cache&&(i=i.replace(Ht,\"$1\"),f=(Rt.test(i)?\"&\":\"?\")+\"_=\"+St+++f),h.url=i+f),h.ifModified&&(y.lastModified[i]&&R.setRequestHeader(\"If-Modified-Since\",y.lastModified[i]),y.etag[i]&&R.setRequestHeader(\"If-None-Match\",y.etag[i])),(h.data&&h.hasContent&&!1!==h.contentType||n.contentType)&&R.setRequestHeader(\"Content-Type\",h.contentType),R.setRequestHeader(\"Accept\",h.dataTypes[0]&&h.accepts[h.dataTypes[0]]?h.accepts[h.dataTypes[0]]+(\"*\"!==h.dataTypes[0]?\", \"+Ft+\"; q=0.01\":\"\"):h.accepts[\"*\"]),h.headers)R.setRequestHeader(p,h.headers[p]);if(h.beforeSend&&(!1===h.beforeSend.call(g,R,h)||u))return R.abort();if(S=\"abort\",w.add(h.complete),R.done(h.success),R.fail(h.error),r=Vt(Mt,h,n,R)){if(R.readyState=1,d&&m.trigger(\"ajaxSend\",[R,h]),u)return R;h.async&&h.timeout>0&&(s=e.setTimeout(function(){R.abort(\"timeout\")},h.timeout));try{u=!1,r.send(b,E)}catch(e){if(u)throw e;E(-1,e)}}else E(-1,\"No Transport\");function E(t,n,o,a){var c,p,f,b,x,S=n;u||(u=!0,s&&e.clearTimeout(s),r=void 0,l=a||\"\",R.readyState=t>0?4:0,c=t>=200&&t<300||304===t,o&&(b=function(e,t,n){for(var o,r,i,l,a=e.contents,s=e.dataTypes;\"*\"===s[0];)s.shift(),void 0===o&&(o=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(o)for(r in a)if(a[r]&&a[r].test(o)){s.unshift(r);break}if(s[0]in n)i=s[0];else{for(r in n){if(!s[0]||e.converters[r+\" \"+s[0]]){i=r;break}l||(l=r)}i=i||l}if(i)return i!==s[0]&&s.unshift(i),n[i]}(h,R,o)),b=function(e,t,n,o){var r,i,l,a,s,c={},u=e.dataTypes.slice();if(u[1])for(l in e.converters)c[l.toLowerCase()]=e.converters[l];for(i=u.shift();i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!s&&o&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),s=i,i=u.shift())if(\"*\"===i)i=s;else if(\"*\"!==s&&s!==i){if(!(l=c[s+\" \"+i]||c[\"* \"+i]))for(r in c)if((a=r.split(\" \"))[1]===i&&(l=c[s+\" \"+a[0]]||c[\"* \"+a[0]])){!0===l?l=c[r]:!0!==c[r]&&(i=a[0],u.unshift(a[1]));break}if(!0!==l)if(l&&e.throws)t=l(t);else try{t=l(t)}catch(e){return{state:\"parsererror\",error:l?e:\"No conversion from \"+s+\" to \"+i}}}return{state:\"success\",data:t}}(h,b,R,c),c?(h.ifModified&&((x=R.getResponseHeader(\"Last-Modified\"))&&(y.lastModified[i]=x),(x=R.getResponseHeader(\"etag\"))&&(y.etag[i]=x)),204===t||\"HEAD\"===h.type?S=\"nocontent\":304===t?S=\"notmodified\":(S=b.state,p=b.data,c=!(f=b.error))):(f=S,!t&&S||(S=\"error\",t<0&&(t=0))),R.status=t,R.statusText=(n||S)+\"\",c?v.resolveWith(g,[p,S,R]):v.rejectWith(g,[R,S,f]),R.statusCode(C),C=void 0,d&&m.trigger(c?\"ajaxSuccess\":\"ajaxError\",[R,h,c?p:f]),w.fireWith(g,[R,S]),d&&(m.trigger(\"ajaxComplete\",[R,h]),--y.active||y.event.trigger(\"ajaxStop\")))}return R},getJSON:function(e,t,n){return y.get(e,t,n,\"json\")},getScript:function(e,t){return y.get(e,void 0,t,\"script\")}}),y.each([\"get\",\"post\"],function(e,t){y[t]=function(e,n,o,r){return g(n)&&(r=r||o,o=n,n=void 0),y.ajax(y.extend({url:e,type:t,dataType:r,data:n,success:o},y.isPlainObject(e)&&e))}}),y._evalUrl=function(e,t){return y.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,converters:{\"text script\":function(){}},dataFilter:function(e){y.globalEval(e,t)}})},y.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=y(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return g(e)?this.each(function(t){y(this).wrapInner(e.call(this,t))}):this.each(function(){var t=y(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=g(e);return this.each(function(n){y(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not(\"body\").each(function(){y(this).replaceWith(this.childNodes)}),this}}),y.expr.pseudos.hidden=function(e){return!y.expr.pseudos.visible(e)},y.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},y.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var zt={0:200,1223:204},Ot=y.ajaxSettings.xhr();h.cors=!!Ot&&\"withCredentials\"in Ot,h.ajax=Ot=!!Ot,y.ajaxTransport(function(t){var n,o;if(h.cors||Ot&&!t.crossDomain)return{send:function(r,i){var l,a=t.xhr();if(a.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(l in t.xhrFields)a[l]=t.xhrFields[l];for(l in t.mimeType&&a.overrideMimeType&&a.overrideMimeType(t.mimeType),t.crossDomain||r[\"X-Requested-With\"]||(r[\"X-Requested-With\"]=\"XMLHttpRequest\"),r)a.setRequestHeader(l,r[l]);n=function(e){return function(){n&&(n=o=a.onload=a.onerror=a.onabort=a.ontimeout=a.onreadystatechange=null,\"abort\"===e?a.abort():\"error\"===e?\"number\"!=typeof a.status?i(0,\"error\"):i(a.status,a.statusText):i(zt[a.status]||a.status,a.statusText,\"text\"!==(a.responseType||\"text\")||\"string\"!=typeof a.responseText?{binary:a.response}:{text:a.responseText},a.getAllResponseHeaders()))}},a.onload=n(),o=a.onerror=a.ontimeout=n(\"error\"),void 0!==a.onabort?a.onabort=o:a.onreadystatechange=function(){4===a.readyState&&e.setTimeout(function(){n&&o()})},n=n(\"abort\");try{a.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}}),y.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),y.ajaxSetup({accepts:{script:\"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"},contents:{script:/\\b(?:java|ecma)script\\b/},converters:{\"text script\":function(e){return y.globalEval(e),e}}}),y.ajaxPrefilter(\"script\",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")}),y.ajaxTransport(\"script\",function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=y(\"