From ed00871e4e058273ff41b267f052cb0a94579c58 Mon Sep 17 00:00:00 2001 From: David Sanders Date: Mon, 26 Dec 2016 22:03:17 +0000 Subject: [PATCH 1/2] Delete some unnecessary files; update Annulus notebook --- examples/Annulus (interactive).ipynb | 611 +++++++++++++++++++++ examples/Annulus.ipynb | 182 ------- examples/Calculate pi.ipynb | 775 --------------------------- examples/draw_boxes.jl | 47 -- examples/draw_cubes.jl | 58 -- examples/set_inversion.jl | 15 - 6 files changed, 611 insertions(+), 1077 deletions(-) create mode 100644 examples/Annulus (interactive).ipynb delete mode 100644 examples/Annulus.ipynb delete mode 100644 examples/Calculate pi.ipynb delete mode 100644 examples/draw_boxes.jl delete mode 100644 examples/draw_cubes.jl delete mode 100644 examples/set_inversion.jl diff --git a/examples/Annulus (interactive).ipynb b/examples/Annulus (interactive).ipynb new file mode 100644 index 0000000..6297e7f --- /dev/null +++ b/examples/Annulus (interactive).ipynb @@ -0,0 +1,611 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " \n", + " \n", + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "Plots.GRBackend()" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "using IntervalConstraintProgramming, ValidatedNumerics\n", + "using Interact\n", + "using Plots\n", + "gr() # GR backend for Plots.jl" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[-∞, ∞] × [-∞, ∞]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C = @constraint 1 <= x^2 + y^2 <= 2\n", + "X = IntervalBox(-∞..∞, -∞..∞)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/html": [], + "text/plain": [ + "Interact.Slider{Float64}(Signal{Float64}(0.5, nactions=0),\"\",0.5,0.5:0.5:10.0,\".3f\",true)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "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", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "inside\n", + "\n", + "\n", + "\n", + "\n", + "boundary\n", + "\n", + "\n", + "2-dimensional area: [0.931453, 4.53168]\n", + "\n", + "\n", + "eps = 2\n", + "\n", + "\n", + "-\n", + "\n", + "\n", + "0.5\n", + "\n", + "\n" + ] + }, + "execution_count": 22, + "metadata": { + "comm_id": "35ce03ec-eb3e-4878-a642-0cc81b313762", + "reactive": true + }, + "output_type": "execute_result" + } + ], + "source": [ + "@manipulate for n in slider(0.5:0.5:10, value=0.5)\n", + "\n", + " paving = pave(C, X, 2.0^(-n))\n", + " plot(paving.inner, aspect_ratio=:equal, label=\"inside\")\n", + " plot!(paving.boundary, c=\"gray\", alpha=0.1, ann=[(0, 0, string(Vol(paving))), (0, 0.5, \"eps = 2^(-$n)\")], label=\"boundary\")\n", + " \n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "anaconda-cloud": {}, + "kernelspec": { + "display_name": "Julia 0.5.0", + "language": "julia", + "name": "julia-0.5" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "0.5.0" + }, + "toc": { + "nav_menu": { + "height": "12px", + "width": "252px" + }, + "navigate_menu": true, + "number_sections": true, + "sideBar": true, + "threshold": "2", + "toc_cell": false, + "toc_section_display": "block", + "toc_window_display": false + }, + "widgets": { + "state": { + "2b83b60b-0bb8-4d83-95c5-049a8e409ae1": { + "views": [ + { + "cell_index": 2 + } + ] + } + }, + "version": "1.2.0" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/examples/Annulus.ipynb b/examples/Annulus.ipynb deleted file mode 100644 index 9011269..0000000 --- a/examples/Annulus.ipynb +++ /dev/null @@ -1,182 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "using IntervalConstraintProgramming, ValidatedNumerics" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - ":wide" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "setrounding(Interval, :wide)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[-∞, ∞] × [-∞, ∞]" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ring = @constraint 1 <= x^2 + y^2 <= 2\n", - "X = IntervalBox(-∞..∞, -∞..∞)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 5.008634 seconds (35.39 M allocations: 1.274 GB, 11.58% gc time)\n" - ] - }, - { - "data": { - "text/plain": [ - "Paving:\n", - "- tolerance ϵ = 0.001\n", - "- inner approx. of length 20992\n", - "- boundary approx. of length 20992" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time paving = pave(ring, X, 0.001)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n", - " warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n" - ] - }, - { - "data": { - "text/plain": [ - "draw (generic function with 13 methods)" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "include(\"draw_boxes.jl\")" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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2CiXfVpRUaEDBw6kLT906JBKSkqUTCZzasvx48dHnNQWFoPPXOjp6Rk2kfLQoUOKxWKqqKgYc1sv9rnt8tmno/nTn/6kq666ys1mRgbHaXa4HYNhTpw4oba2tmHL1qxZo/fee0+tra1Dy9ra2vTWW29p3bp1fjcxENasWaPTp09r7969Q8u6urq0Z88erVq1ShMnThxaPtI+7erqSnvPuro6nTlzRitWrPCu4YatWbNGX375perr64eW9ff3q6GhQUuXLtWsWbMkXXzKb1tbm7766qth22a6z6Mkn3060nH4q1/9Si0tLaE+Dt3CcZq/mOM4julGwHuPPfaYYrGYjh49qhdeeEF///d/r7/+67+WJD300END61VVVWn//v3DnhfQ09OjhQsX6uzZs7r//vtVUFCgHTt2yHEcHT58WNOnT/f99zFtYGBAf/M3f6OjR4/q/vvvV1lZmerq6nTixAm99957mjdv3tC6I+3TSZMm6c4779SCBQtUVFSkt99+W7t379bChQt14MCBoUmFYXTnnXfqpZde0r/8y78MPd3z/fff11tvvaVly5ZJkr7//e+rsbFRx48f17XXXispu30eNbnu02QyqYULF2rJkiUqLS1VS0uLdu7cqVmzZundd9+N9GjIs88+q88//1wnT57Uc889p+9973tauHChpIsTy6dMmcJx6gYjj0iD72KxmBOPx9P+mzBhwrD1qqqq0pY5juOcPHnSWbdunXPFFVc4U6dOde644w7n2LFjfjU/kD7//HNn06ZNzlVXXeVMnjzZWb58udPa2pq23kj7tKamxpk/f75TWlrqFBYWOslk0vnhD3/o9PT0+NV8Yy5cuOBs2bLFSSQSTnFxsXPTTTc5r7/++rB1vv/97zsTJkxwPv7442HLM93nUZPrPn3kkUecRYsWOdOmTXMKCwud2bNnO//8z//sfPLJJ37/CoEze/bsEWtmPB4f2occp/ljJAQAABjBnBAAAGAEIQQAABhBCAEAAEYQQgAAgBGEEAAAYAQhBAAAGEEIAQAARhBCAACAEYQQAABgBCEEAAAYQQgBAABGEEIAAIAR/x86o5kRWy0P4gAAAABJRU5ErkJggg==", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.4142135623730954,1.414213562373095,-1.4142135623730954,1.4142135623730956)" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 0.4.6", - "language": "julia", - "name": "julia-0.4" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "0.4.6" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/examples/Calculate pi.ipynb b/examples/Calculate pi.ipynb deleted file mode 100644 index f286575..0000000 --- a/examples/Calculate pi.ipynb +++ /dev/null @@ -1,775 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "using IntervalConstraintProgramming, ValidatedNumerics" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "code = quote \n", - " z1 = x ^ 2\n", - " z2 = y ^ 2\n", - " z3 = z1 + z2\n", - " z3 = z3 ∩ _A_\n", - " (z3,z1,z2) = plusRev(z3,z1,z2)\n", - " (z2,y,_) = powerRev(z2,y,2)\n", - " (z1,x,_) = powerRev(z1,x,2)\n", - " return (x,y)\n", - "end\n" - ] - }, - { - "data": { - "text/plain": [ - "Separator with variables x, y" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "disc = @constraint x^2 + y^2 <= 1" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[-∞, ∞] × [-∞, ∞]" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "X = IntervalBox(-∞..∞, -∞..∞)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(([-1, 1],[-1, 1]),([-∞, ∞],[-∞, ∞]))" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "disc(X)" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.358591 seconds (2.13 M allocations: 69.906 MB, 36.71% gc time)\n" - ] - } - ], - "source": [ - "@time P = pave(disc, X, 1e-2);" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "7164" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "length(P.inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "IntervalConstraintProgramming.Paving{2,Float64}" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "typeof(P)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "2-dimensional area: [3.1407, 3.14248]" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "Vol(P)" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/dpsanders/.julia/v0.4/Conda/deps/usr/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n", - " warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n" - ] - }, - { - "data": { - "text/plain": [ - "draw (generic function with 13 methods)" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "include(\"draw_boxes.jl\")" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "false" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pygui(false)" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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a47313BvDQCgOePKDwAAMArxAwAAjEL8AAAAoxA/AADAKNzwfIWa443FEjcXAwDQUFz5AQAARiF+AACAUYgfAABgFO75+TspPVIUGx3rN869NQAAtA5c+QEAAEYhfgAAgFF42+vvdO7cmbe4AABoxbjyAwAAjEL8AAAAoxA/AADAKMQPAAAwCvEDAACMQvwAAACjED8AAMAoxA8AADAK8QMAAIxC/AAAAKMQPwAAwCjEDwAAMArxAwAAjOJI/Bw9elTTp0/X4MGDFRISIpfLpby8vAYdo7S0VGlpaerQoYNuuOEGPfzww/rLX/5y0W3ffvttxcfHy+12q0ePHpo9e7ZqamoaYyoAAKCFcyR+ioqKtGDBApWWlqpv376yLKtB+3/77bdKTEzUBx98oJ///Od68cUXlZ+fr8TERJ08edJn282bNys5OVkdO3bUq6++quTkZGVlZSkjI6Mxp4Qm8B//8R/X+ikYjfW/tlj/a4v1N4sj8XPHHXfoxIkT+vzzzzVlypQG779kyRIdOnRImzZt0j//8z/rmWee0XvvvafS0lL95je/8dl26tSpiouL05YtWzRx4kQtWrRIM2bM0PLly3Xw4MHGmhKaAP/4XFus/7XF+l9brL9ZHImfoKAg3Xjjjd95/5ycHP3whz9Uv379vGO33HKLhgwZorfeess7VlhYqMLCQqWnp8vl+v+pPf3006qtrdW6deu+83MAAACtQ7O/4dm2bX322We64447/B5LSEjQoUOH9O2330qS8vPzZVmW4uPjfbaLiIhQZGSk8vPzHXnOAACg+Wr28fP111+rqqpKERERfo/VjZWWlkqSysrKfMb/ftu67QAAgLnaNHQH27Z17ty5K9q2ffv2DX5Cf8/j8dR7rICAAJ9tLrft6dOnL3uewsLCq3vC+M5OnTqlvXv3XuunYSzW/9pi/a8t1v/aqXvdrXsddkKD4ycvL0+DBg267HaWZamwsFDR0dHf6YnVcbvdkqSqqiq/xyorK322udy2dY9fzOHDhyVJY8eOvarni6vz929Zwlms/7XF+l9brP+1dfjwYQ0YMMCRczU4fmJiYrRq1aor2vZibz81VMeOHdW+fXvvW1oXqhvr2rWrz/nKysrUrVs3v2379+9f73nuv/9+rVmzRjfddNMlIwkAADQej8ejw4cP6/7773fsnA2On/DwcI0fP74pnstFWZal2NhYffzxx36Pffjhh+rVq5eCgoIkSXFxcbJtWx9//LHPDdJlZWUqKSnRU089Ve95QkND9ZOf/KTxJwAAAC7JqSs+dZrdDc/FxcUqKiryGUtNTdVHH33k835sUVGRtm3bprS0NO/Y97//fcXExGjFihWybds7vnTpUrlcLj3yyCNNPwEAANCsWfaFldCEsrKyZFmW9u/fr+zsbD3++OPq2bOnJGnmzJne7RITE5WXl6fa2lrv2JkzZ3T77bfr9OnTmjp1qtq0aaOFCxfKtm3l5+erU6dO3m03bdqkhx56SImJiRo9erT27dunJUuW6IknntCyZcucmCoAAGjGHIsfl8t10a+1sCxL58+f9/7vQYMG6YMPPvAZk/72cfYpU6bovffeU21trQYNGqRXXnlFvXr18jvm22+/rTlz5qiwsFCdO3fWhAkTNGvWLF133XWNPzEAANCiOBY/AAAAzUGzu+cHAACgKbWa+Dl37pyef/55devWTYGBgbrzzju1devWy+539OhRTZ8+XYMHD1ZISIhcLpfy8vLq3X7nzp0aOHCggoKCFBERoWeeecb79Roma+r193g8WrJkie6//3517dpVISEh6tevn1577TWf+8NM5dTPf51Tp04pLCxMLpdL69evb4wptGhOrX91dbV+9atf6dZbb5Xb7VaXLl30D//wD8b/9non1t+2bb322mu6/fbbdf3116tLly5KSkrSrl27Gns6Lc53Xf9t27Zp4sSJuuWWWxQUFKSoqCg98cQTOnr06EW3b9TXX7uVGD16tN2uXTv7+eeft1euXGkPGDDAbtu2rb1jx45L7vf+++/bLpfLvuWWW+wBAwbYLpfL/u///u+Lbpufn2+73W47Pj7eXr58uT1r1iw7ICDATkpKaooptShNvf4FBQW2y+Wyhw0bZr/88sv2ihUr7EceecS2LMt+7LHHmmpaLYYTP/8X+qd/+if7+uuvt10ul52Tk9NY02ixnFj/6upqe+jQoXZwcLA9ZcoU+/XXX7dfeeUV+9FHH7UPHDjQFNNqMZxY/+eee862LMv+6U9/aq9cudJesGCBHRUVZbdt29b+6KOPmmJaLcZ3Xf877rjDjoqKsqdPn27/7ne/s2fOnGmHhITYERER9rFjx3y2bezX31YRPx9++KFtWZb9yiuveMcqKyvtm2++2R4wYMAl9z1z5ox98uRJ27Zte926dZf84X/wwQftbt262WfOnPGO/fa3v7VdLpf9xz/+sRFm0jI5sf7Hjx+/6D/wjz/+uO1yuexDhw5d5SxaLqd+/uvs27fPbtu2rZ2VlUX82M6t//z58+327dvbH3/8ceM9+VbAifU/f/68HRgYaD/66KM+43/5y19sy7LsZ599thFm0jJdzfp/8MEHfmN5eXm2ZVn2rFmzfMYb+/W3VbzttW7dOrVp00ZPPPGEd6x9+/aaOHGidu3apa+++qrefYOCgnTjjTde9hynT5/W1q1bNW7cOO8vVZSk8ePHKygoSG+99dbVTaIFc2L9O3XqpFtvvdVvPDk5WZLZ38nmxPpf6JlnntEjjzyigQMH+vw+LVM5sf62betf//VflZKSovj4eNXU1Dj6PUjNmRPrX11dLY/Ho7CwMJ/xzp07y+VyKTAw8LtPoIW7mvUfOHCg39g999yjjh07+vyb3hSvv60ifj755BNFR0crODjYZzwhIcH7+NXat2+fzp8/7/fdL23btlVcXJzy8/Ov+hwtlRPrX5+6rzgJDQ1tsnM0d06u/9q1a7V79279+te/brRjtnROrP+BAwdUWlqq2NhYpaenKygoSEFBQfrBD36g999//6qP35I5sf4BAQHq37+/Vq1apX//939XcXGxPvvsMz322GPq1KmTzwu/aRp7/b/99ludOXPG59/0pnj9bRXxU1ZWdtHvEYuIiJBt241yM2BZWZksy6r3PCbfcOjE+l9MdXW1Fi1apF69eumHP/xhk5yjJXBq/SsrK5WZmannnntO3bt3b5RjtgZOrP8XX3whSXrllVeUl5enlStXatWqVaqqqtKDDz6ogoKCqz5HS+XUz/+bb76p6OhojR07Vj169FBcXJw++eQTbd++XTfddFOjnKMlauz1X7hwoaqrqzV69GifczT262+Dv9urOfJ4PGrfvr3feEBAgPfxxjiHpHrPY/IlaCfW/2ImT56szz//XH/4wx/kcrWKjv9OnFr/efPm6fz585oxY0ajHK+1cGL9z5w54/2/n376qffLnAcNGqSbb75Zv/71r7V69eqrPk9L5NTPf3BwsG677TbdfffdGjJkiI4ePaqXXnpJDz30kLZv366OHTs2ynlamsZc/7y8PL344ot69NFH9aMf/cjnHFLjvv62ivhxu92qqqryG6+srPQ+3hjnkFTveUz+Jngn1v/vLViwQL/97W81d+5cR78JuDlyYv0PHz6sl19+WcuWLTP6/oaLcfLfnwEDBnjDR5K6d++ugQMHaufOnVd9jpbKifWvqanR0KFDNWjQIP3Lv/yLd3zIkCG67bbbtGDBAs2bN++qz9MSNdb6f/7550pJSVHfvn21cuVKv3NIjfv62yr+czkiIsJ778eF6sYu/Mfias5h23a952mMc7RUTqz/hVatWqXp06fr6aef5iqEnFn/X/ziF4qMjNS9996rI0eO6MiRI97jl5eX68iRI8be/OzE+tcdIzw83O+xsLAwnTx58qrP0VI5sf55eXkqKCjQyJEjfcZvvvlm3XrrrdqxY8dVn6Olaoz1Ly4u1rBhw9ShQwdt2rTJ56bmunM09utvq4ifuLg4HTx40HtpuM7u3btlWZbi4uKu+hx9+vRRmzZt9PHHH/uMV1dX65NPPmmUc7RUTqx/nY0bN+qJJ55QamqqXn311UY7bkvmxPoXFxfryy+/VK9evdSzZ0/17NlTY8aMkWVZ+tnPfqZevXrp9OnTV32elsiJ9Y+NjVXbtm0v+smZ0tJSde7c+arP0VI5sf7Hjh2TZVmqqanxe6y6utrvuyhNcrXr//XXX2vYsGE6f/68tmzZctHAb4rX31YRP6mpqTp//rxWrFjhHTt37pxWrVqlO++8U926dZP0t9/mWVRUdNEf4MsJCQnR0KFDtWbNGp/fKLl69Wp9++23SktLu/qJtFBOrL/0t//6+vGPf6zExEStWbOmUZ57a+DE+s+dO1e5ubnasGGD909WVpYk6fnnn1dubq7ff62Zwon1Dw4OVlJSknbu3KmDBw96xwsLC7Vz504NGzbs6ifSQjmx/tHR0bJtW9nZ2T7je/fuVVFRkfr163d1k2jBrmb9z549qwcffFBlZWX6wx/+cNEvKpea6PW3wb8ZqJlKS0uz27VrZ0+bNs1esWKFfffdd9vt2rWzt2/f7t3mpz/9qW1Zln3kyBGffX/5y1/aWVlZ9o9//GPbsix74sSJdlZWlp2VleWz3d69e223223369fPfu211+yZM2fabrfbfvDBBx2ZY3PW1Ot/5MgR+4YbbrCDgoLspUuX2mvWrPH589lnnzk21+bIiZ//v/f+++/blmUZ/0sObduZ9T9w4IB9/fXX2127drVfeukle968eXbXrl3tLl262KWlpY7Ms7lyYv2HDRtmu1wuOyUlxX7ttdfsX/ziF3bHjh3tkJAQ++DBg47Ms7n6ruv/0EMP2ZZl2ZMmTfL7N33Dhg0+52js199WEz9VVVX2tGnT7K5du9put9vu37+/3299fOyxx+zrrrvO74ffsizb5XL5/bnuuuv8zrNjxw574MCBdmBgoB0eHm5nZGT4/MZJUzX1+tf9Gvr6/syZM8eReTZXTv38X6ju/yfEj3Prn5+fbw8bNsy+/vrr7RtuuMFOSUmxv/zyyyadW0vgxPpXVlbaWVlZdp8+feygoCC7Q4cO9kMPPWR/+umnTT6/5u67rv9NN91U77/pPXv29DtPY77+WrZt6F2KAADASK3inh8AAIArRfwAAACjED8AAMAoxA8AADAK8QMAAIxC/AAAAKMQPwAAwCjEDwAAMArxAwAAjEL8AAAAoxA/AADAKMQPAAAwyv8Bm4xIJe/tt5QAAAAASUVORK5CYII=", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "4-element Array{Float64,1}:\n", - " 0.1\n", - " 0.2\n", - " -1.0\n", - " -0.9" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(P)\n", - "axis([0.1,0.2,-1,-0.9])" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "## Riemann integrals" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This does not use IntervalConstraintProgramming, just standard intervals." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING: New definition \n", - " promote_rule(Type{ValidatedNumerics.Interval{#T<:Real}}, Type{#S<:Real}) at /Users/dpsanders/.julia/v0.4/ValidatedNumerics/src/intervals/conversion.jl:9\n", - "is ambiguous with: \n", - " promote_rule(Type{#A<:Real}, Type{ForwardDiff.Dual{#N<:Any, #B<:Real}}) at /Users/dpsanders/.julia/v0.4/ForwardDiff/src/dual.jl:149.\n", - "To fix, define \n", - " promote_rule(Type{ValidatedNumerics.Interval{#T<:Real}}, Type{ForwardDiff.Dual{#N<:Any, #B<:Real}})\n", - "before the new definition.\n", - "WARNING: New definition \n", - " promote_rule(Type{ValidatedNumerics.DecoratedInterval{#T<:Real}}, Type{#S<:Real}) at /Users/dpsanders/.julia/v0.4/ValidatedNumerics/src/decorations/intervals.jl:76\n", - "is ambiguous with: \n", - " promote_rule(Type{#A<:Real}, Type{ForwardDiff.Dual{#N<:Any, #B<:Real}}) at /Users/dpsanders/.julia/v0.4/ForwardDiff/src/dual.jl:149.\n", - "To fix, define \n", - " promote_rule(Type{ValidatedNumerics.DecoratedInterval{#T<:Real}}, Type{ForwardDiff.Dual{#N<:Any, #B<:Real}})\n", - "before the new definition.\n" - ] - } - ], - "source": [ - "using ValidatedNumerics" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "100-element Array{Any,1}:\n", - " [0, 0.0100001] \n", - " [0.01, 0.0200001] \n", - " [0.02, 0.03] \n", - " [0.0299999, 0.0400001]\n", - " [0.04, 0.0500001] \n", - " [0.05, 0.06] \n", - " [0.0599999, 0.0700001]\n", - " [0.07, 0.0800001] \n", - " [0.08, 0.09] \n", - " [0.0899999, 0.100001] \n", - " [0.1, 0.110001] \n", - " [0.11, 0.12] \n", - " [0.119999, 0.130001] \n", - " ⋮ \n", - " [0.88, 0.890001] \n", - " [0.89, 0.900001] \n", - " [0.9, 0.910001] \n", - " [0.91, 0.920001] \n", - " [0.92, 0.930001] \n", - " [0.93, 0.94] \n", - " [0.939999, 0.95] \n", - " [0.949999, 0.96] \n", - " [0.959999, 0.97] \n", - " [0.969999, 0.98] \n", - " [0.979999, 0.99] \n", - " [0.989999, 1] " - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "N = 101\n", - "x = linspace(0, 1, N)\n", - "intervals = [ Interval(x[i], x[i+1]) for i in 1:length(x)-1 ]" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "f (generic function with 1 method)" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "f(x) = √(1-x^2)" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[0.999949, 1]" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "f(intervals[1])" - ] - }, - { - "cell_type": "code", - "execution_count": 46, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "riemann_pi (generic function with 1 method)" - ] - }, - "execution_count": 46, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "function riemann_pi(N)\n", - " x = linspace(0, 1, N)\n", - " intervals = [ Interval(x[i], x[i+1]) for i in 1:length(x)-1 ]\n", - " II = 4*sum([f(x)*diam(x) for x in intervals])\n", - " \n", - " return II\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 47, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[0, 4]" - ] - }, - "execution_count": 47, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "riemann_pi(2)" - ] - }, - { - "cell_type": "code", - "execution_count": 43, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "ename": "LoadError", - "evalue": "LoadError: MethodError: `ldexp` has no method matching ldexp(::Int64, ::Float64)\nwhile loading In[43], in expression starting on line 1", - "output_type": "error", - "traceback": [ - "LoadError: MethodError: `ldexp` has no method matching ldexp(::Int64, ::Float64)\nwhile loading In[43], in expression starting on line 1", - "" - ] - } - ], - "source": [ - "2^" - ] - }, - { - "cell_type": "code", - "execution_count": 48, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.005169 seconds (36.23 k allocations: 1.003 MB)\n" - ] - }, - { - "data": { - "text/plain": [ - "[3.13346, 3.14915]" - ] - }, - "execution_count": 48, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time riemann_pi(2^8)" - ] - }, - { - "cell_type": "code", - "execution_count": 49, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.185488 seconds (1.42 M allocations: 39.295 MB, 19.19% gc time)\n" - ] - }, - { - "data": { - "text/plain": [ - "[3.14139, 3.1418]" - ] - }, - "execution_count": 49, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time riemann_pi(10000)" - ] - }, - { - "cell_type": "code", - "execution_count": 50, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 1.880168 seconds (14.20 M allocations: 392.965 MB, 17.38% gc time)\n" - ] - }, - { - "data": { - "text/plain": [ - "[3.14157, 3.14162]" - ] - }, - "execution_count": 50, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time riemann_pi(100000)" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "linspace(0.0,1.0,101)" - ] - }, - "execution_count": 33, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x" - ] - }, - { - "cell_type": "code", - "execution_count": 45, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "256-element Array{Any,1}:\n", - " [0, 0.00390625] \n", - " [0.00390625, 0.0078125]\n", - " [0.0078125, 0.0117188] \n", - " [0.0117187, 0.015625] \n", - " [0.015625, 0.0195313] \n", - " [0.0195312, 0.0234375] \n", - " [0.0234375, 0.0273438] \n", - " [0.0273437, 0.03125] \n", - " [0.03125, 0.0351563] \n", - " [0.0351562, 0.0390625] \n", - " [0.0390625, 0.0429688] \n", - " [0.0429687, 0.046875] \n", - " [0.046875, 0.0507813] \n", - " ⋮ \n", - " [0.953125, 0.957032] \n", - " [0.957031, 0.960938] \n", - " [0.960937, 0.964844] \n", - " [0.964843, 0.96875] \n", - " [0.96875, 0.972657] \n", - " [0.972656, 0.976563] \n", - " [0.976562, 0.980469] \n", - " [0.980468, 0.984375] \n", - " [0.984375, 0.988282] \n", - " [0.988281, 0.992188] \n", - " [0.992187, 0.996094] \n", - " [0.996093, 1] " - ] - }, - "execution_count": 45, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "N = 2^8 + 1\n", - "x = collect(linspace(0, 1, N))\n", - " intervals = [ Interval(x[i], x[i+1]) for i in 1:length(x)-1 ]" - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "0.0" - ] - }, - "execution_count": 35, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x[1]" - ] - }, - { - "cell_type": "code", - "execution_count": 36, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "0.01" - ] - }, - "execution_count": 36, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x[2]" - ] - }, - { - "cell_type": "code", - "execution_count": 37, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "0.02" - ] - }, - "execution_count": 37, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x[3]" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Interval(0.01, 0.02)" - ] - } - ], - "source": [ - "showall(Interval(x[2], x[3]))" - ] - }, - { - "cell_type": "code", - "execution_count": 41, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Interval(0.02, 0.03)" - ] - } - ], - "source": [ - "showall(Interval(x[3], x[4]))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 0.4.6", - "language": "julia", - "name": "julia-0.4" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "0.4.6" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/examples/draw_boxes.jl b/examples/draw_boxes.jl deleted file mode 100644 index 79226b6..0000000 --- a/examples/draw_boxes.jl +++ /dev/null @@ -1,47 +0,0 @@ - -using PyCall -using PyPlot - -using ValidatedNumerics -using IntervalConstraintProgramming - -@pyimport matplotlib.patches as patches -@pyimport matplotlib.collections as collections - - -function rectangle(xlo, ylo, xhi, yhi, color="grey", alpha=0.5, linewidth=0) - patches.Rectangle( - (xlo, ylo), xhi - xlo, yhi - ylo, - facecolor=color, alpha=alpha, linewidth=0, edgecolor="none" - ) -end - -import PyPlot.draw -function draw_boxes{T<:IntervalBox}(box_list::Vector{T}, color="grey", alpha=0.5, linewidth=0) - patch_list = [] - - for box in box_list - x, y = box - push!(patch_list, rectangle(x.lo, y.lo, x.hi, y.hi, color, alpha)) - end - - ax = gca() - ax[:add_collection](collections.PatchCollection(patch_list, color=color, alpha=alpha, - edgecolor="black", linewidths=linewidth)) -end - -function draw{N,T}(X::Vector{IntervalBox{N,T}}, color="green", alpha=0.5, linewidth=0) - draw_boxes(X, color, alpha, linewidth) - axis("image") -end - -function draw{N,T}(inner::Vector{IntervalBox{N,T}}, boundary::Vector{IntervalBox{N,T}}, - color="green", alpha=0.5, linewidth=0) - draw(inner, color, alpha, linewidth) - draw(boundary, "gray", 0.2, 0) - axis("image") -end - -function draw(P::Paving, color="green", alpha=0.5, linewidth=0) - draw(P.inner, P.boundary, color, alpha, linewidth) -end diff --git a/examples/draw_cubes.jl b/examples/draw_cubes.jl deleted file mode 100644 index 33e3a1d..0000000 --- a/examples/draw_cubes.jl +++ /dev/null @@ -1,58 +0,0 @@ -# Taken from GLVisualize example "Meshcreation" - -using GLVisualize, GeometryTypes, GLAbstraction, Colors - -println("Visualization packages loaded.") - -using ValidatedNumerics -using IntervalConstraintProgramming - -println("Constraint packages loaded.") - -S1 = @constraint 3 <= x^2 + y^2 + z^2 <= 4 -S2 = @constraint 2 <= (x-0.5)^2 + (y-0.4)^2 + (z-0.3)^2 <= 4 -S = S1 ∩ S2 - -X = IntervalBox(-10..10, -10..10, -10..10) - -@time inner, boundary = pave(S, X, 0.2) -@show length(inner) - -println("Set inversion finished") - -function cube(X::IntervalBox, inner=true) - lo = [x.lo for x in X] # what's the good way to do this? - hi = [x.hi for x in X] - #color = Float32((hi[3] + 2.) / 4) - #c = Float32(abs(hi[3]) / 2.) - #mycolor = RGBA(1f0, c, c/2, 0.2f0) - if inner - mycolor = RGBA(1f0, 0f0, 0f0, 0.2f0) - else - mycolor = RGBA(0f0, 1f0, 0f0, 0.2f0) - end - return (HyperRectangle{3, Float32}(Vec3f0(lo), Vec3f0(hi - lo)), mycolor) -end - -window = glscreen() - -baselen = 0.4f0 -dirlen = 2f0 -# create an array of differently colored boxes in the direction of the 3 axes -cubes = map(cube, inner) -boundarycubes = [cube(x, false) for x in boundary] - -# convert to an array of normal meshes -# note, that the constructor is a bit weird. GLNormalMesh takes a tuple of -# a geometry and a color. This means, the geometry will be converted to a GLNormalMesh -# and the color will be added afterwards, so the resulting type is a GLNormalColorMesh -meshes = map(GLNormalMesh, vcat(cubes, boundarycubes)) -# merge them into one big mesh -# the resulting type is a GLNormalAttributeMesh, since we merged meshes with different -# attributes (colors). An array of the colors will be created and each vertex in the -# mesh will be asigned to one of the colors found there. -colored_mesh = merge(meshes) -view(visualize(colored_mesh), window) - - -renderloop(window) diff --git a/examples/set_inversion.jl b/examples/set_inversion.jl deleted file mode 100644 index 6401804..0000000 --- a/examples/set_inversion.jl +++ /dev/null @@ -1,15 +0,0 @@ -using ValidatedNumerics -using IntervalConstraintProgramming - -S = @separator 1 <= x^2 + y^2 <= 3 -X = IntervalBox(-10..10, -10..10) - -@time inner, boundary = pave(S, X, 0.125) - -@show length(inner), length(boundary) - -include("draw_boxes.jl") - -draw_boxes(inner, "green", 0.5, 1) -draw_boxes(boundary, "grey", 0.2) -axis("image") # set aspect ratio From b51a34c05de0cb8028d5cd06680ee6a49cd4bf8e Mon Sep 17 00:00:00 2001 From: David Sanders Date: Mon, 26 Dec 2016 22:24:50 +0000 Subject: [PATCH 2/2] Basic separators notebook --- examples/{ => 3D}/Sliced solid torus.ipynb | 0 .../Solid torus and implicit equations.ipynb | 0 examples/{ => 3D}/Solid torus.ipynb | 0 examples/Action of contractors.ipynb | 93301 +++++++++++++++ examples/Basic examples of separators.ipynb | 94014 ++++++++++++++++ examples/Set inversion.ipynb | 1827 - examples/coloured_solid_torus.png | Bin 264667 -> 0 bytes examples/{ => old}/Billiard.ipynb | 0 examples/{ => old}/Logistic map.ipynb | 0 examples/{ => old}/Surface.ipynb | 0 examples/{ => old}/robot_kinematics.jl | 0 examples/{ => old}/tangle.jld | Bin examples/ring.png | Bin 24921 -> 0 bytes 13 files changed, 187315 insertions(+), 1827 deletions(-) rename examples/{ => 3D}/Sliced solid torus.ipynb (100%) rename examples/{ => 3D}/Solid torus and implicit equations.ipynb (100%) rename examples/{ => 3D}/Solid torus.ipynb (100%) create mode 100644 examples/Action of contractors.ipynb create mode 100644 examples/Basic examples of separators.ipynb delete mode 100644 examples/Set inversion.ipynb delete mode 100644 examples/coloured_solid_torus.png rename examples/{ => old}/Billiard.ipynb (100%) rename examples/{ => old}/Logistic map.ipynb (100%) rename examples/{ => old}/Surface.ipynb (100%) rename examples/{ => old}/robot_kinematics.jl (100%) rename examples/{ => old}/tangle.jld (100%) delete mode 100644 examples/ring.png diff --git a/examples/Sliced solid torus.ipynb b/examples/3D/Sliced solid torus.ipynb similarity index 100% rename from examples/Sliced solid torus.ipynb rename to examples/3D/Sliced solid torus.ipynb diff --git a/examples/Solid torus and implicit equations.ipynb b/examples/3D/Solid torus and implicit equations.ipynb similarity index 100% rename from examples/Solid torus and implicit equations.ipynb rename to examples/3D/Solid torus and implicit equations.ipynb diff --git a/examples/Solid torus.ipynb b/examples/3D/Solid torus.ipynb similarity index 100% rename from examples/Solid torus.ipynb rename to examples/3D/Solid torus.ipynb diff --git a/examples/Action of contractors.ipynb b/examples/Action of contractors.ipynb new file mode 100644 index 0000000..8948e40 --- /dev/null +++ b/examples/Action of contractors.ipynb @@ -0,0 +1,93301 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " \n", + " \n", + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: using Interact.select in module Main conflicts with an existing identifier.\n" + ] + }, + { + "data": { + "text/plain": [ + "Plots.GRBackend()" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "using IntervalConstraintProgramming, ValidatedNumerics, Plots, Interact\n", + "gr()" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ex = :(4 <= x ^ 2 + y ^ 2 <= 9)\n", + "code = quote # /Users/dpsanders/.julia/v0.5/IntervalConstraintProgramming/src/separator.jl, line 67:\n", + " _C_1_ = @contractor($(Expr(:escape, :(x ^ 2 + y ^ 2))))\n", + " ConstraintSeparator(_C_1_.variables[2:end],[4, 9],_C_1_,$(Expr(:quote, :(x ^ 2 + y ^ 2 ∈ [4, 9]))))\n", + "end\n", + "@contractor; ex=x ^ 2 + y ^ 2\n", + "Entering Contractor(ex) with ex=x ^ 2 + y ^ 2\n", + "(top,linear_AST) = (:_z_3_,input vars: Set(Symbol[:y,:x])\n", + "intermediate vars: Symbol[:_z_1_,:_z_2_,:_z_3_]\n", + "code: \n", + "Any[IntervalConstraintProgramming.Assignment(:_z_1_,:^,Any[:x,2]),IntervalConstraintProgramming.Assignment(:_z_2_,:^,Any[:y,2]),IntervalConstraintProgramming.Assignment(:_z_3_,:+,Any[:_z_1_,:_z_2_])]\n", + ")\n", + "input_arguments = Symbol[:x,:y]\n", + "augmented_input_arguments = Symbol[:_A_,:x,:y]\n" + ] + }, + { + "data": { + "text/plain": [ + "Separator:\n", + "- variables: x, y\n", + "- expression: x ^ 2 + y ^ 2 ∈ [4, 9]\n" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C = @constraint 4 <= x^2 + y^2 <= 9" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[-∞, ∞] × [-∞, ∞]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "x = y = -∞..∞\n", + "X = IntervalBox(x, y)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Paving:\n", + "- tolerance ϵ = 0.01\n", + "- inner approx. of length 5136\n", + "- boundary approx. of length 5136" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "paving = pave(C, X, 0.1)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "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", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\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", + "full\n", + "\n", + "\n" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(paving.inner, aspect_ratio=:equal, lw=0, label=\"full\")" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "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", + "-2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "4\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\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", + "full\n", + "\n", + "\n", + "\n", + "\n", + "Y\n", + "\n", + "\n" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Y = IntervalBox(2.5..4, -0.5..0.5)\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, lw=0, label=\"full\")\n", + "plot!(Y, label=\"Y\")" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": { + "collapsed": false + }, + "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", + "-2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "4\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "full\n", + "\n", + "\n", + "\n", + "\n", + "Y\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "\n", + "\n", + "inner1\n", + "\n", + "\n", + "\n", + "\n", + "outer1\n", + "\n", + "\n", + "\n", + "\n", + "Y\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "inner2\n", + "\n", + "\n", + "\n", + "\n", + "outer2\n", + "\n", + "\n" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Y1 = IntervalBox(2.3..4, -1..0.5)\n", + "\n", + "inner1, outer1 = map(IntervalBox, C(Y1))\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, lw=0, label=\"full\", alpha=1)\n", + "plot!(Y1, label=\"Y_1\", alpha=0.1)\n", + "plot!(inner1, label=\"inner1\", alpha=0.01)\n", + "plot!(outer1, label=\"outer1\", alpha=0.01)\n", + "\n", + "\n", + "Y2 = IntervalBox(-2.5.. -1, -1..0.5)\n", + "\n", + "inner2, outer2 = map(IntervalBox, C(Y2))\n", + "\n", + "plot!(Y2, label=\"Y_2\", alpha=0.1)\n", + "plot!(inner2, label=\"inner2\", alpha=0.01)\n", + "plot!(outer2, label=\"outer2\", alpha=0.01)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "anaconda-cloud": {}, + "kernelspec": { + "display_name": "Julia 0.5.0", + "language": "julia", + "name": "julia-0.5" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "0.5.0" + }, + "toc": { + "nav_menu": { + "height": "13px", + "width": "253px" + }, + "navigate_menu": true, + "number_sections": true, + "sideBar": true, + "threshold": "2", + "toc_cell": false, + "toc_section_display": "block", + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/Basic examples of separators.ipynb b/examples/Basic examples of separators.ipynb new file mode 100644 index 0000000..68180c1 --- /dev/null +++ b/examples/Basic examples of separators.ipynb @@ -0,0 +1,94014 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Plots.GRBackend()" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "using IntervalConstraintProgramming, ValidatedNumerics\n", + "using Plots\n", + "gr()" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[-3, 3] × [-3, 3]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "x = y = -3..3\n", + "X = IntervalBox(x, y)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Basic use of constraints: annulus" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "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", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C1 = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 3\n", + "paving = pave(C1, X, 0.01)\n", + "plot(paving.inner, aspect_ratio = :equal, legend=:false)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Use standard commands from [`Plots.jl`](https://juliaplots.github.io/) to change the look:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "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", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(paving.inner, aspect_ratio = :equal, legend=:false, linewidth=0, color=\"green\", alpha=0.1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Set operations" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Complement" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "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", + "\n", + "-3\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "3\n", + "\n", + "\n", + "-3\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\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" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C1_complement = !C1 \n", + "\n", + "paving = pave(C1_complement, X, 0.02)\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Intersection and union" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Separator:\n", + "- variables: x, y\n", + "- expression: (x ^ 2 + y ^ 2 ∈ [1, 3]) ∩ ((x - 0.5) ^ 2 + (y - 1) ^ 2 ∈ [1, 4])\n" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X = IntervalBox(-3..3, -3..4)\n", + "\n", + "C2a = @constraint 1 <= x^2 + y^2 <= 3\n", + "C2b = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 4\n", + "\n", + "C2 = C2a ∩ C2b " + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "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", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pavings = [pave(CC, X, 0.02) for CC in [C2a, C2b, C2]]\n", + "\n", + "p = plot()\n", + "for paving in pavings\n", + " plot!(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")\n", + "end\n", + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "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", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "3\n", + "\n", + "\n", + "-3\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C3a = @constraint 1 >= x+y >= -1\n", + "C3b = @constraint x-y >= 1\n", + "\n", + "C3 = C3a ∩ C3b\n", + "\n", + "paving = pave(C3, X, 0.02)\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "Example from Jaulin et al., \"Applied Interval Analysis\", pg. 61:" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.349576 seconds (1.10 M allocations: 41.004 MB, 6.35% gc time)\n" + ] + }, + { + "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", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "-0.2\n", + "\n", + "\n", + "0.0\n", + "\n", + "\n", + "0.2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\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" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C4 = @constraint x1^2 * (x1^2 - 1) + 4*x2^2 ∈ [-0.1, 0.1] \n", + "X = IntervalBox(-10..10, -10..10)\n", + "\n", + "@time paving = pave(C4, X, 0.02)\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\", color=\"green\")\n", + "plot!(paving.boundary, aspect_ratio=:equal, linewidth=0, label=\"\", color=\"gray\")\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Combining separators with different variables " + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Separator:\n", + "- variables: x, y\n", + "- expression: (1x ∈ [0, ∞]) ∪ (1y ∈ [0, ∞])\n" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C5a = @constraint x > 0\n", + "C5b = @constraint y > 0\n", + "C5 = C5a ∪ C5b" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "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", + "\n", + "-3\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "3\n", + "\n", + "\n", + "-3\n", + "\n", + "\n", + "-2\n", + "\n", + "\n", + "-1\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "3\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "paving = pave(C5, IntervalBox(-3..3, -3..3), 0.1)\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Separator:\n", + "- variables: x, y\n", + "- expression: (x + y ∈ [-1, 1]) ∩ (x - y ∈ [-1, 1])\n" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C6a = @constraint -1 <= x + y <= 1\n", + "C6b = @constraint -1 <= x - y <= 1\n", + "C6 = C6a ∩ C6b" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.286510 seconds (415.66 k allocations: 20.016 MB, 2.20% gc time)\n" + ] + }, + { + "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", + "-0.5\n", + "\n", + "\n", + "0.0\n", + "\n", + "\n", + "0.5\n", + "\n", + "\n", + "-0.5\n", + "\n", + "\n", + "0.0\n", + "\n", + "\n", + "0.5\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@time paving = pave(C6, IntervalBox(-10^8..10^8, -10^8..10^8), 0.01)\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "# Disjoint regions" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.603352 seconds (1.46 M allocations: 55.463 MB, 3.82% gc time)\n" + ] + }, + { + "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", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C7a = @constraint (x-2)^2 + y^2 <= 1\n", + "C7b = @constraint x^2 + (y-2)^2 <= 0.5\n", + "C7 = C7a ∪ C7b\n", + "\n", + "X = IntervalBox(-10^4..10^4, -10^4..10^4)\n", + "\n", + "@time paving = pave(C7, X, 0.02);\n", + "\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 2.011481 seconds (4.96 M allocations: 181.507 MB, 5.26% gc time)\n" + ] + }, + { + "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", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C7c = @constraint (x-1)^2 + (y-1)^2 <= 1\n", + "C8 = C7a ∪ C7b ∪ C7c\n", + "@time paving = pave(C8, X, 0.01);\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=1, label=\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 2.628535 seconds (6.61 M allocations: 236.451 MB, 4.55% gc time)\n" + ] + }, + { + "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", + "0\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "1\n", + "\n", + "\n", + "2\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C9 = !(C7a ∩ C7c) ∩ (C7b ∪ C7c)\n", + "@time paving = pave(C9, X, 0.01);\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=0, label=\"\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Cusp" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "1.7320508075688772" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sqrt3 = sqrt(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.632416 seconds (1.39 M allocations: 50.843 MB, 3.37% gc time)\n" + ] + }, + { + "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", + "0.0\n", + "\n", + "\n", + "0.5\n", + "\n", + "\n", + "1.0\n", + "\n", + "\n", + "1.5\n", + "\n", + "\n", + "2.0\n", + "\n", + "\n", + "0.0\n", + "\n", + "\n", + "0.5\n", + "\n", + "\n", + "1.0\n", + "\n", + "\n", + "1.5\n", + "\n", + "\n", + "2.0\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C10a = @constraint x^2 + y^2 <= 1\n", + "C10b = @constraint (x-2)^2 + y^2 <= 1\n", + "C10c = @constraint (x-1)^2 + (y-$sqrt3)^2 <= 1\n", + "\n", + "\n", + "C10 = !(C10a ∪ C10b ∪ C10c)\n", + "X = IntervalBox(-0..2, -0..2)\n", + "@time paving = pave(C10, X, 0.02);\n", + "plot(paving.inner, aspect_ratio=:equal, linewidth=1, label=\"\")\n", + "plot!(paving.boundary, aspect_ratio=:equal, linewidth=1, label=\"\", color=\"red\")" + ] + } + ], + "metadata": { + "anaconda-cloud": {}, + "kernelspec": { + "display_name": "Julia 0.5.0", + "language": "julia", + "name": "julia-0.5" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "0.5.0" + }, + "toc": { + "nav_menu": { + "height": "138px", + "width": "252px" + }, + "navigate_menu": true, + "number_sections": true, + "sideBar": true, + "threshold": "2", + "toc_cell": false, + "toc_section_display": "block", + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/examples/Set inversion.ipynb b/examples/Set inversion.ipynb deleted file mode 100644 index ca5f8a1..0000000 --- a/examples/Set inversion.ipynb +++ /dev/null @@ -1,1827 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "using IntervalConstraintProgramming, ValidatedNumerics" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO: Recompiling stale cache file /Users/dpsanders/.julia/lib/v0.4/PyCall.ji for module PyCall.\n", - "INFO: Recompiling stale cache file /Users/dpsanders/.julia/lib/v0.4/Conda.ji for module Conda.\n", - "INFO: Recompiling stale cache file /Users/dpsanders/.julia/lib/v0.4/PyPlot.ji for module PyPlot.\n", - "/usr/local/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n", - " warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n" - ] - }, - { - "data": { - "text/plain": [ - "draw (generic function with 13 methods)" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "include(\"draw_boxes.jl\")" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[10, 11]" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x = y = -∞..∞\n", - "x = 10..11" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[100, 121]" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "z1 = x^2" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[0, ∞]" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "z2 = y^2" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[100, ∞]" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "z3 = z1 + z2" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "∅" - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "z3 = z3 ∩ (0..1)" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "∅" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "z1 = z1 ∩ (z3 - z2)" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "∅" - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "IntervalConstraintProgramming.sqr_rev(z1, x)" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "macro simple(expr)\n", - " @show expr\n", - " return nothing\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "expr = :(1 <= x ^ 2 + y ^ 2 <= 3)\n" - ] - } - ], - "source": [ - "@simple 1 <= x^2 + y^2 <= 3" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - "- variables: x, y\n", - "- expression: x ^ 2 + y ^ 2 ∈ [1, 3]\n" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S1 = @constraint 1 <= x^2 + y^2 <= 3" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "draw (generic function with 15 methods)" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "function draw(inner)\n", - " draw_boxes(inner, \"green\", 0.5)\n", - " axis(\"image\")\n", - "end\n", - "\n", - "function draw(inner, boundary)\n", - " draw_boxes(inner, \"green\", 0.5)\n", - " draw_boxes(boundary, \"gray\", 0.5)\n", - " axis(\"image\")\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.7320508075688776,1.7320508075688767,-1.7320508075688772,1.7320508075688772)" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "X = IntervalBox(-100..100, -100..100)\n", - "paving = pave(S1, X, ldexp(1., -3))\n", - "draw(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "2-dimensional area: [5.9714, 6.59028]" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "Vol(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "0.0625" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "refine!(paving, ldexp(1.,-4))" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "2-dimensional area: [6.12788, 6.43732]" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "Vol(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.7320508075688776,1.732050807568878,-1.7320508075688774,1.7320508075688772)" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "2-dimensional area: [6.12788, 6.43732]" - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "Vol(paving)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.209378 seconds (1.57 M allocations: 46.505 MB, 13.95% gc time)\n" - ] - } - ], - "source": [ - "@time inner, boundary = pave(S1, X, ldexp(1., -6));\n" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "true" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pygui(true)" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "ion()\n", - "clf()\n", - "for n in 1:length(inner)\n", - " draw_boxes(inner[n:n+1], \"green\", 0.2)\n", - " sleep(0.1)\n", - " axis(\"image\")\n", - " \n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "0-element Array{ValidatedNumerics.IntervalBox{2,Float64},1}" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "inner" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "area (generic function with 2 methods)" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "area(X::IntervalBox) = prod(map(diam, X))\n", - "\n", - "function area(inner, boundary)\n", - " lower = sum(map(area, inner))\n", - " upper = lower + sum(map(area, boundary)) \n", - " return hull(lower, upper)\n", - "end" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Calculate area of inner and boundary pavings:" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.011396 seconds (100.93 k allocations: 2.994 MB)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (2,[2.92837, 3.31564],32,36)\n", - " 0.031480 seconds (199.37 k allocations: 5.916 MB, 28.09% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (3,[3.03985, 3.2335],68,72)\n", - " 0.045924 seconds (395.38 k allocations: 11.731 MB)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (4,[3.09195, 3.18877],140,144)\n", - " 0.101517 seconds (786.51 k allocations: 23.331 MB, 13.77% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (5,[3.11708, 3.16549],284,288)\n", - " 0.217646 seconds (1.57 M allocations: 46.505 MB, 14.10% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (6,[3.12941, 3.15362],572,576)\n", - " 0.432683 seconds (3.13 M allocations: 92.826 MB, 16.19% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (7,[3.13552, 3.14763],1148,1152)\n", - " 0.821639 seconds (6.25 M allocations: 185.441 MB, 13.69% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (8,[3.13856, 3.14462],2300,2304)\n", - " 1.559038 seconds (12.50 M allocations: 370.644 MB, 14.08% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (9,[3.14007, 3.14311],4604,4608)\n", - " 3.113749 seconds (24.99 M allocations: 741.022 MB, 14.18% gc time)\n", - "(i,area(inner,boundary),length(inner),length(boundary)) = (10,[3.14083, 3.14235],9212,9216)\n" - ] - } - ], - "source": [ - "X = IntervalBox(-2..2, -2..2)\n", - "\n", - "for i in 2:10\n", - "\n", - " @time inner, boundary = pave(S1, X, ldexp(1., -i))\n", - " @show i, area(inner, boundary), length(inner), length(boundary)\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAIUCAYAAAA0QAduAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIABJREFUeJzt3X2MVeWdwPHfHVFAECiIMmisb0xjii0vgqy65cU/SjXarQusbNVodfGPpkS7FbTagLH+saZWY1q0NilC1xDqaGvTNY0rq2hdgrzGthaJbSlRBoFVUlBmqs7dPyyj48zAnZl77n3OvZ9PYlrP3JdH7jnP+fKcMzOFYrFYDACABDVUewAAAD0RKgBAsoQKAJAsoQIAJEuoAADJEioAQLKECgCQLKECACRLqAAAyRIqAECyMg+Vd955J5YsWRKzZ8+OkSNHRkNDQ6xYsaLk5+/fvz8WLFgQo0ePjqFDh8asWbNiy5YtGY4YAEhF5qGyd+/euOuuu+LVV1+NCRMmREREoVAo6bnt7e1x6aWXxqpVq2LhwoVxzz33xJ49e2LGjBnx2muvZTlsACABA7J+g7Fjx8bu3bvjpJNOik2bNsWUKVNKfm5zc3OsW7cumpub44orroiIiHnz5kVTU1MsWbIkHn300ayGDQAkIPMVleOOOy5OOumkiIjo7S9qbm5ujjFjxnRESkTEiSeeGPPmzYsnn3wy3nvvvbKOFQBIS9I3027ZsiUmTZrUZfuUKVPi3Xffje3bt1dhVABApSQdKi0tLdHY2Nhl++Ftu3btqvSQAIAKyvwelf5obW2NgQMHdtk+aNCgiIg4dOhQt89raWmJlpaWTMcGAHTW2NjY7QJDfyQdKoMHD462trYu21tbWzu+/kktLS0xf/78WLt2bebjAwA+Mn369Fi1alVZYyXpUGlsbOz28s7h1ZKxY8d2+7W1a9fGf/7nf8Y555yT+RipvJtuuinuv//+ag+j7v1o448yed1f//DXMfvrs8v+ujeed2PZX5Pec/zWrj/84Q9x1VVX9XjbRl8lHSoTJkyIF154IYrFYqefvbJ+/foYMmRINDU19fjcc845p9sbccm/ESNG+GwztvS5pUd9TGNTeZd3Dxs0dFAmr/3Lv/7yqI9ZOmNp2d+Xzhy/9FYyobJ79+7Yv39/nH322TFgwIfDmjNnTjQ3N8cTTzwR//zP/xwREfv27YvHHnssLrvssjj22GOrOWTItVJipN4c6c9ExEB1VCRUfvCDH8T+/fs7LuP88pe/jJ07d0ZExMKFC2PYsGFx6623xsqVK2PHjh1x2mmnRcSHoTJt2rS47rrr4pVXXolRo0bFsmXLolgsxp133lmJoUPuCZLy6OnPUcBAtioSKvfee2/85S9/iYgPf3z+z3/+83jiiSeiUCjENddcE8OGDYtCodDlR+s3NDTEU089Fbfccks88MADcejQoZg6dWqsXLkyxo0bV4mhQ66Iksrr7s9cvED5VCRU/vznPx/1McuXL4/ly5d32T5ixIj48Y9/HD/+8Y+zGBo5NH/+/GoPIRm1GCbjZ42v9hD67ZOfi3D5iOOX3krmHhUoVb1OdLUYJd059+Jzqz2EsrPq8pF6PX7pO6ECiaqXMKlXVl2gNEIFEiJO6tfHP3vRAh8RKlBFwoTuWG2BjwgVqDBxQm9ZbaGeCRWoAHFCuYgW6o1QgYyIE7ImWqgHQgXKSJxQLaKFWiVUoAwECik5vD8KFmqBUIE+EiekzioLtUCoQC+IE/JKtJBXQgVKIFCoJS4NkSdCBXogTqh1VlnIA6ECnyBQqEdWWUiVUIG/EyggWEiPUKHuCRToSrCQCqFC3RIocHSChWoTKtQVcQJ948ZbqkWoUBcECpSPVRYqSahQ0wQKZEewUAlChZokUKByBAtZaqj2AKDcRApUx9Lnljr+KDuhQs0wSUIaHIeUk0s/5J5JEdLjchDlIlTILYEC6RMs9JdQIXcECuSPYKGv3KNCrogUyDfHML1lRYVcMLlB7bC6Qm8IFZImUKB2CRZK4dIPyRIpUB8c6xyJFRWSY9KC+mN1hZ4IFZIhUADBwie59EMSRArwceYEDrOiQlWZjICeWF0hwooKVSRSgFKYK+qbFRUqzqQD9JbVlfplRYWKEilAf5hD6o8VFSrC5AKUi9WV+mJFhcyJFCAL5pb6IFTIlIkEyJI5pva59EMmTB5ApbgUVNusqFB2IgWoBnNPbRIqlJWJAqgmc1DtcemHsjA5AKlwKai2WFGh30QKkCJzU20QKvSLiQBImTkq/4QKfWYCAPLAXJVv7lGh1xz0QN64byW/rKjQKyIFyDNzWP4IFUrmAAdqgbksX4QKJXFgA7XEnJYfQoWjckADtcjclg9upqVHDmKg1rnJNn1WVOiWSAHqiTkvXUKFLhywQD0y96VJqNCJAxWoZ+bA9AgVOjhAAcyFqREqRIQDE+DjzInpECo4IAG6YW5Mg1Cpcw5EgJ6ZI6tPqNQxByDA0Zkrq0uo1CkHHkDpzJnVI1TqkAMOoPfMndUhVOqMAw2g78yhlSdU6ogDDKD/zKWVJVTqhAMLoHzMqZUjVOqAAwqg/MytlSFUapwDCSA75tjsCZUa5gACyJ65NltCpUY5cAAqx5ybHaFSgxwwAJVn7s2GUKkxDhSA6jEHl59QqSEOEIDqMxeXl1CpEQ4MgHSYk8tHqNQABwRAeszN5SFUcs6BAJAuc3T/CRUAIFlCJceUOkD6zNX9I1Ryyo4PkB/m7L4TKjlkhwfIH3N33wiVnLGjA+SXObz3hEqO2MEB8s9c3jtCJSfs2AC1w5xeOqECACRLqOSA8gaoPeb20giVxNmRAWqXOf7ohErC7MAAtc9cf2RCBQBIllBJlMIGqB/m/J4JlQTZYQHqj7m/e0IlMXZUgPrlHNCVUAEAkiVUEqKkAXAu6EyoJMKOCcBhzgkfESoAQLKESgKUMwCf5NzwIaFSZXZEAHriHCFUqsoOCMDR1Pu5QqgAAMkSKlVS74UMQOnq+ZwhVKqgnnc4APqmXs8dQgUASJZQqbB6LWIA+q8ezyFCpYLqcQcDoLzq7VwiVACAZAmVCqm3AgYgO/V0TqlIqLS1tcXixYtj7Nixcfzxx8e0adPimWeeOerzHnnkkWhoaOj2nz179lRg5OVRTzsUAJVRL+eWAZV4k2uvvTYef/zxuPnmm2PcuHGxfPnyuOSSS+LZZ5+NCy+88KjPv+uuu+KMM87otG348OFZDRcASETmofLSSy/F6tWr43vf+15885vfjIiIq6++OsaPHx+LFi2KF1988aiv8aUvfSkmTZqU9VAzUS/FC0DlLX1uaSydsbTaw8hU5pd+mpubY8CAAbFgwYKObQMHDozrr78+1q1bF2+88cZRX6NYLMaBAwfigw8+yHKoAEBiMg+VLVu2RFNTUwwdOrTT9ilTpkRExNatW4/6GjNnzozhw4fHkCFD4stf/nK89tprmYy13KymAJC1Wj/XZB4qLS0t0djY2GX74W27du3q8blDhgyJ6667LpYtWxa/+MUvYtGiRbFmzZq44IIL4vXXX89szOVQ6zsOAOmo5XNO5veoHDp0KAYOHNhl+6BBgzq+3pO5c+fG3LlzO/798ssvjy9+8YvxhS98Ie6+++548MEHyz9gACAZmYfK4MGDo62trcv21tbWjq/3xoUXXhjnn3/+Ub+9+aabbooRI0Z02jZ//vyYP39+r96vL2q5bAFIUyVvrF21alWsWrWq07b9+/dn8l6Zh0pjY2O3l3daWloiImLs2LG9fs1TTz01tm/ffsTH3H///bn9TiEASFl3f/HfvHlzTJ48uezvlfk9KhMnTozt27fHgQMHOm1fv359RERMmDCh16/5pz/9KUaPHl2W8ZWb1RQAqqUWz0GZh8qcOXPigw8+iIcffrhjW1tbWyxfvjymTZsWp5xySkRE7N69O7Zt2xbvv/9+x+P27t3b5fWeeuqp2Lx5c8yePTvroQMAVZb5pZ+pU6fG3Llz47bbbos9e/bEWWedFStWrIidO3fG8uXLOx536623xsqVK2PHjh1x2mmnRUTEBRdcEJMmTYrJkyfH8OHDY/PmzfGTn/wkTjvttPj2t7+d9dB7rRZLFoB8qbUfAleRH6G/cuXK+M53vhM//elP4+23347Pf/7z8atf/SouuuiijscUCoUoFAqdnnfllVfGf/3Xf8XTTz8d7777bowdOzZuvPHGWLJkSbKXfgCg2mopVgrFYrFY7UGU0+GbeTZt2lTRm2mtpgCQkkqHSlbn34r89uRaJ1IASE2tnJuECgCQLKHST7VSrADUnlo4RwkVACBZQqUfaqFUAahteT9XCRUAIFlCpY/yXqgA1I88n7OECgCQLKHSB3kuUwDqU17PXUIFAEiWUOmlvBYpAOTxHCZUAIBkCZVeyGOJAsDH5e1cJlQAgGQJlRLlrUABoCd5OqcJFQAgWUKlBHkqTwAoRV7ObUIFAEiWUAEAkiVUjiIvS2MA0Ft5OMcJFQAgWULlCPJQmgDQH6mf64QKAJAsoQIAJEuo9CD1pTAAKJeUz3lCBQBIllDpRsplCQBZSPXcJ1QAgGQJFQAgWULlE1Jd+gKArKV4DhQqAECyhMrHpFiSAFBJqZ0LhQoAkCyhAgAkS6j8XWpLXQBQLSmdE4UKAJAsoQIAJEuoRFpLXACQglTOjUIFAEiWUAEAklX3oZLK0hYApCaFc2TdhwoAkC6hAgAkS6gAAD2q9uWfug6Vav/hAwBHVtehAgCkTagAAMmq21Bx2QcASlPNc2bdhgoAkD6hAgAkS6gAAEdVrcs/dRkq7k8BgHyoy1ABAPJBqAAAyaq7UHHZBwD6phrn0LoLFQAgP4QKAJAsoQIAJKuuQsX9KQDQP5U+l9ZVqAAA+SJUAIBkCRUAIFlCBQBIVt2EihtpAaA8KnlOrZtQAQDyR6gAAMkSKgBAsoQKANBrlbpPpS5CxY20AJBPdREqAEA+CRUAIFlCBQBIllABAJJV86HiRloAyEYlzrE1HyoAQH4JFQAgWUIFAEiWUAEAkiVUAIBk1XSo+I4fAMhW1ufamg4VACDfhAoAkCyhAgAkS6gAAMkSKgBAsoQKAJAsoQIAJKtmQ+VHG39U7SEAQF3I8mep1GyoAAD5J1QAgGQJFQAgWUIFAEiWUAEAkiVUAIBkCRUAIFlCBQBIllABAJIlVACAZAkVAKDfsvrVNUIFAEiWUAEAkiVUAIBkCRUAIFlCBQBIllABAJIlVACAZGUeKm1tbbF48eIYO3ZsHH/88TFt2rR45plnSnru/v37Y8GCBTF69OgYOnRozJo1K7Zs2ZLxiAGAVGQeKtdee23cd999cfXVV8cDDzwQxxxzTFxyySXx4osvHvF57e3tcemll8aqVati4cKFcc8998SePXtixowZ8dprr2U9bAAgAQOyfPGXXnopVq9eHd/73vfim9/8ZkREXH311TF+/PhYtGjREWOlubk51q1bF83NzXHFFVdERMS8efOiqakplixZEo8++miWQwcAEpDpikpzc3MMGDAgFixY0LFt4MCBcf3118e6devijTfeOOJzx4wZ0xEpEREnnnhizJs3L5588sl47733shw6AJCATENly5Yt0dTUFEOHDu20fcqUKRERsXXr1iM+d9KkSV22T5kyJd59993Yvn17eQcLACQn01BpaWmJxsbGLtsPb9u1a1cmzwUAakOmoXLo0KEYOHBgl+2DBg3q+HpPWltb+/xcAKA2ZHoz7eDBg6Otra3L9tbW1o6vZ/HciIhf//DXMWjooE7bxs8aH+defO5Rxw0A9Oy3a34bv/uf33Xa1nqwNZP3yjRUGhsbu71E09LSEhERY8eOzeS5ERGzvz47Gpu6XjoCAPrn3IvP7fIX/5btLfHwjQ+X/b0yvfQzceLE2L59exw4cKDT9vXr10dExIQJE3p87oQJE2Lz5s1RLBa7PHfIkCHR1NRU/gEDAEnJNFTmzJkTH3zwQTz88EeF1dbWFsuXL49p06bFKaecEhERu3fvjm3btsX777/f6blvvvlmPPHEEx3b9u3bF4899lhcdtllceyxx2Y5dAAgAZle+pk6dWrMnTs3brvtttizZ0+cddZZsWLFiti5c2csX76843G33nprrFy5Mnbs2BGnnXZaRHwYKtOmTYvrrrsuXnnllRg1alQsW7YsisVi3HnnnVkOGwBIRKahEhGxcuXK+M53vhM//elP4+23347Pf/7z8atf/SouuuiijscUCoUoFAqdntfQ0BBPPfVU3HLLLfHAAw/EoUOHYurUqbFy5coYN25c1sMGABJQKH7yJpCc27x5c0yePDkW/GiBm2kBoEIO30y7adOmbn9ga19l/ksJAQD6SqgAAMkSKgBAsoQKAJAsoQIAJEuoAADJEioAQLKECgCQLKECACRLqAAA/XbjeTdm8rpCBQBIllABAJIlVACAZAkVACBZQgUASJZQAQCSJVQAgGQJFQAgWUIFAEiWUAEAklWzoZLVj/IFADpbOmNpZq9ds6ECAOSfUAEAkiVUAIBkCRUAIFlCBQBIllABAJIlVACAZNV0qGT5fd0AQPbn2poOFQAg34QKAJAsoQIAJEuoAADJEioAQLJqPlR85w8AZKMS59iaDxUAIL+ECgCQLKECACRLqAAAyaqLUHFDLQDkU12ECgBQXpVaBBAqAECyhAoAkCyhAgAkq25CxQ21AFAelTyn1k2oAAD5I1QAgGQJFQAgWUIFAEhWXYWKG2oBoH8qfS6tq1ABAPJFqAAAyRIqAECy6i5U3KcCAH1TjXNo3YUKAJAfQgUASFZdhorLPwCQD3UZKgBA71TrL/lCBQBIllABAJJVt6HiPhUAKE01z5l1GyoAQPqECgCQrLoOFZd/ACBtdR0qAMCRVfsv9UIFAEiWUAEAklX3oVLtJS0ASFUK58i6DxUAIF1CBQBIllCJNJa2ACAlqZwbhQoAkCyhAgAkS6j8XSpLXABQbSmdE4UKAJAsofIxKRUkAFRDaudCoQIAJEuoAADJEiqfkNqSFwBUSornQKECACRLqAAAyRIq3Uhx6QsAspTquU+oAADJEio9SLUsAaDcUj7nCRUAIFlCBQBIllA5gpSXwgCgHFI/1wkVACBZQuUoUi9NAOirPJzjhAoAkCyhUoI8FCcA9EZezm1CBQBIllApUV7KEwCOJk/nNKECACRLqAAAyRIqvZCnpTIA6E7ezmVCBQBIllDppbyVKAAclsdzmFABAJIlVPogj0UKQH3L67lLqAAAyRIqfZTXMgWg/uT5nCVUAIBkCZV+yHOhAlAf8n6uEioAQLKESj/lvVQBqF21cI7KPFT2798fCxYsiNGjR8fQoUNj1qxZsWXLlpKeu3Tp0mhoaOjyz+DBgzMeNQCQggFZvnh7e3tceuml8fLLL8eiRYti1KhRsWzZspgxY0Zs2rQpzj777JJe56GHHoqhQ4d2/PsxxxyT1ZD7ZOmMpbH0uaXVHgYAdKiF1ZSIjEOlubk51q1bF83NzXHFFVdERMS8efOiqakplixZEo8++mhJrzNnzpwYOXJklkPtN7ECAOWX6aWf5ubmGDNmTEekRESceOKJMW/evHjyySfjvffeK+l12tvb469//WsUi8WshgoANaNWVlMiMg6VLVu2xKRJk7psnzJlSrz77ruxffv2kl7nzDPPjBEjRsSwYcPi6quvjj179pR7qGVRSzsGAPlUa+eiTC/9tLS0xIwZM7psb2xsjIiIXbt2xWc/+9kenz9y5Mj4xje+Ef/wD/8QAwcOjOeffz5++MMfxksvvRQbN26ME044IauhAwAJKDlUisVitLW1lfTYQYMGRUREa2trDBw4sMevHzp06Iivs3Dhwk7//pWvfCWmTp0aX/3qV2PZsmWxePHiksZTSe5VAaBaam01JaIXobJ27dqYNWtWSY/dtm1bNDU1xeDBg7uNm9bW1oiIPn2b8fz58+Pf//3fY82aNUcMlZtuuilGjBjR5bnz58/v9XsCAB9ZtWpVrFq1qtO2/fv3Z/JeJYfKOeecE4888khJjx0zZkxEfHiJZ9euXV2+3tLSEhERY8eOLfXtOzn11FPjrbfeOuJj7r///m7vj6kEqyoAVFolV1O6+4v/5s2bY/LkyWV/r5JD5eSTT45rrrmmVy8+YcKEeOGFF6JYLEahUOjYvn79+hgyZEg0NTX16vUiPrwEtWPHjkz+MACAtGT6XT9z5syJN998M5544omObfv27YvHHnssLrvssjj22GM7tu/cuTO2bdvW6fl79+7t8poPPvhg7Nu3L2bPnp3dwMugFq8TApCmWj7nZPpdP3PmzIlp06bFddddF6+88krHT6YtFotx5513dnrsNddcE88//3y0t7d3bPv0pz8dV155ZYwfPz4GDRoUv/nNb2L16tUxceLEuPHGG7Mcelm4BARA1mo5UiIyDpWGhoZ46qmn4pZbbokHHnggDh06FFOnTo2VK1fGuHHjOj22UCh0ujwUEXHVVVfF//7v/8bjjz8era2tcfrpp8fixYvj9ttv7/jOIQCgdhWKNfbjXg/fzLNp06aq3Uz7SVZVAMhCSqspWZ1/M//tyQAAfSVUKiCl4gWgNtTLuUWoVEi97FAAZK+ezilCBQBIllCpoHoqYACyUW/nEqFSYfW2gwFQPvV4DhEqAECyhEoV1GMRA9A/9XruECpVUq87HAC9V8/nDKFSRfW84wFQmno/VwgVACBZQqXK6r2UAeiZc4RQSYIdEYBPcm74kFABAJIlVBKhnAE4zDnhI0IlIXZMAJwLOhMqAECyhEpilDRA/XIO6EqoJMiOClB/zP3dEyqJssMC1A9zfs+ESsLsuAC1z1x/ZEIFAEiWUEmc0gaoXeb4oxMqOWBHBqg95vbSCJWcsEMD1A5zeumECgCQLKGSIwocIP/M5b0jVHLGDg6QX+bw3hMqOWRHB8gfc3ffCJWcssMD5Ic5u++ESo7Z8QHSZ67uH6GScw4AgHSZo/tPqAAAyRIqNUCxA6TH3FweQqVGOCAA0mFOLh+hUkMcGADVZy4uL6FSYxwgANVjDi4/oVKDHCgAlWfuzYZQqVEOGIDKMedmR6jUMAcOQPbMtdkSKjXOAQSQHXNs9oRKHXAgAZSfubUyhEqdcEABlI85tXKESh1xYAH0n7m0soRKnXGAAfSdObTyhEodcqAB9J65szqESp1ywAGUzpxZPUKljjnwAI7OXFldQqXOOQABemaOrD6hggMRoBvmxjQIFSLCAQnwcebEdAgVOjgwAcyFqREqdOIABeqZOTA9QoUuHKhAPTL3pWlAtQdAmg4fsEufW1rVcQBkTaCkzYoKR+QABmqZOS59QoWjciADtcjclg9ChZI4oIFaYk7LD6FCyRzYQC0wl+WLm2npFTfZAnklUPLJigp94oAH8sSclV9ChT5z4AN5YK7KN6FCv5gAgJSZo/LPPSr0m/tWgNQIlNphRYWyMTEAKTAX1RahQlmZIIBqMgfVHpd+KDuXgoBKEyi1y4oKmTFxAJVgrqltQoVMmUCALJljap9LP2TOpSCg3ARK/bCiQsWYWIByMJfUFysqVJTVFaCvBEp9sqJCVZhwgN4wZ9QvKypUjdUV4GgEClZUqDoTEdAdcwMRVlRIhNUV4DCBwsdZUSEpJiiob+YAPsmKCsmxugL1R6DQEysqJMvEBfXBsc6RWFEhaVZXoHYJFEohVMgFwQK1Q6DQGy79kCsmOMg3xzC9ZUWF3LG6AvkjUOgroUJuCRZIn0Chv4QKuSdYID0ChXIRKtQMwQLVJ1AoN6FCzREsUHkChaz4rh9qlokTKsOxRpasqFDTPj6BWmGB8hEnVIpQoW64JAT9J1CoNKFC3REs0HsChWoRKtQtwQJHJ1CoNqFC3RMs0JVAIRVCBf5OsIBAIT1CBT7BdwpRb8QJKRMqcARWWahlAoU8ECpQAqss1ApxQt4IFeglqyzkkUAhr4QK9JFVFlInTqgFQgXKQLSQCnFCrREqUGYuDVENAoVaJVQgI1ZZyJo4oR4IFaiAT55QhAt9IUyoR0IFqsBqC6USJ9Q7oQJVJlr4JHECHxEqkBCXiOqTMIGeZRoqu3fvjvvvvz/Wr18fGzdujHfeeSeeffbZmD59esmv8cYbb8TNN98c//3f/x3t7e0xc+bMuO++++KMM87IcOSQBuFSm4QJlC7TUNm2bVvcc8890dTUFJ/73Odi3bp1USgUSn7+wYMHY+bMmXHgwIG4/fbbY8CAAXHffffF9OnTY+vWrTFy5MgMR0+qVq1aFfPnz6/2MKqiHsLlt2t+G+defG61h1FWwuQj9Xz80jeZhsp5550Xb731VowYMSKam5tj3bp1vXr+smXL4rXXXosNGzbE5MmTIyLiS1/6UowfPz7uvffeuPvuu7MYNokz0X2kuxNg3uPld//zu1yHiig5MscvvZVpqAwdOrRfz29ubo6pU6d2REpExGc+85m4+OKL42c/+5lQgW7UYrykSpRA9pK9mba9vT1efvnluOGGG7p8bcqUKfH000/HO++8E0OGDKnC6CBfejqhCpjSCBKonmRD5a233oq//e1v0djY2OVrh7ft2rUrxo0bV+mhQc040gm43iJGjECaSg6VYrEYbW1tJT120KBBfR7QYYcOHYqIiIEDB/b4+ocf050//OEP/R4Dadq/f39s3ry52sOoeZcPu/yoj/nRxh+V/X1bD7ZGy/aWsr7mjefdeNTH2Kcqw/Fbu7I675YcKmvXro1Zs2aV9Nht27ZFU1NTnwcVETF48OCIiG7jqLW1tdNjPq6xsTGmT58eV111Vb/en7R9/L4las/DNz5c3teL8r4e/eP4rV3Tp0/v9kpIf5QcKuecc0488sgjJT12zJgxfR1Ph5EjR8bAgQOjpaXr36wObxs7dmyXrzU2NsaqVau6fR4AkJ3GxsbqhcrJJ58c11xzTVnf/EgaGhri3HPPjQ0bNnT52vr16+Oss87q8UbaLP6gAIDKa6j2AA7buXNnbNu2rdO2OXPmxIYNG2LTpk0d21599dV49tlnY+7cuZUeIgBQYYVisVjM8g2++93vRkTE73//+1i9enV87Wtfi9NPPz0iIu64446otwbXAAAJBUlEQVSOx82YMSOef/75aG9v79h28ODBmDhxYhw4cCC+9a1vxYABA+L73/9+FIvF2Lp1a4waNSrLoQMAVZZ5qDQ0NEShUIhisdjxvxERhUIhPvjgg47HzZw5M55//vlO2yI++l0/Tz/9dKff9XPmmWdmOWwAIAGZhwoAQF8lc48KAMAn5TpUdu/eHbfeemvMnDkzTjjhhGhoaIi1a9f26jXeeOONmDdvXnzqU5+K4cOHxz/90z/Fn//854xGTG/t378/FixYEKNHj46hQ4fGrFmzYsuWLSU9d+nSpdHQ0NDln+5+/g7Zamtri8WLF8fYsWPj+OOPj2nTpsUzzzxT0nP7sw9QGX39fB955JFuj9GGhobYs2dPBUbO0bzzzjuxZMmSmD17dowcOTIaGhpixYoVJT+/HMdvsj9CvxTbtm2Le+65J5qamuJzn/tcrFu3LgqFQsnPP3jwYMycOTMOHDgQt99+ewwYMCDuu+++mD59emzdujVGjhyZ4eg5mvb29rj00kvj5ZdfjkWLFsWoUaNi2bJlMWPGjNi0aVOcffbZJb3OQw891OkXZB5zzDFZDZkeXHvttfH444/HzTffHOPGjYvly5fHJZdcEs8++2xceOGFPT6vXPsA2err53vYXXfdFWeccUanbcOHD89quPTC3r1746677opPf/rTMWHChHjuuedKPs+W7fgt5tiBAweKb7/9drFYLBYfe+yxYqFQKK5du7bk5//Hf/xHsVAoFDdu3Nixbdu2bcUBAwYUv/3tb5d9vPTO6tWri4VCofj44493bNu7d2/xU5/6VPFf//Vfj/r8JUuWFAuFQvH//u//shwmR7F+/fpioVAo3nvvvR3bWltbi2effXbxggsuOOJz+7sPkL3+fL7Lly8vFgqF4qZNm7IeJn3U1tZWfPPNN4vFYrG4cePGYqFQKK5YsaKk55br+M31pZ+hQ4fGiBEj+vz85ubmmDp1aqcf5/yZz3wmLr744vjZz35WjiHSD83NzTFmzJi44oorOradeOKJMW/evHjyySfjvffeK+l12tvb469//WvHd5xRWc3NzTFgwIBYsGBBx7aBAwfG9ddfH+vWrYs33njjiM8txz5Advrz+R5WLBbjwIEDXb7rk+o77rjj4qSTToqI6PUcWq7jN9eh0h/t7e3x8ssvx3nnndfla1OmTIk//vGP8c4771RhZBy2ZcuWmDRpUpftU6ZMiXfffTe2b99e0uuceeaZMWLEiBg2bFhcffXVrn1X2JYtW6KpqanT5beIDz/HiIitW7ce8bnl2AfITn8+38NmzpwZw4cPjyFDhsSXv/zleO211zIZK5VVruO3bkPlrbfeir/97W/d/qj9w9t27dpV6WHxMS0tLf36fEaOHBnf+MY34uGHH47HH388brjhhli9enX84z/+Yxw4cCCTMdNVfz7H/u4DZK8/n9GQIUPiuuuui2XLlsUvfvGLWLRoUaxZsyYuuOCCeP311zMbM5VRruM3mZtpi8Vit78puTuDBg3q9/sdOnQoIj5couzp9Q8/hv7ry+fb2trar89n4cKFnf79K1/5SkydOjW++tWvxrJly2Lx4sUljYf+OXToUJ8/x/7uA2SvP5/v3LlzO/06lMsvvzy++MUvxhe+8IW4++6748EHHyz/gKmYch2/yayorF27No4//viS/inHcu/hb1Ht7uTZ2tra6TH0X18+38GDB5f985k/f36MGTMm1qxZ07//IErWn88xi32A8ir3Z3ThhRfG+eefX/K3r5Oucu0byayonHPOOfHII4+U9NgxY8b0+/1GjhwZAwcOjJaWli5fO7xt7Nix/X4fPtSXz7exsbHbpcH+fj6nnnpqvPXWW316Lr3Xn88xq32A8sniMzr11FPdf1QDyrVvJBMqJ598clxzzTUVe7+GhoY499xzY8OGDV2+tn79+jjrrLNiyJAhFRtPrevL5zthwoR44YUXOn5P1GHr16+PIUOGRFNTU6/HUSwWY8eOHZ2+04tsTZw4MZ577rk4cOBAnHDCCR3b169fHxEffs49yWIfoLz68/n25E9/+lOMHj26bGOkOsp1/CZz6SdrO3fujG3btnXaNmfOnNiwYUNs2rSpY9urr74azz77bKfrplTHnDlz4s0334wnnniiY9u+ffvisccei8suuyyOPfbYju3dfb579+7t8poPPvhg7Nu3L2bPnp3dwOlkzpw58cEHH8TDDz/csa2trS2WL18e06ZNi1NOOSUiPvxJ09u2bYv333+/03NL3Qeojv58vt0do0899VRs3rzZMZozWR6/uf+lhN/97ncjIuL3v/99rF69Or72ta/F6aefHhERd9xxR8fjZsyYEc8//3y0t7d3bDt48GBMnDgxDhw4EN/61rdiwIAB8f3vfz+KxWJs3bo1Ro0aVdH/Fjprb2+Piy66KH73u9/FLbfc0vFTDV9//fXYsGFDjBs3ruOx3X2+xx9/fFx55ZUxfvz4GDRoUPzmN7+J1atXx4QJE+LFF18sy03ZlOZf/uVf4uc//3ncfPPNcdZZZ8WKFSti48aNsWbNmrjooosi4sOfbrpy5crYsWNHnHbaaRHRu32A6unr5ztu3LiYNGlSTJ48OYYPHx6bN2+On/zkJ3HKKafEhg0brKok4gc/+EHs378/du3aFQ899FBcccUVHStlCxcujGHDhmV7/Jb8o+ESVSgUig0NDZ3+9/D//7gZM2Z02VYsFouvv/56ce7cucXhw4cXTzjhhOLll19e/OMf/1ip4XMUb7/9dvGGG24onnjiicUhQ4YUZ86c2e1Psezu8/23f/u34mc/+9nisGHDiscdd1yxqampeNtttxUPHjxYqeHzd62trcVbbrml2NjYWBw0aFDx/PPPLz799NOdHnPttdcWGxoain/5y186bS91H6B6+vr53nHHHcWJEycWR4wYUTzuuOOKp59+evHrX/96cc+ePZX+T+AITj/99E7n1o+fcw9/nlkev7lfUQEAalfd3KMCAOSPUAEAkiVUAIBkCRUAIFlCBQBIllABAJIlVACAZAkVACBZQgUASJZQAQCSJVQAgGQJFQAgWf8PBdmlxW5YnUAAAAAASUVORK5CYII=", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-0.999998569487502,0.9999985694875023,-0.9999995231627279,0.9999995231627279)" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "8628" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "length(inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 1.848361 seconds (6.32 M allocations: 211.844 MB, 5.36% gc time)\n" - ] - }, - { - "data": { - "image/png": "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6NGqq6uLO4S88MILOnnypA4fPqzCwkJJ0j333KPp06dr69ateuqpp5xotiuohsA0bmqNHecqvCIo56orIWTEiBFJ7V9XV6e5c+f2BBBJ+s53vqO7775bv/vd73wdQiSCCLyDKklvnJfwmqCdk56/MdWyLP3xj3/UAw880OexoqIi7dmzR5cvX0466ADoK2yhhNABuMvzIeTixYu6du2acnNz+zzWve3s2bODmwG4AAARwElEQVSaNm2a202zVffgziAILxusf/oloHCOwa/8co7FI+4QYlmWOjs7Y3puampq3A26WUdHx4CvlZaW1us5QcDSDPxqqH7r1gDK+YMgCmIAkRIIIfX19VqwYMGQz4tEIvr444+Vn5+fUMO6paenS5KuXbvW57GrV6/2es5AysvLlZWV1WtbaWmpSktLk2obgNgRDoBgqq2tVW1tba9tbW1tMe0bdwi5/fbbVV1dHdNz+1tCidctt9yi1NRUNTc393mse1teXt6gr1FZWdnrplavoxoCAOjm9SpIfxf1jY2Nmj179pD7xh1CbrvtNt13333x7pawSCSiGTNm6MiRI30e++CDDzRlyhRuSgUAwIc897djTp8+raampl7bli1bpsOHD6uxsbFnW1NTk959910tX77c7Sa6wuvJFwDgvKDPBa59Ouapp55SJBLR8ePHZVmWampqtH//fknS448/3vO8srIy1dfXq6urq2fbv/7rv+q//uu/tHjxYj3yyCNKSUlRZWWlcnNz9R//8R9uvQXXsSwDAOEV9AAiuRhCnnzySUUiEUnXl1i2b9/e8983hpBIJKJotHeBJjMzU++//77Ky8v19NNP9/ztmGeffVZjx4516y0AAAAbuRZCbqxsDOa9997rd3teXp527txpZ5N8ge8PAYBwCUMFpJvn7gkBAADhQAjxiTAlYwAIq7CN9YQQHwlb5wSAMAnjGE8IAQAARhBCfCaMSRkAgqyiuCK0YzshxIfC3GEBIEjCPpYTQgAAgBGEEB8Le4IGAD9jDCeEAAAAQwghPkeSBgB/4b6+vyOEBAAdGgD8gbG6N0IIAAAwwrU/YAfn8cfuAMCbqID0j0oIAAAwgkpIAFERAQBvoAIyOCohAADACEIIAAAwguWYAGNZBgDMYBkmNlRCAACAEVRCQoCKCAC4gwpIfKiEAAAAI6iEhAgVEQBwBhWQxFAJ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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.7320111636183058,1.7320111636183055,-1.731997948766467,1.731997948766467)" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "X = IntervalBox(-100..100, -100..100)\n", - "S2 = @constraint 1 <= x^2 + y^2 <= 3\n", - "@time inner, boundary = pave(S2, X, ldexp(1., -6))\n", - "draw(inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.105208 seconds (625.90 k allocations: 18.664 MB, 29.18% gc time)\n" - ] - } - ], - "source": [ - "@time inner, boundary = pave(S2, X, ldexp(1., -3));" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Animation " - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "true" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pygui(true)" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "2016-05-24 00:05:17.068 julia[37236:279254] setCanCycle: is deprecated. Please use setCollectionBehavior instead\n", - "2016-05-24 00:05:17.075 julia[37236:279254] setCanCycle: is deprecated. Please use setCollectionBehavior instead\n" - ] - } - ], - "source": [ - "ion()\n", - "for n in 1:length(inner)\n", - " draw_boxes([inner[n]], \"green\", 0.2, 1)\n", - " draw_boxes([boundary[n]], \"grey\", 0.2, 0.1)\n", - " \n", - " sleep(0.00001)\n", - " if n==1\n", - " axis(\"image\")\n", - " xlim(-2, 2)\n", - " ylim(-2, 2)\n", - " end\n", - " show()\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "336" - ] - }, - "execution_count": 27, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "length(inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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SYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIKkscfHYY4/FZZddFqeddloMHz482tvbY/bs2fHTn/40x8MDABlliYtNmzbFu971rvjCF74Q3/rWt+LLX/5y7Ny5M84///z4t3/7txxDaFlrH1lb9BAamuVXHcuvOpZfdSy/4mSJi/nz58d9990XN998c3zuc5+LG2+8Mf7zP/8zxowZE9/85jdzDKFlPfPoM0UPoaFZftWx/Kpj+VXH8itOYddcDB8+PMaMGRN79uwpaggAQA0Myflgr7zySvT29sauXbtixYoVsW7duli0aFHOIQAANZY1LubNmxc//vGPIyLixBNPjAULFsRf/uVf5hwCAFBjFcdFuVyO3t7eAf3u0KFD+/z/pUuXxp/92Z/F1q1bY8WKFdHb2xuvvfZanHjiif3+/f79+yMiYtcLuyodJv/nQM+B6N7UXfQwGpblVx3LrzqWX3Usv8F7a7/71n64YuUKrVmzplwqlY77r62trbxx48aj3k9vb2950qRJ5blz5x71dzo7O8sR4Z9//vnnn3/+FfCvs7Oz0kwol8vlcsUzF+ecc04sX758QL/b3t5+1J+dcMIJMWfOnFi6dGkcPHjwiFmOiIiZM2dGZ2dnnHHGGTF8+PBKhwoADML+/fvjV7/6VcycOXNQf18ql8vlxGMasIULF8add94ZO3fujNGjRxc1DAAgoSxx8eKLL8aYMWP63LZnz57o6OiId73rXfH888/XeggAQCZZ3i0ye/bs+J3f+Z34wz/8wxg7dmxs2bIlli9fHt3d3bF69eocQwAAMskyc/G3f/u38U//9E+xYcOG2LNnT4waNSr+6I/+KL785S/Hhz70oVo/PACQUaHXXAAAzcdXrgMASTVUXPjq9uo8+uijMX/+/Dj77LNjxIgRceaZZ8Z1110XO3bsKHpoDWHHjh3xla98JS688MJ497vfHW1tbdHV1VX0sOpOb29v3HTTTTF+/Pg46aSTYvr06fHv//7vRQ+rYbz66qvxta99LWbPnh3vfe97o62tLVauXFn0sBrCU089Fddff31MmjQpRo4cGaeffnpceeWVsXnz5qKH1hCeffbZmDdvXpx55pkxYsSIGDNmTMyYMSN++MMfVnxfDRUXvrq9OjfddFP85Cc/icsvvzzuuuuu+OQnPxmrV6+OqVOnxv/+7/8WPby6t3Hjxrjtttti+/bt0dHREaVSqegh1aXPfOYz8c1vfjOuueaauPPOO2PIkCHxsY99zEHAAO3atSu+/vWvx4YNG2LKlCnWswosXbo07r///rj44ovjzjvvjAULFkRXV1dMnTo1nn322aKHV/e2bNkSPT098dnPfjbuvPPO+OpXvxqlUinmzJkTf//3f1/ZnQ3qo7fqyL59+8qnnHJKefbs2UUPpe499thjR9zW1dVVLpVK5VtuuaWAETWWnp6e8ksvvVQul8vle++9t9zW1lb+yU9+UvCo6suTTz5ZLpVK5dtvv/3wbQcOHChPmDChfN555xU4ssbR29tb3rlzZ7lcLpefeuqpcqlUKq9YsaLgUTWGn/3sZ+XXXnutz22bN28uDxs2rHzNNdcUNKrG9sYbb5SnTJlS/r3f+72K/q6hZi7646vbB+7DH/7wEbd95CMfife85z2xfv36AkbUWEaMGBG//du/XfQw6tq9994bQ4YMieuuu+7wbUOHDo358+fHz372s9i2bVuBo2sMJ5xwQowdO7boYTSk6dOnx5AhfT9hYcKECfGBD3zANm6QSqVSvO9976t4H9uQcfHKK6/E7t27Y+PGjfEXf/EXsW7durj44ouLHlZDevXVV6Onp8cnpJLE008/HRMnToyRI0f2uX3atGmHfw65+RToyuzbty92794dzz33XNxxxx3xox/9qOJ9bNavXE/FV7enc8cdd8Rrr70WV111VdFDoQl0d3f3+51C7e3tUS6XY/v27QWMilbW2dkZ27ZtiyVLlhQ9lIbxpS99Kb797W9HRERbW1t84hOfiLvuuqui+ygsLsoZv7q9GVWz/N7S1dUVt956a1x55ZUxY8aMlMOreymWH0fav39/v8tr2LBhh38OuWzYsCGuv/76OO+88+Laa68tejgNY+HChTF37tzYvn17rF69Ol5//fU4ePBgRfdRWFx0dXXFBRdccNzfK5VKsX79+pg4ceLh2zo6Og7/76uvvjqmTp0an/vc51rqo8SrWX4Rb77oLr/88ujo6IjvfOc7tRpm3ap2+dG/4cOH97sROnDgwOGfQw47d+6MSy+9NEaNGhXf//73veumAhMnTjy8zfv0pz8dM2fOjDlz5sQTTzwx4PsoLC5yfnV7M6pm+W3dujUuueSSGDVqVDz00EMxYsSIGoywvqVa/+irvb2931Mf3d3dERFx6qmn5h4SLWjv3r0xa9as2Lt3bzz++ONxyimnFD2khnbFFVfE5z//+di8eXOcddZZA/qbwuJi3Lhxyaap9u3bF+VyOV555ZWWiYvBLr9f//rXcckll8ShQ4dizZo1MW7cuBqMrv6lXP/4jSlTpsSaNWuip6cGqJOuAAACXklEQVSnz0WdTzzxRJRKpZgyZUqBo6MVHDx4MD7+8Y/HL3/5y3jkkUfi7LPPLnpIDe+t05kvv/zygP+mod4t8uKLLx5x2549e+IHP/hBnHbaaa4GPo59+/bF7Nmzo7u7O/71X/813v/+9xc9JJrMFVdcEYcOHYply5Ydvq23tzeWL18e06dPj/Hjxxc4OprdG2+8EfPmzYsnn3wy7r333sPvUmJg+tvHHjp0KFasWBHDhw+Pc889d8D31VDvFvHV7dX51Kc+FT//+c9j/vz5sW7duli3bt3hn40cOTIuu+yyAkfXGJYsWRKlUinWrVsX5XI5Vq5cGY899lhERCxatKjg0RVv2rRpMXfu3Lj55ptj586dMWHChFi+fHls2bIl7rnnnqKH1zDuvvvu2LNnz+HPBXnggQdi69atERFxww03xMknn1zk8OrWjTfeGA8++GDMmTMndu3aFatWrerz86uvvrqgkTWGBQsWxN69e+P888+P8ePHx44dO2LVqlWxcePGuP322+Okk04a8H011Lei+ur26vzu7/5uvPDCC/3+7PTTT4/nnnsu84gaT1tbW78XhpVKpTh06FABI6o/vb29ccstt0RnZ2e89NJL0dHREUuWLPFZNBU41mv1+eefj9NOOy3ziBrDBRdccMzv+3n99dczjqbxrF69Or773e/G2rVrY/fu3XHyySfHBz/4wbjhhhvi0ksvrei+GiouAID611DXXAAA9U9cAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJPX/Ae1SFqUkuiF6AAAAAElFTkSuQmCC", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-3.0,3.0,-3.0,3.0)" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S3 = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 3\n", - "S3c = !S3 # complement\n", - "\n", - "Y = IntervalBox(-3..3, -3..3)\n", - "inner, boundary = pave(S3c, Y, ldexp(1., -5))\n", - "draw(inner)\n" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - " - variables: [:x,:y]" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "setprecision(Interval, Float64)\n", - "X = IntervalBox(-3..3, -3..4)\n", - "S2 = @constraint 1 <= x^2 + y^2 <= 3\n", - "S4 = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 3\n", - "S24 = S2 ∩ S4" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(([-1.23206, 1.73206],[-0.732051, 1.73206]),([-3, 3],[-3, 4]))" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S24(X)" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 1.137638 seconds (8.54 M allocations: 263.776 MB, 12.41% gc time)\n" - ] - }, - { - "data": { - "image/png": "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p3167bXXore3N1599dX4sz/7s5g2bVp84QtfiN7e3njqqadi7ty5GbV8Ys1mM6677rp4+umn47bbbovzzjsvNm/eHL29vTEwMBC/9mu/NunvyHOsPvrRj8b9998fGzZsiIULF8aWLVviuuuui507d8Z73/vecd/XjX5nqd1+RfxiPO64445YsGDBiO3nnntuhi2e3OHDh+OOO+6Iiy++OJYtWxY7d+5s+b1FHq9O+hVRzPHauHFjfPvb3441a9bE0qVL4+DBg/HFL34xli9fHrt37453vetd474397Fq1syxY8eaP/vZz5rNZrO5Y8eOZk9PT/Pf//3fW35/f39/s6enp/mTn/wkqyZOWad92rhxY7Onp6e5d+/eoW3PPfdcc9q0ac3bb7+96+1t1b333ttsNBrN+++/f2jbj3/84+bcuXOb69atm/T9eY7V7t27m41Go/mFL3xhaNvrr7/eXLhwYXPVqlUTvrfTfmepk35t2bJl1H5WFCdPnmweOnSo2Ww2m3v27Gk2Go3mV77ylZbeW+Tx6qRfRR2vxx57rPnzn/98xLbnn3++OWPGjOZNN9004XvzHqvaLSmfddZZXZmdnTp1Kl599dUutKhznfbpvvvuiyuvvDKWL18+tO3SSy+N973vffEP//AP3Whi2+264IIL4sMf/vDQtnnz5sXatWvjH//xH+PnP/95S78nj7HasWNHTJs2LW655ZahbdOnT4+Pf/zj8dhjj8X+/fvHfW+3+p2FTvo13LFjx+LUqVNZNXPKzjzzzDj//PPbem+Rx6uTfg1XpPFauXJlTJs2cnF24cKF8e53v3vS5+7nPVa1C9xuaDab8fa3vz3mzJkTZ599dtx00025X4NqV7PZjP/8z/+MK664YtTPVqxYEd///vfjtddey6FlEU8++eSIScCgFStWxP/8z//E9773vUl/R15j9dRTT8WiRYti9uzZI7avWLFi6Ofj6Ua/s9JJvyJ+MR69vb1xzjnnxKxZs+JDH/pQvPDCC5m1N4Uij1enyjRehw4dmvTRinmPlcCdorlz58Yf/MEfxD333BP33Xdf3HLLLXHvvffGVVddFceOHcu7eVP205/+NE6cOBHz588f9bPBbS+//HLqZkVExIEDBzpqV55jNVHbm83mhG3vtN9Z6qRfs2bNit/93d+NzZs3xze+8Y34zGc+Ew8//HCsWrWq5cq4iIo8Xp0o03ht27Yt9u/fHx/5yEcmfF3eY1Xqm6aazWacPHmypddOnz69K5/5yU9+csT/f/jDH44rr7wy1q1bF5s3b47bbruto9+fuk+Df1JqrN81Y8aMEa/pRDv9On78+Ljtajabk7Yr67GayERtH/x5O+9tpd9Z6qRfa9asiTVr1gz9/+rVq+O3fuu34qqrroq/+Iu/iM2bN3e/wQkUebw6UZacJcd4AAAE/UlEQVTxeu6552L9+vWxatWquPnmmyd8bd5jVeoK99FHH42ZM2dO+t+sWbMyXSro6+uLCy64oOWvfEwkdZ8G/wrTiRMnRv3s9ddfH/GaTrTTr5kzZ47brkaj0Va7ujlWE5mo7YM/b+e97fa7Wzrp11hWrVoV73nPezIfjywVeby6rWjjdejQofjABz4Qc+fOja997WvRaDQmfH3eY1XqCvcd73hHbNmypaXXjrWM0E1ve9vb4qc//WnHvyd1n375l385pk+fHgcOjP7j54PbLrzwwo4/p51+zZ8/P5N2dWusJjJ//vwxl6daaXtW/e6GTvo1nre97W2lvs5Z5PHKQlHG6+jRo3HNNdfE0aNHY9euXXHBBRdM+p68x6rUgfvWt7510iWEVF588cUxL8ZPVeo+NRqNWLJkSezZs2fUz3bv3h1vf/vbR3yHtV3t9GvZsmWxa9euUdsff/zxmDVrVixatKittnRrrCYy+J3HY8eOjbjB6PHHH49GoxHLli2b8L1Z9LsbOunXeP7rv/4r3vKWt3SzmUkVebyyUITxOnHiRHzwgx+MF154IR5++OG49NJLW3pf3mNV6iXlrL300kuxb9++EdsOHz486nWbN2+OH//4x3HttdemalrbxurT9ddfH9/5zndiYGBgaNu+ffvikUceibVr16Zu4oh2HTp0KO6///6hbYcPH44dO3bE6tWr48wzzxzaXrSxuv766+ONN96Ie+65Z2jbyZMnY8uWLbFy5cq46KKLIuIXTwnbt29f/O///u+I97ba79Q66ddY4/HP//zPsXfv3lIcOxHlG69WlWm8Tp06FWvXro3du3fHjh07hu6QP10Rx6qWf4D+zjvvjEajEc8880z8/d//ffze7/1e/Oqv/mpERNx+++1Dr+vt7Y1HH310xPfPzjrrrLjhhhtiyZIlMWPGjPjWt74V9957b1x22WWxa9euoZtHUuukT8eOHYvLLrssXn311fj0pz8d06ZNi02bNkWz2Ywnn3wyzjvvvOT9ifjFgfXrv/7r8cwzz8SnP/3pmDdvXmzevDleeuml+M53vhOXXHLJ0GuLOFY33HBDfOMb34hPfepTQ09k2rNnTzzyyCOxatWqiIj42Mc+Flu3bo0XX3wxfuVXfmXK/c5Du/1atGhRXHbZZXHFFVfEnDlzYu/evfHlL385LrroonjiiSdyr5ruuuuueOWVV2L//v3xpS99KX7nd34nLrvssoj4xQ14Z599dinHq91+FXW8PvWpT8Xf/u3fxurVq0fc1DVo3bp1EVHQYyvzR2sUUKPRaPb09Iz674wzzhjxut7e3lHbPvGJTzQXL17cnDNnTnP69OnNRYsWNf/0T/+0eezYsZRdGKWTPjWbzeb+/fuba9eubZ577rnNc845p/mhD32o+f3vfz9V88f1yiuvNG+55ZbmW97ylubs2bObV199dXNgYGDU64o4VidOnGjedtttzQsvvLA5c+bM5nve857mv/zLv4x4zcc+9rHmGWec0fzhD384Ynur/c5Du/367Gc/21y+fHlz7ty5zenTpzcXLFjQXL9+ffNHP/pR6i6MacGCBWMeQz09PUP9KON4tduvoo5Xb2/vuP3p6ekZel0Rx6qWFS4ApOYaLgAkIHABIAGBCwAJCFwASEDgAkACAhcAEhC4AJCAwAWABAQuACQgcAEgAYELAAkIXABI4P8AcG1kLAGuCzkAAAAASUVORK5CYII=", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.7320110272625673,2.2320110272625673,-1.7319781879936316,2.7319781879936316)" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time inner, boundary = pave(S24, X, ldexp(1., -5));\n", - "#draw(inner, boundary)\n", - "draw(inner)\n", - "axis(\"image\")" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "X = IntervalBox(-100..100, -100..100)\n", - "S4 = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 3\n", - "inner, boundary = pave(S4, X, ldexp(1., -3));\n", - "#draw(inner)\n", - "#axis(\"image\")\n", - ";" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.110340 seconds (754.47 k allocations: 22.162 MB, 14.32% gc time)\n" - ] - } - ], - "source": [ - "@time inner, boundary = pave(S4, X, ldexp(1., -3));\n" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - " - variables: [:x,:y]" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "setprecision(Interval, Float64)\n", - "X = IntervalBox(-3..3, -3..4)\n", - "S2 = @constraint 1 <= x^2 + y^2 <= 3\n", - "S4 = @constraint 1 <= (x-0.5)^2 + (y-1)^2 <= 3\n", - "S24 = S2 ∩ S4" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "ename": "LoadError", - "evalue": "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[11], in expression starting on line 1", - "output_type": "error", - "traceback": [ - "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[11], in expression starting on line 1", - "", - " in anonymous at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/separator.jl:94", - " in call at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/separator.jl:57" - ] - } - ], - "source": [ - "S24(X)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "ename": "LoadError", - "evalue": "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[10], in expression starting on line 6", - "output_type": "error", - "traceback": [ - "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[10], in expression starting on line 6", - "", - " in anonymous at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/separator.jl:94", - " in pave at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/pave.jl:45" - ] - } - ], - "source": [ - "inner, boundary = pave(S24, X, ldexp(1., -2))\n", - "draw(inner)\n", - "axis(\"image\")" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "ename": "LoadError", - "evalue": "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[11], in expression starting on line 3", - "output_type": "error", - "traceback": [ - "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[11], in expression starting on line 3", - "", - " in anonymous at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/separator.jl:94", - " in pave at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/pave.jl:45" - ] - } - ], - "source": [ - "S24 = S2 ∩ S4\n", - "\n", - "inner, boundary = pave(S24, X, ldexp(1., -4))\n", - "draw(inner)\n" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "ename": "LoadError", - "evalue": "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[12], in expression starting on line 6", - "output_type": "error", - "traceback": [ - "LoadError: MethodError: `getindex` has no method matching getindex(::ValidatedNumerics.IntervalBox{2,Float64}, ::Array{Int64,1})\nClosest candidates are:\n getindex{T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}}(::T<:FixedSizeArrays.FixedArray{T,1,Tuple{CARDINALITY}}, !Matched::Union{Integer,Range{T}})\n getindex(::FixedSizeArrays.FixedArray{T,NDim,SIZE}, !Matched::Tuple)\nwhile loading In[12], in expression starting on line 6", - "", - " in anonymous at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/separator.jl:94", - " in pave at /Users/dpsanders/.julia/v0.4/IntervalConstraintProgramming/src/pave.jl:45" - ] - } - ], - "source": [ - "S5a = @constraint 1 >= x+y >= -1\n", - "S5b = @constraint x-y >= 1\n", - "\n", - "S5 = S5a ∩ S5b\n", - "\n", - "inner, boundary = pave(S5, X, ldexp(1., -2))\n", - "draw(inner)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "Example from Jaulin et al., \"Applied Interval Analysis\", pg. 61:" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.354182 seconds (2.62 M allocations: 79.810 MB, 12.43% gc time)\n" - ] - } - ], - "source": [ - "S6 = @constraint x1^2 * (x1^2 - 1) + 4*x2^2 ∈ [-0.1, 0.1] # 4th power not yet working correctly in powerRev\n", - "Y = IntervalBox(-10..10, -10..10)\n", - "\n", - "@time inner, boundary = pave(S6, Y, ldexp(1., -5));\n" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-1.0449698339937934,1.0449698339937932,-0.3015944517013159,0.30159445170131594)" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(inner, boundary)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Combining separators with different variables " - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO: Recompiling stale cache file /Users/dpsanders/.julia/lib/v0.4/IntervalConstraintProgramming.ji for module IntervalConstraintProgramming.\n" - ] - } - ], - "source": [ - "using IntervalConstraintProgramming, ValidatedNumerics\n" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - " - variables: [:x,:y]" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S7a = @constraint x > 0\n", - "S7b = @constraint y > 0\n", - "S7 = S7a ∩ S7b" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(2-elementArray{ValidatedNumerics.IntervalBox{2,Float64},1}:\n", - " [1.5, 3] × [0, 3]\n", - " [0, 1.5] × [0, 3]\n", - ",0-elementArray{ValidatedNumerics.IntervalBox{2,Float64},1}:\n", - ")" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "inner, boundary = pave(S7, IntervalBox(-3..3, -3..3), 0.1)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/dpsanders/.julia/v0.4/Conda/deps/usr/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n", - " warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhcAAAIUCAYAAACpTQ7mAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAHClJREFUeJzt3XuMVfW58PFnjygiIPUCOFIvVcQbTMjQUlpUXqwRUYOpCjoqXkINmmNMRmvVWvVEeZMSexyD1VasChRCi1pTL/XYqMXReqmXaCwCYkSkMEwFBUQuI7rfP84rPVNoZZiHtRn8fJKdyG/vvdbjCrC/7L1mr1K5XC4HAECSqkoPAADsXMQFAJBKXAAAqcQFAJBKXAAAqcQFAJBKXAAAqcQFAJBKXAAAqcQFAJCqkLh46623YsyYMXHooYdG165do2fPnjFs2LB49NFHi9g9AFCgTkXsZNGiRbFmzZq48MILY//994+1a9fGgw8+GKNGjYrJkyfHD37wgyLGAAAKUKrUhcvK5XLU1tbGhg0b4q233qrECADAdlCxcy5KpVIccMABsXLlykqNAABsB4V8LPKFtWvXxrp162LVqlXx+9//Ph5//PGoq6srcgQAYDsr9GORSy+9NO66666IiKiqqoozzjgjJk+eHD169ChqBABgOys0Lt5+++3429/+FkuXLo1Zs2bFbrvtFnfeeWf06tVri49fvnx5PPHEE3HwwQdHly5dihoTAL7S1q1bF++9916MGDEi9t133zY/v2IndEZEjBgxIlatWhUvvvjiFu+fMWNGnHfeeQVPBQBEREyfPj3OPffcNj+v0HMu/tmZZ54Zl1xySSxYsCAOO+ywze4/+OCDI+J//ueOPPLIgqfbOdTX10dDQ0Olx+iwHL/2+f5F34+T/uOkSo/RYf33Hf/t+LWD47ftlr+/PH73f3+36XW4rSoaF+vWrYuIiFWrVm3x/i8+CjnyyCOjtra2sLl2Jj169HDs2sHxa5/du+0e1f2qKz1Gh+X4tY/j137bekpCIT+K+sEHH2y2tnHjxpg6dWp06dIljjrqqCLGAAAKUMg7F+PHj4/Vq1fHcccdF3369Illy5bFjBkzYv78+XHrrbfGHnvsUcQYAEABComLs88+O+6555745S9/GStWrIju3bvHoEGD4pZbbolTTjmliBEAgIIUEhdjxoyJMWPGFLEr/okvKWsfx699+h/fv9IjdGiOX/s4fpXjkus7OS+O7eP4tc+A7w2o9AgdmuPXPo5f5YgLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACBVIXHxyiuvxGWXXRb9+/ePbt26xUEHHRRnnXVWLFiwoIjdAwAF6lTETiZOnBjPP/98jB49OmpqamLZsmVx++23R21tbbz00ktx1FFHFTEGAFCAQuLiyiuvjJkzZ0anTv/Y3ZgxY2LAgAHx05/+NKZNm1bEGABAAQqJiyFDhmy21rdv3zj66KNj7ty5RYwAABSkoid0Njc3x7777lvJEQCAZBWLi+nTp8eSJUvi7LPPrtQIAMB2UJG4mDdvXlx22WUxdOjQOP/88ysxAgCwnRRyzsX/1tzcHKecckrstddecf/990epVPrS59TX10ePHj1ardXV1UVdXd32GhMAvhLefOrN+OvTf221tn7N+nZts9C4WL16dZx00kmxevXqeO6552K//fbbquc1NDREbW3tdp4OAL56BnxvQAz43oBWa01vN8Xk8ZO3eZuFxcWGDRvi1FNPjXfeeSeeeuqpOPzww4vaNQBQoELi4vPPP48xY8bESy+9FA8//HAMHjy4iN0CABVQSFxcccUV8cgjj8SoUaNi+fLlMWPGjFb3n3vuuUWMAQAUoJC4eOONN6JUKsUjjzwSjzzyyGb3iwsA2HkUEhd/+tOfitgNALADcMl1ACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUhUWF5988knceOONMXLkyNhnn32iqqoqpk2bVtTuAYCCFBYXy5cvj5tvvjnmzZsXAwcOjFKpVNSuAYACdSpqR/vvv38sW7YsevXqFa+++mp861vfKmrXAECBCnvnYtddd41evXoVtTsAoEKc0AkApBIXAEAqcQEApCrshM72qK+vjx49erRaq6uri7q6ugpNBAA7hzefejP++vRfW62tX7O+XdvsEHHR0NAQtbW1lR4DAHY6A743IAZ8b0Crtaa3m2Ly+MnbvE0fiwAAqcQFAJCq0I9F7rjjjli5cmUsWbIkIiIefvjhWLx4cUREXH755dG9e/cixwEAtoNC4+JnP/tZvP/++xERUSqV4qGHHoqHHnooIiLGjh0rLgBgJ1BoXCxcuLDI3QEAFeCcCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFKJCwAglbgAAFIVFhctLS1x9dVXR58+fWKPPfaIIUOGxJNPPlnU7gGAghQWFxdccEHcdtttMXbs2Jg0aVJ06tQpTj755Hj++eeLGgEAKECnInbyl7/8JX7729/Gf/3Xf0V9fX1ERIwdOzb69+8fP/rRj+K5554rYgwAoACFvHPxwAMPRKdOneLiiy/etNa5c+cYN25cvPDCC7FkyZIixgAAClBIXLz++uvRr1+/6NatW6v1wYMHb7ofANg5FBIXTU1NUV1dvdl6dXV1lMvlWLp0aRFjAAAFKCQu1q1bF507d95sfffdd990PwCwcyjkhM4uXbrEhg0bNltfv379pvv/nfr6+ujRo0ertbq6uqirq8sbEkj3n//nPys9AvAlZs6cGTNnzmy1tmrVqnZts5C4qK6u3uJHH01NTRERsf/++//b5zc0NERtbe12mQ0Avsq29I/11157LQYNGrTN2yzkY5GBAwfG22+/HWvWrGm1/uKLL0apVIqBAwcWMQYAUIBC4uLMM8+MjRs3xuTJkzettbS0xJQpU2LIkCHRp0+fIsYAAApQyMcigwcPjtGjR8e1114bzc3N0bdv35gyZUosWrQo7rvvviJGAAAKUkhcRET8+te/juuvvz6mT58eH330UdTU1MRjjz0WQ4cOLWoEAKAAhcXFbrvtFhMnToyJEycWtUsAoAJcch0ASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBUhcTFsmXL4pprronjjz8+9txzz6iqqorGxsYidg0AFKyQuJg/f37ccsstsXTp0qipqYlSqVTEbgGACigkLr75zW/GihUrYt68eVFfX1/ELgGACulUxE66du1axG4AgB2AEzoBgFTiAgBI1eaPRcrlcrS0tGzVYzt37tzmgQCAjq3NcdHY2BjDhw//0seVSqWYO3du9OvXb5sG+9/q6+ujR48erdbq6uqirq6u3dsGgK+ymTNnxsyZM1utrVq1ql3bbHNcHHHEETFlypStemx1dXVbN79FDQ0NUVtbm7ItAOAftvSP9ddeey0GDRq0zdtsc1z07t07zj///G3eIQCwc3NCJwCQqpDvuYiImDBhQpRKpZgzZ06Uy+WYNm1aPPvssxERcd111xU1BgCwnRUWFzfccMOmr/0ulUpx3333bfpvcQEAO4/C4uLzzz8valcAQAU55wIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBU4gIASCUuAIBUhcTF008/HePGjYvDDz88unbtGoceemhcfPHFsWzZsiJ2DwAUqFMRO7n66qvjo48+itGjR8dhhx0W7777btx+++3x2GOPxeuvvx69evUqYgwAoACFxEVDQ0Mcc8wxrdZGjBgRw4YNi5///Odx0003FTEGAFCAQj4W+eewiIg49thjY++99465c+cWMQIAUJCKndD5ySefxJo1a2Lfffet1AgAwHZQsbhoaGiITz/9NM4+++xKjQAAbAdtPueiXC5HS0vLVj22c+fOW1xvbGyMm266Kc4666wYNmxYW0cAAHZgbY6LxsbGGD58+Jc+rlQqxdy5c6Nfv36t1ufNmxenn3561NTUxN13371V+6yvr48ePXq0Wqurq4u6urqtHxwA2MzMmTNj5syZrdZWrVrVrm2WyuVyuS1PaG5ujieeeGKrHvv9738/unfvvunXixcvjqFDh0bnzp3jueeei969e//b57/22msxaNCgePXVV6O2trYtYwIA26i9r79tfueid+/ecf7557d5Rx9++GGceOKJsXHjxpg9e/aXhgUA0DEV8j0Xa9eujZEjR0ZTU1PMnj07DjnkkCJ2CwBUQCFxcc4558TLL78c48aNizlz5sScOXM23detW7c47bTTihgDAChAIXHxxhtvRKlUinvvvTfuvffeVvcddNBB4gIAdiKFxMXChQuL2A0AsANwyXUAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSiQsAIJW4AABSFRIXzz77bJx22mlx4IEHRpcuXaK6ujpGjhwZzz//fBG7BwAKVEhcvP3227HLLrvEpZdeGnfeeWdcddVV0dzcHMcdd1z88Y9/LGKEr6yZM2dWeoQOzfFrH8evfRy/9nH8KqeQuBg3blz87ne/i2uvvTYuuuiiuOKKK+LPf/5z9OzZM2677bYiRvjK8oerfRy/9nH82sfxax/Hr3Iqds5Fly5domfPnrFy5cpKjQAAbAeditzZxx9/HC0tLbF8+fKYOnVqzJkzJ6677roiRwAAtrNC42LMmDHxxBNPRETEbrvtFuPHj4+f/OQnRY4AAGxnbY6LcrkcLS0tW/XYzp07t/r1xIkT44c//GEsXrw4pk6dGi0tLfHpp5/GbrvttsXnr1u3LiIi5s6d29Yx+f9WrVoVr732WqXH6LAcv/Zx/NrH8Wsfx2/bffG6+8XrcJuV22j27NnlUqn0pbeqqqry/Pnz/+V2Wlpayv379y+PHj36Xz5m+vTp5Yhwc3Nzc3Nzq8Bt+vTpbc2EcrlcLrf5nYsjjjgipkyZslWPra6u/pf37brrrjFq1KiYOHFibNiwYbN3OSIiRowYEdOnT4+DDz44unTp0tZRAYBtsG7dunjvvfdixIgR2/T8UrlcLifPtNXq6+tj0qRJ0dzcHPvuu2+lxgAAEhUSFx988EH07Nmz1drKlSujpqYmdtlll1i4cOH2HgEAKEghPy0ycuTI+PrXvx7f/va3o1evXrFo0aKYMmVKNDU1xaxZs4oYAQAoSCHvXPziF7+I3/zmNzFv3rxYuXJl7LXXXvGd73wnrrrqqvjud7+7vXcPABSooudcAAA7H5dcBwBSdai4cOn29nn66adj3Lhxcfjhh0fXrl3j0EMPjYsvvjiWLVtW6dE6hGXLlsU111wTxx9/fOy5555RVVUVjY2NlR5rh9PS0hJXX3119OnTJ/bYY48YMmRIPPnkk5Ueq8P45JNP4sYbb4yRI0fGPvvsE1VVVTFt2rRKj9UhvPLKK3HZZZdF//79o1u3bnHQQQfFWWedFQsWLKj0aB3CW2+9FWPGjIlDDz00unbtGj179oxhw4bFo48+2uZtdai4cOn29rn66qvjmWeeidNPPz1uv/32qKuri1mzZkVtbW38/e9/r/R4O7z58+fHLbfcEkuXLo2ampoolUqVHmmHdMEFF8Rtt90WY8eOjUmTJkWnTp3i5JNP9o+ArbR8+fK4+eabY968eTFw4EC/z9pg4sSJ8dBDD8UJJ5wQkyZNivHjx0djY2PU1tbGW2+9VenxdniLFi2KNWvWxIUXXhiTJk2KG264IUqlUowaNSp+9atftW1j2/TVWzuQtWvXlvfbb7/yyJEjKz3KDu/ZZ5/dbK2xsbFcKpXK119/fQUm6ljWrFlT/uijj8rlcrn8wAMPlKuqqsrPPPNMhafasbz00kvlUqlUvvXWWzetrV+/vty3b9/y0KFDKzhZx9HS0lJubm4ul8vl8iuvvFIulUrlqVOnVniqjuGFF14of/rpp63WFixYUN59993LY8eOrdBUHdvnn39eHjhwYPnII49s0/M61DsXW+LS7VvvmGOO2Wzt2GOPjb333tv1W7ZC165d42tf+1qlx9ihPfDAA9GpU6e4+OKLN6117tw5xo0bFy+88EIsWbKkgtN1DLvuumv06tWr0mN0SEOGDIlOnVp/w0Lfvn3j6KOP9nfcNiqVSnHAAQe0+TW2Q8bFxx9/HCtWrIj58+fHj3/845gzZ06ccMIJlR6rQ/rkk09izZo1viGVFK+//nr069cvunXr1mp98ODBm+6HovkW6LZZu3ZtrFixIt59991oaGiIxx9/vM2vsYVecj2LS7fnaWhoiE8//TTOPvvsSo/CTqCpqWmL1xSqrq6OcrkcS5curcBUfJVNnz49lixZEhMmTKj0KB3GlVdeGXfddVdERFRVVcUZZ5wRt99+e5u2UbG4KBd46fadUXuO3xcaGxvjpptuirPOOiuGDRuWOd4OL+P4sbl169Zt8Xjtvvvum+6HosybNy8uu+yyGDp0aJx//vmVHqfDqK+vj9GjR8fSpUtj1qxZ8dlnn8WGDRvatI2KxUVjY2MMHz78Sx9XKpVi7ty50a9fv01rNTU1m/773HPPjdra2rjooou+Ul8l3p7jF/E/f+hOP/30qKmpibvvvnt7jbnDau/xY8u6dOmyxb+E1q9fv+l+KEJzc3Occsopsddee8X999/vp27aoF+/fpv+zjvvvPNixIgRMWrUqHjxxRe3ehsVi4siL92+M2rP8Vu8eHGceOKJsddee8Vjjz0WXbt23Q4T7tiyfv/RWnV19RY/+mhqaoqIiP3337/okfgKWr16dZx00kmxevXqeO6552K//far9Egd2plnnhmXXHJJLFiwIA477LCtek7F4qJ3795pb1OtXbs2yuVyfPzxx1+ZuNjW4/fhhx/GiSeeGBs3bozZs2dH7969t8N0O77M33/8w8CBA2P27NmxZs2aVid1vvjii1EqlWLgwIEVnI6vgg0bNsSpp54a77zzTjz11FNx+OGHV3qkDu+LjzNXrVq11c/pUD8t8sEHH2y2tnLlynjwwQfjwAMPdDbwl1i7dm2MHDkympqa4g9/+EMccsghlR6JncyZZ54ZGzdujMmTJ29aa2lpiSlTpsSQIUOiT58+FZyOnd3nn38eY8aMiZdeeikeeOCBTT+lxNbZ0mvsxo0bY+rUqdGlS5c46qijtnpbHeqnRVy6vX3OOeecePnll2PcuHExZ86cmDNnzqb7unXrFqeddloFp+sYJkyYEKVSKebMmRPlcjmmTZsWzz77bEREXHfddRWervIGDx4co0ePjmuvvTaam5ujb9++MWXKlFi0aFHcd999lR6vw7jjjjti5cqVm74X5OGHH47FixdHRMTll18e3bt3r+R4O6wrrrgiHnnkkRg1alQsX748ZsyY0er+c889t0KTdQzjx4+P1atXx3HHHRd9+vSJZcuWxYwZM2L+/Plx6623xh577LHV2+pQV0V16fb2+cY3vhHvv//+Fu876KCD4t133y14oo6nqqpqiyeGlUql2LhxYwUm2vG0tLTE9ddfH9OnT4+PPvooampqYsKECb6Lpg3+3Z/VhQsXxoEHHljwRB3D8OHD/+31fj777LMCp+l4Zs2aFffcc0+8+eabsWLFiujevXsMGjQoLr/88jjllFPatK0OFRcAwI6vQ51zAQDs+MQFAJBKXAAAqcQFAJBKXAAAqcQFAJBKXAAAqcQFAJBKXAAAqcQFAJBKXAAAqcQFAJDq/wHemtU+lBCc3QAAAABJRU5ErkJggg==", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "include(\"draw_boxes.jl\")\n", - "draw(inner)\n", - "\n", - "xlim(-3, 3)\n", - "ylim(-3, 3)\n", - "ax = gca()\n", - "ax[:set_aspect](\"equal\")" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - " - variables: [:x,:y]" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S8 = S7a ∪ S7b" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(2-elementArray{ValidatedNumerics.IntervalBox{2,Float64},1}:\n", - " [-3, 0] × [0, 3]\n", - " [0, 3] × [-3, 3]\n", - ",0-elementArray{ValidatedNumerics.IntervalBox{2,Float64},1}:\n", - ")" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "inner, boundary = pave(S8, IntervalBox(-3..3, -3..3), 0.1)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhcAAAIUCAYAAACpTQ7mAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAHC1JREFUeJzt3XuMVfW5+OF3jyhXa1EujtRLBcEqMyHYUlovxEtExGCiAqLiJZSgqTFBa9Va9UT9JSX2iMFqK1YFCrFFramXqo1aHK1CtY2GOxgVKQxUUMCRy4ju88f5lZ4ptDLMy9oMPk+yE1hr7/V9swLMh9lr9iqVy+VyAAAkqar0AADA3kVcAACpxAUAkEpcAACpxAUAkEpcAACpxAUAkEpcAACpxAUAkEpcAACpComLBQsWxIgRI6Jnz57RsWPH6Nq1awwaNCieeuqpIpYHAArUpohFli1bFg0NDXHppZfGIYccEhs3bozHHnsshg0bFpMnT47vfe97RYwBABSgVKkbl5XL5ejfv39s2bIlFixYUIkRAIDdoGLXXJRKpTj00ENj3bp1lRoBANgNCnlb5B82btwYmzZtivXr18fvfve7eOaZZ2LUqFFFjgAA7GaFvi1yxRVXxH333RcREVVVVXHuuefG5MmT44ADDihqBABgNys0LpYsWRJ/+9vfYuXKlTFz5szYb7/94t57741u3brt8Plr1qyJ5557Lo444oho3759UWMCwJfapk2b4r333ovBgwdHly5dmv36il3QGRExePDgWL9+fcyePXuH+2fMmBEXXXRRwVMBABER06dPjwsvvLDZryv0mot/dd5558Xll18eS5cujaOOOmq7/UcccURERJxz4znR5bDmlxMRz97zbJzx/TMqPUar5fy1jPPXMs5fyzh/u27N+2vit//vt9u+DjdXReNi06ZNERGxfv36He7/x1shXQ7rEtW9qwuba2/SrlM7564FnL+Wcf5axvlrGeev5Xb1koRCfhT1gw8+2G7b1q1bY+rUqdG+ffs45phjihgDAChAId+5GDduXGzYsCFOOumk6NGjR6xatSpmzJgRixcvjjvvvDM6dOhQxBgAQAEKiYvzzz8/HnjggfjFL34Ra9eujf333z+OO+64uOOOO2Lo0KFFjAAAFKSQuBgxYkSMGDGiiKX4F31P6VvpEVo1569lnL+Wcf5axvmrHLdc38vVnFpT6RFaNeevZZy/lnH+Wsb5qxxxAQCkEhcAQCpxAQCkEhcAQCpxAQCkEhcAQCpx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dturq6ujXC7HypUrixgDAChAIXGxadOmaNu27Xbb27Vrt20/ALB3KOSCzvbt28eWLVu227558+Zt+/+TRTMWRf0B9U22jRo1KkaNGpU3JJDuv2b9V6VHAL7A3BfmxrwX5zXZtrlhc4uOWUhcVFdX7/Ctj/r6/w2GQw455D++fuLEidG/f//dMhsAfJnVnFoTNafWNNlWv6Q+Jo+bvMvHLORtkX79+sWSJUuioaGhyfbZs2dHqVSKfv36FTEGAFCAQuLivPPOi61bt8bkyf+soMbGxpgyZUoMHDgwevToUcQYAEABCnlbZMCAATF8+PC44YYbYvXq1dGrV6+YMmVKLFu2LB566KEiRgAAClJIXERE/OpXv4qbbroppk+fHh999FHU1tbG008/Hccff3xRIwAABSgsLvbbb7+YMGFCTJgwoaglAYAKcMt1ACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUokLACCVuAAAUhUSF6tWrYrrr78+TjnllPjKV74SVVVVUVdXV8TSAEDBComLxYsXxx133BErV66M2traKJVKRSwLAFRAIXHxzW9+M9auXRuLFi2K8ePHF7EkAFAhbYpYpGPHjkUsAwDsAVzQCQCkEhcAQKpmvy1SLpejsbFxp57btm3bZg8EALRuzY6Lurq6OPnkk7/weaVSKRYuXBi9e/fepcH+r/Hjx8cBBxzQZNuoUaNi1KhRLT42AHyZzX1hbsx7cV6TbZsbNrfomM2Oi6OPPjqmTJmyU8+trq5u7uF3aOLEidG/f/+UYwEA/1Rzak3UnFrTZFv9kvqYPG7yLh+z2XHRvXv3uPjii3d5QQBg7+aCTgAgVSGfcxER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61//OhYtWhTr1q2Lzp07x3e+85249tpr47vf/e7uXh4AKFBFr7kAAPY+brkOAKRqVXHh1u0t8+KLL8aYMWOiT58+0bFjx+jZs2eMHTs2Vq1aVenRWoVVq1bF9ddfH6ecckp85Stfiaqqqqirq6v0WHucxsbGuO6666JHjx7RoUOHGDhwYDz//POVHqvV+OSTT+KWW26JIUOGxEEHHRRVVVUxbdq0So/VKrzxxhtx5ZVXRt++faNTp05x+OGHx8iRI2Pp0qWVHq1VWLBgQYwYMSJ69uwZHTt2jK5du8agQYPiqaeeavaxWlVcuHV7y1x33XXx0ksvxTnnnBN33313jBo1KmbOnBn9+/ePv//975Ueb4+3ePHiuOOOO2LlypVRW1sbpVKp0iPtkS655JK46667YvTo0TFp0qRo06ZNnHnmmf4TsJPWrFkTt912WyxatCj69evnz1kzTJgwIR5//PE47bTTYtKkSTFu3Lioq6uL/v37x4IFCyo93h5v2bJl0dDQEJdeemlMmjQpbr755iiVSjFs2LD45S9/2byD7dJHb+1BNm7cWD744IPLQ4YMqfQoe7yXX355u211dXXlUqlUvummmyowUevS0NBQ/uijj8rlcrn86KOPlquqqsovvfRShafas8yZM6dcKpXKd95557ZtmzdvLvfq1at8/PHHV3Cy1qOxsbG8evXqcrlcLr/xxhvlUqlUnjp1aoWnah1ee+218qefftpk29KlS8vt2rUrjx49ukJTtW6ff/55uV+/fuVvfOMbzXpdq/rOxY64dfvOO+GEE7bbduKJJ8aBBx7o/i07oWPHjvHVr3610mPs0R599NFo06ZNjB07dtu2tm3bxpgxY+K1116LFStWVHC61mHfffeNbt26VXqMVmngwIHRpk3TT1jo1atXHHvssf6N20WlUikOPfTQZn+NbZVx8fHHH8fatWtj8eLF8aMf/Sjmz58fp512WqXHapU++eSTaGho8AmppHjzzTejd+/e0alTpybbBwwYsG0/FM2nQDfPxo0bY+3atfHOO+/ExIkT45lnnmn219hCb7mexa3b80ycODE+/fTTOP/88ys9CnuB+vr6Hd5TqLq6OsrlcqxcubICU/FlNn369FixYkXcfvvtlR6l1bjmmmvivvvui4iIqqqqOPfcc+Puu+9u1jEqFhflAm/dvjdqyfn7h7q6urj11ltj5MiRMWjQoMzx9ngZ54/tbdq0aYfnq127dtv2Q1EWLVoUV155ZRx//PFx8cUXV3qcVmP8+PExfPjwWLlyZcycOTM+++yz2LJlS7OOUbG4qKuri5NPPvkLn1cqlWLhwoXRu3fvbdtqa2u3/frCCy+M/v37x2WXXfal+ijxlpy/iP/9S3fOOedEbW1t3H///btrzD1WS88fO9a+ffsd/iO0efPmbfuhCKtXr46hQ4dG586d45FHHvFTN83Qu3fvbf/mXXTRRTF48OAYNmxYzJ49e6ePUbG4KPLW7Xujlpy/5cuXx+mnnx6dO3eOp59+Ojp27LgbJtyzZf35o6nq6uodvvVRX18fERGHHHJI0SPxJbRhw4Y444wzYsOGDfHKK6/EwQcfXOmRWrXzzjsvLr/88li6dGkcddRRO/WaisVF9+7d075NtXHjxiiXy/Hxxx9/aeJiV8/fhx9+GKeffnps3bo1Zs2aFd27d98N0+35Mv/88U/9+vWLWbNmRUNDQ5OLOmfPnh2lUin69etXwen4MtiyZUucddZZ8fbbb8cLL7wQffr0qfRIrd4/3s5cv379Tr+mVf20yAcffLDdtnXr1sVjjz0Whx12mKuBv8DGjRtjyJAhUV9fH7///e/jyCOPrPRI7GXOO++82Lp1a0yePHnbtsbGxpgyZUoMHDgwevToUcHp2Nt9/vnnMWLEiJgzZ048+uij235KiZ2zo6+xW7dujalTp0b79u3jmGOO2eljtaqfFnHr9pa54IIL4vXXX48xY8bE/PnzY/78+dv2derUKc4+++wKTtc63H777VEqlWL+/PlRLpdj2rRp8fLLL0dExI033ljh6SpvwIABMXz48Ljhhhti9erV0atXr5gyZUosW7YsHnrooUqP12rcc889sW7dum2fC/LEE0/E8uXLIyLiqquuiv3337+S4+2xrr766njyySdj2LBhsWbNmpgxY0aT/RdeeGGFJmsdxo0bFxs2bIiTTjopevToEatWrYoZM2bE4sWL484774wOHTrs9LFa1V1R3bq9Zb7+9a/H+++/v8N9hx9+eLzzzjsFT9T6VFVV7fDCsFKpFFu3bq3ARHuexsbGuOmmm2L69Onx0UcfRW1tbdx+++0+i6YZ/tPf1XfffTcOO+ywgidqHU4++eT/eL+fzz77rMBpWp+ZM2fGAw88EHPnzo21a9fG/vvvH8cdd1xcddVVMXTo0GYdq1XFBQCw52tV11wAAHs+cQEApBIXAEAqcQEApBIXAEAqcQEApBIXAEAqcQEApBIXAEAqcQEApBIXAEAqcQEApPofOHzO9MANZlcAAAAASUVORK5CYII=", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "include(\"draw_boxes.jl\")\n", - "draw(inner)\n", - "\n", - "xlim(-3, 3)\n", - "ylim(-3, 3)\n", - "ax = gca()\n", - "ax[:set_aspect](\"equal\")" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator:\n", - " - variables: [:x,:y]" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S9a = @constraint -1 <= x + y <= 1\n", - "S9b = @constraint -1 <= x - y <= 1\n", - "S9 = S9a ∩ S9b" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[-3, 3]" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "x = y = -3..3" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(([-3, 3],[-3, 3]),([-3, 3],[-3, 3]))" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S9((x,y))" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.116705 seconds (766.33 k allocations: 29.160 MB, 8.13% gc time)\n" - ] - } - ], - "source": [ - "@time inner, boundary = pave(S9, IntervalBox(-10^8..10^8, -10^8..10^8), 0.01);" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhcAAAIUCAYAAACpTQ7mAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAH4RJREFUeJzt3WuMlOX98PHfrCgiIJ4AkSpWEY/dkKWltKhUY6SowVQFXc8GjZoYE7RWrfUQ9YXEf8RgtVWrAoVsi1pTDzU2anG1HqoSTYOAGBWRw1ZQFhFkRed50Ufsygo7O9fec/p8kk3tPbtz//aekevr7MVOLp/P5wMAIJG6Ug8AAFQXcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACSVSVy89dZbMXHixNh///2jd+/e0b9//xgzZkw8/vjjWZweAMhQjyxOsmTJkli3bl2ce+65sddee8X69evj4YcfjvHjx8c999wT559/fhZjAAAZyJXqjcvy+Xw0NDTExo0b46233irFCABANyjZnotcLhd77713rFmzplQjAADdIJMfi3xt/fr1sWHDhmhtbY2//vWv8eSTT0ZjY2OWIwAA3SzTH4tcfPHFcffdd0dERF1dXZx88slxzz33RL9+/bIaAQDoZpnGxdtvvx0ffvhhLF++PObMmRM77LBD3HXXXTFgwIAOP3/VqlXx1FNPxb777hu9evXKakwAqGkbNmyI999/P8aOHRt77LFHwV9fsg2dERFjx46N1tbWePnllzu8ffbs2XHmmWdmPBUAEBExa9asOOOMMwr+ukz3XHzbKaecEhdddFEsXrw4DjjggC1u33fffSPiv9/cwQcfnPF01WHy5MkxderUUo9RsVy/4rh+xXH9iuP6dd2CBQvizDPP3LwOF6qkcbFhw4aIiGhtbe3w9q9/FHLwwQdHQ0NDZnNVk379+rl2RXD9iuP6Fcf1K47rV7yubknI5K+ifvTRR1sc27RpU8yYMSN69eoVhxxySBZjAAAZyOSViwsvvDDWrl0bRx55ZAwePDhWrlwZs2fPjkWLFsVtt90WO+20UxZjAAAZyCQuTjvttLjvvvvi97//faxevTr69u0bI0aMiFtvvTWOP/74LEYAADKSSVxMnDgxJk6cmMWp+Ba/pKw4rl9xXL/iuH7Fcf1Kp6R/FXVb5s2bFyNGjIjXX3/dphwAyEix62/J3lsEAKhO4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFKZxMVrr70Wl1xySRx22GHRp0+fGDJkSJx66qmxePHiLE4PAGSoRxYnmTJlSrz44osxYcKEqK+vj5UrV8Ydd9wRDQ0N8corr8QhhxySxRgAQAYyiYvLL788mpqaokePb043ceLE+MEPfhC33HJLzJw5M4sxAIAMZBIXo0aN2uLY0KFD49BDD40FCxZkMQIAkJGSbuhsaWmJPfbYo5QjAACJlSwuZs2aFcuWLYvTTjutVCMAAN2gJHGxcOHCuOSSS2L06NFx9tlnl2IEAKCbZLLn4n+1tLTE8ccfH7vuums8+OCDkcvltvk1kydPjn79+rU71tjYGI2Njd01JgDUhKampmhqamp3rLW1taj7zOXz+XxR91CAtWvXxpgxY+LDDz+MF154IQ488MCtfv68efNixIgR8frrr0dDQ0NGUwJAbSt2/c3slYuNGzfGCSecEO+8804888wz2wwLAKAyZRIXX331VUycODFeeeWVePTRR2PkyJFZnBYAKIFM4uKyyy6Lxx57LMaPHx+rVq2K2bNnt7v9jDPOyGIMACADmcTFm2++GblcLh577LF47LHHtrhdXABA9cgkLv7xj39kcRoAoAx4y3UAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACSVWVx89tlncf3118e4ceNi9913j7q6upg5c2ZWpwcAMpJZXKxatSpuuummWLhwYQwfPjxyuVxWpwYAMtQjqxPttddesXLlyhgwYEC8/vrr8aMf/SirUwMAGcrslYvtt98+BgwYkNXpAIASsaETAEhKXAAASYkLACCpzDZ0FmPy5MnRr1+/dscaGxujsbGxRBMBQHVoamqKpqamdsdaW1uLus+KiIupU6dGQ0NDqccACnDD3Bv++78/u6GkcwBb19F/rM+bNy9GjBjR5fv0YxEgua/D4tv/DNQGcQF0O4EBtSXTH4vceeedsWbNmli2bFlERDz66KOxdOnSiIi49NJLo2/fvlmOAyS2tYi4Ye4NfkQCNSLTuPi///u/+OCDDyIiIpfLxSOPPBKPPPJIREScddZZ4gIqWGdenRAYUBsy/bHIe++9F19++WWHH/vss0+WowAJFfJjDz8igepnzwVQlK7EgsCA6iYugJIQGFC9xAXQJTfMvaHoQBAYUJ3EBVCwlFEgMKD6iAugIN0RAwIDqou4ADqtOyNAYED1EBdA2RAYUB3EBbBNKTZvFnIuoLKJC2CrSrHYCwyobOIC+E6lXOQFBlQucQF0qBwW93KYASicuADKmsCAyiMugHay3LzZWeU2D7B14gLYrJwX8XKeDWhPXAARURmLdyXMCIgLICpr0a6kWaFWiQug4ggMKG/iAmpYOW7e7KxKnRtqgbiAGlUNi3M1fA9QjcQF1KBqWpSr6XuBaiEuoMZU42Jcjd8TVDJxAVQFgQHlQ1xAjajkzZudVe3fH1QKcQE1oJYW3Vr6XqFciQuocrW42Nbi9wzlRFxAFavlRbaWv3coNXEBVC2BAaUhLqAK1cLmzc5yHSB74gKqjMV0S64JZEtcQBWxiH431wayIy6gSlg8t801gmyIC6CmCAzofuICKpzNm4VzvaB7iQuoYBbJrnPtoPuIC6hQFsfiuYbQPcQFVCCLYjquJaQnLoCaJzAgLXEBFcTmze7jukI64gIqhMWv+7nGkIa4gApg0cuOaw3FExdQ5ix22XPNoTjiAqADAgO6TlxAmbJ5s/Rcf+gacQFlyKJWPjwWUDhxAWXGYlZ+PCZQGHEBZcQiVr48NtB54gKgkwQGdI64gDJg82bl8DjBtokLKDGLVeXxmMHWiQsoIYtU5fLYwXcTF1AiFqfK5zGEjokLgCIIDNiSuICM2bxZfTye0J64gAxZhKqXxxa+IS4gIxaf6ucxhv8SF5ABi07t8FiDuABITmBQ68QFdCObN2uXx51aJi6gm1hc8BygVokL6AYWFb7muUAtEheQmMWEb/OcoNaIC4AMCAxqibiARGzeZFs8P6gV4gISsGjQWZ4r1AJxAUWyWFAozxmqnbiAIlgk6CrPHapZZnHR1tYWV155ZQwePDh22mmnGDVqVDz99NNZnR6g7AgMqlVmcXHOOefE7bffHmeddVZMmzYtevToEccdd1y8+OKLWY0Aydi8SSqeR1SjTOLiX//6V/z5z3+OW265JW655ZY4//zz45lnnokhQ4bEr371qyxGgGQsBqTmOUW1ySQuHnrooejRo0dccMEFm4/17NkzJk2aFC+99FIsW7YsizGgaBYBuovnFtUkk7h44403YtiwYdGnT592x0eOHLn5dih3/vCnu3mOUS0yiYsVK1bEoEGDtjg+aNCgyOfzsXz58izGACh7AoNqkElcbNiwIXr27LnF8R133HHz7VCubN4ka55vVLoeWZykV69esXHjxi2Of/7555tv35rJkydHv3792h1rbGyMxsbGdEMCQA1qamqKpqamdsdaW1uLus9M4mLQoEEd/uhjxYoVERGx1157bfXrp06dGg0NDd0yGwDUso7+Y33evHkxYsSILt9nJj8WGT58eLz99tuxbt26dsdffvnlyOVyMXz48CzGgC654Wc3xA0/u6HUY1BDPN+odJnExSmnnBKbNm2Ke+65Z/Oxtra2mD59eowaNSoGDx6cxRgAZU9YUA0y+bHIyJEjY8KECXH11VdHS0tLDB06NKZPnx5LliyJBx54IIsRoGg3/MzGTrqXsKBaZBIXERF//OMf49prr41Zs2bFJ598EvX19fHEE0/E6NGjsxoBivb1H/4ig5REBdUms7jYYYcdYsqUKTFlypSsTgkAlIC3XIcusMmTVDyPqEbiAqBEhAXVSlxAESwOdJXnDtUssz0XUK1s8qQQooJa4JULACApcQGJ2OTJtnh+UCvEBUAGhAW1RFxAYhYRvs1zglpjQyd0A5s8iRAV1C6vXAAASYkL6EY2edYujzu1TFwAJCYsqHXiAjJgsakdHmuwoRMyY5NndRMV8A2vXAAASYkLyJhNntXH4wntiQuAIggL2JK4gBKxKFU+jyF0zIZOKCGbPCuTqICt88oFAJCUuIAyYJNn5fA4wbaJC4BOEhbQOeICyojFq3x5bKDzbOiEMmOTZ3kRFVA4r1wAAEmJCyhTNnmWnusPXSMuADogLKDrxAWUOYtc9lxzKI4NnVABbPLMhqiANLxyAQAkJS6ggtjk2X1cV0hHXAA1T1hAWuICKpDFMB3XEtKzoRMqlE2exREV0H28cgEAJCUuoMLZ5Fk41wu6l7gAaoqwgO4nLqBKWDS3zTWCbNjQCVXEJs+OiQrIllcuAICkxAVUIZs8v+E6QPbEBVC1hAWUhriAKlbLi2stf+9QajZ0QpWrtU2eogJKzysXAEBS4gJqRC1s8qz27w8qhbgAqoKwgPIhLqDGVOMiXI3fE1QyGzqhBlXLJk9RAeXJKxcAQFLiAmpYJW/yrNS5oRaIC6DiCAsob+ICqKjFupJmhVplQycQEeW/yVNUQOXwygUAkJS4ANopx02e5TYPsHXiAihrwgIqj7gAOlQOi3o5zAAUzoZO4DuVapOnqIDK5pULACApcQFsU5abPL1qAZVPXABlQ1hAdRAXQKd15+IvLKB62NAJFCT1Jk9RAdXHKxcAQFLiAuiSFJs8vWoB1SmTuFi5cmVcddVVcfTRR8fOO+8cdXV10dzcnMWpgTIlLKB6ZRIXixYtiltvvTWWL18e9fX1kcvlsjgtkIGuRIKwgOqWyYbOH/7wh7F69erYZZdd4uGHH46XXnopi9MCGensJk9RAbUhk7jo3bt3FqcBAMqADZ1AMlvb5OlVC6gd4gLodsICakvBcZHP52Pjxo2d+gBq0//GhLCA2lPwnovm5uY46qijtvl5uVwuFixYEMOGDevSYP9r8uTJ0a9fv3bHGhsbo7Gxsej7BrqHqIDK0NTUFE1NTe2Otba2FnWfBcfFQQcdFNOnT+/U5w4aNKjQu+/Q1KlTo6GhIcl9AQDf6Og/1ufNmxcjRozo8n0WHBcDBw6Ms88+u8snBACqmw2dAEBSmb0r6s033xy5XC7mz58f+Xw+Zs6cGc8//3xERFxzzTVZjQEAdLPM4uK6667b/Gu/c7lcPPDAA5v/WVwAQPXILC6++uqrrE4FAJSQPRcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEgqk7h49tlnY9KkSXHggQdG7969Y//9948LLrggVq5cmcXpAYAM9cjiJFdeeWV88sknMWHChDjggAPi3XffjTvuuCOeeOKJeOONN2LAgAFZjAEAZCCTuJg6dWocfvjh7Y6NHTs2xowZE7/97W/jxhtvzGIMACADmfxY5NthERFxxBFHxG677RYLFizIYgQAICMl29D52Wefxbp162KPPfYo1QgAQDcoWVxMnTo1vvjiizjttNNKNQIA0A0K3nORz+ejra2tU5/bs2fPDo83NzfHjTfeGKeeemqMGTOm0BEAgDJWcFw0NzfHUUcdtc3Py+VysWDBghg2bFi74wsXLoyTTjop6uvr49577+3UOSdPnhz9+vVrd6yxsTEaGxs7PzgAsIWmpqZoampqd6y1tbWo+8zl8/l8IV/Q0tISTz31VKc+9xe/+EX07dt38/9funRpjB49Onr27BkvvPBCDBw4cKtfP2/evBgxYkS8/vrr0dDQUMiYAEAXFbv+FvzKxcCBA+Pss88u+EQff/xxHHvssbFp06aYO3fuNsMCAKhMmfyei/Xr18e4ceNixYoVMXfu3Nhvv/2yOC0AUAKZxMXpp58er776akyaNCnmz58f8+fP33xbnz594sQTT8xiDAAgA5nExZtvvhm5XC7uv//+uP/++9vdNmTIEHEBAFUkk7h47733sjgNAFAGvOU6AJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgKXEBACQlLgCApMQFAJCUuAAAkhIXAEBS4gIASEpcAABJiQsAIClxAQAkJS4AgKTEBQCQlLgAAJISFwBAUuICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSyiQunn/++TjxxBNjn332iV69esWgQYNi3Lhx8eKLL2ZxegAgQ5nExdtvvx3bbbddXHzxxXHXXXfFFVdcES0tLXHkkUfG3//+9yxGqFlNTU2lHqGiuX7Fcf2K4/oVx/UrnUziYtKkSfGXv/wlrr766jjvvPPisssui3/+85/Rv3//uP3227MYoWb5l6s4rl9xXL/iuH7Fcf1Kp2R7Lnr16hX9+/ePNWvWlGoEAKAb9MjyZJ9++mm0tbXFqlWrYsaMGTF//vy45pprshwBAOhmmcbFxIkT46mnnoqIiB122CEuvPDC+M1vfpPlCABANys4LvL5fLS1tXXqc3v27Nnu/0+ZMiV++ctfxtKlS2PGjBnR1tYWX3zxReywww4dfv2GDRsiImLBggWFjsn/19raGvPmzSv1GBXL9SuO61cc1684rl/Xfb3ufr0OFyxfoLlz5+Zzudw2P+rq6vKLFi36zvtpa2vLH3bYYfkJEyZ85+fMmjUrHxE+fPjw4cOHjxJ8zJo1q9BMyOfz+XzBr1wcdNBBMX369E597qBBg77ztu233z7Gjx8fU6ZMiY0bN27xKkdExNixY2PWrFmx7777Rq9evQodFQDogg0bNsT7778fY8eO7dLX5/L5fD7xTJ02efLkmDZtWrS0tMQee+xRqjEAgIQyiYuPPvoo+vfv3+7YmjVror6+Prbbbrt47733unsEACAjmfxtkXHjxsX3vve9+PGPfxwDBgyIJUuWxPTp02PFihUxZ86cLEYAADKSySsXv/vd7+JPf/pTLFy4MNasWRO77rpr/OQnP4krrrgifvrTn3b36QGADJV0zwUAUH285ToAkFRFxYW3bi/Os88+G5MmTYoDDzwwevfuHfvvv39ccMEFsXLlylKPVhFWrlwZV111VRx99NGx8847R11dXTQ3N5d6rLLT1tYWV155ZQwePDh22mmnGDVqVDz99NOlHqtifPbZZ3H99dfHuHHjYvfdd4+6urqYOXNmqceqCK+99lpccsklcdhhh0WfPn1iyJAhceqpp8bixYtLPVpFeOutt2LixImx//77R+/evaN///4xZsyYePzxxwu+r4qKC2/dXpwrr7wynnvuuTjppJPijjvuiMbGxpgzZ040NDTEf/7zn1KPV/YWLVoUt956ayxfvjzq6+sjl8uVeqSydM4558Ttt98eZ511VkybNi169OgRxx13nP8I6KRVq1bFTTfdFAsXLozhw4d7nhVgypQp8cgjj8QxxxwT06ZNiwsvvDCam5ujoaEh3nrrrVKPV/aWLFkS69ati3PPPTemTZsW1113XeRyuRg/fnz84Q9/KOzOuvSrt8rI+vXr83vuuWd+3LhxpR6l7D3//PNbHGtubs7ncrn8tddeW4KJKsu6devyn3zyST6fz+cfeuihfF1dXf65554r8VTl5ZVXXsnncrn8bbfdtvnY559/nh86dGh+9OjRJZyscrS1teVbWlry+Xw+/9prr+VzuVx+xowZJZ6qMrz00kv5L774ot2xxYsX53fcccf8WWedVaKpKttXX32VHz58eP7ggw8u6Osq6pWLjnjr9s47/PDDtzh2xBFHxG677eb9Wzqhd+/escsuu5R6jLL20EMPRY8ePeKCCy7YfKxnz54xadKkeOmll2LZsmUlnK4ybL/99jFgwIBSj1GRRo0aFT16tP8NC0OHDo1DDz3Un3FdlMvlYu+99y54ja3IuPj0009j9erVsWjRovj1r38d8+fPj2OOOabUY1Wkzz77LNatW+c3pJLEG2+8EcOGDYs+ffq0Oz5y5MjNt0PW/Bbowqxfvz5Wr14d7777bkydOjWefPLJgtfYTN9yPRVv3Z7O1KlT44svvojTTjut1KNQBVasWNHhewoNGjQo8vl8LF++vARTUctmzZoVy5Yti5tvvrnUo1SMyy+/PO6+++6IiKirq4uTTz457rjjjoLuo2Rxkc/wrdurUTHX72vNzc1x4403xqmnnhpjxoxJOV7ZS3H92NKGDRs6vF477rjj5tshKwsXLoxLLrkkRo8eHWeffXapx6kYkydPjgkTJsTy5ctjzpw58eWXX8bGjRsLuo+SxUVzc3McddRR2/y8XC4XCxYsiGHDhm0+Vl9fv/mfzzjjjGhoaIjzzjuvpn6VeDHXL+K//9KddNJJUV9fH/fee293jVm2ir1+dKxXr14d/iH0+eefb74dstDS0hLHH3987LrrrvHggw/6WzcFGDZs2OY/884888wYO3ZsjB8/Pl5++eVO30fJ4iLLt26vRsVcv6VLl8axxx4bu+66azzxxBPRu3fvbpiwvKV6/tHeoEGDOvzRx4oVKyIiYq+99sp6JGrQ2rVr4+c//3msXbs2Xnjhhdhzzz1LPVJFO+WUU+Kiiy6KxYsXxwEHHNCprylZXAwcODDZy1Tr16+PfD4fn376ac3ERVev38cffxzHHntsbNq0KebOnRsDBw7shunKX8rnH98YPnx4zJ07N9atW9duU+fLL78cuVwuhg8fXsLpqAUbN26ME044Id5555145pln4sADDyz1SBXv6x9ntra2dvprKupvi3z00UdbHFuzZk08/PDDsc8++9gNvA3r16+PcePGxYoVK+Jvf/tb7LfffqUeiSpzyimnxKZNm+Kee+7ZfKytrS2mT58eo0aNisGDB5dwOqrdV199FRMnToxXXnklHnrooc1/S4nO6WiN3bRpU8yYMSN69eoVhxxySKfvq6L+toi3bi/O6aefHq+++mpMmjQp5s+fH/Pnz998W58+feLEE08s4XSV4eabb45cLhfz58+PfD4fM2fOjOeffz4iIq655poST1d6I0eOjAkTJsTVV18dLS0tMXTo0Jg+fXosWbIkHnjggVKPVzHuvPPOWLNmzebfC/Loo4/G0qVLIyLi0ksvjb59+5ZyvLJ12WWXxWOPPRbjx4+PVatWxezZs9vdfsYZZ5Rosspw4YUXxtq1a+PII4+MwYMHx8qVK2P27NmxaNGiuO2222KnnXbq9H1V1Luieuv24nz/+9+PDz74oMPbhgwZEu+++27GE1Weurq6DjeG5XK52LRpUwkmKj9tbW1x7bXXxqxZs+KTTz6J+vr6uPnmm/0umgJs7d/V9957L/bZZ5+MJ6oMRx111Fbf7+fLL7/McJrKM2fOnLjvvvvi3//+d6xevTr69u0bI0aMiEsvvTSOP/74gu6rouICACh/FbXnAgAof+ICAEhKXAAASYkLACApcQEAJCUuAICkxAUAkJS4AACSEhcAQFLiAgBISlwAAEmJCwAgqf8HeE3k7Hx7GeQAAAAASUVORK5CYII=", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "include(\"draw_boxes.jl\")\n", - "\n", - "draw(inner)\n", - "\n", - "xlim(-3, 3)\n", - "ylim(-3, 3)\n", - "ax = gca()\n", - "ax[:set_aspect](\"equal\")" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "## Disjoint regions" - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/usr/local/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n", - " warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n" - ] - }, - { - "data": { - "text/plain": [ - "draw (generic function with 13 methods)" - ] - }, - "execution_count": 31, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "include(\"draw_boxes.jl\")" - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "Separator with variables x, y" - ] - }, - "execution_count": 34, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S10a = @constraint (x-2)^2 + y^2 <= 1\n", - "S10b = @constraint x^2 + (y-2)^2 <= 1\n", - "S10 = S10a ∪ S10b" - ] - }, - { - "cell_type": "code", - "execution_count": 38, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 0.028110 seconds (64.43 k allocations: 2.185 MB, 18.10% gc time)\n" - ] - } - ], - "source": [ - "X = IntervalBox(-10^4..10^4, -10^4..10^4)\n", - "\n", - "@time paving = pave(S10, X, 1);" - ] - }, - { - "cell_type": "code", - "execution_count": 42, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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008/VWxsbJ8KaxMcHCxJamlp8XjtypUrbsf8UFVVlSTp/vvv71cNppk1a5avS7AV4x3cGO/glrcmr2/91Ld+vjbU5reqqkqJiYkD/r69Di+33XabCgoKenRsR6d6euumm25SYGCgamo803lbW0xMTId977rrLhUVFWnixImdBhwAADCwmpubVVVVpbvuussr79/r8HLzzTdr5cqV3qilQw6HQ9OnT9fx48c9Xjt27JhuueWWTjfrRkZGasWKFd4uEQAA/IA3Vlza+N2G3XPnzqmystKtLSUlRR999JHbucLKykq9++67SktLs7tEAADgQw7Lsiw7PmjLli1yOBw6ceKEXnnlFf3sZz/Tj370I0nSk08+2X5cUlKSDh06pNbW1va2xsZGzZw5U99++60effRRBQQEKCcnR5ZlqaKiQhEREXYMAQAA+AHbwovT6ezwsQAOh0PXr19v//OCBQv0/vvvu7VJ310OnZWVpb/85S9qbW3VggUL9MILL+iWW27xeu0AAMB/2BZeAAAABoLf7XkBAADoyqAJL7W1tcrOztbChQsVFhYmp9OpQ4cO9eo9qqurlZaWptGjRys8PFw/+clP9MUXX3ip4v5raGjQ6tWrFRUVpdDQUC1cuFAVFRU96vurX/1KTqfT4yckJMTLVXfv6tWreuyxxzR27FiFhIRo7ty5OnDgQI/69uc78ZW+jnfHjh0dzuGwYcP05Zdf2lB531y+fFkbN27UkiVLFBERIafTqcLCwh73N22O+zNe0+b4+PHjWrt2raZNm6bQ0FBNmDBB9913nz777LMe9TdtbvszXtPmVpL+/ve/Ky0tTZMmTdKIESMUERGhefPmaefOnT3qP5Dz6/fPNuqpyspKPf/885oyZYpmzJjR6ydXX758WUlJSfr222/1y1/+UgEBAXrhhReUlJSkjz/+WKNHj/ZS5X1jWZaWLl2qTz75RBs2bFBERIRyc3OVlJSk8vJyTZo0qdv3cDgceumll9wuNR82bJg3y+6RBx54QHv27FFWVpYmT56sgoICLV26VAcPHtS8efM67TcQ34kv9HW80ndzuHnzZk2cONGtvT8PQvW2+vp6bd68WRMmTFBcXJwOHjzY474mznF/xiuZNcfPPfecPvjgA6WmpmrGjBmqra3V9u3bFR8fr2PHjun222/vtK+Jc9uf8Upmza0knT17Vo2N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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-0.9980449639169569,2.9980449639169566,-0.9981672658552772,2.998167265855277)" - ] - }, - "execution_count": 42, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "@time refine!(paving, 0.1)\n", - "draw(paving.inner)" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 1.846274 seconds (13.69 M allocations: 416.454 MB, 14.07% gc time)\n" - ] - } - ], - "source": [ - "S10c = @constraint (x-1)^2 + (y-1)^2 <= 1\n", - "S11 = S10a ∪ S10b ∪ S10c\n", - "@time inner, boundary = pave(S11, X, 0.01);" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAIUCAYAAADSacwqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIABJREFUeJzs3Xt8XGW5L/DfyszKZZLMJJlcey9pWqFQ26YEhK0W9SgWrBu03XSLbDm6BbUqyGVXhQItdJfSClqoPXiw0A27HrEqVGQjIhUpbdJM0gulJJM09/usycxkbpm11qzzR5g096RpMpfM7/v58CFds9asdzKZ9On7Ps/zCpqmaSAiIiKKEQmRHgARERHRhWDwQkRERDGFwQsRERHFFAYvREREFFMYvBAREVFMYfBCREREMYXBCxEREcUUBi9EREQUUxi8EBERUUxh8EJEREQxJSzBywcffID169ejsLAQqampyMnJwac//Wn86U9/mtD1TqcT3/72t5Gbm4u0tDR85jOfQWVl5TSPmoiIiKKRPhw3aWhogNvtxje+8Q3MmjULXq8XBw8exNq1a/Hss8/iW9/61qjXapqGNWvW4PTp07j//vthNpuxZ88erF69GhUVFSgsLAzHSyAiIqIoIURqY0ZN07By5Ur09vbigw8+GPW83/72t7jllltw8OBB3HTTTQAAm82GxYsXY82aNXjxxRfDNWQiIiKKAhHLeREEAXPnzoXD4RjzvIMHDyI/P78/cAGA7OxsrF+/Hq+88gpkWZ7uoRIREVEUCWvw4vV6IUkSzp07hyeffBKvv/46Pve5z415TWVlJVauXDnseElJCbxeL6qrq6druERERBSFwhq83HPPPcjJycGiRYtw33334eabb8bu3bvHvKatrQ0FBQXDjoeOtba2TstYiYiIKDqFJWE35O6778a6devQ2tqK3/72t1BVFb29vWNe4/P5kJSUNOx4cnIyNE2Dz+cb9VqbzYY33ngDCxYsQEpKykWPn4iIiMbn8/lQX1+PL3zhC8jOzp7y5w9r8LJ48WIsXrwYAHDrrbfiC1/4AtauXYtjx46Nek1KSsqIAY7f74cgCGMGJW+88QZuvfXWix84ERERXbAXX3wRX/va16b8ecMavAz11a9+FXfeeSesViuKiopGPKegoABtbW3DjoeOzZo1a9TnX7BgAYC+b96ll1568QOOAXfffTeefPLJSA9jGIfDAZfLBa/XC7/fD03T4PF48LtXf4em1iZkZ2fD6/bC1e2CTq+D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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-0.9999923705763645,2.9999923705763645,-0.9999713893612233,2.999971389361223)" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(inner, \"green\", 0.5, 1)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - ":((S10a ∪ S10b) ∪ S10c)" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "expand(:(S10a ∪ S10b ∪ S10c))" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 1.273488 seconds (8.97 M allocations: 269.566 MB, 14.99% gc time)\n" - ] - }, - { - "data": { - "image/png": "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3BP/8A//EH/+859j8eLF8d///d9lvwDyYdOmTUkvgSp6+3dvJ72EihM6/pf7l3KVtB3zxhtvxDPPPBOPPvporFq1KiIiVq5cGeeff36sXr06duzYMejcZ599Nnbu3BlbtmyJa6+9NiIi2traorm5OR5++OHYuHHjKF4GWbdp06ZYsWJF0sugSv7r9/8V3/s/30t6GWURMobn/qVcJYWQzZs3x9ixY+OOO+7oGxs/fnzcfvvt8bd/+7dx4MCBmDVr1innbtmyJWbMmNEXQCIipk2bFsuXL4+nn346vvzyyxg3blyZLwOgMoQOqJ2SQshbb70Vzc3NMWnSpH7jLS0tfT8fLITs2bMnFixYMGC8paUlfv3rX8fevXvjvPPOK2U5AKMicECySgoh3d3d0dTUNGC8qakpisVifPTRR0PO/cEPfnDKuRERH330kRACVJSQAelWUgjp7e2N8ePHDxifMGFC38/LmVssFoedGxHxhz/8oZTlkiGHDx+Orq6upJdBlcwYOyOWTl4av9r9q4r9zrsW3jXsY/xvqjbcv/l18u/dof6OHo2SQsjEiRPj2LFjA8aPHj3a9/Ny5hYKhSHn7t+/PyIibrrpplKWS8ZcdNFFSS+BKqr09V0X6yr6+xgd92++7d+/P1pbWyv+e0sKIU1NTafccunu7o6IiJkzZw459+TjSp175ZVXxsaNG2Pu3LlDhhUAoHJ6e3tj//79ceWVV1bl95cUQubPnx/bt2+PI0eO9DucumvXrigUCjF//vwh557qLby7du2KxsbGaG5uHnTutGnT4sYbbyxlqQBABVSjATmppA8rW7ZsWXz11Vexbt3/1qDHjx+PDRs2xKJFi/reGXPw4MF499134+uvv+4399ChQ7F169a+sZ6enti8eXMsXbrU23MBoM4UisVisZQJ119/fTz//PNx7733xrx582LDhg2xe/fu+P3vf9+Xlm699dbo6OiI/fv3x+zZsyMi4sSJE3HppZfGO++8Ez/96U9j2rRp0d7eHh9++GG8+eabcc4551T+1QEAqVXyF9j95je/iYceeig2btwYn3zySVxwwQWxbdu2fnVNoVCIhob+JUtDQ0O8/PLLcd9998UTTzwRvb290dLSEh0dHQIIANShkpsQAIBKKPkL7AAAKiHREHL8+PG4//77Y9asWdHY2BiLFi2KV199dURzDx8+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", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(9.155692571038987e-5,1.999908443074289,0.0001220777639902998,1.9998779222360095)" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "S12 = (S10a ∩ S10c) ∪ (S10b ∩ S10c)\n", - "@time inner, boundary = pave(S12, X, 0.01);\n", - "draw(inner)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cusp" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "1.7320508075688772" - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "sqrt(3)" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 8.317151 seconds (59.83 M allocations: 1.786 GB, 13.88% gc time)\n" - ] - } - ], - "source": [ - "S13a = @constraint x^2 + y^2 <= 1\n", - "S13b = @constraint (x-2)^2 + y^2 <= 1\n", - "S13c = @constraint (x-1)^2 + (y-1.732050807568877)^2 <= 1\n", - "\n", - "\n", - "S13 = !(S13a ∪ S13b ∪ S13c)\n", - "X = IntervalBox(-0..2, -0..2)\n", - "@time inner, boundary = pave(S13, X, 0.001);" - ] - }, - { - "cell_type": "code", - "execution_count": 32, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "image/png": "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tnd0s3a1THdX50okki7PrampAQAsX768J82lIWbatGnJbgININ6/wxvv3+GtpqYGc+bM6ffH7VEQYrVaLzhs0tjYCADIzc3t8tyO43p67rXXXotXX30VRUVFXQYrRERE1H+CwSBqampw7bXXDsjj9ygIqaiowNatW+H3+zslp+7evRsSiQQVFRVdnrt9+/bztu/evRtarRYlJSUXPTcrKwvLli3rSVOJiIioHwxED0iHHiWmLlq0CIIg4I9//GNiWyQSwfr16zFz5kzk5eUBODMGfPToUcRisU7n2u12bN68ObHN6XRi06ZNWLhwIRQKRV9fCxEREQ0hErGHZQyXLFmCt99+G4888gjGjBmD9evXY9++ffjss88S0dLKlSuxYcMG1NTUoKCgAAAQj8cxd+5cfPPNN3jssceQlZWFdevWoa6uDl9++SXGjh3b/6+OiIiIUlaPhmMA4JVXXsFTTz2FV199FW63G2VlZdiyZUun7hqJRHJedUSpVIoPP/wQP/rRj/D8888jGAxixowZ2LBhAwMQIiKiEajHPSFERERE/YGLORAREVFSJDUIiUQieOKJJ5CXlwetVouZM2fik08+6da5Xq8Xa9euhdlshk6nw/z583Hw4MEBbjH1RG+v78svvwypVHrej0wmg8PhGISWU3e0tbXhpz/9KRYsWIDMzExIpVJs2LCh2+fzHk5tfbm+vIdT2759+/Dggw9i0qRJ0Ol0KCwsxJIlS3D8+PFund+f926Pc0L604oVK7B582Y8+uijiSTX66+/Hlu3bsXs2bMvep4oirj++uvx9ddf4/HHH0dmZibWrVuHefPm4cCBAxg9evQgvgq6mN5eX+BMXtHTTz+NoqKiTtsNBsMAtph6wul04umnn0ZhYWFi+n538R5OfX25vgDv4VT2zDPPYOfOnVi8eDHKysrQ1NSE559/HlOnTsWePXswYcKEi57b7/eumCR79uwRJRKJ+Otf/zqxLRQKiWPGjBHnzJnT5bmvv/66KJFIxM2bNye2NTc3i0ajUVy2bNmAtZm6ry/Xd/369aJUKhX3798/0M2kPohEIqLdbhdFURT37dsnSiQS8eWXX+7WubyHU19fri/v4dS2a9cuMRqNdtp2/PhxUa1Wi3fddVeX5/b3vZu04ZhNmzZBLpdjzZo1iW0qlQqrV6/Grl27UF9ff9Fz33rrLVgsFtx6662JbVlZWbj99tvxzjvvIBqNDmjb6dL6cn3P5vf7EY/HB6qZ1AcKhQJms7lX5/IeTn19ub5n4z2cembOnAm5vPNAyJgxYzBx4sRLrtHW3/du0oKQyspKlJSUdKq8CgAzZsxI7L+YgwcPYurUqedtnzFjBgKBAI4dO9a/jaUe68v1Bc50+c2bNw8ZGRnQarW4+eabUVVVNWDtpcHFe3j44z089NjtdmRlZXV5TH/fu0kLQhobG2G1Ws/bbrVaIYriBdeo6c65ALo8lwZHX66vVqvFqlWrsG7dOrz99tt44okn8Omnn2LOnDnd7kGh1MZ7eHjjPTz0vPrqq6ivr8cdd9zR5XH9fe8mLTE1GAxCpVKdt12tVif29+ZcURQHbMlh6r6+XN/Fixdj8eLFiX8vXLgQ//zP/4zvfOc7+PnPf45169b1f4NpUPEeHt54Dw8tR44cwYMPPog5c+bg7rvv7vLY/r53k9YTotFoEA6Hz9seCoUS+3tzrkQi4Uq7KaAv1/dC5syZg8svv7zbU7gptfEeHnl4D6cmu92OG264AUajEW+++SYkEkmXx/f3vZu0IMRqtaKxsfG87R3bcnNzB+RcGhwDcY1sNhtcLlef20bJx3t4ZOI9nFp8Ph+uu+46+Hw+/O1vf4PFYrnkOf197yYtCKmoqMCxY8fg9/s7bd+9ezckEgkqKiq6PPfAgQPnbd+9eze0Wi1KSkr6vb3UM325vhdTXV2N7Ozs/moiJRHv4ZGJ93DqCIfDuPHGG1FVVYUtW7agtLS0W+f1972btCBk0aJFEAQBf/zjHxPbIpEI1q9fj5kzZyIvLw8A0NTUhKNHjyIWi3U61263Y/PmzYltTqcTmzZtwsKFC6FQKAbvhdAF9eX6Op3O8x7vgw8+wP79+7FgwYKBbzz1K97Dwxvv4aEnHo/j9ttvx549e7Bp06bErMVzDca9m9QF7JYsWYK3334bjzzySKKi5r59+/DZZ58lVuVduXIlNmzYgJqaGhQUFAA48wucO3cuvvnmGzz22GPIysrCunXrUFdXhy+//JKr8qaI3l7fkpISTJkyBdOnT4der8f+/fvx0ksvIS8vD3v37uU3qRTyH//xH/B4PKivr8d//ud/4rvf/S6mTJkCAHj44YeRnp7Oe3gI6+315T2c2h555BE899xzWLhwYacE4g7Lli0DMEh/f3tc3qwfhcNh8fHHHxdzc3NFjUYjXn755eLHH3/c6ZiVK1eKMplMPHXqVKftHo9HXLNmjZidnS3qdDpx/vz54oEDBwaz+XQJvb2+Tz31lDh16lTRaDSKKpVKLCoqEh988EHR4XAM9kugSygqKhKlUukFfzquKe/hoau315f3cGqbN2/eRa+rVCpNHDcY925Se0KIiIho5ErqKrpEREQ0cjEIISIioqRgEEJERERJwSCEiIiIkoJBCBERESUFgxAiIiJKCgYhRERElBQMQoiIiCgpGIQQERFRUjAIISIioqRgEEJERERJwSCEiIiIkuL/A2QaPdQooWRDAAAAAElFTkSuQmCC", - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(0.0,2.0000000000000004,-2.7755575615628914e-17,2.0)" - ] - }, - "execution_count": 32, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "draw(inner, \"red\", 0.2, 1)\n", - "draw(boundary, \"grey\", 0.2, 1)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 0.4.6", - "language": "julia", - "name": "julia-0.4" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "0.4.6" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/examples/coloured_solid_torus.png b/examples/coloured_solid_torus.png deleted file mode 100644 index c835d8ed15519b002e1bd56505560f9ef788b2d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 264667 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

g3t4-`VzF?yF@jB3#uF7WlGKy3y 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
&zhT_H)F@%Yj z0l}Kjz!FNtPp`j8dqN8v=DlF%%2#{LWW)U~|FBPFb>)B-tSj_>if>MWjLF)1@`c{;FkJ!$)oX4G;4zDfrf2Mh@te7T|=peA>bC;}kG|{`Kp&5#ko>4Y? zbWm={X(?Yt_Sid=*z6jT6@M9QPCVFK$TWg+g*4lBQ&k~C%X;m!!Hn16i9FPgfB z?4x=+dg~8UN)}wq9w*OX+UTJ7us=@vGmasnn5;5h_9Ke#v!>XenN!VM^~D(tRKeue z=#fx143z!@7*L zo~7YGJT1asngBiOZ`C7eDQ6*nA6p3aAiEg*eAi^M_O%te1yoyBz{&FxuM*m&Rs=V^ zHU2!`jJIMW8?|MW-Uyzo9?E5l1sA?HNoyuaqgu0p#H~aTx-tyiMhRBzLymC6f&8}mh*^I(=K+n*AV8)IT>n0Twru*gkhVCXT!u_ ze;2G_1Z5{v2(02>?X=d7mltVR9^t^T)J0^wC%(KW{0a1!DX}ZhEFu4wB=EwiX|Q<~ zH62ksf7qU3oeI%Ud;pyn5HC&b<>_zzmqovjziGyo0M-2?E{NIq*x+E|{oXZ_hc-#V zXD(wl^>8Oi6Le`(ac>aK6BA{)CB2#FD5NE<$JrBDz6z+ol*MaiKOHuWsdk^jz=)UD z9F37|0YIp7!IBo`{E&_Y3f*u!d#O^pQcSFz7bR3De>5$pqS0sKT&T=r?4#n5TU#tE z1sYTo$B-x+l^BT@BbfELMfH>w`NHXVp~bd7x-QW}Q50ZKQ%ti^q16|4s;CRxqnR3Y zcOtW*4wDGGPj|!r%5W{1h_=NS_MgTYH(|M{3FzS5mK}WVO%0^fUPp+}zHS26EWUtweNR$Mx&K;O0kT$Q z3+p;OR24II{U7)(nD`MZaTU0QV>KG(O6%kF`OsgKK4220MJg{Jp*C6o0J$timHUCU z2DMMb4iGOD-!dEy8zfJj^L^(d;yErz$l8OuXOZqX=0lP9@`Jr=B(8rg+;iD}^+fFD zsJQHVr`tYMk`-GFRvN^>(=ObDEUaaobH6NCCVa+j*fEzQ<~2-x+#L<<-RTib;F}$; z&|pPjtzE&X6LV$G`R9m~fC3`3va>FQ#2;gso9;BWHC5j0wH@#_bRKqJv)W&PycU4Tn{-~N!mtdq z&(s5-|IM)x!&nCe^@au!qw@U?jQc!in3};Ux0X)pQsZ4TXEtC08HvaZ5`1TtaYv`PvFWEdQnmvLKu7X1{(C;@m&NT6!tl~jb(B^{tc~=<)_PXsCm1yp50&X z?hY%*2I{QJ`prTQDfRBzx&GxV8~9xi-$hzc#qA=IS-bM5=*5MpbsNAzs*UZ7L+rLI zcSG%hgYlPlTdcHzKw}IqAl^oHr>N~I|Gb;S zzvy!67R7-XC-d{-Onsu;@i{rA@=tK4t2w=-e9(_&O#KD4TcyPb}uE(a+|J?ni@oH5rX8pThe#j}=6CpI1K~`Zo+eP_fEB zCXkZQ0g-S|IHvp$3MVH&ra=B992WyIZVE2~gY615)43PVZ|jARB+n+LuDut#(#*_U z&ExS^;rX3Y_Ph)&NS&G$T+|q7-DnsEi3Q4+; z!`gW5h!I2^F)pr^ErPcs{T>e@_RX{Tq`6XUp?Qysw+FfTh)%wb1*g{Mk(T&5b1Nr- zpAMaVn%k}-Ej)M@b?~ZgE~l-}TM2tC67PIHSBvfr*!NS(_xzW+nmX+06|)O>DbWG2 z4JoPzg>8K8ozhr`)p1z`ai!NSp3DKL8X7vC$VIcXq7Jni-;BSj^h8@`w7-SKTxY*7 zoZIZ3{MqX4aMoYt=X|tDq@G=F(};`j)H`?BEZuY=H&ntYF{F@JYjsg7THbjZqN(zrzsk7bN&V7=Pj1S33775FE~mwpwz=s6vpX~ec!lECc5oIc+L1%8W>$@%OZ`OQbWP(Ry7)yzpco9a! z$M61+cUx#y;iCD13GZ#bhn#O+mzSSc#dC{TK!}H~w*WtU6?%bP)a>5yR&x$vd9la3 zTXsw2O?Pt`u*#OmGx_3#?_)yoVOt`DEL^_I3J{tE|Iwlz-zQgVAD&9Q?Y>VP6U-8ba*flp zNOt<)kn>H&xDWl`lqDB-A{U6LI<#S|91k+>$gY1HHML!Ihvw(%_j0s=84tKDi>%<2RpC1|sxa*kl2a95G=U4Q5vGA__O0wlJfAz(>xQfhE zwvatCcqsG_EPG11NwPEB3xlNWC(6~@e!b?DwglFP)QUD!9VjYm3Os-vyC}jl;ORg;j_F8l(~4JUI4DwczjYw_ zZ==;2PjzdjR(pOcl{zjeZH-J6n8hEj_0hRx6lA~M6$V{E?B(0M+Dm+A_XM^bz3H%& z?OlE=-)F<7O<7t+1JC`LP{^_Z^gXp1d(J$3EajMEOm*mcR%|;zpfxj!LXvcSvb~6> z=j$-14o}X#Z-;TRM>yU*+^<6NY$PPPQRtm=<-KzeE4p5=6On<F|s(Uuc~ z9weID&b>3V$W}&2F9bw)ee&Vc?Jo^&Qd8-+78cf(iDDWk3X7y&Rw9doRQKXoB`W1t zxcLL3;y0Lu)15{ghyrE3Jo+$39PZsof=rHO7U-r-<@sQqEb1>-mG)Ip0zJCM8ZSKD zbUF@mlZ&s5zgB))gq&N`mkyDy-o3v`$aor<30ZG{hAqumj_hztuaAjLw?btgLkZo+ z&zs4biw#;Oep1c5-M^Wiqm4M-UyE&cJ(=ct9d`%3jJUeMdjvcKc>k?pM7MmX!~J*# z#pG7MHU#GGAO_In!J-16+J3)lBLUm&Nq?CAlFr%~Va`B%eDOY?rmo%m4R#Rc3fZ}8 zsS0KXqioXuY3B6sKf@8_OlW2=tyL$o@0zS=CZ!?)b>4=DoC2!_+=P*}BMI+jvV4Gd zeEP&Uc2bC<;1q%?a-M;UHo`xPPBiBVCE^LO16vP+JN9?DQYYtap3^e0R!9 zE30R)_b^j@E8u^ocR{`6DPe$7I~6(T!if2`6TS_h3V?B1!HV`#2u`+TErwT=FxjSv zhsoI=C_o_h43Bq-lu)&*s)g14ejkVe75F(zHQY*Sha_0%wa5JfaMyk7-Qe{&12eIT`5cGbwE0X>boFI@ za7xHgJ-w?{)+rr3osng88mx-^j@Ch$!W5tR%2l;`CuFNYmiyYCc|An@v`ClB@kxTP zy6AL|=#Z~esyQSKStRvNasXiYfoLNn_|H(3#FdRv6eg-3jZ;vBcC>NI>wZcBO>8el zodFYucJo9a-2*+QmKz2H0#0`0gsBKd9eP8XZvo>wO!d>CKw#y$IxN=(mh-UT*R~Y{ zKxP)y=rE0Uuw(djHk2EijCoP?64Qrv@uc) zY}<^lg446eHY(V1=6a|hh-*K8^Sa~7V~M$as#*vx37&yfMf#nYSsG=4EwToiqP6PF zv#SxEHW!Bkr#3e5e(2j?3-KnYkdi#j&Tx<-6jsJenLoCWDO0}fx#Ob+6k#r2jK2ol zw9|GCrpyR;-bA>(#$ZGW6Jr$}jBWnxfPnz1C`%Z=42~_n2#Nz)YU0(Hwc)kz>A{rx z%Jt$Pk!^SS-+b%`4VQn^==F5A4jc1>kpgZWYiT=B_ydEH960fN7nyPxKLCXxW4zC@ zSK3wo9bZ{KOAw`RH()rJc}9i4*2w~O5iUI9o`!d*MI-C2gRm) zkwSswDSK)oEF$k~@)iw(tw?0x<6|wTD%h$P#9AL8J1iwi7(k4mWks7Ws23yY|GH|J@&xQ2c@jUtoLx9|r!aor z@}<~plC!(nyh05<&IWwIeF-`EmoFVjKscxN;ImH+O9M$9|=joHN|$vr** zZ=Fapo**+$Amhf4oOlCcmq9@Pg9#Iy=zhOhEtvs5*Bbko-U(o5_&PEDLzaRm6ph$1 z=iwXaDi9%1Tg^+r2Er}x)ts~Nx;s7_i~6xN20<5^+p4gC&rETyZ)#f21bcy+hI+GA zo^+>ptzZYreOC_-Y6qj0eTuM3%KKs5yf@0zet*+B?sGu2;^pX+8{7ZE%iu9NoP8Jd zO=vNpblGcx)f@R+q`Gf9(_rwZXg=YuZq73mDNbUKi#w6el2utamekYu3eRgsRnoL! z2-naOh@k6jHi59u@HSM^l%1#fB+Y6fw3wk3&FW&ey`nooFI(&U72r#wkdr#K4wz2d zp8YM)Lq-f2#-4v3O^mKllt_Ct&Nb}^`{?jn2VEtgZEpMxMkHU7#O<2E1G=#ndHKfK z7{#t02Ste;a+E(WY6Bym9<7GOeM==Z#>JGj&28U;L5~@BHN%^l>?{gclIM1$ii|cV z;|&YEgA;Lj<4;wKT9XR*qC-xrYdlzNan*S`B)0_#1IkXF5X;nA!{F@!F2bTm^F{Rwm&l8A~ud zwKtE18%YGDAe+La7BVDby=wuzp5>)lbI{Um$0@L3cd-Y#y**=NKxa2maZrvTVX5pa zpl9=Mh%Hzi-=NO8@4+oUS`v!!h9gql%JBM{T&3@regnRG>) zcWxif3T@d&SU5twnXp^`ndlp3_8nLDM4FgD-bBken8XmqQkLxJ#{Si0lo#;0sCxE% zJ>e#Qc~?1rEbpqPliHZ1#?S;yC!y9(Zfm)O!KwtEs>1aKF~6MdhYYu)Am=PhU|YkX zHaOhGX68~II^W(!LeQB0=RGw_<%~@Mz*gT3mFf)4KkWXu1?=RTt(3mZ|OvdeDr#e=_4}9JYyM z*lC)_C5{(8qTP#Vgha*JS3~DFmCQse2s3tpY|ijFNnNWh?c@#}yBls$+CwWB^F;Jx z^a!sjvVK5T=|ZJ{Er4TgEpLYdM^zJK7h4aREzF{TbxC247*of%)o|&P$k5uve{GyF zLOJQ8wVVj(({qX^Aow25hLv>w+~coBw(G$rlkIk{Uim0sN$~3+Z+!?jIrm>(CSUg{ zBJpoqx4e{dd~9MtsNfXe6VznSFceq&Dd`=A3DpTxL11#uTaTseB*VHQ{wre0qMO6} z2Yv4SbEYjaCEXxMt6-NNRlM;#RkM3J?YWm`ffv*0lhJ2~**OHbv#Y%8@M+8bEVad-QXnm&m}9$Tsf7oS_hzPVixHZpgjVQ zIPEl5n@U+2{(jIOw8-HdV@S;khh+~fgub6oY|?loyJ2oe^G6lBQ2aTpLklZ2E&_1A z20#UV^?0$9j`T=WwhDJd&Zf4E#uAlG(wEU!JhIMxn^5=v8&JlWG-VsE?=eFI*>n6I zH{1AXmho&2aFl@r{4{MqUZLthS&1UmaATnZxDKyze*tw-xJxF-?$NAlDCL%67JWa+7+nbw@QQ2~HdrfGgoQJP%;0+T{2Z^ou|`a& zxYip}Tjo#nKPU%x5t(!w>v2&*dM2HQY-O1|ob$1>2~)&ga7e+uvhMJ;`K1dl?r zNjeFJD%KbMeqEX4WEVo*XR%7m9JuD@3C-zdSE$75dP``{)UXrZkKpr>dD@-Q#WRSg z=U5lZ>D-(8(ww){gMCMNC4(}PU12`kxZE-M9%!ZIufK@CN@s&9Ceyf?9A|Moj@p)> z3q1p_WbZ=%HEf+qj?p-G^AkzIXXIXa@o@)io_8fLju|-)Bg?^=eda*JI;J#&%{cIA z!YoG3&sQ;~oHfEdPX&tAZcLJs?A*hE$#yaZ%}Es{Std?_D@!Pfef+N1|6HxV9k{E6 zHk+P5tyN#u@k4XjGQoJ;t2J=41HicU(8TZZO8%UmC;eoDRUV(HDz(ukC!!~ zyt7tk;w5gSzniYY8~WL*8RmMa=khX;dS{!eTfsIL_5aFv3K;vsA1fs6aKyVB)PfiY z4BY_Gq3c8*pM4t|Uqw`9tzFL-BvM58L5$FQy;3XULA3NSLX4R5{~m5}7zIKTjIh=x z4ZJxMc{N*A+Y=^;!s>FC8gFHcM$XsO_?*@T^iI(eu~=Lv3Mp$@LM#sH_k)A<9KS*qob}E}8|GRAxzub&?4;m##RNu_ zJT_eXoWvY2mvlfI4Z#i7Ghf_ZoX(Hi9JM=Ic45q}^2pwPqialHN)&Q%5el9<*AU0_ z-b)G_Z=M=_zBjE5c%Rmq7k?8+MZg0m%8l;}yz6he0$Gk?GXT&aZvRszq`&y7D%8@W z0`}jbl%u1@3G9rjzOIcz3)LlY)P1JZ!^@ZwqtefP#eDA)o@aUQ2)EY>oO&z2l`FlM zegAt9A-dg1ev=^HXid+W;Mvajg&L87y zwF0OdNKT_lmo8W{{ro!VxRgK2)xFLW@f#C2om0`9k z!LXE6s)6=4uSxDib@rHpPhtZqhq+RX_f)nw2Ba)rAh~OLokX2=!nHIc;1{NhPEl$J z3M5r}-7gNc1u%7;a!+|oYw6dU(p3SqEDC8*dW4IW0Rp=A=T_p1ad&)!4fe9rt#;^o zF`Ep3-5D33>`WV@`O@O_INa7rT$A(sRjFEdYTM4~q!9z(=W0_WtyB$F_vHY`Y`NG( zH9F+VK4Ax2RK!p`Gb5MBUwZSlSiUyyN_b0B2`T83o`BF!=OVGl@5B6oUv4%ELTrU= z1kmN-Kx-<=6H;x3aLg zb@lh%tXP2A!9+XZyPC5_yD(jfO1n!wv_;4_01g;|<(UAf;8E$_ZIlr@$&%4QHQvPW z9{sg1UC^;<59Y42o-9hZfoP)zCTBkCm-~MPQUY>kcp~Ag=8J8Fw7x^J7OycdHBgFt zhsa)bg{sgiVsSWhgVKi4{;)Hse!>X<1Y43lRL(f^Fn%Y)K+1cJBBEM>{#|3lMR zhDF(ZU3_S1lnx0cC59Nf8zmK_JBJv$K|qjh>7hZoq`O0EhM~Je8l*w`o#%gD@5lT5 zxzE{qt>4;P#&|LHqd^_cwH`f{AHSfq+ouc?l7fJR~+{m<3%FXz=|L7$4PDCy>jN4~+W9nWxRKqj^-6uV?-J z&v^d)^nBC^yhH^_K2MB9q$DPS!wmI}-qXAF#J|cFe*U7=f+z^X^z2%ss_f|fmJ(jf5W?`8_;7*WjhshbPGnw;3w&CUK zY<^(*_f--12|2*-*}gJ2H}akrG<4$ob~?Zfp}~ef-ojdVcLlF{Zy&n6;%Cm+Nu6nl zofY1Qp+Wg?GcTS*UAXEshshNepre$V4A#5!*Ibf59~~L%xYG%xn{fcyV@O3u&A1@; zlAi9F`(LwFF-A`7x}&3Fgu;pWrQp)i zArV21N)!h1m=&5Fao((e zhmx{w1W6uNVO=j9d5tSY^NA|_ipLZxiYsNWLg#IDTdLn7!qJPv-xvW6;&1t;;=uA% z{WHdwwXlN7Z~f$7l!jO(W~j}$L6qfa(iE@j8xmc4swb!Ac?lR2b_XRc6|pRmP`W zV2fWEeBW1Ze{pb=jR8z{8Ik{qaNw0&IW#pqRRD)sJSMZtfXFc4f+VB)jsAQA z8{pw>p3mUtnMn%lNTuKNqh)b|c6kWJf4#md()zQD% zhL>gQ%atd6tpWe(Ndfm={#z(;h7mf?AnO;8tK-3L=sO$Rc!NzzU+WtYvyBWy?W+ba ze-cygf1P``Egvtv|3MXiZ%QzN<=ostk537>yxj0=Fofd1#)F`#(2B!Vy2|Zv#1Rt5 zPn)6v?B(aeh&YyEPu{sEldqx+3>F89A5lb-m^QNZH~O`x;i{qjt>f@6{ll{SrPoZ{ z)JLS$27k$Q4444=V`ohGnyh+3b7m_$`}0F;hOy>fRJ*vpOyw^qC<@1E`|tjJe|5kf z^3KReJWQWfA?$MD&b;Pp195-tvTt6aT1U?W$kYQP;BT+|A)m+`;pEv!zQY;McN1TH zGDDfLoc&1w;n|tjRX=uYQX~@mo>*D)CI(njrD`m9EqMi-=U$l9M%K9Cdg@)_?UPH7 zH8NL6R!zwqjW1=V5ssJ*-TExzenJPI1VZusERDQPRrRw;RvKgTxQq)X!tMCT;>8;M zg*<&%>!bD@=taadKFzy!bafdSb&9;^pjed{z$}6x5TofOaV&B^V~Mc&!O;OO@m(^- zQU`Hw-RA8Adpn|o1JBJ*&A$9k9kU$ujWF;h6lhHsm-viCucMo$ZxwNb<9T(t)wpc{ z=kXWo%Bh!tSWCYG6qwRN4W%Fd+g6_m*j0I=kKRi#CJ9$ZVsJfABBYu_?$-ifclXan zu({m|wA~+6aVS@Je(%UCNKV|3Wp-m~0y#D}W!jx>zP5@x*L}ZjRedgwVzzp+7-+hS zQvps3F^#y&FPHe2u|mLTNC2CQ2jDNBa(87;C7qB$jmG!2&0Re$#nD>kc_kEPMyAn-!)vTSy$OAU^h?o+UNYNG@!wjx?#9EAk;B}1>ECot z{CPGub$E1QiN4DVDh%+N54mj$x49Hbd!;?^h-#Dld~|q;MfWDv)jQ0(900ErUAxR0 zIHgc6r^ze%wfbRcxsLO*QWrMAbC|S)vBzdEKJ7WX4f?@=lFGSR7**du8A`+CAQgIn z&8oBG?z*YvYsPr{pIttJDN~=jD0g=LD42ZsHwEXSUwwgy%w%2FaMWj7`jJO=Uf1Tz zKDs@I+5eNevs0$~IXDrIO+CzK>tNuKn+u!5>Zs5TfsYhO<~uR*nC`l^5BAtTimlx5hi+nMWpPksEVh@q+C0S^912acrVxZS4DW!EmKp zkN8PhwVGVQ!V9~r6TVWTAuTj%g2|TkT=QYpzmM?3fBN0m=Ogv%iN8|_uedPJ`@)~3 zd7En?O7!|9>ch`JY?ed}6xmNUMVQt5hnfT63L_4l_^h5MCT`o(NsXezvh*V)p>RNd z-7YsrrZs01yuWkGK|arCM9M8R$cDDP@EQO7Ejtc+E4zV6!_Fm0rcNV*Ym%Xl1-Jpgi7(r z2!^=npB*%Y5Zwu9%&$n4WE68@8rNQF1z8`>XN8r>3KbI_@A8k)F@;BVZ+NLvzT=>o zBcZwJYqbBBPtYLUtH-!6zMetStEbgba=4sg3FU+=)Z$>unohZAPjmX;bGS+X#TJURqY{k7;bkO?Q z?ZHy{OQy@!9=$CxU(LP(v#wWj+elsV;TG^W5#rra7P5v! z9o6Ijk%|IZqE}8N^i=&Vt2fqmC&#EAzEv1|2F-Eh>}lbJCRHe9rXJfGzMb3oLnT^= z-^0r-wQCw7WsG>Fpt=Nn zO3e_bnDP(4wkeP84#CWaR7)JQU_w4%TiKlTra?UWCsqg3!*Bl0Eg0(>>eA$WY3@b` z!9ep}1daJjjb+xGpgo9vN6b#?j`*~uu1NbYR23Bdh%%Rd)(LdM z^cHXP(fYEXxco9}mppuSd+!fxi$Vk!mPvO2O}LLAaWG%7Wjr})ukfY7J=FQc3P1CZ z#Y|UVm#-gBwvpN|a}x$I&%6QkOCsC;iUo-lBYb}j52g5vAA0XI8Bk`2O-LTu(@d&7 zw<&SAdFt^=M;}9b|GdfCnnC*C4?E&^)7TSjN(+Qj@_j_2ST=KMfQFT`OJOPFrkhob zqfa##16GnJdPiP=AC+W#k?T0-=!W9 zDV}5DTN^hK8WOs{%%S$rNdU4H+a9fQV7p~zl&G!R^Nb7oy(Wmg7ovV{2^O%AQ1pB4 zlU-_*HpuP(P1;<}be*2RMQDIu*A}GL8-GtT`SSeO?a}V*!JQ(A;!ZXv+PYVf-u#Ub z5Q`o`a8gEWRkA4=ZJdVYZjpJ5GJ@B~?FeX49pb9up+YGjKbA2cV$q)sWk*Hqg;v`a z=nR)7){oaH1D_^;8Q7@l)dn0FF|?|3ovoCsRxi(?ZSgwsCh$ zq(B+_G@~TkQjBBrM>$Y33xgFqk`wRUzo@O>WTJ^w@o!(w&pdu2BrPP76^a%WbU zeX*cJ!V-O(4tP##CzR;5Z-q&;_|$Shs6+ZZ1GK8YNe>nF$syQUTQOezS`Jr^7@C_h z`(sPStl@{vqZ01XW=sc$jlH;l1XUChnBYThnJmcO6%$}{EdYFgD><*POI9klD|r&# zs$43#anC+KSDf-k|Jvt5qN02aDa~Zxd^@y2FT>P=jqN^@?W zwSJGrb69LSf=s%b^?>WGf&W#efwk%R!)0VRae>5Y>z)4yMdn@XtZY z5(?i~#?nt)NYtacTch%&9pEUXV&tW%5Q3_b3fo3;yBDV&%=I~XO#HLkG1;>WCa1Oa zxKC?iFzI!Y=Fo?}?xKJEiA!m*SBFCZJDADwY$9mPd&9rmua5|eX&xJU)0CH9O5FpS zP1G%pl^VHc){gx~vwF3Z>FY)jovNo+O}Oi@ds97LX9)7pNArSwum5S6M!wEP7KuVT z%JYMoO)Rh7-2a%0sJM|(z9R7WytyT?%zn@Qm){&FtTvHLCm8$>4GKY(db=$?Iybaa zJMW4OHPaNidL>ubOw|-!_sWaqXqEaAk-$gqx&pk58$6jqbPN!IEJhv8$5hob zD_=kb)f(K?+$a4!H*mAlDI}J;F@6iHuL~A{=Usc1xjeMq zqWNYf`hSck%L01G9$-M5t?t>b1^VN~;g^bx95`X!v#*4Xz|Trd9g2w%~xwia=MHJO`rXumsw^jtDSA9Hp(Bj({3r}-)0N+VyO@|0)qC+ z_R}ij@D90{0GGu_7cmx{k+5DAgomGwtSkT|Q^WC+ao*MtTE4hl&X>s;;_n|&{x?v!z5wSpJo)_Spj{;1lg4N z40zjLQVA15s~%ex18`FJAjPzWz-G&LRJ|Dp74bMxUC=mgF%lTL&Y>&jj1Jy(BD5_* zmXbyhZcj_dNBap=;==`}kUb4y5;5=>Mju6>$wmfSsI}6z+R0Pddjj}nW-_FF1ue!8 zXEOmp*P9XfuBToptH{rahBmV&;|_or>U28~v9o(~t%UXYDS4Rw>7V-3>FPn?Jsn>@ z&@P6k)WM=i6#!!<`f)7J89EOvlw&aP_NW`|)~#*MBo0zbV*O6>QMvXwltBL@9A<>m zY5J~2mfMw*C2o|aV3(ZBhL%Gi*RU?wY(-;?oO$Y@;C@OjXV3qJOJ^bsq$(ejD!2hZ z-a437mhEj>L-ldK5Jzz9UjniIB_ z*4|!!niri7yjxeG=eo7G=(E9pYYt@)F&Va3b(p|GM7+#j)LL==eEtZR%M(b)gy86G;a`T19Be|H z{ntM#DfFYD?cX6UIh9*xeexWoGS)qBjb0eVG6>iS!}_Ht4a(xc+wr&fW~z;ng(X2+ z`o*mjX_X4^+r|a1GsW-OyLJ3B_r8v%&B{$PTcjIKaFom7V+W@dim?55SPWGv!ix>H zW*gnep};_N?9V%)2*m?O-QwT>oJnaYYNk9Z30wK;0QF}UqzmHn%`{s!p@`Ahd7!=D z@DEsTS9J8j&T8!$`$syzJpN(HFB{|Yc+x-|-YkLqz6)2;$V)*`<|)mQ*%2;ak2PL+ z=nxa$P@jiKxj|{W1Zb!zHO4vuz`Ad#UCw?sN($X4Kn6xM1%nhaTf*Je>P~STt50<* zF%cO?=-`i*B29b|vI?}Pf5sRXN4HBW!1XkEhC`8uqiX=)ytY6jU-dn=Iaw|-7!`C# ztP7Cp4?9))e7uKNWhQBpYe?9@+CgBRRHWz1CGHf6e z{unmf5`wTfqBE;bIxoMJ0jB!q+mjaS03~Edf@QQW$n~7hN598nlaI%8SZ4ZDM>2Z1 z#r%7VPS?c?X{De_URxd=QbXDm!yAid^7B4!eu7Tid9orhWDV zwCAFshffo`AnC;?-K4dhaHP^Wg?eM3T7{pXfL?HMu|rvDB3ho4_PJhpLnZJZEi;k$ zk8-i%Q0u$j|3W(gxwdJOZ4_IZvuH+69Vic~Xg?{S3LP4P(O?P46SogrZZ5w;Z^{7M z_b#sXWnm&ZI=RG0y5O&b-jb1F$o3IN?Ln-U5*sZPSc;C=myBCAS4E$K4xY}kjK3mz zj%mTa6?OtU!r_1Xvalz-0n^8219|B1OIgCpARq7vM%KQ;h~eAf(+(nDHNK+$X1@GV zUksa}U$=SW&<&MV)P^wi!xud&{aQwPL1A{AUR^p>kAx?Pwp|P4FT9(vtO`DR54seo{qAqA3A#VEep#Os7NRW{x-}3W#h0cS1_uQDdGiLSuLiH$9xLh?#t71B?#MxO32QmeNbOgrQ+6 zDw-a@M`X6H3VJEy^o>wb?QhD8)5ROosvAA2O_GXy4iisa#@OWw`Zl3MzC?FCztiqc z6&|dZl8w=#PF-b+fWH^0u(|&k8~#epUj1U0B$dbVjswui;m3)zZPwCXA-fH;XtOmX zNPlg%{3Gdx3K-tFOk2Q0ns-Rvgb90>L+R@l`;&5wV#2tH!q=j=d#lZsK37JNK9CG4pt?8#sJ=r!u6`E$(>*&WekOK9cqpHWT8!CaQ3 zIft2l#|G^S#_V-C2bjDlOyJ{;J5G&%nlzPkAwL_aj1&q;eC2x3nk=KZ& zPwkK_ky+q2Gf%5R^{|g}WjmcI|5n(Jf*AK|PqrkH(hVl^8MGm5SJnpJE{w=~p_*Z) zpZw_J|wxze>f^NlqR;!u8c+DdT6bAHq_-YaX#vXEF#)1j<5U2-U-lW+P43m zbZn${gpKDNiFY+8%QBfrV7#vExgHo-D!eaI6?t1S2O+6=svXR(4%b3W@v|R2P3sk{ zy_L)gx_I{rcQQNtKx;%L&U0UA`x24}ewe9WSYruwqAp=mk9aclm7J_D5;U(l4O=gv z?CO+qrv{Z=jY+_ktHZrrm+(iBcCfhHq@J3Ou;jCvet^8w1=_>eC^m;#dZT*#y^GMb zcYmL0&<+aa+9}aGMkC#8b*tK1w6LVlX^OHr86C|T=a+jDN{TnDUOo5E;o$7jmswSk z40mW8zB}ROy3X)?$}S22?;$i%{Ye(EfCx{eKBD7Kr~*zaLW!H#Axs|0BW@`eHU!gQ zC_O#`hsg8UM99R*f+Dngv&q9(Lz(*5bLVJr8Bf?Z%gs5A#3C zFYeK7$yXTus7#kN@o4Z5%yKFiW?ahkFUQ(JIdnI4)z8uX-51ZFghb*!7s=r^YaQ-g zZUTnO(tJy=L-X@|1qr5|_r284Y&vZE&c)AZ zDBynrS2Auu`Gq`TzPflf@zyYjeLB0(xs9u+?!}+n0PYFlD#n^x^v&7;us<T~;msn%!2Gm3HC-sNwa`G448{P$6O-vsJGqXK}a0_7d|%Q;mZe>VtGO(xup> zsO7oiG7Kw-j&HDwX7ekjL`10Q$k=vyE@gIm!KQKWfzIjvj3Ju(9{QtS zK0#o5hp;aTKWFBXV`Q<1V~TK@g3%G9q#9K5#W}2(ty8gzS`aPYmTm-U#(oDMZ z9~#RUFI=J9?n1M}KRr*24NGVYt`B0_0lhU-W|^_>_3_>L5P+Rk)pfoN;zDOeIa%6E2s4Y|D<8AK6M&-ju_`C2i!{us&Rom97)Ewvoy-B5bm^it{^ zJ(M7y@aLP;M0gMq3svZ&^Ff7^{NC$bj7m_1QVnH+y-TnKk;bEo-@7A7I7s;WwGfv2 z$j_Tay`lO2sf6Q=y`v+(KXcNuK=+-(9NIh^clp0yA~*9Ck{=v`n(Pf8vKG@i7znbg zm$|B=D0lB2T55t|LID| zT0uK)ZJL`>FSim7rPR^;gm7cS;&`n`U=2?y(l;6V8cc+3Wt0HoK4Q?_ z)|!~ku{j#?J=)Zwpspk9U+A27ndHy7yi^s~#0yj@>WnMSopymrS`M%Gzvp1Y{5bLv zaq7rHV$IG?oZbmyng?Wt!6|EKRfSmV#Z6g7*_|@=Rk(oI9hcskSxW|>edI@BtB9sC zWfbjNipd^LUB80Pl7%ih{iGL7meH)00kP=+0l96|Qa7lu#)U2x=>Hm#i|&KUWB;8! z6H(&NoJdf7aGnOF=$B?60>0GR`jsO9ZaU+T3XD1aG2jKi{G_<-YEXtH7lD+YW8vT)wPfg@IQHhr7DYqsC69uc+w{2 z#?)D+It<;#IW6FQOsc6cjxf7n#Z%F=k6K?~!qd6H}d6*imLn|CY6#Qx9E{b_`|O)5?Db z?!NhSQVp;XV>18GkcR=F>a1Wn%%V6I+UL3UzPSWCBMfgC;!zdF%*tmFdpjZDrz=VQ zy`OJKSTxfV`)0uz2yd|a>9IkErs>yZ8OB#nfgJ3f!owm$HlCJo;T$F4OyH%%BOm|g zKr%Vkb0Wckup!h&U?i-Kp0Ls73|PZP85L!I)5%L;p}1C?FB714<4ho*oB~lTRimKcReh>(fbE#NYDjs>r!Iu5Ad_P<2@Yc*xfH zwT>v7M?X85fA!44K;5IhEjEo+PEd+38`?*DNLF&Bo^3W|p^2Dzmwa>u3?K-$^26-x zK8n)Uh1&6Bf`En|0@O6$R}Vhwa5YQ0IpRm;m?-HqFoW8UbN=Ks?)XM21C0D7JDj)g z)Lud_1d@i?WrD25ZgIEljvf{k3U@v3Q4t3B@l0VqNCgN z#Lq1P)cCehvX~yGx~Zgn0w=zBA-H7R9Tc&%NTHh~Fp4)Jd-?PxX+AIr0#7!GkKvz> zq+gJx8sVAAtZh=x2x5YQ2{2-%FLte zY6*M^{rLB&#fG&b&;k{nbr@r|jI?2#L*ao)Me#O}knR@GuEPFpLC@yQ3*Y=Pb&ht_ z36-DeGqg5J2iK5|aSF|V6iD0dhC|^}E8Na0nfXvQdf-L#wYVI0M$^*Gw`CvrI~z2; zQfWTYPpV{mElVu25H-66cI3*vl(ha<`o5_3cHvkuyQ)_~j@-dQw~m)AwQSw#WJy9` zpnJh3cu50GMHx`l-%?*y`ggtibLZvi*fpoJ-8)o}Z@$5SXE_)U6vuSC?c>7D#zOjO z>$T&$NOiz(fxWg z;i&A)iTwD3Tm>K-qwyG;<9?B4Ti5vP$j`TJSt%)wBQ}+ev%-17C;;aWB;)>Wyf+wl z%ygyuh;>6eG1!gN4b|Yp0Hb)a)mo{ABg3vhw}-X&{`Epc%Qy1%Bzu1eSNq;|f;7I`zcssZ<~(umRbt07B)pRa9%2bMva$ zwIH+1OP{Qc%4T)UkreS{QfN_{x5r>FyCE6=i{{YbeBtIsqFDK;h3Ty2&^p6!_?JXL zHH<_U09tb=46_Hg3p)|4dU~$byz$LM`cD>V=ik7hC6t~b9r|(VxKi}6>kig*dphH^ zFHRRz_B$t|f`QXFjBh<(7IbD`>naCG_lUkXHo3!nBNzB4I?-idYPw5@m}hB+Z&`$- zO&nw(e7;H#MZ`!tuht8rzre5Yye0@Hp_FMr<|a9X3S+cT!NG1Xk=JX5!uu)P#%`b= z|NZ8MTG+{knRWkJFAKvVU!!TSRJg4&G7n6QY};ZidwtA2HLUJ`vG@+)HuwJKh72!k ziHQbc45m{-QO{DP+`J#oJz2593M7eJ_X+!#di(j;vJJD_xFu{~`E;ffRIUXsw2S)d zwr_7SZjU;{<>wj2j|itd$$#_s9EV(3oGVC-+B)aBy?TpgbMOM8x}hTKf5uYbkh!@; zrV-L<$=rRC8J4yAa@SVMpn&y{u4TVTGJac_aVoW7__5KAheOq2mZjy-= z?)gTRm1&!PIxY-Sx+EJpM}Y(!zz42DJ31zmc${@^c?=vVmpw^5I1UbF=m^9*38Kr@ zhqbXOu0Z+&KtJG2@+Fv73+(Az1w$shP!Wo}AU|*LKqHLGHXWLW)S^TfGd%?8P$oO! z_p&5&{<2LCZFat9zikr8s?`kijZ=-mxcyyv?NjU^9${K@KNlge1NE@3r%3zkjMlXj zS5B=sgUawXjbVy@UvYPAT9R*tE`)VMG1!GtM`H>rdpH;jA`9U$V&jWL)IRn-T%&y1 z25GwXs2$!vk4ZftLNfI!4C)b%(Tn&{hzh_Rr$zhlVo@GN>g~&dXSm6+*7Hc9ChEcT zf-;9}-SU)P-r`U#Ko#6|r(YS(ZqZ+YH+l9a0qyj6x)fhlA>{`sVDe!>wUA|LnFyMD zZt&T)i|?v8;cMO79&%frL&(}+Az^n_qSyYgFF4mebpZU=z6EF?<;81(=EixMOGV!A z*qzBr7fvx`D^t-eodM~W0^O`VqmVK~l4oekU>{CX?s*wHZ02l_UgSdbr-9fIY z=fr1D1f8T!Mu9)j5JS%-)Koffi1jR0$S@B>>W!m+Z5I*3mxsl z*rSD8B{^UmZ|IMewg>9Lv=L!vG6LV)X-)ImyiTmIc)K*1;7j^T_mw;kG`oBG)p3MqxjM!NqHSAmJ!Vl(rV~hTDx~nQydUN2|}gAJ%OJ zR8a0zPAhAzCiyR!y?lBsnev6dw=x8fo5-n0A9oUvZEHvA`{iR4V8bF_cj{{TBCFF= zfH=Llf)!Y;vyab|sF3!ERJ7`T0MlhWLi$#?x---&mqH*bPf!k2?Sh~c9s-DAEhj|! zVt`Y~lP8bHTdQ~HUcKzB#x3@`4#R65%9Wx%Wov>j0W`=Ymbl*iq7$j+n{oA;0Y!P$tkyIn+%_2ng3 zvNl3Zl|PEqh0a=vw<$-akK2hE@5VFGZ!UVt8*hX9X{Rtw7#ET7vLM6>cmtY_fy2AP zo)+Sh{r+OKHivSS$1qT9h(s-p8eo-w1S?eU=o5caB9yEsf86TVP+*pFM@AZPWE)zA z%z%g^RKGxB=S-$yQfT5!A8crT-G#8`o&PZPn z2hz*m2;6!ViGczBq@8`c|WbcGNNNy%U!d6Yu2Wb&Ywf|RLnWl z@$c_SEIUMpw*kl2Rp?si{#0$#gu0jV?t92hX2!p!6${OfhCg`CY7Y-KC-dG3)P+|p zQinu~a+>i8VvKCu%SvTPno9I0#MyI)sceBTn&4BC?TcAlsR(NGke9>-9;APZ zq@7;ko5#V+Mh-?@GzO|F2P!5fGjg+NK1<$fj`+2s7d&Qa;Cx-P=0G26Ah~ug{`RZw zCV$-isrBC*e|5mIEY0vi&B^_($0|Ui>@$vF^;m!LoXsXB#630g3(4X8y^z=)@G-6t z0lJ#^>~Fz;Ib~dQGk5eybH!qp6KYL!t^O8@y(M#a10WPgyHiAbuo{dFXJHHP{V9G1 z_?O{1J+*l0-`f|bvyV=L{cz&HOj1aKwglOMLk0<*!5>*G`9L!0{ex7gzn<)jwc+@;5je4oNZ%x1w~fDPJ~5=U+fE zaB90jQ}W$Gl;h!wVV|`FBd= z?3P^zX0Wb>CR9!GeRwPNL*1{*j%*bY|A%N$g0>`n`Mu5a@mobsVbJLx9cyrqO!=JO z3A?7ncHXgC>n$*Csm5^b>fDkvEzQe?KawINlK-JXP~r_Sn-%n*bpj`t!b0qz!Vhbl zjP2~F4w}<*TD=PX#Li)T{d{!*Ffr{LRTIoC8*T?t^ymw=kci&x1wJ7^I;qb}uHhcC zEy{@@DSeTt8x_T{YlN<|b#m*}8VqLkgQ~=Ev1^Q|vG7_dS`Pqj%qt=Be<-$t0;tSB z5LLPO|Gd9((gAk5>)8(|W9Kmtb|Ri|*9FRFxKKeJE(9Q^2)pku`Pw^t3owI5F)+Y( zGRMq8mYq~4qxOq5NHO~fHPP1=8zBY~q5+MKDRKdMNb~rcDtbCa8VM$cXeSg}e(U@W zlYd>1%@9Os>+Y=;KM#{Jtq`GE9{Fr*GVmH9#*5P#9Xd}+85OG)47MpcSi%i+E|J)A zQ?$p<6NeH1{Yu$6p`?7CutJvk_cdj)Fh4(6=c*%0oeVyx>h&b`btK0p_gVO2rCwwn zg6KX0BhC0=yPxWMF8k#MTr(e9-td}&4sW0CK_(1(_fjK{b{urI!AbyF_n+7#m7Hjy zmTQ)FTOzwXV>%2qPO3w-cU-W@nD11)7{Eis$T=5(@2}O1E2R$vy2j?t(5Yv82Jm#R zO;)gZA^C~4wxfBK2uD<~)CIA6p-v68P+AR9alyyI0RW~ zi@icV7zq|k4(%Eg5M{+C3(Dw7Y!K3{V89KwiuReMhsK#Z<@=aT_FdaHdTsozrP4M2 zKor{wD?v3>!c{)YY4=LL+hMmACA{tG@MH~i0&Mxp@DZvJ5D$h26uAap^!@%Bz(Hsg zm7vNd*G`NHDh$~W&ghON*?BMO@m6RTfoIaZ>I^Z!bN?PcHVq&GtSN%4xrX&8A-7~ZLweSfUF`AK7E-h|qe zuDn~$NNkqJfNZGLvrVJnFY5JDHvY>d?Uet;TE2qahEec zN9eLpvnS&w!|W2&fDQ+tN;x^KCRLRf7ngdwPkwn_Tu!>!EzAhqC2}0ztqteXT+N35 zSzwp47wXt(3zd0Q{sMukE64Hv_t6v6Cj)?#J*n{?VCh3gUqnKu$Ni5sf7_pL#QLLF zqCiZG1I09@Li#{MJCqeQ`ls{+1w@6i@3phMjR zF~Gn9hLcbMI**xmY)x22ucY3>bHrkb`|HhK6Nfn$@&xUH3RX-!t<>tnclI`2gZ3&o zJ5|0}A7TY5wAs;KR^{CKdtaZ&u386O&&PBjBio7jC4vLt+(fG8ao5)^ivU;yn{PA` z{S^s)so6)CD|QjSx|lbKoH08X1=YZ@fSxziXzmR#Np~i2(;PZ@*fl}|7qpx{7XQ;# zV5`!6na$0pjq6%oQMkP3;p2kYAI~#xs6MyxAR#g3skxN{qrKw#l#AZl;UI^?2z<2V zoS)%8(1;OfYtn6BUT8i?hvO6bMRI~P!?%i2z{wsGe7t%xSvHo&Zt2sNce-BV!iqiT z)2Jg#xp#DHrq?UfqA&5~t;-3PUK6H4Du5gH!25yYEp-SENh)PCQK&FQz zE;X!|c{uwUjp{xDe`gcP*Q~WIib{n?`>vfo|B)Xd(6R?6W!}8+%TKtGAslY>#Ele|M1{Z- zQGMbsFcneu1Us{3Ve#320$;8W!xW~ z`j@=WZ0zkBmQX0RI59heFUDoEZXUSXZx{har497o zec0FEt8Hri4URPWV7RX<%UC?eFy%T~%xiO3_RW?DU)86{v~W=oP?>B7%}SId()xsSeRe4m zZ1LXKt<`qH3LWFN?-A4}(AlvxhWdka62nrOykl*x_g45AxCk@$cMBhkLJ#adzL->Q zD#<5TRKRKCB95A|QA7m|_z;3DR|^1n$5BhCwyIsye;3CZ;Fik|wN%X*djbXrzQ>`( z;_=86*ieHGYuJ8CWOQ;&o3PgU;(s5IUjA;9AO^7oxRMj!SL&|0@Y?ZQR{8uA;TJd= z)cEvt`K=oya>awpxIu8g+z@3#N~wzi4#pFk8?!J*)CNC&g&Llz z-=AKKeg5c;A_vSuap&y$??Fd5hWjXZ{FlSfBZ}dfD)yx!+Pw3nam1&F+ZKy|Z7yrh z@GN@EaHpAp`ISWHx963Ula2T<+5$Il7_f)369yTP0fo610=>5BMp?<8K2*tpKhEx}u#{CE>$N82lNabYgW zD{@rcS5Z@HY?AEUUN*%ISzbO0jxuq_ztVjfW?dMwIfK5NvERFpzVR84>0W%jk_&3Q z1AxCGak*Htz7S$cs(p>L1m;l;6wKt$Z_w9}cRb(sr8^;3;w;Mk;EU^24nWw)@N<6$ zq}dfN-|KjjPnq_+_QMzFfXX$vqG(3-M$9ROcbIn%VaAl0@rU=csqWG5gwI>c`sMrn zL<7~QQDF`BBDjdX{ey=;;c722CRnN zbZs0&0k|?Q%ymFwLXxkO6bI2M#H(PwJY%9_;U$)kA0~Oj{!8XNS_5tdy0#+TWKIHU zL)s(FUJhU>d{TbE@QUEu;by0RIFiPBo8h%6@J;l})Hd(#sk_$TG40vN4@g~g{1WgO z!x8gsbFq_o85chx{qy>D5+ey(gspA<;@o5NkDGJS2@hc@1Mi(vhr{Jm7ODQ7;FW1Z zb+=4K>0RpXt~cx=_bgLI^Ohg0_!wo}{!Zb_VSxoIyxN7lkJP5i=@eAi0-WVVa6zJk zH>0GnRh0&`M2~~yu7L?{oTqh--h>%#DDIR{$`Qqps6*LvdBVCJ6nw)fdD=NNRK%kkG!!s#1PPeCF^|SHu2LBqN=}xFN`nudr2t4tg#p1+7GtS~&8s%?0C@8%)7}|*o z%ZB0B;6cGQ*^Tf1>S*b}(NY$?%`ogRm4F9n*J?O$2&qFkOY{DQ@KyJ1rQK~j{Oc?+xr>4J z_b^l9;`e^MvdQu^OyC#TQ)}s-??x^&tB&^Xr}0np#?v@6B4KL z%i?P!Q5(xWf|LyxM2K~@$F&2UMy?1gg3l0D<9^GGIQWX7nyH_a=7Mef4 zqv!GUSC*J|M?s&f^!D`MO@TP_^-L$O^}+i21NK$?m<1Wd}gR z`y?h%PsYL{KY!u*DR+!hTt$?;Ubcq?rkx$^vD~Ys>w4WtP%xcP-Ovm~h^4}*8KwHW zu?xJs27wOyzwM?NR!(g*Ch*4my#>f$9qwSQ$BE??3Le~fP~yBR(KsOu`z#C@d-Gmb z4sV|$0NyXb`{}#!#}CIZiDHFeN48CEV(J@Vh79_B_V`65Q!A}S;|AK%?+fjWd`+=^ zDo_yu+j&kN!!@I=Ku<08StWOw!ev8KWXkwG zOnwvHnIqKL>UQGnIOp2&U9Mp&vi*lMF%C0Nw7oj6ja(Kpwv{Ftt6JimTU`(-i}Nz} z#0r_*3#!NK?xk!00s@Uz#Hp}Pl^;HUsy&!qSjH{A*{Dy0{ic5zVcZks-_cIwYKjR%vs|4=^`)^>leO;Ym)Il*-pJjo85i)Coq<{o;1Dq{LtHD)qm zw2Ys>Yw$+g27?DZNp4I-iAPsvdVXK$H>dWvylRk7E#Kjf>iL9~zyGa)@W>+uM(AAA zk>3%^3~WQcneeXT#$Kxlp6YeJZSHgPDz+fJ-MFF%9v+Pl?np{dej0jBBx!%m2~x4nnLlYxWtd?x4$7#XzhuT<>ER$1=@tW6Px<`t z|GH(KoQ8}XCZjS7m{>|u*X9-YxJVc6cx>P~WIwg#qYgK3*XYiYT@qc2W$KctQ*oIu z&hXH|I;zmao1aB;=dBw*1aYP-nSkE%MlZnWE#3Z%`-%|M{U>eVcgpiy_9I>rvS%XQ zG6wMMxK1|^{DpMg#WU{~EPJyAc_wII$?LLep`H+mZ{5~6d*ZRD($WAuT*UMCjK(ch zP)_`bB}O0d0D*r}iJmdeZ1|V7>Hyx?7Y&G{bI+) z)vkJIULQBy8^}#NWEtt$m`eTS))(oy%G_t6DUTkFwr}`)^oZ~M#<}{ZRu<$BoJ%1d!4dX%6usPq?~wW{cOJni_#afw{-C*Pk&C3nvi+%Bpa-~d|Gams!l)F!@Oid2E5S>>C=Rd?g*@73K z3Q{C8rP4ymTC=Zq&hp>y{Mb-=b@U$E^MP^D7Gtmx#bS3Ml{C3B%#8$byps9Wa7*6Y z==+kQ%I-FVp|vV$nuSfEY$tv@?v{^*F+trsfG^k{8mcfk-a^=y0+n62&xV&OrSU~Y zpz)hhwXT1pQ->Qww2p=%wa*fhrR=Dx9Y@_duj|V*{+|{BHnC~u6dThe=7p* z8-{lt_7nkEn5N(&1ws3Aur;r~Wa8#blO7h1>d3qq{Tmo{IL;4iX&LtNe_{OrJQ3^s zfdn(m3p_$Q_|RQbqlnKaRHj*hGIbmIo_OpMT$drWLj}R8sad>7L~|Y*Z*O3F7wB$F zNlV##%#m)v_!|jL>2`Jll%E^L3s>vtw_$=1o?@tI^GPPI9=Rfv(TkP+X z6|;;#8_KtuzP=rDB*XB*G*d+O_C2EKm!0FB{q7GRyO1E)X1L1XqRWn%|06Tc;(_f2 zKL|%Lq}Wt+J|7K<6fb1|7k`79<^K?pU(BtX1)^9@`68R!XOa5bDFi$A3WF!8tX;%` zi7bCF<9zN`+8>rBO@vHh$5T`5?w_f}$zW3^LVmwyE0qCnS^lNc7c?uh95v23S51(% zPyiQc6nu(K9%Zh5nbqLskU57>@n>M5TCw1Gau=@p^0Va_4=c{|bWapc=0hYn2EQ#; z`m7~(syw)VmY<6^W_F(`x)Q;rECd}jH9<~^TzzA2A(GV#DbC7_FGC}s^|_%OZHdFkvP(;~a~|0j z*UJv!|IV(=Kf68{8dm@zsh8~8znnoqSo1ySq&|2?e~b%t#%#FQ32IK!MV8R+SLREG z5;MX~kd~Ak^8+9xUAebuT zrSy64_2F>U;$+h>_k!ZK7Tx#ns^%cuU<7t@%=n732}B`BHWB6A#8n+^CG*Q4_|IhY zFROBZB?SmI&SG(jgUM7dCSCtQGTp8iAvAuUA?#&qaIidj?2%pSB(@&B$P- z$_ZWm<#_u4zSPpxq0Zyk^%zxkNaR&|?!XZfkp>a{_Wvi)v@lKGRd&2kZ(eC5MLrOE zN@~TTkm7e7wJujQWTf5|&jkd5LrV!$S(C;*R<3za&86*T0v$5==n%RSOS70yLoXc$ z)^VjEXv}?)cL}_BfEvNbRXuUcAW0+2v(hEvAR{D7eVqfnrpXj#OCP1UG50M#1kUiN zf$X(K)(>jW(^JjB!{sX5;L9X30g1ge>u0fBa$uyZlRKi3y(m(Hk*og}!$ZiFMe^02 z8qA6?V5*~x8&48XuL;V`(?B(b(d%USiETa~lh_tmdwzDuK2uv^hyo@6!EP*(#BZ?^ z39HulmJNR9@|)!I-^TwQc@klN<~JnH5k-s;0&g!?v`U93eHlmfvVm(;fNIj_9b9)S zJVN(h&40->CgLuKR5`&7#N%wEpNT#b3~C5m1U*lc1Ja*qaCH=$O+b-|!u%JuFm+7RtS3o&ZlyD(2gl&vfA z%4_zb#UdH6$R27IrXIl?`+A=0`bFd37T>}2DIw^h`LI>u?Vgd0Qsf^HMyDIE$^A8` z>x6)JwIu$lyYsQeRYJvjYxemq$d z3`D>`PW(o_PsGpIm-BkC-a?e4!37cIoG$I}E!9s3K0A9uyFEPYZTN22g@r ziHzh@8WN1yFcnFbZ3q2c&b*WYI>jQ!c?=$J*w^0jP73d|KPT(BLH?}&vLVchYrl*> zFFeuvxPgbQFNYrli-x=m%PvwJ?kXX`o_t?p85}GB7wynA(PsJNesKqX5T%`J{|_f& zX(K>v&-`<c|AgdPY%N|_GPiKZ9cSQsQwYgeOvg>d)I%$1w`cA$_2fArA?z&A0TF*3 za`*ewD}JOCd7ntFyxp(PMuvReR_lasb6gMWQ@pBCe4LZ{XP6oEPTz^^r)^kC>nQwU zIu(r3@e$&hQPvF+RzWqd%G-|!D;F{#S@4J4CDd84OJqfsO1ZO~E{fknH0r2p5#^^| zQn%(&)N4feMh2f!fj@Q$N|va%41Q?uWm#sZkD7$`;+24b*AUZ>okaPAjVJ$^qf zoz@=rn%F-0ZKlLJ_t$aczrJ~=&MIb6O1FD+w&6y%qNsC;h4OZ`p4MOzB@YHe$_dgT zTDb)0HrhNNuAO1L*r)Gyoz12xWmhl^EEIz-@n1jAO?II+4}$w`CHN9sR=b*%?G z>r_TWjO-&s*o zbRcfsY5DL-hmB-aUP)<-^zY8Ca2{9g3Yjzn)OXp)Qn1haDFnnzq3*36u-+$S1k3@H zlP%S-MXpI-@7szygvm{As>l+JCF5r#e?O&r%@{Y$%8bv~bpU$D(7ATZfooiW z>o5@4dH7(G`|>S35OH?;a@y(Zg`a5ZV%MeKLS?z3$dh?$1#E8TIfrs`8e%l>2H%Pk zY`P2D8k28TYbVF9Z-wWoQWw=0fSTWWD4EnTD4rjzWZq=`aerjm)$>tPim@An4LmH) zx|GnsJs{4J;REgaCu^IfP@!^4X;w17_TB#0SGU)}Q?H(T(8Yz5vTK(p;~RjGYD7t; zev7sT%0+ym;xVcx6BFsktPmtTPo9f=LFpAR;qXN&o=!ef1tEvDE|r;0W;3ZyEc^2- zTJBSQ*5QN2znONpg&Z>$fybV_HxIX>fPGxwIltZS-Z8O58@A9sW~5OAq!#(fJ$NN7 z56?^4vGO9-UZ@QA4vHJYEW-Yl`nPjsW5?G1+|kcM3Ac2WQU7cZJQZwskiZQI@6m@} zlI#a(R0X?bfOwdShrp?10lw0?@h(}sWrlqa!`A6WBQY~W7y$OYBTKO8l!^j`%DXG~ zuz*NEH9`K|?3=08|0Y}cf!2)a;{z%)rhk9EmYDuhr>)IDF>^{hyR!T@rt)o^<}Vz` za?QQC^yRz_n5f@GP5y}Q?jIkfPsnNc+85@SN!TcE?)v>iD%9i;DDn1-mzmR{c&^of zE!bQ1CWwg}$rbdPliQM&3dZ@iw=?0dw|%jUmpYyLZnXVhnV=|yIM(9^5fu;6Ca`ZP zs(3>DIYvgUsvGh)2PIjl6g83U0As_uJ?pA*FzXv$UbX2@DWc|fika`U_gBXPXB+Oz zQxX)l+b{rGv#>LV4dXnqcu63OTRI{5_MI>(e<592vtCuq?1|GQ=G^2uW?`LhwTrKN zY^jh%g3yI|#50$LWRQB`ITOxZJ#ly(wgQ_pw=*ZXd>0cJKD>pKMV;76&XSzK?ib=2> zN<@>u?fb^x*W90^hy;C7HruESJ?2xI+r;J#wY}j~kvG4733eGgCtp~bZ`uv8rir>I ztwai~dzv!-TLq%ut=trcTk2&~H(Jq76LGXk#09D=%ICIpvy1C=F1~Pu`}n;2YB z{w+GD#eXCCf*bHMOUvrW14w!nHA<|q7IxX_DoL-ZBI5+QhA`L5CG)VG4K5b!l-a5b+*kH#VqG8d-F9F!iR&u0ZrmNX3yMZ=R{A=OFOUUTNOhGq<}B9 zAym7!gYGJKe#SVgKH19n`_e$5O`U{Wb6<+Ye!9ycgU?ZcU|3Gp6-_U}?|cMeFwL zNqp!u4604m`0s8e@bF%4i%t}*xGb;)z zG94_{jH-ch14Rb`Q8?`mxaQTot$3(1WZ~WC0R`?*y=VHz8$1GfgA>MS!D1)t>|sa_ zUkY%@#37hNU#?ZBs+NKBBNMM(IGbi-tDlLeDNkOUb91eRB;KFiH=MBdNKRh|+A1=Z zP2#AQh(BR0(ukuMV=gnxLIznPTZNn?6Q1IaPN0uJGG~BNlRynJP>AZu+X9hEGB~({ z1gS0V8x`^Qp^GGw>0yhcgzB}=*D;d=!T>lF@W(~l>Fgn2Yjl=p!?8McoFw0ck0}6- zp2+SysOS&JpGs_)%E749R&#U4u{AUKtP3I8=SyhsmP$5W=oh-)GKL(cw6m$_QfC}x&qyOfoZQMO+a?)8? zLe&G_556imQN+8Sp4U%|uR`@>@W~a^eU<3@-sOUhX~PPyB|Ydg9Q&&$~#3i*-^Xa-~8`>I+Dc)7G@~q{z(n~j+5*R zFWgtT9B-cHhZEOTljUuP;4WGr-nhC(h(OQ2apMqV z)H>v`O3TbcWp|mpsXi7f(1#G=?A*&Y6uR!yjSGQ4t5`I&`Z1|t;0DhiZ96OiB9`s6 ztXJS};zBs}^I?KFYM?2BrefIv^@t19vHk$!Lp5XZ6xIEhxun4h;W_QOmEU@}aAvfY zWl{YZ46RxEr!@>ORgUY2=aUCyU_u8 za-o^{4lMftJnnCtB$Vd~fi zzP7nF9flVZ9@4qi?z3mj3NC{v_jm666spjcsfo4ur@Z>p|3D=SeF(DOZl>*-R^f}B zUD{~TIg?#lWHaTqVj?FYa@vakwtIA=3c0CetC_*cqk0a<2>U@8!9mp~RYb?}oQsmM zC{dwE6s7(VC9*c+^m+|4BoMm)gs&Eq>UMCQazdxSzUAaud}eXr`Fp^fvq;;!Tq%#C zq=B2ch$XW0sLH?TDRq7ki;{=K>7E0@qM=A_z-|b?yoZ$7{UbtYqj)eZ4yP8Xt55hS zHVxu(6DV?{ag{{a(&j{n4EOJtVP>?Zqj$8!6%r+ejeJIbnlyT9Qp6O8CXcm@R zi|60J7eL>ZA4iVgo-tr zXZ;q_O*_xDDUr9LcrbaDo@%Sj6^6q~W$`mje~$k#I8RBumUkv0St^8bl5>l0)kAD@ zJhUveogIca&-*ymI)NADtDMqg_Nj?{| zH+4Mr6+u?8KS~xYCX&&PSV`Yg2b>oJIB*iZKvFvWTW zmRKxy8$nz-QOPSZL>)KfGF&!CDI*(B%dqfK7N{DJE%8f1YB*K*Xk*dqS+|^qxqM#b z1S)N7Pz_87LdsHQ-R4bQ{Y%QY;fp}!=nDXet3DTI;+!%l#3^PiG`S&ZkrrxXgs^b3 zqbNgFgzIQn0OgxH+xF!yCT`PR?I>rZBU>BFW8}DlEsEqkQnMqH!86zLzhh+kyO!47 zWNx)V&NlLHt| z{XV`+-zf@jlwecCgT(bVpv6n_xOX2MGQ@bArxZD$kvs8%B2P`1oy$ltj<9bTS7D>fc}gpXhxom+eW=h6q)~ZF zriAATN8}VlSZ8VKykd6NVUVnRtz8!zPHwhuK7uAM7Z7qCa9=b|&PGWPf_^&=X5uNQ z;f>edQ*QmNTMa_?)SK`T(v%c)zMP1%Fy7+FYpNclhvgKKVD%(bA^tm*&pRa52|CD% zwmCNERD2{nS%Ca+wq!hqm~D*aY1`Hl5C;$`I=;#d^GR zEv`7tkBu`C*rba5`nUAOGN!TW6eT3sQf0(86E%f*1U2kii%C%S#}g4wO%4URFyOY+ z<5Hev>=2R_o0n}e@!-;kWR<}kZK)il_b6V>tKVN(cB~oL-`QK$6so6@OT)vO2T`iR z0$604csg#>Xu%gg$rltTX67ZtxU**N$EQy@E$J8Tbm{U0_WZ@}GVfIO4KH4$-XjGx z1k@AnCCIJ)DMeVVVsLwEP8hNIbMuF>TeL{+ZdUa|8ON2cDpIq1oiod793}hJKjeDn z@zGfSWe@(`O{YJ><#}!sU0vT@~T4jSnTd=Pz0jQx^Qt4IJB)^ z`-8y_;ydh1+tizL10e4=A-?ZbbL59K80hhk7Mnfw*71C28UYYc)72yI^7~PGQYixl z6%?4tr&pmoS32Pe$J)lD)(c~sLEh!~?ugDg;Y&;g&2kcZ&aVxp?qNU56c z+^MB?CB=rPTq0lQ+(NioxA9~+sJ3SWGsDeF153n*iHjD`yYr>VF(lgBl0J43{KX#b z<{&5vX0>z$*Dq-zT0J)Q=>*_34d`4;_DM-V`leryogypha5K3D8NoV@IXTagpeslF zSP1#`4#f*?(}R5zp>nV@lWmOz`5TnwIAzfWRWZSq=wh|QZYE@s6ZtEd7$Y`^_d;^* zOh^(YdOG^RFWUL;`OlDIToGB3JGN#YQ0`gtu=bJXAgaAO%Q%Fu*rQ_kNS}oK1fiFF z-R4YM*WN3(!5KEC?B4S9G`Cp9Bch$TTy^|U3Z6ZS!liNNP3A!p^lMozmJg#Xqns1N zSo4m}xEoRUxvT-;==X8X&7tk=<<#I!Q369wSJ1CN4qS;BlEHJ!wL< zCMm+=m7ra*VDHigtildW{d-U0H0U)K1r4|J zkVBn_Wg@I0{2M0$lBV`{D*RPBCpj5Ft(yBX9M#rSnEk~WNhb1N2tu<0Y^cNaueutc zyv}RMTF;>Ee9C0r-#%3E>H{6XTcTnq&k>zU7v>^G7Tv&ZC<{cQpsdgfifQeBr`)c9 z5TCGr56SIY(}>!Qe7;`cECq;#U=fC^57CbC2?5uMocJ(i*O`D9ve`bPpX}~c+O!;g zNOrjYY>I;9;5=pT(Q3^Z5E`_pf~{$Jf?wj$+hjR#=78AWi7*~=TcnOgjbD~pQIEY# zgc|kOpOe}mGXK=9vKO;t)M_7Oopv-tPUgtUO|lSRp7WdUK7tc&zIMqU#TDET!is+FSY+*d%AD0Z&8?e>6W133}mG_3Y=_$62;f`#_iJ^ZX5N~evBD4ENB z0vPIeu(dSiCB0!StI%A(EjHsZM#XQm&(2mE^7~?f?x2g)6DP_`M7YHYO?H#SyD_nP z6ptnUX&Tsw*EbU}wRUDiivFz7&|Y6~GM|+(qh?XN_RLO)0!t3SmhkoE@z3{_YDOL% z2tw6tu5zrdM`neQ1k}02hc+?Br`u!HoK$3)@tkoJu8)};v z=jL5J*cPZH;g$1gLX#@AKiH{^i^Df9yRb|6Iw~vKUnR8I++a~7*Qd1M+>;uLl8j*J zP$;y3xs16wHyt$ygnj+@g0iP%Irq!R93QkA46?kdQ6v@W74(w-|5*TDLefT&0iMY3 zLAbZOnBbAA-^tDLXO8h8q{%a&`SMo+WMr&;a$Z4w$?$8w_!l-Wq7t-zq=HGl2orvc zUKPeL5sC9p5RLxlmnf>nvf4!-U{LgDdiPq?BKmlJX|MJd;jVnzHs8a-&a#kxA=+@m_|d+f&u=g1pP_iHq&AN(UorbU*RVC zsQKdFckg|3M=DCmR~gX|zvohc{2E0D_g*XSq7KaQpuJBt`1pSXc1o_s!z)BxsQ3GA z1WOY>Jonao*u>;K7=czOZy4bV^W0s}{r)FvYMnIRTT4vO%G%$OiuD@>mk-~;>TPZ7 zfs|P9%g1e9?Q@!BMH*>BE?OIJsWZ&|XK`wGdllk~&wz}GuxXAMXFP;4K9h;e<9^-!fAvw4|awKaJf=(zPhV*7RI~u5zfKCJv&e zska-`YnIJy`@F|4hNcS!^KxRznP`6rEJ?YjWmZXOFBuIm>-c{=Xi7*v*sG|*yyO%le z2w%^5ag^(N2LSEubCEASIOuCWy>Jr71)Jg|r9VoZvZ8kN7J_qU9o zrkCWHw3+Mhl{zU=T4&CVRTc~wOF9m6dB#?>Xt23wAo!A9d5H8yLO4n0(GnQ*Ib7aP zi>pU#46o>JtMI1ia!^Jr_Epkc)`4Fw$@yz#YzuHFFFUd@z8WkCh|(I0i5^~%^RNtCNq0+uQX3WiAQRjZ^|^<_Zg5V;YrMqU z{1vb#O&QF{n6Dc6vN!Gf36tmZGhHSgf~r09eglLM|0P?E5f<4w zTJ74j0qsY|`r&+nTE;09X^Z}}HW{k>5?KjQEYUIh=zScl7MoH^c!F3)|!S$0JNc5lpparBx*XrQ@0#C!EW%wRO6=rZjtt^D#lVp2|!7h}#` z!=HFG)0d;xWYaX?@?qdypT$SC6n#Vmi~q11_K)G3r-0U$x3RTh|HCV95)8@+tDn?* zxC~#8IXv1+VpT;*)yI&ILhtxQC4R}jV~siu_4vvabrzeFoc3JdUt;U-DIbG* zSnux}(;J4b){ICd2I#u%yRf(@QkS^Cc>MNboY_X4>u&H>e&909Hf;IOtBnOm^y!|> z?MNMz(N$5<#B}i4Lybn^0FVviJvQYgQzxvoH1M>Mub6W6`%k1>52`fL*VYuII6M9K zNf(;E_|GV`s8W&{EX$&9rl@Lq?Vc!TQdrsT5E^=G60}9VpFKtR<#~{T{Lx3^C&v3v zE-32|#dSwRC2FmZ!I53Z?gZ!PRx=N)I5Rlv`!*)LX(`bau63W95IZ0+F&_ZK6!e(8rH3x`Cp6qbL~VYcMyo~9nL z8SOcn7B@4+ImpvvOAvgDHjfFi^?A`hUqN_U$?{BE z-RoA$5L;%bmS|e!`#0g5&!SqWX8x&Ob+k6p1kx_4xo*y%lK;E9a<-?`C*v4om$ig9hop7YqLyA85rY=qV%^ z3TCeA_C6`A-gLN2^X#}^6x`2xG5)h zFC#ceWC*W5QTkW;b2`w;$NJ~lGp#3TuZUb=EzrD6&em!}7ah91bSA`opcih=BVh}& z^a(3DzQA}Azf7{w{OPY%tW6gxmc>X>)cM=U z^tZAZp5Hd3sVLsh`0B6bpL~Lo|e7K5%rGWKYbU!$^3X{Yx3F-9v?*h->?b)Q;MSY3cgh(35)VNX5oW4XzrdqDy7@(f*xA3jn)3qyUb=X7SR1fSvVfA(=AV!ZFUj8> zge`M~pO=Bcn+f}C)Qe?|>Qhvqt<}+b?c>KfM9lceyKy<)W4nKk{k@$-NwK6D8f39~ zFh!GDA|R6ppKzXgAU#Qhi2@eJ9|OiHSC=QV)NnJ4lh+n|8(sCX+s0wNR6pxIq9h3F z$shK!Z16#U#p%bk4_&Cdf(KFEN()Pio2^wmr2+ATe!rs5Lr|~bMZpu zB3W{5@ki010);cUajp)OX+@VTPGhC#M_m&K>CLAp;-mmp(t@wn?Vn=6|L)*yojCn!c{+=mK(eZ+ zz=Begm{HW{_BhiPFVthiP%C-1-2{($@xj1ng`dX1yY?5C9v1(ZO85X6V3Y9t3@Hu- zkc+LJ9Vcn-h{{1U6DjFLD=CZ;v-A{jKV3fy3IaPHeqD1fCi(yr76~Tw*_Gl*m z%(S@JGbN`lYNat~sd&GTUvo;@|dD<~6-nCRFwr<-B*hL-YI-?=}3E(Z5 z7u8}S^6V)E(EmnF=yJ7%2h&7yp@_ntP!9Ce1jKSIt}V)Xsg;tT>sjvQG3d=vGF}N5 z=lDx&MNv|y&FV_}0Ex^E6O^1wuD`fDeqbMAb-3gmI|WBZMz(Q3Hg?CHU4YYAvXdm` zqFJ1l4cD$75hkx z{d8ZtF`C{-(?WajAtfOuE_mBjQIwTmlIJ1cX9Z3uUahRC2;o`Y^9;gPGlZ?lLP;h_ zL=?gMT?8|WQ)v|;!9d|)zs1-pbZbOyL-BmwH+ecq?*Mp}%<1-(3i;3pd$VGg}eWVN3OFJ9`%QOn?{*+FUDc z_k%i+EeBl)_U8cjp8Kq{T??3+b~T@om#h;Sx%+T%5DS=;zYo z!RSoSaIxQ&xsR86Go*4sB8u&%bbR~QdCrP9b1vDVZUFDa0jMUY0Ecore>6fw1)e;v6ZplA3kx{cXM|+-K zc$h94-klm>@x4D|A$y9E2W4qG0^R0prQ@IO!{VZ4T4xc}GY=^!Fjz{_odS=8Ong{1 z1L4znz3&f=53G-q6Q9yeB*_1I?ND%ET`rJ=0 z5fH+9H1+<2Wdq?C?pCkGk;S1f*`9vW&x-D#?#3XANgs?LpJh`+I9A%br8mDYF78E_ z&2^ig)rY0Il|a%8{))eEUgw-;eWfYc=SgS`xut)PKkjq7|8(KP^a{jU{YiCa5EX6{ z0L@x<4A<^*7p-`Ku+^TDuMQEd(U7G- z;VKjvXq2;Yb*wYI^B#82le8rK^T8IT z#f@8RAt_XBVd-i?a0W(2&Cz3+4k!8dYgvk1dN61ZZentM{p>Rsdu1CzAAg-GWFurP z;9iL5QEJBmEv*U?C&eyp=B(~1n1E#8&V5^;sCtQICsQjSD`7xpC0G94SiDAW|1$bm zZCWshGWgS^0oT{pZ}EGf60}eG0j^GSAMY>ms=PidK4vc@Kr6SiFULxcCXWgCuNzsP z%>PW~J+R_A+0=JMqjFa~yeV^3%2;Ug9G4}`u$tG_%qbJN&n8W4>k#}ctH98BV-;87 z!cL+8(b_+)t{z`UN1V5Xqq4mx#B3huc==*^l4XIiKpJ;^gAGO_5W~}LB-rmZ&txhx!xvkMLbhR7lC540o^!$? zlw=s}**>_4Wc)$gqpC6**cnFUxLP2(L}_h~5Np?JR|bT5t%R29XRcf0LH+!;T4qIr zllS`jUxmtE%wOAvV$(zAPN*`?x!EAN*1v?qfknRTH05@p8vG%v z&^49V%g4lb(g^fXsi2eFk_&fTloRoPfs%7TX%NJ(KHHZgD?Q7-(C^c>?e_{&)c%1{ zeNkgNuCH>ucsWgJP20F4mL=>J*x4*8{KK~Pc+*cwpzlcSc|e4J$9yLcM)&zSCFz8y zDttEhVT$u>H$QeV!xw`s?@B(bj``-f3_RaUJ!R`LGA&Pco)($R5?g__AzPA-wIk{C zJ~B7N>lwh}Y5Q^v3Aa{*sHN%3*OC#)?LfU^mbeDg4VHXbV!dX{ozV0ma)#%+JOT1-_CwSkl5L|z+@|eOTLqlPcT(J9+t5VUQjv!*lZ(3P&1i_ zK{~5)E|14y+!H-FG5Id5jb$qGq8QsMuL}BtHI$i7F@ejLT&F#IfkTz&{k~aYyb^S| zJ{PHXCqzQI_g%9-=sT%Z&THpmz*+XA5p=_&eBE(0AadM7@fzT(7F9sqUGxzTO-r9$ zr9M7r`=L~amT6%n-0Ea>if0c$ZIkOHE9hVw5d^^>+h`V)zSF)hJvQ=n6Djf^|2$q% z^Edg}niyy4rT~Eo{&csQR?4OJU63~hfWG2F7iN;`?CNTIe&S;ZoGg~|L&J?+lGlnb(S3J-qwcYT#Yc|8aimM7cz`}4La-H&UTzx?V2MACLwIEG zJ~T+>1L6nQ%MYqht}QJ9>?VrhWXN;q^;9yo2RDZFz9#PZxL>a-=UW&bx;k=sBBODc znQChPrTrcT`|2e~gozeR>ZsYMTh*OVE{D{3fM1Yw5A9&ra*op(n zg?ITVFcGMGQHAVTtqQ9(oev>$eO_}uWr;cFy=+msNaiHTo5<@!P~^>*&c7djd^de} zR*L%=S;&{M>D3)f20b2~v_N7U$dKLo2~z94nngzMr|ChKV^y-GMT;D2Ey>rmIIV-U zhA^KQ&_da$XbIBa(Gm2xPSs9 z7Zv_~b_1cOgL%D~3UgSM2idp*G;!sbY=8$-T+oxJy_v3H3@>rV^_qWgF-l|V-=3N-WHho zd)UI^3OZd1rP_Wc-OS?bE2^cp| z;zdAbAO7_zdy4{C&bs^i1U%)xOz>Gy((Q01b}S?h2xa*11@%v_9Q$fSo@0)R00CK) zLr}n8me?DPTC}@pKg)!3BE|>zX#Z=@uX%_bMIMdQx9AK{>1O{jsyvzAoCs>T=E_fx zts!CW7eX+^c<`+P9w6Z%MQ=gOCIVdLQh>^X^@$I_GJ-t3#_!!B&)Y_Odi&}-ePV0O zr`m&b^m)3fHl_2%}hr0J=T8=Ui10M$=E8GV=zlARMq_x^B0*{o(<%052Zq1pP& zCtAx6?-YENr|Te1styRDoAF)lM~{m}*?tn`H1#8hAf2!AaMXyxEYr>9bhh10y?*br z6;R7Sg{4FHqhsb?kRfBnEA3x1Dv#3X-NR;RHa{trxomY3)w|y6XQ-xhXp>Qa2YUye7cO`AUv;NF6H5gRF+} z{#X)_jKVFqq3}IA|1}1(v5^|p>bqyPCqq$<_b@fpU_UbCrxe7NIhXRW9MMi`bhYXU zpln=-8!pTcWB!x<3gU5DZr*qg(3B6Sdn3%7GU^jDRIt`P+4{mIQZ?3HZir+2STIui zAW0pclvHz?=e*cH2uZ(K?{r?`_0!oU2 zhzLsR28=G@tAr8)5(AOgh{2TZ4y6oojF#^17EoYgbe9MNq@7mF`3(ewOxzYA#0(}59*zJDF(_+(EHG9m#SsQHw9ZZ(?HWeriAT*3TnUE4# zcG=OpHdP9Ufz_#>JvFkguhrjXgX&e!&#c@Ci2KO z#XY6%8A9?=s_59DxE37Z7NK?fne5Bg90Fa31WPsF-!!V}ry?0IT{mw`UW=B%3? z6ph%=?GR}{^#dAs+`4KN(peVTBA(@Pfa2#{Yvx1e3JRqjes>XgaL@&-`b|O z%{ubLGXzm#9Vl+I3W6^C#b$4N-8$;(7oNrxtzwAhoXEW+? z$FY)ZW)9TwM@s1`w4!;1{^FzV@ZxF^;EinIC!q&{Rm$K2%28=Z)5eT)W60`Ovl3xqu&n-QJ*V^MuNWnMMmlz#rTHvX0V07&9!Tn0Fzrr)Qs7OpqUA=oni3FZcp z=~0Vm5WG09g`u6jl>ynqfTZj=?H~Vd4I5gL=QvlxT#IETb8EaDl{=5R6U9opyyAI( z&=Tc$f8i*6KP#LFE=!N0@s_bKVzo|($1StAP5lH7E>S&C=R2C;{R}_spm-=88Q{=E zjT=>JIkx`~+0LXEN;oHiPte=D_k$WWew$6{cHEJqG@MtHZlTr4p)Jh1=(@fVo-yOG znfdS$#;w@Prf&gY)x~b^-1aPFM`kMO5pIngpmti%6*BIERThKN^7m|H7~6RoykK*3 zui@eVC6+%n9d&xBKAL=GaXMCZY8ql=<(z2N5%Z^;#Q;PwLu~J=9@}$J47m$uf_#_H z{9Z}<+C9qsLsbhx?a{{;CK9>m>c@Lfm6}$BzPI_ixXvsynq5MCuwm!b&S^#9ye|xB zZ5!k;MGRSA6UK87fD11rGH^Y}vSx?ZDPHz%(vdGxj@h)?rijt`hug*w>Y*~Y8qgeu z-^nnN{;UdAOct*+&}T`RkJ1h1DlJICD#Jk0f6o8G&?`G+)TO?2_{RD#wFl9MT_6`a zv~BFZ!K8s^e>oc)=w@Z}Ms}k~cUo`jxZePSBCs}8ZsmMyjV#5a`WjBuX1$e>B>{Sy zR}*E$ho?#$krPO3PibZYUDCB!l7Xv5gOO&)a);5_Aa>~G{DVyPMrvF`!tv9H2hdnz z>~x~a7np#RiQ&f|Pcl4hi56VLvGFPA*bKyeg4SoxM^E2T%_9I_^~R7I=ZsoooYsuv zhV4EpFK!pPLq!A(n$+0ci9K^guuB**+_~E03fQW)X0SgKJ<38|8H(U06m_yE&hS%O@vbT5#&V({`;KJ|&_Go|)OifO$T$+Ah7kN>>OFP#vvQQ8N-nhG; z#4-2xn~acRwtpjv?P44jW_V9D;wP3`@i-7XeOH#3E+AL*w~X{+p~qU3B0MG^DS7^u z^0;ZId8+y3SCLs}7a-0m@+1T@(+Gm13nh_bNa8A|`|L=w#;+gm=PX81+=aN0hB>ud zDMZN6Fv~n>y6e?VR4sWQk}if2fnClk)LWYv4W%fkP%L7Uz=i6TWn8hKwfM2Gj~DE< z|AuC9NZvrVdA&3}xZmbL&--blanQNDY~t5rLx8G+a6Tmzy5LP~DEh&K-Mh*6ukL>R zD6MDzX9C7akadTQRJJi?z2JlD{q?bSG8!jB^8h&$%RXF!WXCRV2eTZH$*`H9VZqz< z$ZL~60Z<9P84)R6Vsg+}R)(+?7kW_Bvcf}aUCwFsngpOZ@c5{(SDoTy9^+vFMRta0 zyavjk#o{jd2v7Z=bapGbR9R5?M zB+n7?!l`ypzT1}wZ_of?%Z<#|$8}7AZfWLr;Ps1$tUtGMla);LljR^oABvZjo$fHs zO13g6GDihKQ*c75cl0Kn6KVu6}WQ7p;-B}*x~I+098%V19EU*<;TjMkMwtGP!V#Rad2s1mKK z+1Y~}48ME6t0C^6FHkVHM9@bD$XOoqpIKJ3tNSj>CejUt)rSAmEDRu?bg(ONJWUyz zR}FCftIUk4xEzH}NBucP0K#qVt>f!JGr9KU_us=9beS+Z2EI5C%=FcO)C11~-%PRy zHBV-Yjt;W@`boqFS_sFpC(FnxQLqk({*XXcPG2>!3}%%UFl12#fqe|_oaomJGHoeKd}kYa99!H16Enhs=L3N`f6`i5Ggio{IZEVGzXoPJc3k#JyoayWxMP}v)4tE zWW>fTa(rFnle2+A{QwCC^E!@gs_iL<(=};Hcd2M)-agQC8vj$Dbdr-+hOEIN#ta$b zVy2xP?)to#pI^Vy9r<(J2NCp$(AiB%Y*t&$6?Vz`rrF8UM9o|0 zFD|;=ya`>H9=B*w9tiJonkJElP;qmS8=vAW^dQ$UsNAz#rF!}&WoAuRrGh zol+AL_)#WJ#u!&)BpkVRIwlDDBkLVd8~;t^z}>U^zbF~HN6h6VO3np^3?+-rm76m{ z1dbxP_9T2%s0_V~qoPMRLDPNY9`-_-A39=Ag%5e-sGk!VFr+p(`XBprd-E!igR?W= z`%-UJZr3T&o^pUZ-^RSf0264ws;}YL97Hqfo`tQDWJSD+qb_)8Q+vCVtF8OqUMQ zcgVt-Muk}O?WnYnsTzLe!e;Vqk_4$r4MiZB<>0*_JmsoF}9$8 zn3y~u%EE^Qx!OtOV3eSyt?%brdTvAY%E+1s0722Ydi*YB!W<~Hr^e!84-N2Y{W9JYhcEdX zqx=mGluIq}z8aEa%g%#?`}&nfb6i*pkwc2T;M}7M z8VtQkTzZTGm7eh^i`;AlV&A!KwI+;+kWPvi;mL(G^OeI=^ z1bytbU60Ju?u`HwByRyZ@AVPK8R0xj{_6`AlS?(0R_)P$gWlBNiERdSt)H(cWid3n z$FAn^#!&%Cf2SvIRc>cm7Vb;AMNDW|9%LP-%E8 zNBUZKB*r;|)G0-vu?Zv*LCJvN@G_oJ5OB-MFZ5#2B;ps2nL zNV}WJhnUC+E1@IU9Qy*?`VR^cAYL7z7JA75;(?rFIJ;&{P1b0n->D+cO%u-zotcqq zL>PO3_@G$g8t4iD#srhI<(&|3L>SQ91cIxj6X9NCXzrO)hzycsvU}brC=J|y8zHcBy%+-ybtE4U zsF5c@r&kD^c(drczx98~FwiA`Rq5XYf+)ZhbQKBgm|x z$sR-~kF5B1IE&%3@vWcyd^Nfszj8D$`7iC%db{{h%)wMMIbQhd>&06$lJlCP&1=TO zP0hP@CH49&DHUi+yzykE7<7je;dEldDmG%+-zJLxB_CiQ7p-hL^RUFy*$cSo>=rj4 z1(B#_5)Ci~f%l;@5eaIBh7VweR~>;ebpccHVZoCXP?ELXOkHu9Y?Op70WTXb`Syi~ zgA0iZFbxc3bnI%YEy$+Vt+{-mqQ?r9w-TfE$%zg|$Xh=-0}IeW_dRnahAhTVGjy`s zZ7)P}Bw!5;0B3j-IcEeH&lJwTD171b`!z2X_$26Y!T}QLC=I|lwcE{LCd5V_&IubU ztsVyW`=F{v5Ay*LX|<}?&-NRYjH_3Tnx3C-s1Mu5<2SV~!~IGuD@smA9r_~SzUS6o zYnq9xN#N&!h{K)RNqwe&hhOlZ@wA))U~2}&5l7o3o~0=*(jmiZ`I-fKlPPat9xCAl z5dew+e69~D*g2sT2!qtyivB{*$Ib{5>B1Nx-;)A4g-J@_uasfLN9^)9@PyB=x@v;h z=&aRm@Z^c_j>_}e=r|IBqW{Zj`d2FlkjabAd%f%slc_N=X^O)LAwBXyaJcm`j83t- zw0bMd&V(ci`sczXpo;nuSR{b9@^@9I${zKKGUWwz6uyd#M<#*LmO^vZGHvjin@0wlg za8@l%?}0FLdDJMiBE~e;zrRelGOEm`SjT6-bvW}tW@<8LG-cw2EX_k!5^Z<&g1~cd z5NG>T<6^hZj>RDSbCy&=g_X`aFTS-rzi;akm~6v=8N}(trc?&Gaa>#M@$(+uhx34g zxiTp3H2iul1zWVWa4U=b)=y%3>axbSYRLt`RU0{bR5N`Wj(u+5>_C^R9JLWiSa|6< zT})wo>+W{y%!~EGtNQGr8?2-VkEK>@4u$gmkUs@IEjf`wv;GczZNU)fXz)P@ki=EOf4jS@J1N@9N-!+JBL-`C1n_}yJ*Z=Swf{2g&EC*Qe@rw5j)eD!c= zZb*^*Fk=>$pKFbq6ulJdY(CZdiC5KHJ4%gR z-{N+NR?}|WEW8^O1!!U!vSt=FMd!wW=!h1#(q`1V^`680D~%aH$|ph)Z>0ZIrZd(j z7wrCUCNjX�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

!5QS|-# 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%0A{}KWBC$q>2V=5cD+amZqJK9|gU-e_ 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 diff --git a/examples/Billiard.ipynb b/examples/old/Billiard.ipynb similarity index 100% rename from examples/Billiard.ipynb rename to examples/old/Billiard.ipynb diff --git a/examples/Logistic map.ipynb b/examples/old/Logistic map.ipynb similarity index 100% rename from examples/Logistic map.ipynb rename to examples/old/Logistic map.ipynb diff --git a/examples/Surface.ipynb b/examples/old/Surface.ipynb similarity index 100% rename from examples/Surface.ipynb rename to examples/old/Surface.ipynb diff --git a/examples/robot_kinematics.jl b/examples/old/robot_kinematics.jl similarity index 100% rename from examples/robot_kinematics.jl rename to examples/old/robot_kinematics.jl diff --git a/examples/tangle.jld b/examples/old/tangle.jld similarity index 100% rename from examples/tangle.jld rename to examples/old/tangle.jld diff --git a/examples/ring.png b/examples/ring.png deleted file mode 100644 index 33f30389b6abd6b33e044b8aba5734b2de26bf99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24921 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 pD{R*rR}b`AAB9^)nHZTH(hW{u`3L*(H|hWY