yes
yes
permalink
no
hide
show
$:/_ExcelImporter/ImportSpecifiers/Workbook
no
sticky
no
tc-btn-boxed

show
show
show
show
enable
{
    "tiddlers": {
        "$:/Acknowledgements": {
            "title": "$:/Acknowledgements",
            "text": "TiddlyWiki incorporates code from these fine OpenSource projects:\n\n* [[The Stanford Javascript Crypto Library|http://bitwiseshiftleft.github.io/sjcl/]]\n* [[The Jasmine JavaScript Test Framework|http://pivotal.github.io/jasmine/]]\n* [[Normalize.css by Nicolas Gallagher|http://necolas.github.io/normalize.css/]]\n\nAnd media from these projects:\n\n* World flag icons from [[Wikipedia|http://commons.wikimedia.org/wiki/Category:SVG_flags_by_country]]\n"
        },
        "$:/core/copyright.txt": {
            "title": "$:/core/copyright.txt",
            "type": "text/plain",
            "text": "TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2018, UnaMesa Association\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n  list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n  this list of conditions and the following disclaimer in the documentation\n  and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n  contributors may be used to endorse or promote products derived from\n  this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
        },
        "$:/core/icon": {
            "title": "$:/core/icon",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path d=\"M64 0l54.56 32v64L64 128 9.44 96V32L64 0zm21.127 95.408c-3.578-.103-5.15-.094-6.974-3.152l-1.42.042c-1.653-.075-.964-.04-2.067-.097-1.844-.07-1.548-1.86-1.873-2.8-.52-3.202.687-6.43.65-9.632-.014-1.14-1.593-5.17-2.157-6.61-1.768.34-3.546.406-5.34.497-4.134-.01-8.24-.527-12.317-1.183-.8 3.35-3.16 8.036-1.21 11.44 2.37 3.52 4.03 4.495 6.61 4.707 2.572.212 3.16 3.18 2.53 4.242-.55.73-1.52.864-2.346 1.04l-1.65.08c-1.296-.046-2.455-.404-3.61-.955-1.93-1.097-3.925-3.383-5.406-5.024.345.658.55 1.938.24 2.53-.878 1.27-4.665 1.26-6.4.47-1.97-.89-6.73-7.162-7.468-11.86 1.96-3.78 4.812-7.07 6.255-11.186-3.146-2.05-4.83-5.384-4.61-9.16l.08-.44c-3.097.59-1.49.37-4.82.628-10.608-.032-19.935-7.37-14.68-18.774.34-.673.664-1.287 1.243-.994.466.237.4 1.18.166 2.227-3.005 13.627 11.67 13.732 20.69 11.21.89-.25 2.67-1.936 3.905-2.495 2.016-.91 4.205-1.282 6.376-1.55 5.4-.63 11.893 2.276 15.19 2.37 3.3.096 7.99-.805 10.87-.615 2.09.098 4.143.483 6.16 1.03 1.306-6.49 1.4-11.27 4.492-12.38 1.814.293 3.213 2.818 4.25 4.167 2.112-.086 4.12.46 6.115 1.066 3.61-.522 6.642-2.593 9.833-4.203-3.234 2.69-3.673 7.075-3.303 11.127.138 2.103-.444 4.386-1.164 6.54-1.348 3.507-3.95 7.204-6.97 7.014-1.14-.036-1.805-.695-2.653-1.4-.164 1.427-.81 2.7-1.434 3.96-1.44 2.797-5.203 4.03-8.687 7.016-3.484 2.985 1.114 13.65 2.23 15.594 1.114 1.94 4.226 2.652 3.02 4.406-.37.58-.936.785-1.54 1.01l-.82.11zm-40.097-8.85l.553.14c.694-.27 2.09.15 2.83.353-1.363-1.31-3.417-3.24-4.897-4.46-.485-1.47-.278-2.96-.174-4.46l.02-.123c-.582 1.205-1.322 2.376-1.72 3.645-.465 1.71 2.07 3.557 3.052 4.615l.336.3z\" fill-rule=\"evenodd\"/></svg>"
        },
        "$:/core/images/advanced-search-button": {
            "title": "$:/core/images/advanced-search-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-advanced-search-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M74.5651535,87.9848361 C66.9581537,93.0488876 57.8237115,96 48,96 C21.490332,96 0,74.509668 0,48 C0,21.490332 21.490332,0 48,0 C74.509668,0 96,21.490332 96,48 C96,57.8541369 93.0305793,67.0147285 87.9377231,74.6357895 L122.284919,108.982985 C125.978897,112.676963 125.973757,118.65366 122.284271,122.343146 C118.593975,126.033442 112.613238,126.032921 108.92411,122.343793 L74.5651535,87.9848361 Z M48,80 C65.673112,80 80,65.673112 80,48 C80,30.326888 65.673112,16 48,16 C30.326888,16 16,30.326888 16,48 C16,65.673112 30.326888,80 48,80 Z\"></path>\n        <circle cx=\"48\" cy=\"48\" r=\"8\"></circle>\n        <circle cx=\"28\" cy=\"48\" r=\"8\"></circle>\n        <circle cx=\"68\" cy=\"48\" r=\"8\"></circle>\n    </g>\n</svg>"
        },
        "$:/core/images/auto-height": {
            "title": "$:/core/images/auto-height",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-auto-height tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <path d=\"M67.9867828,114.356363 L67.9579626,99.8785426 C67.9550688,98.4248183 67.1636987,97.087107 65.8909901,96.3845863 L49.9251455,87.5716209 L47.992126,95.0735397 L79.8995411,95.0735397 C84.1215894,95.0735397 85.4638131,89.3810359 81.686497,87.4948823 L49.7971476,71.5713518 L48.0101917,79.1500092 L79.992126,79.1500092 C84.2093753,79.1500092 85.5558421,73.4676733 81.7869993,71.5753162 L49.805065,55.517008 L48.0101916,63.0917009 L79.9921259,63.0917015 C84.2035118,63.0917016 85.5551434,57.4217887 81.7966702,55.5218807 L65.7625147,47.4166161 L67.9579705,50.9864368 L67.9579705,35.6148245 L77.1715737,44.8284272 C78.7336709,46.3905243 81.2663308,46.3905243 82.8284279,44.8284271 C84.390525,43.2663299 84.390525,40.7336699 82.8284278,39.1715728 L66.8284271,23.1715728 C65.2663299,21.6094757 62.73367,21.6094757 61.1715729,23.1715729 L45.1715729,39.1715729 C43.6094757,40.73367 43.6094757,43.26633 45.1715729,44.8284271 C46.73367,46.3905243 49.26633,46.3905243 50.8284271,44.8284271 L59.9579705,35.6988837 L59.9579705,50.9864368 C59.9579705,52.495201 60.806922,53.8755997 62.1534263,54.5562576 L78.1875818,62.6615223 L79.9921261,55.0917015 L48.0101917,55.0917009 C43.7929424,55.0917008 42.4464755,60.7740368 46.2153183,62.6663939 L78.1972526,78.7247021 L79.992126,71.1500092 L48.0101917,71.1500092 C43.7881433,71.1500092 42.4459197,76.842513 46.2232358,78.7286665 L78.1125852,94.6521971 L79.8995411,87.0735397 L47.992126,87.0735397 C43.8588276,87.0735397 42.4404876,92.5780219 46.0591064,94.5754586 L62.024951,103.388424 L59.9579785,99.8944677 L59.9867142,114.32986 L50.8284271,105.171573 C49.26633,103.609476 46.73367,103.609476 45.1715729,105.171573 C43.6094757,106.73367 43.6094757,109.26633 45.1715729,110.828427 L61.1715729,126.828427 C62.73367,128.390524 65.2663299,128.390524 66.8284271,126.828427 L82.8284278,110.828427 C84.390525,109.26633 84.390525,106.73367 82.8284279,105.171573 C81.2663308,103.609476 78.7336709,103.609476 77.1715737,105.171573 L67.9867828,114.356363 L67.9867828,114.356363 Z M16,20 L112,20 C114.209139,20 116,18.209139 116,16 C116,13.790861 114.209139,12 112,12 L16,12 C13.790861,12 12,13.790861 12,16 C12,18.209139 13.790861,20 16,20 L16,20 Z\"></path>\n</svg>"
        },
        "$:/core/images/blank": {
            "title": "$:/core/images/blank",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-blank tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\"></svg>"
        },
        "$:/core/images/bold": {
            "title": "$:/core/images/bold",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-bold tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M41.1456583,51.8095238 L41.1456583,21.8711485 L67.4985994,21.8711485 C70.0084159,21.8711485 72.4285598,22.0802967 74.7591036,22.4985994 C77.0896475,22.9169022 79.1512515,23.6638602 80.9439776,24.7394958 C82.7367036,25.8151314 84.170863,27.3090474 85.2464986,29.2212885 C86.3221342,31.1335296 86.859944,33.5835518 86.859944,36.5714286 C86.859944,41.9496067 85.2465147,45.8337882 82.0196078,48.2240896 C78.792701,50.614391 74.6694929,51.8095238 69.6498599,51.8095238 L41.1456583,51.8095238 Z M13,0 L13,128 L75.0280112,128 C80.7647346,128 86.3519803,127.28292 91.789916,125.848739 C97.2278517,124.414559 102.068139,122.203563 106.310924,119.215686 C110.553709,116.22781 113.929959,112.373506 116.439776,107.652661 C118.949592,102.931816 120.204482,97.3445701 120.204482,90.8907563 C120.204482,82.8832466 118.262391,76.0411115 114.378151,70.3641457 C110.493911,64.6871798 104.607883,60.7133634 96.719888,58.442577 C102.456611,55.6937304 106.788968,52.1680887 109.717087,47.8655462 C112.645206,43.5630037 114.109244,38.1849062 114.109244,31.7310924 C114.109244,25.7553389 113.123259,20.7357813 111.151261,16.6722689 C109.179262,12.6087565 106.400578,9.35201972 102.815126,6.90196078 C99.2296739,4.45190185 94.927196,2.68908101 89.907563,1.61344538 C84.8879301,0.537809748 79.3305627,0 73.2352941,0 L13,0 Z M41.1456583,106.128852 L41.1456583,70.9915966 L71.8011204,70.9915966 C77.896389,70.9915966 82.7964334,72.3958776 86.5014006,75.2044818 C90.2063677,78.0130859 92.0588235,82.7039821 92.0588235,89.2773109 C92.0588235,92.6237329 91.4911355,95.3725383 90.3557423,97.5238095 C89.2203491,99.6750808 87.6965548,101.378145 85.7843137,102.633053 C83.8720726,103.887961 81.661077,104.784311 79.1512605,105.322129 C76.641444,105.859947 74.0121519,106.128852 71.2633053,106.128852 L41.1456583,106.128852 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/cancel-button": {
            "title": "$:/core/images/cancel-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-cancel-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n\t<g fill-rule=\"evenodd\">\n\t    <path d=\"M64,76.3137085 L47.0294734,93.2842351 C43.9038742,96.4098343 38.8399231,96.4084656 35.7157288,93.2842712 C32.5978915,90.166434 32.5915506,85.0947409 35.7157649,81.9705266 L52.6862915,65 L35.7157649,48.0294734 C32.5901657,44.9038742 32.5915344,39.8399231 35.7157288,36.7157288 C38.833566,33.5978915 43.9052591,33.5915506 47.0294734,36.7157649 L64,53.6862915 L80.9705266,36.7157649 C84.0961258,33.5901657 89.1600769,33.5915344 92.2842712,36.7157288 C95.4021085,39.833566 95.4084494,44.9052591 92.2842351,48.0294734 L75.3137085,65 L92.2842351,81.9705266 C95.4098343,85.0961258 95.4084656,90.1600769 92.2842712,93.2842712 C89.166434,96.4021085 84.0947409,96.4084494 80.9705266,93.2842351 L64,76.3137085 Z M64,129 C99.346224,129 128,100.346224 128,65 C128,29.653776 99.346224,1 64,1 C28.653776,1 1.13686838e-13,29.653776 1.13686838e-13,65 C1.13686838e-13,100.346224 28.653776,129 64,129 Z M64,113 C90.509668,113 112,91.509668 112,65 C112,38.490332 90.509668,17 64,17 C37.490332,17 16,38.490332 16,65 C16,91.509668 37.490332,113 64,113 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/chevron-down": {
            "title": "$:/core/images/chevron-down",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-chevron-down tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n\t<g fill-rule=\"evenodd\" transform=\"translate(64.000000, 40.500000) rotate(-270.000000) translate(-64.000000, -40.500000) translate(-22.500000, -26.500000)\">\n        <path d=\"M112.743107,112.12741 C111.310627,113.561013 109.331747,114.449239 107.145951,114.449239 L27.9777917,114.449239 C23.6126002,114.449239 20.0618714,110.904826 20.0618714,106.532572 C20.0618714,102.169214 23.6059497,98.6159054 27.9777917,98.6159054 L99.2285381,98.6159054 L99.2285381,27.365159 C99.2285381,22.9999675 102.77295,19.4492387 107.145205,19.4492387 C111.508562,19.4492387 115.061871,22.993317 115.061871,27.365159 L115.061871,106.533318 C115.061871,108.71579 114.175869,110.694669 112.743378,112.127981 Z\" transform=\"translate(67.561871, 66.949239) rotate(-45.000000) translate(-67.561871, -66.949239) \"></path>\n        <path d=\"M151.35638,112.12741 C149.923899,113.561013 147.94502,114.449239 145.759224,114.449239 L66.5910645,114.449239 C62.225873,114.449239 58.6751442,110.904826 58.6751442,106.532572 C58.6751442,102.169214 62.2192225,98.6159054 66.5910645,98.6159054 L137.841811,98.6159054 L137.841811,27.365159 C137.841811,22.9999675 141.386223,19.4492387 145.758478,19.4492387 C150.121835,19.4492387 153.675144,22.993317 153.675144,27.365159 L153.675144,106.533318 C153.675144,108.71579 152.789142,110.694669 151.356651,112.127981 Z\" transform=\"translate(106.175144, 66.949239) rotate(-45.000000) translate(-106.175144, -66.949239) \"></path>\n\t</g>\n</svg>"
        },
        "$:/core/images/chevron-left": {
            "title": "$:/core/images/chevron-left",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-chevron-left tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\" version=\"1.1\">\n    <g fill-rule=\"evenodd\" transform=\"translate(92.500000, 64.000000) rotate(-180.000000) translate(-92.500000, -64.000000) translate(6.000000, -3.000000)\">\n        <path d=\"M112.743107,112.12741 C111.310627,113.561013 109.331747,114.449239 107.145951,114.449239 L27.9777917,114.449239 C23.6126002,114.449239 20.0618714,110.904826 20.0618714,106.532572 C20.0618714,102.169214 23.6059497,98.6159054 27.9777917,98.6159054 L99.2285381,98.6159054 L99.2285381,27.365159 C99.2285381,22.9999675 102.77295,19.4492387 107.145205,19.4492387 C111.508562,19.4492387 115.061871,22.993317 115.061871,27.365159 L115.061871,106.533318 C115.061871,108.71579 114.175869,110.694669 112.743378,112.127981 Z\" transform=\"translate(67.561871, 66.949239) rotate(-45.000000) translate(-67.561871, -66.949239) \"></path>\n        <path d=\"M151.35638,112.12741 C149.923899,113.561013 147.94502,114.449239 145.759224,114.449239 L66.5910645,114.449239 C62.225873,114.449239 58.6751442,110.904826 58.6751442,106.532572 C58.6751442,102.169214 62.2192225,98.6159054 66.5910645,98.6159054 L137.841811,98.6159054 L137.841811,27.365159 C137.841811,22.9999675 141.386223,19.4492387 145.758478,19.4492387 C150.121835,19.4492387 153.675144,22.993317 153.675144,27.365159 L153.675144,106.533318 C153.675144,108.71579 152.789142,110.694669 151.356651,112.127981 Z\" transform=\"translate(106.175144, 66.949239) rotate(-45.000000) translate(-106.175144, -66.949239) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/chevron-right": {
            "title": "$:/core/images/chevron-right",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-chevron-right tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\" transform=\"translate(-48.000000, -3.000000)\">\n        <path d=\"M112.743107,112.12741 C111.310627,113.561013 109.331747,114.449239 107.145951,114.449239 L27.9777917,114.449239 C23.6126002,114.449239 20.0618714,110.904826 20.0618714,106.532572 C20.0618714,102.169214 23.6059497,98.6159054 27.9777917,98.6159054 L99.2285381,98.6159054 L99.2285381,27.365159 C99.2285381,22.9999675 102.77295,19.4492387 107.145205,19.4492387 C111.508562,19.4492387 115.061871,22.993317 115.061871,27.365159 L115.061871,106.533318 C115.061871,108.71579 114.175869,110.694669 112.743378,112.127981 Z\" transform=\"translate(67.561871, 66.949239) rotate(-45.000000) translate(-67.561871, -66.949239) \"></path>\n        <path d=\"M151.35638,112.12741 C149.923899,113.561013 147.94502,114.449239 145.759224,114.449239 L66.5910645,114.449239 C62.225873,114.449239 58.6751442,110.904826 58.6751442,106.532572 C58.6751442,102.169214 62.2192225,98.6159054 66.5910645,98.6159054 L137.841811,98.6159054 L137.841811,27.365159 C137.841811,22.9999675 141.386223,19.4492387 145.758478,19.4492387 C150.121835,19.4492387 153.675144,22.993317 153.675144,27.365159 L153.675144,106.533318 C153.675144,108.71579 152.789142,110.694669 151.356651,112.127981 Z\" transform=\"translate(106.175144, 66.949239) rotate(-45.000000) translate(-106.175144, -66.949239) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/chevron-up": {
            "title": "$:/core/images/chevron-up",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-chevron-up tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n\t<g fill-rule=\"evenodd\" transform=\"translate(64.000000, 89.500000) rotate(-90.000000) translate(-64.000000, -89.500000) translate(-22.500000, 22.500000)\">\n        <path d=\"M112.743107,112.12741 C111.310627,113.561013 109.331747,114.449239 107.145951,114.449239 L27.9777917,114.449239 C23.6126002,114.449239 20.0618714,110.904826 20.0618714,106.532572 C20.0618714,102.169214 23.6059497,98.6159054 27.9777917,98.6159054 L99.2285381,98.6159054 L99.2285381,27.365159 C99.2285381,22.9999675 102.77295,19.4492387 107.145205,19.4492387 C111.508562,19.4492387 115.061871,22.993317 115.061871,27.365159 L115.061871,106.533318 C115.061871,108.71579 114.175869,110.694669 112.743378,112.127981 Z\" transform=\"translate(67.561871, 66.949239) rotate(-45.000000) translate(-67.561871, -66.949239) \"></path>\n        <path d=\"M151.35638,112.12741 C149.923899,113.561013 147.94502,114.449239 145.759224,114.449239 L66.5910645,114.449239 C62.225873,114.449239 58.6751442,110.904826 58.6751442,106.532572 C58.6751442,102.169214 62.2192225,98.6159054 66.5910645,98.6159054 L137.841811,98.6159054 L137.841811,27.365159 C137.841811,22.9999675 141.386223,19.4492387 145.758478,19.4492387 C150.121835,19.4492387 153.675144,22.993317 153.675144,27.365159 L153.675144,106.533318 C153.675144,108.71579 152.789142,110.694669 151.356651,112.127981 Z\" transform=\"translate(106.175144, 66.949239) rotate(-45.000000) translate(-106.175144, -66.949239) \"></path>\n\t</g>\n</svg>"
        },
        "$:/core/images/clone-button": {
            "title": "$:/core/images/clone-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-clone-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M32.2650915,96 L32.2650915,120.002359 C32.2650915,124.419334 35.8432884,128 40.2627323,128 L120.002359,128 C124.419334,128 128,124.421803 128,120.002359 L128,40.2627323 C128,35.8457573 124.421803,32.2650915 120.002359,32.2650915 L96,32.2650915 L96,48 L108.858899,48 C110.519357,48 111.853018,49.3405131 111.853018,50.9941198 L111.853018,108.858899 C111.853018,110.519357 110.512505,111.853018 108.858899,111.853018 L50.9941198,111.853018 C49.333661,111.853018 48,110.512505 48,108.858899 L48,96 L32.2650915,96 Z\"></path>\n        <path d=\"M40,56 L32.0070969,56 C27.5881712,56 24,52.418278 24,48 C24,43.5907123 27.5848994,40 32.0070969,40 L40,40 L40,32.0070969 C40,27.5881712 43.581722,24 48,24 C52.4092877,24 56,27.5848994 56,32.0070969 L56,40 L63.9929031,40 C68.4118288,40 72,43.581722 72,48 C72,52.4092877 68.4151006,56 63.9929031,56 L56,56 L56,63.9929031 C56,68.4118288 52.418278,72 48,72 C43.5907123,72 40,68.4151006 40,63.9929031 L40,56 Z M7.9992458,0 C3.58138434,0 0,3.5881049 0,7.9992458 L0,88.0007542 C0,92.4186157 3.5881049,96 7.9992458,96 L88.0007542,96 C92.4186157,96 96,92.4118951 96,88.0007542 L96,7.9992458 C96,3.58138434 92.4118951,0 88.0007542,0 L7.9992458,0 Z M19.0010118,16 C17.3435988,16 16,17.336731 16,19.0010118 L16,76.9989882 C16,78.6564012 17.336731,80 19.0010118,80 L76.9989882,80 C78.6564012,80 80,78.663269 80,76.9989882 L80,19.0010118 C80,17.3435988 78.663269,16 76.9989882,16 L19.0010118,16 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/close-all-button": {
            "title": "$:/core/images/close-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-close-all-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\" transform=\"translate(-23.000000, -23.000000)\">\n        <path d=\"M43,131 L22.9976794,131 C18.5827987,131 15,127.418278 15,123 C15,118.590712 18.5806831,115 22.9976794,115 L43,115 L43,94.9976794 C43,90.5827987 46.581722,87 51,87 C55.4092877,87 59,90.5806831 59,94.9976794 L59,115 L79.0023206,115 C83.4172013,115 87,118.581722 87,123 C87,127.409288 83.4193169,131 79.0023206,131 L59,131 L59,151.002321 C59,155.417201 55.418278,159 51,159 C46.5907123,159 43,155.419317 43,151.002321 L43,131 Z\" transform=\"translate(51.000000, 123.000000) rotate(-45.000000) translate(-51.000000, -123.000000) \"></path>\n        <path d=\"M43,59 L22.9976794,59 C18.5827987,59 15,55.418278 15,51 C15,46.5907123 18.5806831,43 22.9976794,43 L43,43 L43,22.9976794 C43,18.5827987 46.581722,15 51,15 C55.4092877,15 59,18.5806831 59,22.9976794 L59,43 L79.0023206,43 C83.4172013,43 87,46.581722 87,51 C87,55.4092877 83.4193169,59 79.0023206,59 L59,59 L59,79.0023206 C59,83.4172013 55.418278,87 51,87 C46.5907123,87 43,83.4193169 43,79.0023206 L43,59 Z\" transform=\"translate(51.000000, 51.000000) rotate(-45.000000) translate(-51.000000, -51.000000) \"></path>\n        <path d=\"M115,59 L94.9976794,59 C90.5827987,59 87,55.418278 87,51 C87,46.5907123 90.5806831,43 94.9976794,43 L115,43 L115,22.9976794 C115,18.5827987 118.581722,15 123,15 C127.409288,15 131,18.5806831 131,22.9976794 L131,43 L151.002321,43 C155.417201,43 159,46.581722 159,51 C159,55.4092877 155.419317,59 151.002321,59 L131,59 L131,79.0023206 C131,83.4172013 127.418278,87 123,87 C118.590712,87 115,83.4193169 115,79.0023206 L115,59 Z\" transform=\"translate(123.000000, 51.000000) rotate(-45.000000) translate(-123.000000, -51.000000) \"></path>\n        <path d=\"M115,131 L94.9976794,131 C90.5827987,131 87,127.418278 87,123 C87,118.590712 90.5806831,115 94.9976794,115 L115,115 L115,94.9976794 C115,90.5827987 118.581722,87 123,87 C127.409288,87 131,90.5806831 131,94.9976794 L131,115 L151.002321,115 C155.417201,115 159,118.581722 159,123 C159,127.409288 155.419317,131 151.002321,131 L131,131 L131,151.002321 C131,155.417201 127.418278,159 123,159 C118.590712,159 115,155.419317 115,151.002321 L115,131 Z\" transform=\"translate(123.000000, 123.000000) rotate(-45.000000) translate(-123.000000, -123.000000) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/close-button": {
            "title": "$:/core/images/close-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-close-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M65.0864256,75.4091629 L14.9727349,125.522854 C11.8515951,128.643993 6.78104858,128.64922 3.65685425,125.525026 C0.539017023,122.407189 0.5336324,117.334539 3.65902635,114.209145 L53.7727171,64.0954544 L3.65902635,13.9817637 C0.537886594,10.8606239 0.532659916,5.79007744 3.65685425,2.6658831 C6.77469148,-0.451954124 11.8473409,-0.457338747 14.9727349,2.66805521 L65.0864256,52.7817459 L115.200116,2.66805521 C118.321256,-0.453084553 123.391803,-0.458311231 126.515997,2.6658831 C129.633834,5.78372033 129.639219,10.8563698 126.513825,13.9817637 L76.4001341,64.0954544 L126.513825,114.209145 C129.634965,117.330285 129.640191,122.400831 126.515997,125.525026 C123.39816,128.642863 118.32551,128.648248 115.200116,125.522854 L65.0864256,75.4091629 L65.0864256,75.4091629 Z\"></path>\n    </g>\n</svg>\n"
        },
        "$:/core/images/close-others-button": {
            "title": "$:/core/images/close-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-close-others-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M64,128 C99.346224,128 128,99.346224 128,64 C128,28.653776 99.346224,0 64,0 C28.653776,0 0,28.653776 0,64 C0,99.346224 28.653776,128 64,128 Z M64,112 C90.509668,112 112,90.509668 112,64 C112,37.490332 90.509668,16 64,16 C37.490332,16 16,37.490332 16,64 C16,90.509668 37.490332,112 64,112 Z M64,96 C81.673112,96 96,81.673112 96,64 C96,46.326888 81.673112,32 64,32 C46.326888,32 32,46.326888 32,64 C32,81.673112 46.326888,96 64,96 Z M64,80 C72.836556,80 80,72.836556 80,64 C80,55.163444 72.836556,48 64,48 C55.163444,48 48,55.163444 48,64 C48,72.836556 55.163444,80 64,80 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/copy-clipboard": {
            "title": "$:/core/images/copy-clipboard",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-copy-clipboard tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n\t<g fill-rule=\"evenodd\">\n\t\t<rect x=\"40\" y=\"40\" width=\"33\" height=\"8\" rx=\"4\"></rect>\n\t\t<rect x=\"40\" y=\"82\" width=\"17\" height=\"8\" rx=\"4\"></rect>\n\t\t<rect x=\"40\" y=\"54\" width=\"17\" height=\"8\" rx=\"4\"></rect>\n\t\t<rect x=\"40\" y=\"96\" width=\"33\" height=\"8\" rx=\"4\"></rect>\n\t\t<rect x=\"40\" y=\"68\" width=\"12\" height=\"8\" rx=\"4\"></rect>\n\t\t<path d=\"M40,16 L23.9992458,16 C19.5813843,16 16,19.5907123 16,24 C16,24.0016363 16.0000005,24.0032725 16.0000015,24.0049086 C16.0000005,24.0065441 16,24.0081803 16,24.0098166 L16,119.990183 C16,119.99182 16.0000005,119.993456 16.0000015,119.995092 C16.0000005,119.996727 16,119.998364 16,120 C16,124.409288 19.5813843,128 23.9992458,128 L104.000754,128 C106.205061,128 108.203844,127.105595 109.652065,125.659342 C111.102424,124.21251 112,122.214511 112,120.007595 L112,103.992405 C112,99.5776607 108.418278,96 104,96 C99.5907123,96 96,99.5783218 96,103.992405 L96,112 L32,112 L32,32 L96,32 L96,40.0075946 C96,44.4223393 99.581722,48 104,48 C108.409288,48 112,44.4216782 112,40.0075946 L112,23.9924054 C112,21.7851587 111.104671,19.7871591 109.657101,18.3409203 C108.203844,16.8944047 106.205061,16 104.000754,16 L88,16 C88,11.5907123 84.4151006,8 79.9929031,8 L48.0070969,8 C43.5881712,8 40,11.581722 40,16 Z M44,14.9958262 C44,12.7889923 45.7964248,11 48.0000255,11 L79.9999745,11 C82.2091276,11 84,12.7965212 84,14.9958262 L84,19.0041738 C84,21.2110077 82.2035752,23 79.9999745,23 L48.0000255,23 C45.7908724,23 44,21.2034788 44,19.0041738 L44,14.9958262 Z\"></path>\n\t\t<rect x=\"62\" y=\"64\" width=\"66\" height=\"16\" rx=\"8\"></rect>\n\t\t<path d=\"M60.6568542,85.6568542 L76.6568542,69.6568543 L65.3431458,69.6568542 L81.3431458,85.6568542 C84.4673401,88.7810486 89.5326599,88.7810486 92.6568542,85.6568542 C95.7810486,82.5326599 95.7810486,77.4673401 92.6568542,74.3431458 L76.6568542,58.3431458 C73.5326599,55.2189514 68.4673401,55.2189514 65.3431458,58.3431457 L49.3431458,74.3431457 C46.2189514,77.4673401 46.2189514,82.5326599 49.3431457,85.6568542 C52.4673401,88.7810486 57.5326599,88.7810486 60.6568542,85.6568542 L60.6568542,85.6568542 Z\" transform=\"translate(71.000000, 72.000000) rotate(-90.000000) translate(-71.000000, -72.000000) \"></path>\n\t</g>\n</svg>"
        },
        "$:/core/images/delete-button": {
            "title": "$:/core/images/delete-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-delete-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\" transform=\"translate(12.000000, 0.000000)\">\n        <rect x=\"0\" y=\"11\" width=\"105\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"28\" y=\"0\" width=\"48\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"8\" y=\"16\" width=\"16\" height=\"112\" rx=\"8\"></rect>\n        <rect x=\"8\" y=\"112\" width=\"88\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"80\" y=\"16\" width=\"16\" height=\"112\" rx=\"8\"></rect>\n        <rect x=\"56\" y=\"16\" width=\"16\" height=\"112\" rx=\"8\"></rect>\n        <rect x=\"32\" y=\"16\" width=\"16\" height=\"112\" rx=\"8\"></rect>\n    </g>\n</svg>"
        },
        "$:/core/images/done-button": {
            "title": "$:/core/images/done-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-done-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M3.52445141,76.8322939 C2.07397484,75.3828178 1.17514421,73.3795385 1.17514421,71.1666288 L1.17514421,23.1836596 C1.17514421,18.7531992 4.75686621,15.1751442 9.17514421,15.1751442 C13.5844319,15.1751442 17.1751442,18.7606787 17.1751442,23.1836596 L17.1751442,63.1751442 L119.173716,63.1751442 C123.590457,63.1751442 127.175144,66.7568662 127.175144,71.1751442 C127.175144,75.5844319 123.592783,79.1751442 119.173716,79.1751442 L9.17657227,79.1751442 C6.96796403,79.1751442 4.9674142,78.279521 3.51911285,76.8315312 Z\" id=\"Rectangle-285\" transform=\"translate(64.175144, 47.175144) rotate(-45.000000) translate(-64.175144, -47.175144) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/down-arrow": {
            "title": "$:/core/images/down-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-down-arrow tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <path d=\"M109.35638,81.3533152 C107.923899,82.7869182 105.94502,83.6751442 103.759224,83.6751442 L24.5910645,83.6751442 C20.225873,83.6751442 16.6751442,80.1307318 16.6751442,75.7584775 C16.6751442,71.3951199 20.2192225,67.8418109 24.5910645,67.8418109 L95.8418109,67.8418109 L95.8418109,-3.40893546 C95.8418109,-7.77412698 99.3862233,-11.3248558 103.758478,-11.3248558 C108.121835,-11.3248558 111.675144,-7.78077754 111.675144,-3.40893546 L111.675144,75.7592239 C111.675144,77.9416955 110.789142,79.9205745 109.356651,81.3538862 Z\" transform=\"translate(64.175144, 36.175144) rotate(45.000000) translate(-64.175144, -36.175144) \"></path>\n</svg>"
        },
        "$:/core/images/download-button": {
            "title": "$:/core/images/download-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-download-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path class=\"tc-image-download-button-ring\" d=\"M64,128 C99.346224,128 128,99.346224 128,64 C128,28.653776 99.346224,0 64,0 C28.653776,0 0,28.653776 0,64 C0,99.346224 28.653776,128 64,128 Z M64,112 C90.509668,112 112,90.509668 112,64 C112,37.490332 90.509668,16 64,16 C37.490332,16 16,37.490332 16,64 C16,90.509668 37.490332,112 64,112 Z\"/><path d=\"M34.3496823,66.4308767 L61.2415823,93.634668 C63.0411536,95.4551107 65.9588502,95.4551107 67.7584215,93.634668 L94.6503215,66.4308767 C96.4498928,64.610434 96.4498928,61.6588981 94.6503215,59.8384554 C93.7861334,58.9642445 92.6140473,58.4731195 91.3919019,58.4731195 L82.9324098,58.4731195 C80.3874318,58.4731195 78.3243078,56.3860674 78.3243078,53.8115729 L78.3243078,38.6615466 C78.3243078,36.0870521 76.2611837,34 73.7162058,34 L55.283798,34 C52.7388201,34 50.675696,36.0870521 50.675696,38.6615466 L50.675696,38.6615466 L50.675696,53.8115729 C50.675696,56.3860674 48.612572,58.4731195 46.0675941,58.4731195 L37.608102,58.4731195 C35.063124,58.4731195 33,60.5601716 33,63.134666 C33,64.3709859 33.4854943,65.5566658 34.3496823,66.4308767 L34.3496823,66.4308767 Z\"/></g></svg>"
        },
        "$:/core/images/edit-button": {
            "title": "$:/core/images/edit-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-edit-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M116.870058,45.3431458 L108.870058,45.3431458 L108.870058,45.3431458 L108.870058,61.3431458 L116.870058,61.3431458 L116.870058,45.3431458 Z M124.870058,45.3431458 L127.649881,45.3431458 C132.066101,45.3431458 135.656854,48.9248678 135.656854,53.3431458 C135.656854,57.7524334 132.07201,61.3431458 127.649881,61.3431458 L124.870058,61.3431458 L124.870058,45.3431458 Z M100.870058,45.3431458 L15.6638275,45.3431458 C15.5064377,45.3431458 15.3501085,45.3476943 15.1949638,45.3566664 L15.1949638,45.3566664 C15.0628002,45.3477039 14.928279,45.3431458 14.7913977,45.3431458 C6.68160973,45.3431458 -8.34314575,53.3431458 -8.34314575,53.3431458 C-8.34314575,53.3431458 6.85614548,61.3431458 14.7913977,61.3431458 C14.9266533,61.3431458 15.0596543,61.3384973 15.190398,61.3293588 C15.3470529,61.3385075 15.5049057,61.3431458 15.6638275,61.3431458 L100.870058,61.3431458 L100.870058,45.3431458 L100.870058,45.3431458 Z\" transform=\"translate(63.656854, 53.343146) rotate(-45.000000) translate(-63.656854, -53.343146) \"></path>\n        <path d=\"M35.1714596,124.189544 C41.9594858,123.613403 49.068777,121.917633 58.85987,118.842282 C60.6854386,118.268877 62.4306907,117.705515 65.1957709,116.802278 C81.1962861,111.575575 87.0734839,109.994907 93.9414474,109.655721 C102.29855,109.242993 107.795169,111.785371 111.520478,118.355045 C112.610163,120.276732 115.051363,120.951203 116.97305,119.861518 C118.894737,118.771832 119.569207,116.330633 118.479522,114.408946 C113.146151,105.003414 104.734907,101.112919 93.5468356,101.66546 C85.6716631,102.054388 79.4899908,103.716944 62.7116783,109.197722 C59.9734132,110.092199 58.2519873,110.64787 56.4625698,111.20992 C37.002649,117.322218 25.6914684,118.282267 16.8654804,112.957098 C14.9739614,111.815848 12.5154166,112.424061 11.3741667,114.31558 C10.2329168,116.207099 10.84113,118.665644 12.7326489,119.806894 C19.0655164,123.627836 26.4866335,124.926678 35.1714596,124.189544 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/erase": {
            "title": "$:/core/images/erase",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-erase tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M60.0870401,127.996166 L123.102318,64.980888 C129.636723,58.4464827 129.629513,47.8655877 123.098967,41.3350425 L99.4657866,17.7018617 C92.927448,11.1635231 82.3486358,11.1698163 75.8199411,17.698511 L4.89768189,88.6207702 C-1.63672343,95.1551755 -1.6295126,105.736071 4.90103262,112.266616 L20.6305829,127.996166 L60.0870401,127.996166 Z M25.1375576,120.682546 L10.812569,106.357558 C7.5455063,103.090495 7.54523836,97.793808 10.8048093,94.5342371 L46.2691086,59.0699377 L81.7308914,94.5317205 L55.5800654,120.682546 L25.1375576,120.682546 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/excise": {
            "title": "$:/core/images/excise",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-excise tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M56,107.313709 L53.6568542,109.656854 C50.5326599,112.781049 45.4673401,112.781049 42.3431457,109.656854 C39.2189514,106.53266 39.2189514,101.46734 42.3431458,98.3431457 L58.3431458,82.3431457 C61.4673401,79.2189514 66.5326599,79.2189514 69.6568542,82.3431458 L85.6568542,98.3431458 C88.7810486,101.46734 88.7810486,106.53266 85.6568542,109.656854 C82.5326599,112.781049 77.4673401,112.781049 74.3431458,109.656854 L72,107.313708 L72,121.597798 C72,125.133636 68.418278,128 64,128 C59.581722,128 56,125.133636 56,121.597798 L56,107.313709 Z M0,40.0070969 C0,35.5848994 3.59071231,32 8,32 C12.418278,32 16,35.5881712 16,40.0070969 L16,71.9929031 C16,76.4151006 12.4092877,80 8,80 C3.581722,80 0,76.4118288 0,71.9929031 L0,40.0070969 Z M32,40.0070969 C32,35.5848994 35.5907123,32 40,32 C44.418278,32 48,35.5881712 48,40.0070969 L48,71.9929031 C48,76.4151006 44.4092877,80 40,80 C35.581722,80 32,76.4118288 32,71.9929031 L32,40.0070969 Z M80,40.0070969 C80,35.5848994 83.5907123,32 88,32 C92.418278,32 96,35.5881712 96,40.0070969 L96,71.9929031 C96,76.4151006 92.4092877,80 88,80 C83.581722,80 80,76.4118288 80,71.9929031 L80,40.0070969 Z M56,8.00709688 C56,3.58489938 59.5907123,0 64,0 C68.418278,0 72,3.58817117 72,8.00709688 L72,39.9929031 C72,44.4151006 68.4092877,48 64,48 C59.581722,48 56,44.4118288 56,39.9929031 L56,8.00709688 Z M112,40.0070969 C112,35.5848994 115.590712,32 120,32 C124.418278,32 128,35.5881712 128,40.0070969 L128,71.9929031 C128,76.4151006 124.409288,80 120,80 C115.581722,80 112,76.4118288 112,71.9929031 L112,40.0070969 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/export-button": {
            "title": "$:/core/images/export-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-export-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M8.00348646,127.999999 C8.00464867,128 8.00581094,128 8.00697327,128 L119.993027,128 C122.205254,128 124.207939,127.101378 125.657096,125.651198 L125.656838,125.65759 C127.104563,124.210109 128,122.21009 128,119.999949 L128,56.0000511 C128,51.5817449 124.409288,48 120,48 C115.581722,48 112,51.5797863 112,56.0000511 L112,112 L16,112 L16,56.0000511 C16,51.5817449 12.4092877,48 8,48 C3.581722,48 7.10542736e-15,51.5797863 7.10542736e-15,56.0000511 L7.10542736e-15,119.999949 C7.10542736e-15,124.418255 3.59071231,128 8,128 C8.00116233,128 8.0023246,128 8.00348681,127.999999 Z M56.6235633,27.3113724 L47.6580188,36.2769169 C44.5333664,39.4015692 39.4634864,39.4061295 36.339292,36.2819351 C33.2214548,33.1640979 33.2173444,28.0901742 36.3443103,24.9632084 L58.9616908,2.34582788 C60.5248533,0.782665335 62.5748436,0.000361191261 64.624516,2.38225238e-14 L64.6193616,0.00151809229 C66.6695374,0.000796251595 68.7211167,0.781508799 70.2854358,2.34582788 L92.9028163,24.9632084 C96.0274686,28.0878607 96.0320289,33.1577408 92.9078345,36.2819351 C89.7899973,39.3997724 84.7160736,39.4038827 81.5891078,36.2769169 L72.6235633,27.3113724 L72.6235633,88.5669606 C72.6235633,92.9781015 69.0418413,96.5662064 64.6235633,96.5662064 C60.2142756,96.5662064 56.6235633,92.984822 56.6235633,88.5669606 L56.6235633,27.3113724 L56.6235633,27.3113724 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/file": {
            "title": "$:/core/images/file",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-file tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"nonzero\">\n        <path d=\"M111.96811,30.5 L112,30.5 L112,119.999079 C112,124.417866 108.419113,128 104.000754,128 L23.9992458,128 C19.5813843,128 16,124.417687 16,119.999079 L16,8.00092105 C16,3.58213437 19.5808867,0 23.9992458,0 L81,0 L81,0.0201838424 C83.1589869,-0.071534047 85.3482153,0.707077645 86.9982489,2.35711116 L109.625176,24.9840387 C111.151676,26.510538 111.932942,28.4998414 111.96811,30.5 L111.96811,30.5 Z M81,8 L24,8 L24,120 L104,120 L104,30.5 L89.0003461,30.5 C84.5818769,30.5 81,26.9216269 81,22.4996539 L81,8 Z\"></path>\n        <rect x=\"32\" y=\"36\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"52\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"68\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"84\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"100\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"20\" width=\"40\" height=\"8\" rx=\"4\"></rect>\n    </g>\n</svg>"
        },
        "$:/core/images/fixed-height": {
            "title": "$:/core/images/fixed-height",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-fixed-height tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M60,35.6568542 L50.8284271,44.8284271 C49.26633,46.3905243 46.73367,46.3905243 45.1715729,44.8284271 C43.6094757,43.26633 43.6094757,40.73367 45.1715729,39.1715729 L61.1715729,23.1715729 C62.73367,21.6094757 65.2663299,21.6094757 66.8284271,23.1715728 L82.8284278,39.1715728 C84.390525,40.7336699 84.390525,43.2663299 82.8284279,44.8284271 C81.2663308,46.3905243 78.7336709,46.3905243 77.1715737,44.8284272 L68,35.6568539 L68,93.3431461 L77.1715737,84.1715728 C78.7336709,82.6094757 81.2663308,82.6094757 82.8284279,84.1715729 C84.390525,85.7336701 84.390525,88.2663301 82.8284278,89.8284272 L66.8284271,105.828427 C65.2663299,107.390524 62.73367,107.390524 61.1715729,105.828427 L45.1715729,89.8284271 C43.6094757,88.26633 43.6094757,85.73367 45.1715729,84.1715729 C46.73367,82.6094757 49.26633,82.6094757 50.8284271,84.1715729 L60,93.3431458 L60,35.6568542 L60,35.6568542 Z M16,116 L112,116 C114.209139,116 116,114.209139 116,112 C116,109.790861 114.209139,108 112,108 L16,108 C13.790861,108 12,109.790861 12,112 C12,114.209139 13.790861,116 16,116 L16,116 Z M16,20 L112,20 C114.209139,20 116,18.209139 116,16 C116,13.790861 114.209139,12 112,12 L16,12 C13.790861,12 12,13.790861 12,16 C12,18.209139 13.790861,20 16,20 L16,20 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/fold-all-button": {
            "title": "$:/core/images/fold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-fold-all tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"0\" y=\"0\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"0\" y=\"64\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <path d=\"M64.0292774,58.6235628 C61.9791013,58.6242848 59.9275217,57.8435723 58.3632024,56.279253 L35.7458219,33.6618725 C32.6211696,30.5372202 32.6166093,25.4673401 35.7408036,22.3431458 C38.8586409,19.2253085 43.9325646,19.2211982 47.0595304,22.348164 L64.0250749,39.3137085 L80.9906194,22.348164 C84.1152717,19.2235117 89.1851518,19.2189514 92.3093461,22.3431458 C95.4271834,25.460983 95.4312937,30.5349067 92.3043279,33.6618725 L69.6869474,56.279253 C68.1237851,57.8424153 66.0737951,58.6247195 64.0241231,58.6250809 Z\" transform=\"translate(64.024316, 39.313708) scale(1, -1) translate(-64.024316, -39.313708) \"></path>\n        <path d=\"M64.0292774,123.621227 C61.9791013,123.621949 59.9275217,122.841236 58.3632024,121.276917 L35.7458219,98.6595365 C32.6211696,95.5348842 32.6166093,90.4650041 35.7408036,87.3408098 C38.8586409,84.2229725 43.9325646,84.2188622 47.0595304,87.345828 L64.0250749,104.311373 L80.9906194,87.345828 C84.1152717,84.2211757 89.1851518,84.2166154 92.3093461,87.3408098 C95.4271834,90.458647 95.4312937,95.5325707 92.3043279,98.6595365 L69.6869474,121.276917 C68.1237851,122.840079 66.0737951,123.622383 64.0241231,123.622745 Z\" transform=\"translate(64.024316, 104.311372) scale(1, -1) translate(-64.024316, -104.311372) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/fold-button": {
            "title": "$:/core/images/fold-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-fold tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"0\" y=\"0\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <path d=\"M64.0292774,63.6235628 C61.9791013,63.6242848 59.9275217,62.8435723 58.3632024,61.279253 L35.7458219,38.6618725 C32.6211696,35.5372202 32.6166093,30.4673401 35.7408036,27.3431458 C38.8586409,24.2253085 43.9325646,24.2211982 47.0595304,27.348164 L64.0250749,44.3137085 L80.9906194,27.348164 C84.1152717,24.2235117 89.1851518,24.2189514 92.3093461,27.3431458 C95.4271834,30.460983 95.4312937,35.5349067 92.3043279,38.6618725 L69.6869474,61.279253 C68.1237851,62.8424153 66.0737951,63.6247195 64.0241231,63.6250809 Z\" transform=\"translate(64.024316, 44.313708) scale(1, -1) translate(-64.024316, -44.313708) \"></path>\n        <path d=\"M64.0049614,105.998482 C61.9547853,105.999204 59.9032057,105.218491 58.3388864,103.654172 L35.7215059,81.0367916 C32.5968535,77.9121393 32.5922933,72.8422592 35.7164876,69.7180649 C38.8343248,66.6002276 43.9082485,66.5961173 47.0352144,69.7230831 L64.0007589,86.6886276 L80.9663034,69.7230831 C84.0909557,66.5984308 89.1608358,66.5938705 92.2850301,69.7180649 C95.4028673,72.8359021 95.4069777,77.9098258 92.2800119,81.0367916 L69.6626314,103.654172 C68.099469,105.217334 66.0494791,105.999639 63.999807,106 Z\" transform=\"translate(64.000000, 86.688628) scale(1, -1) translate(-64.000000, -86.688628) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/fold-others-button": {
            "title": "$:/core/images/fold-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-fold-others tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"0\" y=\"56.0314331\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <path d=\"M101.657101,104.948818 C100.207918,103.498614 98.2051847,102.599976 95.9929031,102.599976 L72,102.599976 L72,78.6070725 C72,76.3964271 71.1036108,74.3936927 69.6545293,72.9441002 L69.6571005,72.9488183 C68.2079177,71.4986143 66.2051847,70.5999756 63.9929031,70.5999756 L32.0070969,70.5999756 C27.5881712,70.5999756 24,74.1816976 24,78.5999756 C24,83.0092633 27.5848994,86.5999756 32.0070969,86.5999756 L56,86.5999756 L56,110.592879 C56,112.803524 56.8963895,114.806259 58.3454713,116.255852 L58.3429,116.251133 C59.7920828,117.701337 61.7948156,118.599976 64.0070969,118.599976 L88,118.599976 L88,142.592879 C88,147.011804 91.581722,150.599976 96,150.599976 C100.409288,150.599976 104,147.015076 104,142.592879 L104,110.607072 C104,108.396427 103.103611,106.393693 101.654529,104.9441 Z\" transform=\"translate(64.000000, 110.599976) rotate(-45.000000) translate(-64.000000, -110.599976) \"></path>\n        <path d=\"M101.725643,11.7488671 C100.27646,10.2986632 98.2737272,9.40002441 96.0614456,9.40002441 L72.0685425,9.40002441 L72.0685425,-14.5928787 C72.0685425,-16.8035241 71.1721533,-18.8062584 69.7230718,-20.255851 L69.725643,-20.2511329 C68.2764602,-21.7013368 66.2737272,-22.5999756 64.0614456,-22.5999756 L32.0756394,-22.5999756 C27.6567137,-22.5999756 24.0685425,-19.0182536 24.0685425,-14.5999756 C24.0685425,-10.1906879 27.6534419,-6.59997559 32.0756394,-6.59997559 L56.0685425,-6.59997559 L56.0685425,17.3929275 C56.0685425,19.6035732 56.964932,21.6063078 58.4140138,23.0559004 L58.4114425,23.0511823 C59.8606253,24.5013859 61.8633581,25.4000244 64.0756394,25.4000244 L88.0685425,25.4000244 L88.0685425,49.3929275 C88.0685425,53.8118532 91.6502645,57.4000244 96.0685425,57.4000244 C100.47783,57.4000244 104.068542,53.815125 104.068542,49.3929275 L104.068542,17.4071213 C104.068542,15.1964759 103.172153,13.1937416 101.723072,11.744149 Z\" transform=\"translate(64.068542, 17.400024) scale(1, -1) rotate(-45.000000) translate(-64.068542, -17.400024) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/folder": {
            "title": "$:/core/images/folder",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-folder tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M55.6943257,128.000004 L7.99859666,128.000004 C3.5810937,128.000004 0,124.413822 0,119.996384 L0,48.0036243 C0,43.5833471 3.58387508,40.0000044 7.99859666,40.0000044 L16,40.0000044 L16,31.9999914 C16,27.5817181 19.5783731,24 24.0003461,24 L55.9996539,24 C60.4181231,24 64,27.5800761 64,31.9999914 L64,40.0000044 L104.001403,40.0000044 C108.418906,40.0000044 112,43.5861868 112,48.0036243 L112,59.8298353 L104,59.7475921 L104,51.9994189 C104,49.7887607 102.207895,48.0000044 99.9972215,48.0000044 L56,48.0000044 L56,36.0000255 C56,33.7898932 54.2072328,32 51.9957423,32 L28.0042577,32 C25.7890275,32 24,33.7908724 24,36.0000255 L24,48.0000044 L12.0027785,48.0000044 C9.78987688,48.0000044 8,49.7906032 8,51.9994189 L8,116.00059 C8,118.211248 9.79210499,120.000004 12.0027785,120.000004 L58.7630167,120.000004 L55.6943257,128.000004 L55.6943257,128.000004 Z\"></path>\n        <path d=\"M23.8728955,55.5 L119.875702,55.5 C124.293205,55.5 126.87957,59.5532655 125.650111,64.5630007 L112.305967,118.936999 C111.077582,123.942356 106.497904,128 102.083183,128 L6.08037597,128 C1.66287302,128 -0.923492342,123.946735 0.305967145,118.936999 L13.650111,64.5630007 C14.878496,59.5576436 19.4581739,55.5 23.8728955,55.5 L23.8728955,55.5 L23.8728955,55.5 Z M25.6530124,64 L113.647455,64 C115.858129,64 117.151473,66.0930612 116.538306,68.6662267 L105.417772,115.333773 C104.803671,117.910859 102.515967,120 100.303066,120 L12.3086228,120 C10.0979492,120 8.8046054,117.906939 9.41777189,115.333773 L20.5383062,68.6662267 C21.1524069,66.0891409 23.4401107,64 25.6530124,64 L25.6530124,64 L25.6530124,64 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/full-screen-button": {
            "title": "$:/core/images/full-screen-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-full-screen-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g>\n        <g>\n            <path d=\"M5.29777586e-31,8 C1.59060409e-15,3.581722 3.581722,0 8,0 L40,0 C44.418278,0 48,3.581722 48,8 C48,12.418278 44.418278,16 40,16 L16,16 L16,40 C16,44.418278 12.418278,48 8,48 C3.581722,48 -3.55271368e-15,44.418278 0,40 L3.55271368e-15,8 Z\"></path>\n        </g>\n        <g transform=\"translate(104.000000, 104.000000) rotate(-180.000000) translate(-104.000000, -104.000000) translate(80.000000, 80.000000)\">\n            <path d=\"M5.29777586e-31,8 C1.59060409e-15,3.581722 3.581722,0 8,0 L40,0 C44.418278,0 48,3.581722 48,8 C48,12.418278 44.418278,16 40,16 L16,16 L16,40 C16,44.418278 12.418278,48 8,48 C3.581722,48 -3.55271368e-15,44.418278 0,40 L3.55271368e-15,8 Z\"></path>\n        </g>\n        <g transform=\"translate(24.000000, 104.000000) rotate(-90.000000) translate(-24.000000, -104.000000) translate(0.000000, 80.000000)\">\n            <path d=\"M5.29777586e-31,8 C1.59060409e-15,3.581722 3.581722,0 8,0 L40,0 C44.418278,0 48,3.581722 48,8 C48,12.418278 44.418278,16 40,16 L16,16 L16,40 C16,44.418278 12.418278,48 8,48 C3.581722,48 -3.55271368e-15,44.418278 0,40 L3.55271368e-15,8 Z\"></path>\n        </g>\n        <g transform=\"translate(104.000000, 24.000000) rotate(90.000000) translate(-104.000000, -24.000000) translate(80.000000, 0.000000)\">\n            <path d=\"M5.29777586e-31,8 C1.59060409e-15,3.581722 3.581722,0 8,0 L40,0 C44.418278,0 48,3.581722 48,8 C48,12.418278 44.418278,16 40,16 L16,16 L16,40 C16,44.418278 12.418278,48 8,48 C3.581722,48 -3.55271368e-15,44.418278 0,40 L3.55271368e-15,8 Z\"></path>\n        </g>\n    </g>\n</svg>"
        },
        "$:/core/images/github": {
            "title": "$:/core/images/github",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-github tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n        <g fill-rule=\"evenodd\">\n            <path d=\"M63.9383506,1.60695328 C28.6017227,1.60695328 -0.055756057,30.2970814 -0.055756057,65.6906208 C-0.055756057,94.003092 18.2804728,118.019715 43.7123154,126.493393 C46.9143781,127.083482 48.0812647,125.104717 48.0812647,123.405261 C48.0812647,121.886765 48.02626,117.85449 47.9948287,112.508284 C30.1929317,116.379268 26.4368926,103.916587 26.4368926,103.916587 C23.5255693,96.5129372 19.3294921,94.5420399 19.3294921,94.5420399 C13.5186324,90.5687739 19.7695302,90.6474524 19.7695302,90.6474524 C26.1933001,91.099854 29.5721638,97.2525155 29.5721638,97.2525155 C35.2808718,107.044059 44.5531024,104.215566 48.1991321,102.575118 C48.7806109,98.4366275 50.4346826,95.612068 52.2616263,94.0109598 C38.0507543,92.3941159 23.1091047,86.8944862 23.1091047,62.3389152 C23.1091047,55.3443933 25.6039634,49.6205298 29.6978889,45.1437211 C29.0378318,43.5229433 26.8415704,37.0044266 30.3265147,28.1845627 C30.3265147,28.1845627 35.6973364,26.4615028 47.9241083,34.7542205 C53.027764,33.330139 58.5046663,32.6220321 63.9462084,32.5944947 C69.3838216,32.6220321 74.856795,33.330139 79.9683085,34.7542205 C92.1872225,26.4615028 97.5501864,28.1845627 97.5501864,28.1845627 C101.042989,37.0044266 98.8467271,43.5229433 98.190599,45.1437211 C102.292382,49.6205298 104.767596,55.3443933 104.767596,62.3389152 C104.767596,86.9574291 89.8023734,92.3744463 75.5482834,93.9598188 C77.8427675,95.9385839 79.8897303,99.8489072 79.8897303,105.828476 C79.8897303,114.392635 79.8111521,121.304544 79.8111521,123.405261 C79.8111521,125.120453 80.966252,127.114954 84.2115327,126.489459 C109.623731,117.996111 127.944244,93.9952241 127.944244,65.6906208 C127.944244,30.2970814 99.2867652,1.60695328 63.9383506,1.60695328\"></path>\n        </g>\n    </svg>\n"
        },
        "$:/core/images/globe": {
            "title": "$:/core/images/globe",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-globe tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M72.8111354,37.1275855 C72.8111354,37.9789875 72.8111354,38.8303894 72.8111354,39.6817913 C72.8111354,41.8784743 73.7885604,46.5631866 72.8111354,48.5143758 C71.3445471,51.4420595 68.1617327,52.0543531 66.4170946,54.3812641 C65.2352215,55.9575873 61.7987417,64.9821523 62.7262858,67.3005778 C66.6959269,77.2228204 74.26087,70.4881886 80.6887657,76.594328 C81.5527211,77.415037 83.5758191,78.8666631 83.985137,79.8899578 C87.2742852,88.1128283 76.4086873,94.8989524 87.7419325,106.189751 C88.9872885,107.430443 91.555495,102.372895 91.8205061,101.575869 C92.6726866,99.0129203 98.5458765,96.1267309 100.908882,94.5234439 C102.928056,93.1534443 105.782168,91.8557166 107.236936,89.7775886 C109.507391,86.5342557 108.717505,82.2640435 110.334606,79.0328716 C112.473794,74.7585014 114.163418,69.3979002 116.332726,65.0674086 C120.230862,57.2857361 121.054075,67.1596684 121.400359,67.5059523 C121.757734,67.8633269 122.411167,67.5059523 122.916571,67.5059523 C123.011132,67.5059523 124.364019,67.6048489 124.432783,67.5059523 C125.0832,66.5705216 123.390209,49.5852316 123.114531,48.2089091 C121.710578,41.1996597 116.17083,32.4278331 111.249523,27.7092761 C104.975994,21.6942076 104.160516,11.5121686 92.9912146,12.7547535 C92.7872931,12.7774397 87.906794,22.9027026 85.2136766,26.2672064 C81.486311,30.9237934 82.7434931,22.1144904 78.6876623,22.1144904 C78.6065806,22.1144904 77.5045497,22.0107615 77.4353971,22.1144904 C76.8488637,22.9942905 75.9952305,26.0101404 75.1288269,26.5311533 C74.8635477,26.6906793 73.4071369,26.2924966 73.2826811,26.5311533 C71.0401728,30.8313939 81.5394677,28.7427264 79.075427,34.482926 C76.7225098,39.9642538 72.747373,32.4860199 72.747373,43.0434079\"></path>\n        <path d=\"M44.4668556,7.01044608 C54.151517,13.1403033 45.1489715,19.2084878 47.1611905,23.2253896 C48.8157833,26.5283781 51.4021933,28.6198851 48.8753629,33.038878 C46.8123257,36.6467763 42.0052989,37.0050492 39.251679,39.7621111 C36.2115749,42.8060154 33.7884281,48.7028116 32.4624592,52.6732691 C30.8452419,57.5158356 47.0088721,59.5388126 44.5246867,63.6811917 C43.1386839,65.9923513 37.7785192,65.1466282 36.0880227,63.8791519 C34.9234453,63.0059918 32.4946425,63.3331166 31.6713597,62.0997342 C29.0575851,58.1839669 29.4107339,54.0758543 28.0457962,49.9707786 C27.1076833,47.1493864 21.732611,47.8501656 20.2022714,49.3776393 C19.6790362,49.8998948 19.8723378,51.1703278 19.8723378,51.8829111 C19.8723378,57.1682405 26.9914913,55.1986414 26.9914913,58.3421973 C26.9914913,72.9792302 30.9191897,64.8771867 38.1313873,69.6793121 C48.1678018,76.3618966 45.9763926,76.981595 53.0777543,84.0829567 C56.7511941,87.7563965 60.8192437,87.7689005 62.503478,93.3767069 C64.1046972,98.7081071 53.1759798,98.7157031 50.786754,100.825053 C49.663965,101.816317 47.9736094,104.970571 46.5680513,105.439676 C44.7757187,106.037867 43.334221,105.93607 41.6242359,107.219093 C39.1967302,109.040481 37.7241465,112.151588 37.6034934,112.030935 C35.4555278,109.88297 34.0848666,96.5511248 33.7147244,93.7726273 C33.1258872,89.3524817 28.1241923,88.2337027 26.7275443,84.7420826 C25.1572737,80.8164061 28.2518481,75.223612 25.599097,70.9819941 C19.0797019,60.557804 13.7775712,56.4811506 10.2493953,44.6896152 C9.3074899,41.5416683 13.5912267,38.1609942 15.1264825,35.8570308 C17.0029359,33.0410312 17.7876232,30.0028946 19.8723378,27.2224065 C22.146793,24.1888519 40.8551166,9.46076832 43.8574051,8.63490613 L44.4668556,7.01044608 Z\"></path>\n        <path d=\"M64,126 C98.2416545,126 126,98.2416545 126,64 C126,29.7583455 98.2416545,2 64,2 C29.7583455,2 2,29.7583455 2,64 C2,98.2416545 29.7583455,126 64,126 Z M64,120 C94.927946,120 120,94.927946 120,64 C120,33.072054 94.927946,8 64,8 C33.072054,8 8,33.072054 8,64 C8,94.927946 33.072054,120 64,120 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-1": {
            "title": "$:/core/images/heading-1",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-1 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M14,30 L27.25,30 L27.25,60.104 L61.7,60.104 L61.7,30 L74.95,30 L74.95,105.684 L61.7,105.684 L61.7,71.552 L27.25,71.552 L27.25,105.684 L14,105.684 L14,30 Z M84.3350766,43.78 C86.8790893,43.78 89.3523979,43.5680021 91.7550766,43.144 C94.1577553,42.7199979 96.3307336,42.0133383 98.2740766,41.024 C100.21742,40.0346617 101.87807,38.7626744 103.256077,37.208 C104.634084,35.6533256 105.535075,33.7453446 105.959077,31.484 L115.817077,31.484 L115.817077,105.684 L102.567077,105.684 L102.567077,53.32 L84.3350766,53.32 L84.3350766,43.78 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-2": {
            "title": "$:/core/images/heading-2",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-2 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M6,30 L19.25,30 L19.25,60.104 L53.7,60.104 L53.7,30 L66.95,30 L66.95,105.684 L53.7,105.684 L53.7,71.552 L19.25,71.552 L19.25,105.684 L6,105.684 L6,30 Z M125.519077,105.684 L74.8510766,105.684 C74.9217436,99.5359693 76.4057288,94.1653563 79.3030766,89.572 C82.2004244,84.9786437 86.1577182,80.986017 91.1750766,77.594 C93.5777553,75.8273245 96.0863969,74.113675 98.7010766,72.453 C101.315756,70.792325 103.718399,69.0080095 105.909077,67.1 C108.099754,65.1919905 109.901736,63.1250111 111.315077,60.899 C112.728417,58.6729889 113.47041,56.1113478 113.541077,53.214 C113.541077,51.8713266 113.382078,50.4403409 113.064077,48.921 C112.746075,47.4016591 112.127748,45.9883399 111.209077,44.681 C110.290405,43.3736601 109.018418,42.2783377 107.393077,41.395 C105.767735,40.5116622 103.647756,40.07 101.033077,40.07 C98.6303979,40.07 96.6340846,40.5469952 95.0440766,41.501 C93.4540687,42.4550048 92.1820814,43.762325 91.2280766,45.423 C90.2740719,47.083675 89.5674123,49.0446554 89.1080766,51.306 C88.648741,53.5673446 88.3837436,56.0053203 88.3130766,58.62 L76.2290766,58.62 C76.2290766,54.5213128 76.7767378,50.7230175 77.8720766,47.225 C78.9674154,43.7269825 80.610399,40.7060127 82.8010766,38.162 C84.9917542,35.6179873 87.6593942,33.6216739 90.8040766,32.173 C93.948759,30.7243261 97.6057224,30 101.775077,30 C106.297766,30 110.078395,30.7419926 113.117077,32.226 C116.155758,33.7100074 118.611401,35.5826554 120.484077,37.844 C122.356753,40.1053446 123.681739,42.5609868 124.459077,45.211 C125.236414,47.8610133 125.625077,50.3873213 125.625077,52.79 C125.625077,55.7580148 125.165748,58.4433213 124.247077,60.846 C123.328405,63.2486787 122.091751,65.4569899 120.537077,67.471 C118.982402,69.4850101 117.215753,71.3399915 115.237077,73.036 C113.2584,74.7320085 111.209087,76.3219926 109.089077,77.806 C106.969066,79.2900074 104.849087,80.7033266 102.729077,82.046 C100.609066,83.3886734 98.6480856,84.7313266 96.8460766,86.074 C95.0440676,87.4166734 93.47175,88.8123261 92.1290766,90.261 C90.7864032,91.7096739 89.8677458,93.2466585 89.3730766,94.872 L125.519077,94.872 L125.519077,105.684 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-3": {
            "title": "$:/core/images/heading-3",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-3 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M6,30 L19.25,30 L19.25,60.104 L53.7,60.104 L53.7,30 L66.95,30 L66.95,105.684 L53.7,105.684 L53.7,71.552 L19.25,71.552 L19.25,105.684 L6,105.684 L6,30 Z M94.8850766,62.224 C96.8637532,62.294667 98.8424001,62.1533351 100.821077,61.8 C102.799753,61.4466649 104.566402,60.8283378 106.121077,59.945 C107.675751,59.0616623 108.930072,57.8426744 109.884077,56.288 C110.838081,54.7333256 111.315077,52.8253446 111.315077,50.564 C111.315077,47.3839841 110.237421,44.8400095 108.082077,42.932 C105.926733,41.0239905 103.153094,40.07 99.7610766,40.07 C97.641066,40.07 95.8037511,40.4939958 94.2490766,41.342 C92.6944022,42.1900042 91.4047484,43.3383261 90.3800766,44.787 C89.3554048,46.2356739 88.5957458,47.860991 88.1010766,49.663 C87.6064075,51.465009 87.3944096,53.3199905 87.4650766,55.228 L75.3810766,55.228 C75.5224107,51.623982 76.1937373,48.2850154 77.3950766,45.211 C78.596416,42.1369846 80.2393995,39.4693446 82.3240766,37.208 C84.4087537,34.9466554 86.9350618,33.1800064 89.9030766,31.908 C92.8710915,30.6359936 96.2277246,30 99.9730766,30 C102.870424,30 105.714729,30.4239958 108.506077,31.272 C111.297424,32.1200042 113.806065,33.3566585 116.032077,34.982 C118.258088,36.6073415 120.042403,38.6743208 121.385077,41.183 C122.72775,43.6916792 123.399077,46.5713171 123.399077,49.822 C123.399077,53.5673521 122.551085,56.8356527 120.855077,59.627 C119.159068,62.4183473 116.509095,64.4499936 112.905077,65.722 L112.905077,65.934 C117.145098,66.7820042 120.448731,68.8843166 122.816077,72.241 C125.183422,75.5976835 126.367077,79.6786426 126.367077,84.484 C126.367077,88.017351 125.660417,91.1796527 124.247077,93.971 C122.833736,96.7623473 120.925755,99.129657 118.523077,101.073 C116.120398,103.016343 113.329093,104.517995 110.149077,105.578 C106.969061,106.638005 103.612428,107.168 100.079077,107.168 C95.7683884,107.168 92.005426,106.549673 88.7900766,105.313 C85.5747272,104.076327 82.8894207,102.327345 80.7340766,100.066 C78.5787325,97.8046554 76.9357489,95.0840159 75.8050766,91.904 C74.6744043,88.7239841 74.0737436,85.1906861 74.0030766,81.304 L86.0870766,81.304 C85.9457426,85.8266893 87.0587315,89.5896517 89.4260766,92.593 C91.7934218,95.5963483 95.3443863,97.098 100.079077,97.098 C104.107097,97.098 107.481396,95.9496782 110.202077,93.653 C112.922757,91.3563219 114.283077,88.0880212 114.283077,83.848 C114.283077,80.9506522 113.717749,78.6540085 112.587077,76.958 C111.456404,75.2619915 109.972419,73.9723378 108.135077,73.089 C106.297734,72.2056623 104.230755,71.6580011 101.934077,71.446 C99.6373985,71.2339989 97.2877553,71.163333 94.8850766,71.234 L94.8850766,62.224 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-4": {
            "title": "$:/core/images/heading-4",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-4 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M8,30 L21.25,30 L21.25,60.104 L55.7,60.104 L55.7,30 L68.95,30 L68.95,105.684 L55.7,105.684 L55.7,71.552 L21.25,71.552 L21.25,105.684 L8,105.684 L8,30 Z M84.5890766,78.548 L107.061077,78.548 L107.061077,45.9 L106.849077,45.9 L84.5890766,78.548 Z M128.049077,88.088 L118.509077,88.088 L118.509077,105.684 L107.061077,105.684 L107.061077,88.088 L75.2610766,88.088 L75.2610766,76.11 L107.061077,31.484 L118.509077,31.484 L118.509077,78.548 L128.049077,78.548 L128.049077,88.088 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-5": {
            "title": "$:/core/images/heading-5",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-5 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M6,30 L19.25,30 L19.25,60.104 L53.7,60.104 L53.7,30 L66.95,30 L66.95,105.684 L53.7,105.684 L53.7,71.552 L19.25,71.552 L19.25,105.684 L6,105.684 L6,30 Z M83.7550766,31.484 L122.127077,31.484 L122.127077,42.296 L92.7650766,42.296 L88.9490766,61.164 L89.1610766,61.376 C90.7864181,59.5386575 92.8533974,58.1430048 95.3620766,57.189 C97.8707558,56.2349952 100.361731,55.758 102.835077,55.758 C106.509762,55.758 109.795729,56.3763272 112.693077,57.613 C115.590424,58.8496729 118.0284,60.5809889 120.007077,62.807 C121.985753,65.0330111 123.487405,67.6653181 124.512077,70.704 C125.536748,73.7426819 126.049077,77.028649 126.049077,80.562 C126.049077,83.5300148 125.572081,86.5863176 124.618077,89.731 C123.664072,92.8756824 122.144754,95.7376538 120.060077,98.317 C117.9754,100.896346 115.30776,103.016325 112.057077,104.677 C108.806394,106.337675 104.919766,107.168 100.397077,107.168 C96.7930586,107.168 93.454092,106.691005 90.3800766,105.737 C87.3060613,104.782995 84.6030883,103.35201 82.2710766,101.444 C79.939065,99.5359905 78.0840835,97.1863473 76.7060766,94.395 C75.3280697,91.6036527 74.5684107,88.3353521 74.4270766,84.59 L86.5110766,84.59 C86.8644117,88.6180201 88.2423979,91.7096559 90.6450766,93.865 C93.0477553,96.0203441 96.2277235,97.098 100.185077,97.098 C102.729089,97.098 104.884401,96.6740042 106.651077,95.826 C108.417752,94.9779958 109.848738,93.8120074 110.944077,92.328 C112.039415,90.8439926 112.816741,89.1126766 113.276077,87.134 C113.735412,85.1553234 113.965077,83.0353446 113.965077,80.774 C113.965077,78.7246564 113.682413,76.763676 113.117077,74.891 C112.55174,73.018324 111.703749,71.3753404 110.573077,69.962 C109.442404,68.5486596 107.976086,67.4180042 106.174077,66.57 C104.372068,65.7219958 102.269755,65.298 99.8670766,65.298 C97.3230639,65.298 94.9380878,65.7749952 92.7120766,66.729 C90.4860655,67.6830048 88.8784149,69.4673203 87.8890766,72.082 L75.8050766,72.082 L83.7550766,31.484 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/heading-6": {
            "title": "$:/core/images/heading-6",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-heading-6 tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M6,30 L19.25,30 L19.25,60.104 L53.7,60.104 L53.7,30 L66.95,30 L66.95,105.684 L53.7,105.684 L53.7,71.552 L19.25,71.552 L19.25,105.684 L6,105.684 L6,30 Z M112.587077,50.246 C112.304409,47.2073181 111.226753,44.751676 109.354077,42.879 C107.481401,41.006324 104.955093,40.07 101.775077,40.07 C99.584399,40.07 97.6940846,40.4763293 96.1040766,41.289 C94.5140687,42.1016707 93.1714154,43.1793266 92.0760766,44.522 C90.9807378,45.8646734 90.0974133,47.401658 89.4260766,49.133 C88.7547399,50.864342 88.2070787,52.6839905 87.7830766,54.592 C87.3590745,56.5000095 87.0587442,58.390324 86.8820766,60.263 C86.7054091,62.135676 86.5464107,63.8846585 86.4050766,65.51 L86.6170766,65.722 C88.2424181,62.7539852 90.4860623,60.5456739 93.3480766,59.097 C96.2100909,57.6483261 99.3017267,56.924 102.623077,56.924 C106.297762,56.924 109.583729,57.5599936 112.481077,58.832 C115.378424,60.1040064 117.834067,61.8529889 119.848077,64.079 C121.862087,66.3050111 123.399071,68.9373181 124.459077,71.976 C125.519082,75.0146819 126.049077,78.300649 126.049077,81.834 C126.049077,85.438018 125.466082,88.7769846 124.300077,91.851 C123.134071,94.9250154 121.455754,97.6103219 119.265077,99.907 C117.074399,102.203678 114.459758,103.987994 111.421077,105.26 C108.382395,106.532006 105.025762,107.168 101.351077,107.168 C95.9097161,107.168 91.4400941,106.16101 87.9420766,104.147 C84.4440591,102.13299 81.6880867,99.3770175 79.6740766,95.879 C77.6600666,92.3809825 76.2644138,88.2823568 75.4870766,83.583 C74.7097394,78.8836432 74.3210766,73.8133605 74.3210766,68.372 C74.3210766,63.9199777 74.7980719,59.4326893 75.7520766,54.91 C76.7060814,50.3873107 78.278399,46.2710186 80.4690766,42.561 C82.6597542,38.8509815 85.5393921,35.8300117 89.1080766,33.498 C92.6767611,31.1659883 97.0757171,30 102.305077,30 C105.273091,30 108.064397,30.4946617 110.679077,31.484 C113.293756,32.4733383 115.608067,33.8513245 117.622077,35.618 C119.636087,37.3846755 121.27907,39.5046543 122.551077,41.978 C123.823083,44.4513457 124.529743,47.2073181 124.671077,50.246 L112.587077,50.246 Z M100.927077,97.098 C103.117754,97.098 105.025735,96.6563378 106.651077,95.773 C108.276418,94.8896623 109.636738,93.7413404 110.732077,92.328 C111.827415,90.9146596 112.640074,89.271676 113.170077,87.399 C113.700079,85.526324 113.965077,83.6006766 113.965077,81.622 C113.965077,79.6433234 113.700079,77.7353425 113.170077,75.898 C112.640074,74.0606575 111.827415,72.4530069 110.732077,71.075 C109.636738,69.6969931 108.276418,68.5840042 106.651077,67.736 C105.025735,66.8879958 103.117754,66.464 100.927077,66.464 C98.736399,66.464 96.8107516,66.8703293 95.1500766,67.683 C93.4894017,68.4956707 92.0937489,69.5909931 90.9630766,70.969 C89.8324043,72.3470069 88.9844128,73.9546575 88.4190766,75.792 C87.8537405,77.6293425 87.5710766,79.5726564 87.5710766,81.622 C87.5710766,83.6713436 87.8537405,85.6146575 88.4190766,87.452 C88.9844128,89.2893425 89.8324043,90.9323261 90.9630766,92.381 C92.0937489,93.8296739 93.4894017,94.9779958 95.1500766,95.826 C96.8107516,96.6740042 98.736399,97.098 100.927077,97.098 L100.927077,97.098 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/help": {
            "title": "$:/core/images/help",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-help tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M36.0548906,111.44117 C30.8157418,115.837088 20.8865444,118.803477 9.5,118.803477 C7.86465619,118.803477 6.25937294,118.742289 4.69372699,118.624467 C12.612543,115.984876 18.7559465,110.02454 21.0611049,102.609942 C8.74739781,92.845129 1.04940554,78.9359851 1.04940554,63.5 C1.04940554,33.9527659 29.2554663,10 64.0494055,10 C98.8433448,10 127.049406,33.9527659 127.049406,63.5 C127.049406,93.0472341 98.8433448,117 64.0494055,117 C53.9936953,117 44.48824,114.999337 36.0548906,111.44117 L36.0548906,111.44117 Z M71.4042554,77.5980086 C71.406883,77.2865764 71.4095079,76.9382011 71.4119569,76.5610548 C71.4199751,75.3262169 71.4242825,74.0811293 71.422912,72.9158546 C71.4215244,71.736154 71.4143321,70.709635 71.4001396,69.8743525 C71.4078362,68.5173028 71.9951951,67.7870427 75.1273009,65.6385471 C75.2388969,65.5619968 76.2124091,64.8981068 76.5126553,64.6910879 C79.6062455,62.5580654 81.5345849,60.9050204 83.2750652,58.5038955 C85.6146327,55.2762841 86.8327108,51.426982 86.8327108,46.8554323 C86.8327108,33.5625756 76.972994,24.9029551 65.3778484,24.9029551 C54.2752771,24.9029551 42.8794554,34.5115163 41.3121702,47.1975534 C40.9043016,50.4989536 43.2499725,53.50591 46.5513726,53.9137786 C49.8527728,54.3216471 52.8597292,51.9759763 53.2675978,48.6745761 C54.0739246,42.1479456 60.2395837,36.9492759 65.3778484,36.9492759 C70.6427674,36.9492759 74.78639,40.5885487 74.78639,46.8554323 C74.78639,50.4892974 73.6853224,52.008304 69.6746221,54.7736715 C69.4052605,54.9593956 68.448509,55.6118556 68.3131127,55.7047319 C65.6309785,57.5445655 64.0858213,58.803255 62.6123358,60.6352315 C60.5044618,63.2559399 59.3714208,66.3518252 59.3547527,69.9487679 C59.3684999,70.8407274 59.3752803,71.8084521 59.3765995,72.9300232 C59.3779294,74.0607297 59.3737237,75.2764258 59.36589,76.482835 C59.3634936,76.8518793 59.3609272,77.1924914 59.3583633,77.4963784 C59.3568319,77.6778944 59.3556368,77.8074256 59.3549845,77.8730928 C59.3219814,81.1994287 61.9917551,83.9227111 65.318091,83.9557142 C68.644427,83.9887173 71.3677093,81.3189435 71.4007124,77.9926076 C71.4014444,77.9187458 71.402672,77.7856841 71.4042554,77.5980086 Z M65.3778489,102.097045 C69.5359735,102.097045 72.9067994,98.7262189 72.9067994,94.5680944 C72.9067994,90.4099698 69.5359735,87.0391439 65.3778489,87.0391439 C61.2197243,87.0391439 57.8488984,90.4099698 57.8488984,94.5680944 C57.8488984,98.7262189 61.2197243,102.097045 65.3778489,102.097045 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/home-button": {
            "title": "$:/core/images/home-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-home-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M112.9847,119.501583 C112.99485,119.336814 113,119.170705 113,119.003406 L113,67.56802 C116.137461,70.5156358 121.076014,70.4518569 124.133985,67.3938855 C127.25818,64.2696912 127.260618,59.2068102 124.131541,56.0777326 L70.3963143,2.34250601 C68.8331348,0.779326498 66.7828947,-0.000743167069 64.7337457,1.61675364e-05 C62.691312,-0.00409949529 60.6426632,0.777559815 59.077717,2.34250601 L33,28.420223 L33,28.420223 L33,8.00697327 C33,3.58484404 29.4092877,0 25,0 C20.581722,0 17,3.59075293 17,8.00697327 L17,44.420223 L5.3424904,56.0777326 C2.21694607,59.2032769 2.22220878,64.2760483 5.34004601,67.3938855 C8.46424034,70.5180798 13.5271213,70.5205187 16.6561989,67.3914411 L17,67.04764 L17,119.993027 C17,119.994189 17.0000002,119.995351 17.0000007,119.996514 C17.0000002,119.997675 17,119.998838 17,120 C17,124.418278 20.5881049,128 24.9992458,128 L105.000754,128 C109.418616,128 113,124.409288 113,120 C113,119.832611 112.99485,119.666422 112.9847,119.501583 Z M97,112 L97,51.5736087 L97,51.5736087 L64.7370156,19.3106244 L33,51.04764 L33,112 L97,112 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/import-button": {
            "title": "$:/core/images/import-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-import-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M105.449437,94.2138951 C105.449437,94.2138951 110.049457,94.1897106 110.049457,99.4026111 C110.049457,104.615512 105.163246,104.615511 105.163246,104.615511 L45.0075072,105.157833 C45.0075072,105.157833 0.367531803,106.289842 0.367532368,66.6449212 C0.367532934,27.0000003 45.0428249,27.0000003 45.0428249,27.0000003 L105.532495,27.0000003 C105.532495,27.0000003 138.996741,25.6734987 138.996741,55.1771866 C138.996741,84.6808745 105.727102,82.8457535 105.727102,82.8457535 L56.1735087,82.8457535 C56.1735087,82.8457535 22.6899229,85.1500223 22.6899229,66.0913753 C22.6899229,47.0327282 56.1735087,49.3383013 56.1735087,49.3383013 L105.727102,49.3383013 C105.727102,49.3383013 111.245209,49.3383024 111.245209,54.8231115 C111.245209,60.3079206 105.727102,60.5074524 105.727102,60.5074524 L56.1735087,60.5074524 C56.1735087,60.5074524 37.48913,60.5074528 37.48913,66.6449195 C37.48913,72.7823862 56.1735087,71.6766023 56.1735087,71.6766023 L105.727102,71.6766029 C105.727102,71.6766029 127.835546,73.1411469 127.835546,55.1771866 C127.835546,35.5304025 105.727102,38.3035317 105.727102,38.3035317 L45.0428249,38.3035317 C45.0428249,38.3035317 11.5287276,38.3035313 11.5287276,66.6449208 C11.5287276,94.9863103 45.0428244,93.9579678 45.0428244,93.9579678 L105.449437,94.2138951 Z\" transform=\"translate(69.367532, 66.000000) rotate(-45.000000) translate(-69.367532, -66.000000) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/info-button": {
            "title": "$:/core/images/info-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-info-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <g transform=\"translate(0.049406, 0.000000)\">\n            <path d=\"M64,128 C99.346224,128 128,99.346224 128,64 C128,28.653776 99.346224,0 64,0 C28.653776,0 0,28.653776 0,64 C0,99.346224 28.653776,128 64,128 Z M64,112 C90.509668,112 112,90.509668 112,64 C112,37.490332 90.509668,16 64,16 C37.490332,16 16,37.490332 16,64 C16,90.509668 37.490332,112 64,112 Z\"></path>\n            <circle cx=\"64\" cy=\"32\" r=\"8\"></circle>\n            <rect x=\"56\" y=\"48\" width=\"16\" height=\"56\" rx=\"8\"></rect>\n        </g>\n    </g>\n</svg>"
        },
        "$:/core/images/italic": {
            "title": "$:/core/images/italic",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-italic tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n         <polygon points=\"66.7114846 0 89.1204482 0 62.4089636 128 40 128\"></polygon>\n    </g>\n</svg>"
        },
        "$:/core/images/left-arrow": {
            "title": "$:/core/images/left-arrow",
            "created": "20150315234410875",
            "modified": "20150315235324760",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-left-arrow tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <path transform=\"rotate(135, 63.8945, 64.1752)\" d=\"m109.07576,109.35336c-1.43248,1.43361 -3.41136,2.32182 -5.59717,2.32182l-79.16816,0c-4.36519,0 -7.91592,-3.5444 -7.91592,-7.91666c0,-4.36337 3.54408,-7.91667 7.91592,-7.91667l71.25075,0l0,-71.25075c0,-4.3652 3.54442,-7.91592 7.91667,-7.91592c4.36336,0 7.91667,3.54408 7.91667,7.91592l0,79.16815c0,2.1825 -0.88602,4.16136 -2.3185,5.59467l-0.00027,-0.00056z\"/>\n</svg>\n"
        },
        "$:/core/images/line-width": {
            "title": "$:/core/images/line-width",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-line-width tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M128,-97 L112.992786,-97 C112.452362,-97 112,-96.5522847 112,-96 C112,-95.4438648 112.444486,-95 112.992786,-95 L128,-95 L128,-97 Z M128,-78.6794919 L111.216185,-88.3696322 C110.748163,-88.6398444 110.132549,-88.4782926 109.856406,-88 C109.578339,-87.5183728 109.741342,-86.9117318 110.216185,-86.6375814 L128,-76.3700908 L128,-78.6794919 Z M78.6794919,-128 L88.3696322,-111.216185 C88.6437826,-110.741342 88.4816272,-110.134474 88,-109.856406 C87.5217074,-109.580264 86.9077936,-109.748163 86.6375814,-110.216185 L76.3700908,-128 L78.6794919,-128 Z M97,-128 L97,-112.992786 C97,-112.444486 96.5561352,-112 96,-112 C95.4477153,-112 95,-112.452362 95,-112.992786 L95,-128 L97,-128 Z M115.629909,-128 L105.362419,-110.216185 C105.088268,-109.741342 104.481627,-109.578339 104,-109.856406 C103.521707,-110.132549 103.360156,-110.748163 103.630368,-111.216185 L113.320508,-128 L115.629909,-128 Z M128,-113.320508 L111.216185,-103.630368 C110.741342,-103.356217 110.134474,-103.518373 109.856406,-104 C109.580264,-104.478293 109.748163,-105.092206 110.216185,-105.362419 L128,-115.629909 L128,-113.320508 Z M48,-96 C48,-96.5522847 48.4523621,-97 48.9927864,-97 L79.0072136,-97 C79.5555144,-97 80,-96.5561352 80,-96 C80,-95.4477153 79.5476379,-95 79.0072136,-95 L48.9927864,-95 C48.4444856,-95 48,-95.4438648 48,-96 Z M54.4307806,-120 C54.706923,-120.478293 55.3225377,-120.639844 55.7905589,-120.369632 L81.7838153,-105.362419 C82.2586577,-105.088268 82.4216611,-104.481627 82.1435935,-104 C81.8674512,-103.521707 81.2518365,-103.360156 80.7838153,-103.630368 L54.7905589,-118.637581 C54.3157165,-118.911732 54.152713,-119.518373 54.4307806,-120 Z M104,-82.1435935 C104.478293,-82.4197359 105.092206,-82.2518365 105.362419,-81.7838153 L120.369632,-55.7905589 C120.643783,-55.3157165 120.481627,-54.7088482 120,-54.4307806 C119.521707,-54.1546382 118.907794,-54.3225377 118.637581,-54.7905589 L103.630368,-80.7838153 C103.356217,-81.2586577 103.518373,-81.865526 104,-82.1435935 Z M96,-80 C96.5522847,-80 97,-79.5476379 97,-79.0072136 L97,-48.9927864 C97,-48.4444856 96.5561352,-48 96,-48 C95.4477153,-48 95,-48.4523621 95,-48.9927864 L95,-79.0072136 C95,-79.5555144 95.4438648,-80 96,-80 Z M88,-82.1435935 C88.4782926,-81.8674512 88.6398444,-81.2518365 88.3696322,-80.7838153 L73.3624186,-54.7905589 C73.0882682,-54.3157165 72.4816272,-54.152713 72,-54.4307806 C71.5217074,-54.706923 71.3601556,-55.3225377 71.6303678,-55.7905589 L86.6375814,-81.7838153 C86.9117318,-82.2586577 87.5183728,-82.4216611 88,-82.1435935 Z M82.1435935,-88 C82.4197359,-87.5217074 82.2518365,-86.9077936 81.7838153,-86.6375814 L55.7905589,-71.6303678 C55.3157165,-71.3562174 54.7088482,-71.5183728 54.4307806,-72 C54.1546382,-72.4782926 54.3225377,-73.0922064 54.7905589,-73.3624186 L80.7838153,-88.3696322 C81.2586577,-88.6437826 81.865526,-88.4816272 82.1435935,-88 Z M1.30626177e-08,-41.9868843 L15.0170091,-57.9923909 L20.7983821,-52.9749272 L44.7207091,-81.2095939 L73.4260467,-42.1002685 L85.984793,-56.6159488 L104.48741,-34.0310661 L127.969109,-47.4978019 L127.969109,7.99473128e-07 L1.30626177e-08,7.99473128e-07 L1.30626177e-08,-41.9868843 Z M96,-84 C102.627417,-84 108,-89.372583 108,-96 C108,-102.627417 102.627417,-108 96,-108 C89.372583,-108 84,-102.627417 84,-96 C84,-89.372583 89.372583,-84 96,-84 Z\"></path>\n        <path d=\"M16,18 L112,18 C113.104569,18 114,17.1045695 114,16 C114,14.8954305 113.104569,14 112,14 L16,14 C14.8954305,14 14,14.8954305 14,16 C14,17.1045695 14.8954305,18 16,18 L16,18 Z M16,35 L112,35 C114.209139,35 116,33.209139 116,31 C116,28.790861 114.209139,27 112,27 L16,27 C13.790861,27 12,28.790861 12,31 C12,33.209139 13.790861,35 16,35 L16,35 Z M16,56 L112,56 C115.313708,56 118,53.3137085 118,50 C118,46.6862915 115.313708,44 112,44 L16,44 C12.6862915,44 10,46.6862915 10,50 C10,53.3137085 12.6862915,56 16,56 L16,56 Z M16,85 L112,85 C117.522847,85 122,80.5228475 122,75 C122,69.4771525 117.522847,65 112,65 L16,65 C10.4771525,65 6,69.4771525 6,75 C6,80.5228475 10.4771525,85 16,85 L16,85 Z M16,128 L112,128 C120.836556,128 128,120.836556 128,112 C128,103.163444 120.836556,96 112,96 L16,96 C7.163444,96 0,103.163444 0,112 C0,120.836556 7.163444,128 16,128 L16,128 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/link": {
            "title": "$:/core/images/link",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-link tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M128.719999,57.568543 C130.219553,53.8628171 131.045202,49.8121445 131.045202,45.5685425 C131.045202,27.8915447 116.718329,13.5685425 99.0452364,13.5685425 L67.0451674,13.5685425 C49.3655063,13.5685425 35.0452019,27.8954305 35.0452019,45.5685425 C35.0452019,63.2455403 49.3720745,77.5685425 67.0451674,77.5685425 L99.0452364,77.5685425 C100.406772,77.5685425 101.748384,77.4835732 103.065066,77.3186499 C96.4792444,73.7895096 91.1190212,68.272192 87.7873041,61.5685425 L67.0506214,61.5685425 C58.2110723,61.5685425 51.0452019,54.4070414 51.0452019,45.5685425 C51.0452019,36.7319865 58.2005234,29.5685425 67.0506214,29.5685425 L99.0397824,29.5685425 C107.879331,29.5685425 115.045202,36.7300436 115.045202,45.5685425 C115.045202,48.9465282 113.99957,52.0800164 112.21335,54.6623005 C114.314383,56.4735917 117.050039,57.5685425 120.041423,57.5685425 L128.720003,57.5685425 Z\" transform=\"translate(83.045202, 45.568542) rotate(-225.000000) translate(-83.045202, -45.568542)\"></path>\n        <path d=\"M-0.106255113,71.0452019 C-1.60580855,74.7509276 -2.43145751,78.8016001 -2.43145751,83.0452019 C-2.43145751,100.7222 11.8954151,115.045202 29.568508,115.045202 L61.568577,115.045202 C79.2482381,115.045202 93.5685425,100.718314 93.5685425,83.0452019 C93.5685425,65.3682041 79.2416699,51.0452019 61.568577,51.0452019 L29.568508,51.0452019 C28.206973,51.0452019 26.8653616,51.1301711 25.5486799,51.2950943 C32.1345,54.8242347 37.4947231,60.3415524 40.8264403,67.0452019 L61.563123,67.0452019 C70.4026721,67.0452019 77.5685425,74.206703 77.5685425,83.0452019 C77.5685425,91.8817579 70.413221,99.0452019 61.563123,99.0452019 L29.573962,99.0452019 C20.7344129,99.0452019 13.5685425,91.8837008 13.5685425,83.0452019 C13.5685425,79.6672162 14.6141741,76.533728 16.4003949,73.9514439 C14.2993609,72.1401527 11.5637054,71.0452019 8.5723215,71.0452019 L-0.106255113,71.0452019 Z\" transform=\"translate(45.568542, 83.045202) rotate(-225.000000) translate(-45.568542, -83.045202)\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/linkify": {
            "title": "$:/core/images/linkify",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-linkify-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\"><path d=\"M17.031 31.919H9.048V96.85h7.983v6.92H0V25h17.031v6.919zm24.66 0h-7.983V96.85h7.983v6.92H24.66V25h17.03v6.919zM67.77 56.422l11.975-3.903 2.306 7.096-12.063 3.903 7.628 10.379-6.12 4.435-7.63-10.467-7.45 10.2-5.943-4.523L58.1 63.518 45.95 59.35l2.306-7.096 12.064 4.17V43.825h7.45v12.596zM86.31 96.85h7.982V31.92H86.31V25h17.031v78.77H86.31v-6.92zm24.659 0h7.983V31.92h-7.983V25H128v78.77h-17.031v-6.92z\" fill-rule=\"evenodd\"/></svg>"
        },
        "$:/core/images/list-bullet": {
            "title": "$:/core/images/list-bullet",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-list-bullet tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M11.6363636,40.2727273 C18.0629498,40.2727273 23.2727273,35.0629498 23.2727273,28.6363636 C23.2727273,22.2097775 18.0629498,17 11.6363636,17 C5.20977746,17 0,22.2097775 0,28.6363636 C0,35.0629498 5.20977746,40.2727273 11.6363636,40.2727273 Z M11.6363636,75.1818182 C18.0629498,75.1818182 23.2727273,69.9720407 23.2727273,63.5454545 C23.2727273,57.1188684 18.0629498,51.9090909 11.6363636,51.9090909 C5.20977746,51.9090909 0,57.1188684 0,63.5454545 C0,69.9720407 5.20977746,75.1818182 11.6363636,75.1818182 Z M11.6363636,110.090909 C18.0629498,110.090909 23.2727273,104.881132 23.2727273,98.4545455 C23.2727273,92.0279593 18.0629498,86.8181818 11.6363636,86.8181818 C5.20977746,86.8181818 0,92.0279593 0,98.4545455 C0,104.881132 5.20977746,110.090909 11.6363636,110.090909 Z M34.9090909,22.8181818 L128,22.8181818 L128,34.4545455 L34.9090909,34.4545455 L34.9090909,22.8181818 Z M34.9090909,57.7272727 L128,57.7272727 L128,69.3636364 L34.9090909,69.3636364 L34.9090909,57.7272727 Z M34.9090909,92.6363636 L128,92.6363636 L128,104.272727 L34.9090909,104.272727 L34.9090909,92.6363636 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/list-number": {
            "title": "$:/core/images/list-number",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-list-number tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M33.8390805,22.3563218 L128,22.3563218 L128,34.1264368 L33.8390805,34.1264368 L33.8390805,22.3563218 Z M33.8390805,57.6666667 L128,57.6666667 L128,69.4367816 L33.8390805,69.4367816 L33.8390805,57.6666667 Z M33.8390805,92.9770115 L128,92.9770115 L128,104.747126 L33.8390805,104.747126 L33.8390805,92.9770115 Z M0.379509711,42.6307008 L0.379509711,40.4082314 L1.37821948,40.4082314 C2.20382368,40.4082314 2.82301754,40.268077 3.23581964,39.9877642 C3.64862174,39.7074513 3.85501969,39.0400498 3.85501969,37.9855395 L3.85501969,22.7686318 C3.85501969,21.3270228 3.66193774,20.4327047 3.27576803,20.0856507 C2.88959832,19.7385967 1.79768657,19.5650723 0,19.5650723 L0,17.4226919 C3.50215975,17.2758613 6.25191314,16.4683055 8.24934266,15 L10.3666074,15 L10.3666074,37.865406 C10.3666074,38.786434 10.5164123,39.4404875 10.8160268,39.8275862 C11.1156412,40.2146849 11.764796,40.4082314 12.7635108,40.4082314 L13.7622206,40.4082314 L13.7622206,42.6307008 L0.379509711,42.6307008 Z M0.0798967812,77.9873934 L0.0798967812,76.0852799 C7.27064304,69.5312983 10.8659622,63.5046623 10.8659622,58.005191 C10.8659622,56.4434479 10.5397203,55.195407 9.88722667,54.2610308 C9.23473303,53.3266546 8.36253522,52.8594735 7.27060709,52.8594735 C6.3784219,52.8594735 5.61608107,53.1764892 4.98356173,53.8105302 C4.35104238,54.4445712 4.03478745,55.1753759 4.03478745,56.0029663 C4.03478745,56.9773871 4.28113339,57.8316611 4.77383268,58.5658139 C4.88036225,58.7259926 4.93362624,58.8461249 4.93362624,58.9262143 C4.93362624,59.0730449 4.77383427,59.2065252 4.45424555,59.3266593 C4.2411864,59.4067486 3.70188852,59.6336652 2.83633573,60.0074156 C1.99741533,60.3811661 1.47809145,60.5680386 1.2783485,60.5680386 C1.03865696,60.5680386 0.765679018,60.1976307 0.459406492,59.4568039 C0.153133966,58.715977 0,57.9184322 0,57.0641453 C0,55.1153036 0.848894811,53.5202138 2.5467099,52.2788283 C4.24452499,51.0374428 6.34512352,50.4167594 8.84856852,50.4167594 C11.3120649,50.4167594 13.3793735,51.0874979 15.0505562,52.4289952 C16.7217389,53.7704924 17.5573177,55.5224215 17.5573177,57.684835 C17.5573177,58.9662652 17.2743527,60.2076321 16.7084144,61.4089729 C16.142476,62.6103138 14.7875733,64.4623531 12.6436656,66.9651465 C10.4997579,69.4679398 8.40914641,71.7804862 6.3717683,73.902855 L17.8169822,73.902855 L16.7982982,79.6292176 L14.6810335,79.6292176 C14.7609307,79.3489048 14.8008787,79.0952922 14.8008787,78.8683723 C14.8008787,78.4812736 14.7010087,78.237672 14.5012658,78.1375603 C14.3015228,78.0374485 13.9020429,77.9873934 13.3028141,77.9873934 L0.0798967812,77.9873934 Z M12.2042333,97.1935484 C13.9486551,97.2335931 15.4400468,97.8309175 16.6784531,98.9855395 C17.9168594,100.140162 18.5360532,101.75861 18.5360532,103.840934 C18.5360532,106.830938 17.4041935,109.233584 15.14044,111.048943 C12.8766866,112.864303 10.1402492,113.771969 6.93104577,113.771969 C4.92030005,113.771969 3.26245842,113.388213 1.95747114,112.62069 C0.652483855,111.853166 0,110.848727 0,109.607341 C0,108.833144 0.26964894,108.209124 0.808954909,107.735261 C1.34826088,107.261399 1.93749375,107.024472 2.57667119,107.024472 C3.21584864,107.024472 3.73850152,107.224692 4.14464552,107.625139 C4.55078953,108.025586 4.92696644,108.67964 5.27318756,109.587319 C5.73925445,110.855401 6.51158227,111.489433 7.59019421,111.489433 C8.85523291,111.489433 9.87723568,111.012241 10.6562332,110.057842 C11.4352307,109.103444 11.8247236,107.371536 11.8247236,104.862069 C11.8247236,103.153495 11.7048796,101.838714 11.4651881,100.917686 C11.2254966,99.9966584 10.6728827,99.5361513 9.80732989,99.5361513 C9.22141723,99.5361513 8.62219737,99.843156 8.00965231,100.457175 C7.51695303,100.951059 7.07752513,101.197998 6.69135542,101.197998 C6.3584505,101.197998 6.08880156,101.051169 5.88240051,100.757508 C5.67599946,100.463847 5.57280049,100.183539 5.57280049,99.916574 C5.57280049,99.5962164 5.67599946,99.3225818 5.88240051,99.0956618 C6.08880156,98.8687419 6.57150646,98.5016711 7.33052967,97.9944383 C10.2068282,96.0722929 11.6449559,93.9766521 11.6449559,91.7074527 C11.6449559,90.5194601 11.3386879,89.615131 10.7261429,88.9944383 C10.1135978,88.3737455 9.37455999,88.0634038 8.5090072,88.0634038 C7.71003539,88.0634038 6.98431355,88.3270274 6.33181991,88.8542825 C5.67932627,89.3815377 5.35308434,90.0122321 5.35308434,90.7463849 C5.35308434,91.3871 5.60608828,91.9810874 6.11210376,92.5283648 C6.28521432,92.7285883 6.3717683,92.8954387 6.3717683,93.028921 C6.3717683,93.1490551 5.80250943,93.4560598 4.6639746,93.9499444 C3.52543978,94.4438289 2.80970494,94.6907675 2.51674861,94.6907675 C2.10394651,94.6907675 1.76771758,94.3570667 1.50805174,93.6896552 C1.24838591,93.0222436 1.11855494,92.4082342 1.11855494,91.8476085 C1.11855494,90.0989901 2.04734573,88.6240327 3.90495518,87.4226919 C5.76256463,86.2213511 7.86982116,85.6206897 10.226788,85.6206897 C12.2907985,85.6206897 14.0784711,86.0678487 15.5898594,86.9621802 C17.1012478,87.8565117 17.8569306,89.0778566 17.8569306,90.6262514 C17.8569306,91.987771 17.2876717,93.2491599 16.1491369,94.4104561 C15.0106021,95.5717522 13.6956474,96.4994404 12.2042333,97.1935484 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/list": {
            "title": "$:/core/images/list",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-list tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M0.719999312,185.568543 C2.21955287,181.862817 3.0452019,177.812144 3.0452019,173.568542 C3.0452019,155.891545 -11.2816707,141.568542 -28.9547636,141.568542 L-60.9548326,141.568542 C-78.6344937,141.568542 -92.9547981,155.895431 -92.9547981,173.568542 C-92.9547981,191.24554 -78.6279255,205.568542 -60.9548326,205.568542 L-28.9547636,205.568542 C-27.593228,205.568542 -26.2516158,205.483573 -24.9349335,205.31865 C-31.5207556,201.78951 -36.8809788,196.272192 -40.2126959,189.568542 L-60.9493786,189.568542 C-69.7889277,189.568542 -76.9547981,182.407041 -76.9547981,173.568542 C-76.9547981,164.731986 -69.7994766,157.568542 -60.9493786,157.568542 L-28.9602176,157.568542 C-20.1206685,157.568542 -12.9547981,164.730044 -12.9547981,173.568542 C-12.9547981,176.946528 -14.0004297,180.080016 -15.7866505,182.6623 C-13.6856165,184.473592 -10.949961,185.568542 -7.9585771,185.568542 L0.720002586,185.568542 Z\" transform=\"translate(-44.954798, 173.568542) rotate(-225.000000) translate(44.954798, -173.568542) \"></path>\n        <path d=\"M87.7480315,128 L23.9992458,128 C19.5813843,128 16,124.409247 16,119.993027 L16,8.00697327 C16,3.58484404 19.5881049,0 23.9992458,0 L104.000754,0 C108.418616,0 112,3.59075293 112,8.00697327 L112,104 L91.2492027,104 C90.2848199,104 89.410573,104.391703 88.7768998,105.025201 C88.1373658,105.661376 87.7480315,106.53563 87.7480315,107.501171 L87.7480315,128 Z M95.7480315,127.879386 L111.627417,112 L95.7480315,112 L95.7480315,127.879386 Z M40,15.5089165 C40,13.5709954 41.5636015,12 43.4998101,12 L98.5001899,12 C100.433082,12 102,13.5614718 102,15.5089165 L102,16.4910835 C102,18.4290046 100.436399,20 98.5001899,20 L43.4998101,20 C41.5669183,20 40,18.4385282 40,16.4910835 L40,15.5089165 Z M32,22 C35.3137085,22 38,19.3137085 38,16 C38,12.6862915 35.3137085,10 32,10 C28.6862915,10 26,12.6862915 26,16 C26,19.3137085 28.6862915,22 32,22 Z M40,31.5089165 C40,29.5709954 41.5636015,28 43.4998101,28 L98.5001899,28 C100.433082,28 102,29.5614718 102,31.5089165 L102,32.4910835 C102,34.4290046 100.436399,36 98.5001899,36 L43.4998101,36 C41.5669183,36 40,34.4385282 40,32.4910835 L40,31.5089165 Z M40,47.5089165 C40,45.5709954 41.5636015,44 43.4998101,44 L98.5001899,44 C100.433082,44 102,45.5614718 102,47.5089165 L102,48.4910835 C102,50.4290046 100.436399,52 98.5001899,52 L43.4998101,52 C41.5669183,52 40,50.4385282 40,48.4910835 L40,47.5089165 Z M40,63.5089165 C40,61.5709954 41.5636015,60 43.4998101,60 L98.5001899,60 C100.433082,60 102,61.5614718 102,63.5089165 L102,64.4910835 C102,66.4290046 100.436399,68 98.5001899,68 L43.4998101,68 C41.5669183,68 40,66.4385282 40,64.4910835 L40,63.5089165 Z M40,79.5089165 C40,77.5709954 41.5636015,76 43.4998101,76 L98.5001899,76 C100.433082,76 102,77.5614718 102,79.5089165 L102,80.4910835 C102,82.4290046 100.436399,84 98.5001899,84 L43.4998101,84 C41.5669183,84 40,82.4385282 40,80.4910835 L40,79.5089165 Z M40,95.5089165 C40,93.5709954 41.5636015,92 43.4998101,92 L98.5001899,92 C100.433082,92 102,93.5614718 102,95.5089165 L102,96.4910835 C102,98.4290046 100.436399,100 98.5001899,100 L43.4998101,100 C41.5669183,100 40,98.4385282 40,96.4910835 L40,95.5089165 Z M40,111.508916 C40,109.570995 41.5680474,108 43.4972017,108 L76.5027983,108 C78.4342495,108 80,109.561472 80,111.508916 L80,112.491084 C80,114.429005 78.4319526,116 76.5027983,116 L43.4972017,116 C41.5657505,116 40,114.438528 40,112.491084 L40,111.508916 Z M32,38 C35.3137085,38 38,35.3137085 38,32 C38,28.6862915 35.3137085,26 32,26 C28.6862915,26 26,28.6862915 26,32 C26,35.3137085 28.6862915,38 32,38 Z M32,54 C35.3137085,54 38,51.3137085 38,48 C38,44.6862915 35.3137085,42 32,42 C28.6862915,42 26,44.6862915 26,48 C26,51.3137085 28.6862915,54 32,54 Z M32,70 C35.3137085,70 38,67.3137085 38,64 C38,60.6862915 35.3137085,58 32,58 C28.6862915,58 26,60.6862915 26,64 C26,67.3137085 28.6862915,70 32,70 Z M32,86 C35.3137085,86 38,83.3137085 38,80 C38,76.6862915 35.3137085,74 32,74 C28.6862915,74 26,76.6862915 26,80 C26,83.3137085 28.6862915,86 32,86 Z M32,102 C35.3137085,102 38,99.3137085 38,96 C38,92.6862915 35.3137085,90 32,90 C28.6862915,90 26,92.6862915 26,96 C26,99.3137085 28.6862915,102 32,102 Z M32,118 C35.3137085,118 38,115.313708 38,112 C38,108.686292 35.3137085,106 32,106 C28.6862915,106 26,108.686292 26,112 C26,115.313708 28.6862915,118 32,118 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/locked-padlock": {
            "title": "$:/core/images/locked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-locked-padlock tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M96.4723753,64 L105,64 L105,96.0097716 C105,113.673909 90.6736461,128 73.001193,128 L55.998807,128 C38.3179793,128 24,113.677487 24,96.0097716 L24,64 L32.0000269,64 C32.0028554,48.2766389 32.3030338,16.2688026 64.1594984,16.2688041 C95.9543927,16.2688056 96.4648869,48.325931 96.4723753,64 Z M80.5749059,64 L48.4413579,64 C48.4426205,47.71306 48.5829272,31.9999996 64.1595001,31.9999996 C79.8437473,31.9999996 81.1369461,48.1359182 80.5749059,64 Z M67.7315279,92.3641717 C70.8232551,91.0923621 73,88.0503841 73,84.5 C73,79.8055796 69.1944204,76 64.5,76 C59.8055796,76 56,79.8055796 56,84.5 C56,87.947435 58.0523387,90.9155206 61.0018621,92.2491029 L55.9067479,115.020857 L72.8008958,115.020857 L67.7315279,92.3641717 L67.7315279,92.3641717 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/mail": {
            "title": "$:/core/images/mail",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-mail tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M122.826782,104.894066 C121.945525,105.22777 120.990324,105.41043 119.993027,105.41043 L8.00697327,105.41043 C7.19458381,105.41043 6.41045219,105.289614 5.67161357,105.064967 L5.67161357,105.064967 L39.8346483,70.9019325 L60.6765759,91.7438601 C61.6118278,92.679112 62.8865166,93.0560851 64.0946097,92.8783815 C65.2975108,93.0473238 66.5641085,92.6696979 67.4899463,91.7438601 L88.5941459,70.6396605 C88.6693095,70.7292352 88.7490098,70.8162939 88.8332479,70.9005321 L122.826782,104.894066 Z M127.903244,98.6568194 C127.966933,98.2506602 128,97.8343714 128,97.4103789 L128,33.410481 C128,32.7414504 127.917877,32.0916738 127.763157,31.4706493 L94.2292399,65.0045665 C94.3188145,65.0797417 94.4058701,65.1594458 94.4901021,65.2436778 L127.903244,98.6568194 Z M0.205060636,99.2178117 C0.0709009529,98.6370366 0,98.0320192 0,97.4103789 L0,33.410481 C0,32.694007 0.0944223363,31.9995312 0.27147538,31.3387595 L0.27147538,31.3387595 L34.1777941,65.2450783 L0.205060636,99.2178117 L0.205060636,99.2178117 Z M5.92934613,25.6829218 C6.59211333,25.5051988 7.28862283,25.4104299 8.00697327,25.4104299 L119.993027,25.4104299 C120.759109,25.4104299 121.500064,25.5178649 122.201605,25.7184927 L122.201605,25.7184927 L64.0832611,83.8368368 L5.92934613,25.6829218 L5.92934613,25.6829218 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/menu-button": {
            "title": "$:/core/images/menu-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-menu-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <rect x=\"0\" y=\"16\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n    <rect x=\"0\" y=\"56\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n    <rect x=\"0\" y=\"96\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n</svg>"
        },
        "$:/core/images/mono-block": {
            "title": "$:/core/images/mono-block",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-mono-block tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M23.9653488,32.9670593 L24.3217888,32.9670593 C25.0766067,32.9670593 25.6497006,33.1592554 26.0410876,33.5436534 C26.4324747,33.9280514 26.6281653,34.4906619 26.6281653,35.2315017 C26.6281653,36.0562101 26.4219913,36.6502709 26.009637,37.0137017 C25.5972828,37.3771326 24.9158602,37.5588453 23.9653488,37.5588453 L17.6542639,37.5588453 C16.6897744,37.5588453 16.0048573,37.380627 15.5994921,37.0241852 C15.1941269,36.6677435 14.9914474,36.0701882 14.9914474,35.2315017 C14.9914474,34.4207713 15.1941269,33.8406885 15.5994921,33.4912358 C16.0048573,33.141783 16.6897744,32.9670593 17.6542639,32.9670593 L18.388111,32.9670593 L17.5284616,30.5139133 L8.47069195,30.5139133 L7.5691084,32.9670593 L8.30295547,32.9670593 C9.25346691,32.9670593 9.93488953,33.1452775 10.3472438,33.5017193 C10.759598,33.8581611 10.965772,34.4347494 10.965772,35.2315017 C10.965772,36.0562101 10.759598,36.6502709 10.3472438,37.0137017 C9.93488953,37.3771326 9.25346691,37.5588453 8.30295547,37.5588453 L2.89345418,37.5588453 C1.92896463,37.5588453 1.24404754,37.3771326 0.838682371,37.0137017 C0.433317198,36.6502709 0.230637652,36.0562101 0.230637652,35.2315017 C0.230637652,34.4906619 0.426328248,33.9280514 0.817715312,33.5436534 C1.20910238,33.1592554 1.78219626,32.9670593 2.53701417,32.9670593 L2.89345418,32.9670593 L8.51262607,17.3256331 L6.83526132,17.3256331 C5.88474988,17.3256331 5.20332727,17.1439204 4.79097304,16.7804895 C4.37861882,16.4170587 4.1724448,15.8299869 4.1724448,15.0192565 C4.1724448,14.1945481 4.37861882,13.6004873 4.79097304,13.2370565 C5.20332727,12.8736257 5.88474988,12.691913 6.83526132,12.691913 L14.6979086,12.691913 C15.9419603,12.691913 16.815579,13.3628521 17.318791,14.7047506 L17.318791,14.7676518 L23.9653488,32.9670593 Z M12.9786097,17.3256331 L9.9383861,26.1737321 L16.0188333,26.1737321 L12.9786097,17.3256331 Z M35.3809383,26.6979086 L35.3809383,33.0928616 L38.5259972,33.0928616 C40.7485166,33.0928616 42.3140414,32.8482484 43.2226185,32.3590146 C44.1311956,31.8697807 44.5854773,31.0520736 44.5854773,29.9058686 C44.5854773,28.7456855 44.1521624,27.9209895 43.2855197,27.4317556 C42.4188769,26.9425218 40.9022748,26.6979086 38.7356678,26.6979086 L35.3809383,26.6979086 Z M46.0741385,24.370565 C47.5977525,24.9296893 48.7159844,25.6949794 49.428868,26.666458 C50.1417516,27.6379366 50.498188,28.8784752 50.498188,30.388111 C50.498188,31.6601189 50.1906743,32.8202846 49.5756374,33.8686428 C48.9606006,34.917001 48.0799929,35.7766419 46.933788,36.4475911 C46.2628387,36.8389782 45.5115266,37.1220307 44.6798291,37.296757 C43.8481316,37.4714834 42.6704935,37.5588453 41.1468796,37.5588453 L39.3856466,37.5588453 L30.2020747,37.5588453 C29.2795194,37.5588453 28.6190637,37.3771326 28.2206876,37.0137017 C27.8223114,36.6502709 27.6231264,36.0562101 27.6231264,35.2315017 C27.6231264,34.4906619 27.811828,33.9280514 28.189237,33.5436534 C28.5666459,33.1592554 29.118773,32.9670593 29.8456347,32.9670593 L30.2020747,32.9670593 L30.2020747,17.3256331 L29.8456347,17.3256331 C29.118773,17.3256331 28.5666459,17.1299425 28.189237,16.7385554 C27.811828,16.3471683 27.6231264,15.7740744 27.6231264,15.0192565 C27.6231264,14.2085262 27.8258059,13.6179599 28.2311711,13.24754 C28.6365363,12.8771201 29.2934976,12.691913 30.2020747,12.691913 L39.8469219,12.691913 C42.796303,12.691913 45.0362615,13.2650068 46.5668644,14.4112118 C48.0974674,15.5574168 48.8627574,17.2347648 48.8627574,19.443306 C48.8627574,20.5335986 48.6286276,21.4945792 48.1603609,22.3262767 C47.6920943,23.1579742 46.9966938,23.8393968 46.0741385,24.370565 L46.0741385,24.370565 Z M35.3809383,17.1998307 L35.3809383,22.4835296 L38.2114913,22.4835296 C39.9307988,22.4835296 41.1433816,22.2808501 41.8492761,21.8754849 C42.5551706,21.4701197 42.9081126,20.7852027 42.9081126,19.8207131 C42.9081126,18.912136 42.5901154,18.2481858 41.9541114,17.8288425 C41.3181074,17.4094992 40.2872373,17.1998307 38.8614701,17.1998307 L35.3809383,17.1998307 Z M71.244119,13.3838259 C71.5236812,12.880614 71.8102281,12.5241775 72.1037684,12.3145059 C72.3973087,12.1048342 72.7677231,12 73.2150226,12 C73.8999499,12 74.3856819,12.1817127 74.6722332,12.5451435 C74.9587844,12.9085744 75.1020579,13.5305909 75.1020579,14.4112118 L75.143992,19.8626472 C75.143992,20.8271368 74.9867406,21.4771091 74.6722332,21.8125837 C74.3577257,22.1480584 73.7881263,22.3157932 72.9634178,22.3157932 C72.3763372,22.3157932 71.92555,22.1760142 71.6110425,21.896452 C71.2965351,21.6168898 71.0274605,21.0997075 70.8038107,20.3448896 C70.4403799,19.0169692 69.8602971,18.0629775 69.0635448,17.482886 C68.2667926,16.9027945 67.1625385,16.612753 65.7507494,16.612753 C63.5981206,16.612753 61.9487284,17.3396038 60.8025235,18.7933272 C59.6563185,20.2470506 59.0832246,22.3507245 59.0832246,25.104412 C59.0832246,27.8441215 59.6633074,29.9477954 60.8234905,31.4154969 C61.9836736,32.8831984 63.6400547,33.6170381 65.7926836,33.6170381 C67.2603851,33.6170381 68.878327,33.1278116 70.6465578,32.149344 C72.4147886,31.1708763 73.5295261,30.6816498 73.9908037,30.6816498 C74.53595,30.6816498 74.9937262,30.9122852 75.3641461,31.3735628 C75.734566,31.8348404 75.9197732,32.4079343 75.9197732,33.0928616 C75.9197732,34.3229353 74.836486,35.4831009 72.669879,36.5733935 C70.5032721,37.663686 68.0641285,38.2088241 65.3523753,38.2088241 C61.6901107,38.2088241 58.7267959,36.9997358 56.4623422,34.5815228 C54.1978885,32.1633099 53.0656786,29.0043046 53.0656786,25.104412 C53.0656786,21.3443006 54.2118664,18.22024 56.5042763,15.7321366 C58.7966863,13.2440331 61.7040894,12 65.226573,12 C66.2190187,12 67.1974717,12.1118232 68.1619613,12.3354729 C69.1264508,12.5591227 70.1538264,12.9085702 71.244119,13.3838259 L71.244119,13.3838259 Z M81.4645862,32.9670593 L81.4645862,17.3256331 L81.1081461,17.3256331 C80.3533282,17.3256331 79.7802344,17.1299425 79.3888473,16.7385554 C78.9974602,16.3471683 78.8017696,15.7740744 78.8017696,15.0192565 C78.8017696,14.2085262 79.0114381,13.6179599 79.4307814,13.24754 C79.8501247,12.8771201 80.5280528,12.691913 81.4645862,12.691913 L85.4063933,12.691913 L86.6434498,12.691913 C89.5648747,12.691913 91.7034933,12.8177141 93.0593699,13.06932 C94.4152465,13.320926 95.5684233,13.740263 96.5189347,14.3273436 C98.210286,15.3337675 99.5067362,16.7699967 100.408324,18.6360743 C101.309912,20.5021519 101.7607,22.6582429 101.7607,25.104412 C101.7607,27.6903623 101.247012,29.9512876 100.219621,31.8872557 C99.1922296,33.8232239 97.7350336,35.2874089 95.8479888,36.2798546 C94.9953241,36.7271541 93.9959043,37.0521403 92.8496993,37.2548229 C91.7034944,37.4575055 89.9981906,37.5588453 87.7337369,37.5588453 L85.4063933,37.5588453 L81.4645862,37.5588453 C80.5000966,37.5588453 79.8151795,37.380627 79.4098143,37.0241852 C79.0044492,36.6677435 78.8017696,36.0701882 78.8017696,35.2315017 C78.8017696,34.4906619 78.9974602,33.9280514 79.3888473,33.5436534 C79.7802344,33.1592554 80.3533282,32.9670593 81.1081461,32.9670593 L81.4645862,32.9670593 Z M86.8740874,17.2417648 L86.8740874,32.9670593 L88.0692098,32.9670593 C90.7110725,32.9670593 92.6609895,32.3205814 93.9190194,31.0276063 C95.1770492,29.7346312 95.8060547,27.7462749 95.8060547,25.0624779 C95.8060547,22.4206153 95.1665658,20.4497314 93.8875688,19.1497672 C92.6085718,17.849803 90.6831161,17.1998307 88.1111439,17.1998307 C87.7756693,17.1998307 87.5205727,17.2033252 87.3458463,17.2103142 C87.1711199,17.2173033 87.0138685,17.2277867 86.8740874,17.2417648 L86.8740874,17.2417648 Z M121.94052,17.1159625 L112.190837,17.1159625 L112.190837,22.4835296 L115.88104,22.4835296 L115.88104,22.2319249 C115.88104,21.4351727 116.055763,20.841112 116.405216,20.4497249 C116.754669,20.0583378 117.285829,19.8626472 117.998713,19.8626472 C118.627728,19.8626472 119.141415,20.0408655 119.539792,20.3973072 C119.938168,20.753749 120.137353,21.2045363 120.137353,21.7496826 C120.137353,21.7776388 120.144342,21.8684951 120.15832,22.0222543 C120.172298,22.1760135 120.179287,22.3297704 120.179287,22.4835296 L120.179287,26.8237109 C120.179287,27.7602442 120.011552,28.4311834 119.676077,28.8365486 C119.340603,29.2419138 118.795465,29.4445933 118.040647,29.4445933 C117.327763,29.4445933 116.789614,29.2558917 116.426183,28.8784827 C116.062752,28.5010738 115.88104,27.9419578 115.88104,27.201118 L115.88104,26.8237109 L112.190837,26.8237109 L112.190837,33.0928616 L121.94052,33.0928616 L121.94052,30.5977816 C121.94052,29.6612482 122.118738,28.9903091 122.47518,28.5849439 C122.831622,28.1795787 123.415199,27.9768992 124.225929,27.9768992 C125.022682,27.9768992 125.592281,28.1760842 125.934745,28.5744604 C126.277208,28.9728365 126.448438,29.6472701 126.448438,30.5977816 L126.448438,35.6718099 C126.448438,36.4266278 126.30167,36.9298322 126.008129,37.1814382 C125.714589,37.4330442 125.134506,37.5588453 124.267863,37.5588453 L107.095842,37.5588453 C106.173287,37.5588453 105.512831,37.3771326 105.114455,37.0137017 C104.716079,36.6502709 104.516894,36.0562101 104.516894,35.2315017 C104.516894,34.4906619 104.705595,33.9280514 105.083004,33.5436534 C105.460413,33.1592554 106.01254,32.9670593 106.739402,32.9670593 L107.095842,32.9670593 L107.095842,17.3256331 L106.739402,17.3256331 C106.026518,17.3256331 105.477886,17.126448 105.093488,16.7280719 C104.70909,16.3296957 104.516894,15.7600963 104.516894,15.0192565 C104.516894,14.2085262 104.719573,13.6179599 105.124938,13.24754 C105.530304,12.8771201 106.187265,12.691913 107.095842,12.691913 L124.267863,12.691913 C125.120528,12.691913 125.697116,12.8212085 125.997646,13.0798036 C126.298175,13.3383986 126.448438,13.8520864 126.448438,14.6208824 L126.448438,19.3175037 C126.448438,20.2680151 126.273714,20.9494377 125.924261,21.361792 C125.574808,21.7741462 125.008703,21.9803202 124.225929,21.9803202 C123.415199,21.9803202 122.831622,21.7706517 122.47518,21.3513084 C122.118738,20.9319652 121.94052,20.254037 121.94052,19.3175037 L121.94052,17.1159625 Z M19.7719369,47.6405477 C20.037521,47.1373358 20.3205734,46.7808993 20.6211028,46.5712277 C20.9216322,46.361556 21.295541,46.2567218 21.7428405,46.2567218 C22.4277678,46.2567218 22.9134998,46.4384345 23.2000511,46.8018653 C23.4866023,47.1652962 23.6298758,47.7873127 23.6298758,48.6679336 L23.6718099,54.119369 C23.6718099,55.0838586 23.5145586,55.7338309 23.2000511,56.0693055 C22.8855436,56.4047802 22.3089553,56.572515 21.4702687,56.572515 C20.8831881,56.572515 20.4254119,56.4292415 20.0969263,56.1426902 C19.7684407,55.856139 19.4993662,55.3424512 19.2896945,54.6016114 C18.9122856,53.2597129 18.3322027,52.3022267 17.5494286,51.7291243 C16.7666545,51.1560218 15.6693894,50.8694748 14.2576003,50.8694748 C12.1049715,50.8694748 10.4590738,51.5963256 9.31985785,53.050049 C8.18064193,54.5037724 7.61104252,56.6074463 7.61104252,59.3611338 C7.61104252,62.1148214 8.20859773,64.2429566 9.40372609,65.7456034 C10.5988544,67.2482501 12.2936748,67.9995623 14.488238,67.9995623 C14.9914499,67.9995623 15.5645438,67.9401562 16.2075368,67.8213423 C16.8505299,67.7025283 17.6053364,67.5173212 18.4719792,67.2657152 L18.4719792,63.9529198 L16.1027015,63.9529198 C15.1521901,63.9529198 14.4777564,63.7781961 14.0793803,63.4287433 C13.6810042,63.0792906 13.4818191,62.4992078 13.4818191,61.6884774 C13.4818191,60.8497908 13.6810042,60.2522356 14.0793803,59.8957938 C14.4777564,59.5393521 15.1521901,59.3611338 16.1027015,59.3611338 L23.6718099,59.3611338 C24.6502776,59.3611338 25.3386891,59.5358576 25.7370653,59.8853103 C26.1354414,60.2347631 26.3346265,60.8218348 26.3346265,61.6465433 C26.3346265,62.3873831 26.1354414,62.9569825 25.7370653,63.3553586 C25.3386891,63.7537347 24.7621008,63.9529198 24.0072829,63.9529198 L23.6718099,63.9529198 L23.6718099,68.9430799 L23.6718099,69.1946846 C23.6718099,69.6419841 23.6228873,69.9529924 23.5250405,70.1277188 C23.4271937,70.3024451 23.2315031,70.4806634 22.9379628,70.6623788 C22.1412106,71.1376345 20.8762107,71.5569715 19.1429251,71.9204023 C17.4096396,72.2838332 15.6554131,72.4655459 13.8801932,72.4655459 C10.2179286,72.4655459 7.25461383,71.2564576 4.99016011,68.8382446 C2.72570638,66.4200317 1.59349651,63.2610264 1.59349651,59.3611338 C1.59349651,55.6010224 2.73968428,52.4769618 5.03209423,49.9888583 C7.32450417,47.5007549 10.2319073,46.2567218 13.7543909,46.2567218 C14.7328585,46.2567218 15.7078171,46.368545 16.6792957,46.5921947 C17.6507743,46.8158445 18.6816444,47.165292 19.7719369,47.6405477 L19.7719369,47.6405477 Z M35.611576,51.5823548 L35.611576,56.4047785 L42.4678043,56.4047785 L42.4678043,51.5823548 L42.1323314,51.5823548 C41.3775135,51.5823548 40.8009251,51.3866642 40.402549,50.9952772 C40.0041729,50.6038901 39.8049878,50.0307962 39.8049878,49.2759783 C39.8049878,48.4512699 40.0111618,47.8572091 40.4235161,47.4937783 C40.8358703,47.1303474 41.5172929,46.9486347 42.4678043,46.9486347 L47.8773056,46.9486347 C48.8278171,46.9486347 49.5022507,47.1303474 49.9006269,47.4937783 C50.299003,47.8572091 50.498188,48.4512699 50.498188,49.2759783 C50.498188,50.0307962 50.3059919,50.6038901 49.9215939,50.9952772 C49.5371959,51.3866642 48.9745854,51.5823548 48.2337456,51.5823548 L47.8773056,51.5823548 L47.8773056,67.2237811 L48.2337456,67.2237811 C48.9885636,67.2237811 49.5616574,67.4159772 49.9530445,67.8003752 C50.3444316,68.1847732 50.5401222,68.7473837 50.5401222,69.4882235 C50.5401222,70.3129319 50.3374426,70.9069927 49.9320774,71.2704235 C49.5267123,71.6338543 48.8417952,71.815567 47.8773056,71.815567 L42.4678043,71.815567 C41.5033148,71.815567 40.8183977,71.6373488 40.4130325,71.280907 C40.0076674,70.9244652 39.8049878,70.32691 39.8049878,69.4882235 C39.8049878,68.7473837 40.0041729,68.1847732 40.402549,67.8003752 C40.8009251,67.4159772 41.3775135,67.2237811 42.1323314,67.2237811 L42.4678043,67.2237811 L42.4678043,61.0384986 L35.611576,61.0384986 L35.611576,67.2237811 L35.9470489,67.2237811 C36.7018668,67.2237811 37.2784552,67.4159772 37.6768313,67.8003752 C38.0752074,68.1847732 38.2743925,68.7473837 38.2743925,69.4882235 C38.2743925,70.3129319 38.0682185,70.9069927 37.6558642,71.2704235 C37.24351,71.6338543 36.5620874,71.815567 35.611576,71.815567 L30.2020747,71.815567 C29.2375851,71.815567 28.552668,71.6373488 28.1473029,71.280907 C27.7419377,70.9244652 27.5392581,70.32691 27.5392581,69.4882235 C27.5392581,68.7473837 27.7349487,68.1847732 28.1263358,67.8003752 C28.5177229,67.4159772 29.0908168,67.2237811 29.8456347,67.2237811 L30.2020747,67.2237811 L30.2020747,51.5823548 L29.8456347,51.5823548 C29.1047949,51.5823548 28.5421844,51.3866642 28.1577864,50.9952772 C27.7733884,50.6038901 27.5811923,50.0307962 27.5811923,49.2759783 C27.5811923,48.4512699 27.7803773,47.8572091 28.1787534,47.4937783 C28.5771296,47.1303474 29.2515632,46.9486347 30.2020747,46.9486347 L35.611576,46.9486347 C36.5481093,46.9486347 37.2260374,47.1303474 37.6453807,47.4937783 C38.064724,47.8572091 38.2743925,48.4512699 38.2743925,49.2759783 C38.2743925,50.0307962 38.0752074,50.6038901 37.6768313,50.9952772 C37.2784552,51.3866642 36.7018668,51.5823548 35.9470489,51.5823548 L35.611576,51.5823548 Z M67.365213,51.5823548 L67.365213,67.2237811 L70.887679,67.2237811 C71.8381904,67.2237811 72.519613,67.4019993 72.9319673,67.7584411 C73.3443215,68.1148829 73.5504955,68.6914712 73.5504955,69.4882235 C73.5504955,70.2989538 73.340827,70.8895201 72.9214837,71.25994 C72.5021404,71.6303599 71.8242123,71.815567 70.887679,71.815567 L58.4332458,71.815567 C57.4827343,71.815567 56.8013117,71.6338543 56.3889575,71.2704235 C55.9766033,70.9069927 55.7704292,70.3129319 55.7704292,69.4882235 C55.7704292,68.6774931 55.9731088,68.0974103 56.378474,67.7479575 C56.7838391,67.3985048 57.4687562,67.2237811 58.4332458,67.2237811 L61.9557117,67.2237811 L61.9557117,51.5823548 L58.4332458,51.5823548 C57.4827343,51.5823548 56.8013117,51.4006421 56.3889575,51.0372113 C55.9766033,50.6737805 55.7704292,50.0867087 55.7704292,49.2759783 C55.7704292,48.4512699 55.9731088,47.8641981 56.378474,47.5147453 C56.7838391,47.1652926 57.4687562,46.9905689 58.4332458,46.9905689 L70.887679,46.9905689 C71.8801247,46.9905689 72.5720308,47.1652926 72.9634178,47.5147453 C73.3548049,47.8641981 73.5504955,48.4512699 73.5504955,49.2759783 C73.5504955,50.0867087 73.347816,50.6737805 72.9424508,51.0372113 C72.5370856,51.4006421 71.8521685,51.5823548 70.887679,51.5823548 L67.365213,51.5823548 Z M97.8608265,51.5823548 L97.8608265,63.1771386 L97.8608265,63.5755127 C97.8608265,65.4485794 97.7385199,66.8044357 97.493903,67.6431222 C97.2492861,68.4818088 96.8404325,69.2296264 96.26733,69.8865976 C95.5264902,70.7392623 94.4991146,71.3822457 93.1851723,71.815567 C91.87123,72.2488884 90.2917273,72.4655459 88.4466169,72.4655459 C87.1466527,72.4655459 85.8921362,72.3397448 84.6830298,72.0881388 C83.4739233,71.8365328 82.3102631,71.4591296 81.1920144,70.9559176 C80.5769776,70.6763554 80.175113,70.31293 79.9864085,69.8656305 C79.797704,69.418331 79.7033532,68.6914802 79.7033532,67.6850564 L79.7033532,63.3658422 C79.7033532,62.1637247 79.8780769,61.3250508 80.2275297,60.849795 C80.5769824,60.3745393 81.185021,60.136915 82.0516638,60.136915 C83.2957156,60.136915 83.9806326,61.0524675 84.1064356,62.8835998 C84.1204137,63.2050963 84.1413806,63.4497096 84.1693368,63.6174469 C84.3370741,65.2389076 84.7144774,66.3466561 85.301558,66.9407258 C85.8886386,67.5347954 86.8251579,67.8318258 88.1111439,67.8318258 C89.7046484,67.8318258 90.8263749,67.4089943 91.476357,66.5633187 C92.126339,65.7176431 92.4513252,64.1765796 92.4513252,61.9400821 L92.4513252,51.5823548 L88.9288593,51.5823548 C87.9783478,51.5823548 87.2969252,51.4006421 86.884571,51.0372113 C86.4722168,50.6737805 86.2660427,50.0867087 86.2660427,49.2759783 C86.2660427,48.4512699 86.4652278,47.8641981 86.8636039,47.5147453 C87.26198,47.1652926 87.9503916,46.9905689 88.9288593,46.9905689 L99.6220595,46.9905689 C100.600527,46.9905689 101.288939,47.1652926 101.687315,47.5147453 C102.085691,47.8641981 102.284876,48.4512699 102.284876,49.2759783 C102.284876,50.0867087 102.078702,50.6737805 101.666348,51.0372113 C101.253994,51.4006421 100.572571,51.5823548 99.6220595,51.5823548 L97.8608265,51.5823548 Z M112.505343,51.5823548 L112.505343,57.9353738 L118.984165,51.4565525 C118.257303,51.3726838 117.747109,51.1665098 117.453569,50.8380242 C117.160029,50.5095387 117.013261,49.9888619 117.013261,49.2759783 C117.013261,48.4512699 117.212446,47.8572091 117.610822,47.4937783 C118.009198,47.1303474 118.683632,46.9486347 119.634143,46.9486347 L124.771073,46.9486347 C125.721584,46.9486347 126.396018,47.1303474 126.794394,47.4937783 C127.19277,47.8572091 127.391955,48.4512699 127.391955,49.2759783 C127.391955,50.0447743 127.19277,50.6213627 126.794394,51.0057607 C126.396018,51.3901587 125.812441,51.5823548 125.043645,51.5823548 L124.561402,51.5823548 L118.459988,57.641835 C119.592215,58.4805215 120.626579,59.5812811 121.563113,60.9441468 C122.499646,62.3070125 123.596911,64.400203 124.854941,67.2237811 L125.127513,67.2237811 L125.546854,67.2237811 C126.371563,67.2237811 126.98659,67.4124827 127.391955,67.7898917 C127.79732,68.1673006 128,68.7334056 128,69.4882235 C128,70.3129319 127.793826,70.9069927 127.381472,71.2704235 C126.969118,71.6338543 126.287695,71.815567 125.337183,71.815567 L122.758235,71.815567 C121.626008,71.815567 120.710456,71.0537715 120.01155,69.5301576 C119.885747,69.2505954 119.787902,69.026949 119.718012,68.8592117 C118.795456,66.9022764 117.949793,65.3926632 117.180997,64.3303269 C116.412201,63.2679906 115.510627,62.2965265 114.476247,61.4159056 L112.505343,63.302941 L112.505343,67.2237811 L112.840816,67.2237811 C113.595634,67.2237811 114.172222,67.4159772 114.570599,67.8003752 C114.968975,68.1847732 115.16816,68.7473837 115.16816,69.4882235 C115.16816,70.3129319 114.961986,70.9069927 114.549631,71.2704235 C114.137277,71.6338543 113.455855,71.815567 112.505343,71.815567 L107.095842,71.815567 C106.131352,71.815567 105.446435,71.6373488 105.04107,71.280907 C104.635705,70.9244652 104.433025,70.32691 104.433025,69.4882235 C104.433025,68.7473837 104.628716,68.1847732 105.020103,67.8003752 C105.41149,67.4159772 105.984584,67.2237811 106.739402,67.2237811 L107.095842,67.2237811 L107.095842,51.5823548 L106.739402,51.5823548 C105.998562,51.5823548 105.435952,51.3866642 105.051554,50.9952772 C104.667156,50.6038901 104.474959,50.0307962 104.474959,49.2759783 C104.474959,48.4512699 104.674145,47.8572091 105.072521,47.4937783 C105.470897,47.1303474 106.14533,46.9486347 107.095842,46.9486347 L112.505343,46.9486347 C113.441877,46.9486347 114.119805,47.1303474 114.539148,47.4937783 C114.958491,47.8572091 115.16816,48.4512699 115.16816,49.2759783 C115.16816,50.0307962 114.968975,50.6038901 114.570599,50.9952772 C114.172222,51.3866642 113.595634,51.5823548 112.840816,51.5823548 L112.505343,51.5823548 Z M13.439885,96.325622 L17.4445933,84.4372993 C17.6961993,83.6545252 18.0456468,83.0849258 18.4929463,82.728484 C18.9402458,82.3720422 19.5343065,82.193824 20.2751463,82.193824 L23.5460076,82.193824 C24.496519,82.193824 25.1779416,82.3755367 25.5902958,82.7389675 C26.0026501,83.1023984 26.2088241,83.6964591 26.2088241,84.5211676 C26.2088241,85.2759855 26.009639,85.8490794 25.6112629,86.2404664 C25.2128868,86.6318535 24.6362984,86.8275441 23.8814805,86.8275441 L23.5460076,86.8275441 L24.1330852,102.46897 L24.4895252,102.46897 C25.2443431,102.46897 25.8104481,102.661166 26.187857,103.045564 C26.565266,103.429962 26.7539676,103.992573 26.7539676,104.733413 C26.7539676,105.558121 26.5547826,106.152182 26.1564064,106.515613 C25.7580303,106.879044 25.0835967,107.060756 24.1330852,107.060756 L19.4154969,107.060756 C18.4649855,107.060756 17.7905518,106.882538 17.3921757,106.526096 C16.9937996,106.169654 16.7946145,105.572099 16.7946145,104.733413 C16.7946145,103.992573 16.9868106,103.429962 17.3712086,103.045564 C17.7556066,102.661166 18.325206,102.46897 19.0800239,102.46897 L19.4154969,102.46897 L19.1219581,89.6790642 L16.0607674,99.1981091 C15.8371177,99.9109927 15.5191204,100.42468 15.1067662,100.739188 C14.694412,101.053695 14.1248126,101.210947 13.3979509,101.210947 C12.6710892,101.210947 12.0945008,101.053695 11.6681685,100.739188 C11.2418362,100.42468 10.91685,99.9109927 10.6932002,99.1981091 L7.65297664,89.6790642 L7.35943781,102.46897 L7.69491075,102.46897 C8.44972866,102.46897 9.01932808,102.661166 9.40372609,103.045564 C9.78812409,103.429962 9.98032022,103.992573 9.98032022,104.733413 C9.98032022,105.558121 9.77764067,106.152182 9.3722755,106.515613 C8.96691032,106.879044 8.29597114,107.060756 7.35943781,107.060756 L2.62088241,107.060756 C1.68434908,107.060756 1.01340989,106.879044 0.608044719,106.515613 C0.202679546,106.152182 0,105.558121 0,104.733413 C0,103.992573 0.192196121,103.429962 0.57659413,103.045564 C0.960992139,102.661166 1.53059155,102.46897 2.28540946,102.46897 L2.62088241,102.46897 L3.22892713,86.8275441 L2.89345418,86.8275441 C2.13863627,86.8275441 1.56204791,86.6318535 1.16367179,86.2404664 C0.765295672,85.8490794 0.5661106,85.2759855 0.5661106,84.5211676 C0.5661106,83.6964591 0.772284622,83.1023984 1.18463885,82.7389675 C1.59699308,82.3755367 2.27841569,82.193824 3.22892713,82.193824 L6.49978838,82.193824 C7.22665007,82.193824 7.81022738,82.3685477 8.25053783,82.7180005 C8.69084827,83.0674532 9.05077919,83.6405471 9.33034138,84.4372993 L13.439885,96.325622 Z M43.8935644,98.3803938 L43.8935644,86.8275441 L42.7403761,86.8275441 C41.8178209,86.8275441 41.1573651,86.6458314 40.758989,86.2824006 C40.3606129,85.9189697 40.1614278,85.3318979 40.1614278,84.5211676 C40.1614278,83.7104372 40.3606129,83.119871 40.758989,82.7494511 C41.1573651,82.3790312 41.8178209,82.193824 42.7403761,82.193824 L48.6950209,82.193824 C49.6035981,82.193824 50.2605593,82.3790312 50.6659245,82.7494511 C51.0712897,83.119871 51.2739692,83.7104372 51.2739692,84.5211676 C51.2739692,85.2620074 51.0817731,85.8316068 50.6973751,86.2299829 C50.3129771,86.628359 49.7643445,86.8275441 49.051461,86.8275441 L48.6950209,86.8275441 L48.6950209,105.865634 C48.6950209,106.522605 48.6251315,106.934953 48.4853504,107.10269 C48.3455693,107.270428 48.0310665,107.354295 47.5418327,107.354295 L45.4451268,107.354295 C44.7741775,107.354295 44.3024234,107.284406 44.0298503,107.144625 C43.7572771,107.004843 43.5231473,106.76023 43.3274538,106.410777 L34.6051571,91.0838571 L34.6051571,102.46897 L35.8212466,102.46897 C36.7298237,102.46897 37.379796,102.643694 37.7711831,102.993147 C38.1625701,103.3426 38.3582607,103.922682 38.3582607,104.733413 C38.3582607,105.558121 38.1590757,106.152182 37.7606995,106.515613 C37.3623234,106.879044 36.7158456,107.060756 35.8212466,107.060756 L29.8037005,107.060756 C28.8951234,107.060756 28.2381621,106.879044 27.832797,106.515613 C27.4274318,106.152182 27.2247522,105.558121 27.2247522,104.733413 C27.2247522,103.992573 27.4134539,103.429962 27.7908629,103.045564 C28.1682718,102.661166 28.7273878,102.46897 29.4682276,102.46897 L29.8037005,102.46897 L29.8037005,86.8275441 L29.4682276,86.8275441 C28.755344,86.8275441 28.203217,86.628359 27.8118299,86.2299829 C27.4204428,85.8316068 27.2247522,85.2620074 27.2247522,84.5211676 C27.2247522,83.7104372 27.4309263,83.119871 27.8432805,82.7494511 C28.2556347,82.3790312 28.9091015,82.193824 29.8037005,82.193824 L33.2422983,82.193824 C34.0670067,82.193824 34.6261227,82.3021527 34.919663,82.5188134 C35.2132033,82.7354741 35.5416839,83.1722835 35.9051148,83.8292546 L43.8935644,98.3803938 Z M64.6604624,86.3662688 C62.8572863,86.3662688 61.4420239,87.0931196 60.4146329,88.546843 C59.3872418,90.0005663 58.873554,92.0203728 58.873554,94.6063231 C58.873554,97.1922733 59.3907363,99.2190688 60.4251164,100.68677 C61.4594965,102.154472 62.8712644,102.888312 64.6604624,102.888312 C66.4636385,102.888312 67.8823953,102.157966 68.9167754,100.697254 C69.9511555,99.2365414 70.4683378,97.2062514 70.4683378,94.6063231 C70.4683378,92.0203728 69.95465,90.0005663 68.9272589,88.546843 C67.8998679,87.0931196 66.4776166,86.3662688 64.6604624,86.3662688 L64.6604624,86.3662688 Z M64.6604624,81.501911 C68.0990773,81.501911 70.929602,82.7319662 73.1521214,85.1921135 C75.3746408,87.6522607 76.4858838,90.7902992 76.4858838,94.6063231 C76.4858838,98.4503032 75.3816297,101.595331 73.1730884,104.0415 C70.9645471,106.487669 68.1270335,107.710735 64.6604624,107.710735 C61.2358256,107.710735 58.4053009,106.477185 56.1688034,104.010049 C53.9323059,101.542913 52.8140739,98.4083688 52.8140739,94.6063231 C52.8140739,90.7763211 53.9218224,87.6347881 56.1373528,85.1816299 C58.3528831,82.7284717 61.1938912,81.501911 64.6604624,81.501911 L64.6604624,81.501911 Z M87.4611651,98.1707232 L87.4611651,102.46897 L89.6207722,102.46897 C90.5293493,102.46897 91.1758272,102.643694 91.5602252,102.993147 C91.9446232,103.3426 92.1368193,103.922682 92.1368193,104.733413 C92.1368193,105.558121 91.9411287,106.152182 91.5497417,106.515613 C91.1583546,106.879044 90.5153712,107.060756 89.6207722,107.060756 L82.3661697,107.060756 C81.4436145,107.060756 80.7831587,106.879044 80.3847826,106.515613 C79.9864065,106.152182 79.7872214,105.558121 79.7872214,104.733413 C79.7872214,103.992573 79.9759231,103.429962 80.353332,103.045564 C80.730741,102.661166 81.282868,102.46897 82.0097297,102.46897 L82.3661697,102.46897 L82.3661697,86.8275441 L82.0097297,86.8275441 C81.2968461,86.8275441 80.7482136,86.628359 80.3638155,86.2299829 C79.9794175,85.8316068 79.7872214,85.2620074 79.7872214,84.5211676 C79.7872214,83.7104372 79.989901,83.119871 80.3952661,82.7494511 C80.8006313,82.3790312 81.4575926,82.193824 82.3661697,82.193824 L91.0255652,82.193824 C94.450202,82.193824 97.0396079,82.8507853 98.7938606,84.1647276 C100.548113,85.4786699 101.425227,87.414609 101.425227,89.972603 C101.425227,92.6703781 100.551608,94.7111515 98.8043442,96.0949843 C97.0570805,97.4788171 94.4641801,98.1707232 91.0255652,98.1707232 L87.4611651,98.1707232 Z M87.4611651,86.8275441 L87.4611651,93.4531348 L90.4384875,93.4531348 C92.0879044,93.4531348 93.328443,93.1735768 94.1601405,92.6144525 C94.9918381,92.0553281 95.4076806,91.2166541 95.4076806,90.0984053 C95.4076806,89.0500471 94.9778602,88.2428234 94.1182064,87.67671 C93.2585527,87.1105966 92.031992,86.8275441 90.4384875,86.8275441 L87.4611651,86.8275441 Z M114.727851,107.396229 L113.092421,109.03166 C113.69348,108.835966 114.284046,108.689198 114.864137,108.591352 C115.444229,108.493505 116.013828,108.444582 116.572953,108.444582 C117.677223,108.444582 118.840883,108.608823 120.063968,108.937308 C121.287053,109.265794 122.031376,109.430034 122.29696,109.430034 C122.744259,109.430034 123.327837,109.279772 124.047709,108.979242 C124.767582,108.678713 125.253314,108.52845 125.50492,108.52845 C126.02211,108.52845 126.45193,108.727636 126.794394,109.126012 C127.136858,109.524388 127.308087,110.024098 127.308087,110.625156 C127.308087,111.421909 126.836333,112.099837 125.892811,112.658961 C124.949288,113.218086 123.792617,113.497643 122.422762,113.497643 C121.486229,113.497643 120.28413,113.277492 118.816428,112.837181 C117.348727,112.396871 116.286406,112.176719 115.629435,112.176719 C114.636989,112.176719 113.518757,112.449288 112.274706,112.994434 C111.030654,113.53958 110.261869,113.812149 109.968329,113.812149 C109.36727,113.812149 108.857077,113.612964 108.437734,113.214588 C108.01839,112.816212 107.808722,112.337469 107.808722,111.778345 C107.808722,111.386958 107.941512,110.971115 108.207096,110.530805 C108.47268,110.090494 108.94094,109.520895 109.611889,108.821989 L111.729562,106.683349 C109.395218,105.830685 107.536157,104.29661 106.152324,102.08108 C104.768491,99.8655494 104.076585,97.3180772 104.076585,94.4385866 C104.076585,90.6365409 105.180839,87.5299526 107.389381,85.1187288 C109.597922,82.7075049 112.442425,81.501911 115.922974,81.501911 C119.389545,81.501911 122.227059,82.7109994 124.4356,85.1292123 C126.644141,87.5474252 127.748395,90.650519 127.748395,94.4385866 C127.748395,98.2126762 126.65113,101.322759 124.456567,103.768928 C122.262004,106.215097 119.480402,107.438163 116.111677,107.438163 C115.888028,107.438163 115.660887,107.434669 115.430248,107.42768 C115.199609,107.420691 114.965479,107.410207 114.727851,107.396229 L114.727851,107.396229 Z M115.922974,86.3662688 C114.119798,86.3662688 112.704535,87.0931196 111.677144,88.546843 C110.649753,90.0005663 110.136065,92.0203728 110.136065,94.6063231 C110.136065,97.1922733 110.653248,99.2190688 111.687628,100.68677 C112.722008,102.154472 114.133776,102.888312 115.922974,102.888312 C117.72615,102.888312 119.144907,102.157966 120.179287,100.697254 C121.213667,99.2365414 121.730849,97.2062514 121.730849,94.6063231 C121.730849,92.0203728 121.217161,90.0005663 120.18977,88.546843 C119.162379,87.0931196 117.740128,86.3662688 115.922974,86.3662688 L115.922974,86.3662688 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/mono-line": {
            "title": "$:/core/images/mono-line",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-mono-line tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M60.4374591,84.522627 L61.3450888,84.522627 C63.2671377,84.522627 64.7264493,85.0120303 65.7230673,85.9908515 C66.7196852,86.9696727 67.2179868,88.4022896 67.2179868,90.288745 C67.2179868,92.3887615 66.6929905,93.9014625 65.6429823,94.8268935 C64.5929741,95.7523244 62.857817,96.215033 60.4374591,96.215033 L44.3670747,96.215033 C41.9111232,96.215033 40.1670679,95.7612227 39.1348565,94.8535884 C38.102645,93.9459542 37.586547,92.424355 37.586547,90.288745 C37.586547,88.2243221 38.102645,86.747214 39.1348565,85.8573766 C40.1670679,84.9675391 41.9111232,84.522627 44.3670747,84.522627 L46.235724,84.522627 L44.0467348,78.2759992 L20.9822627,78.2759992 L18.6864935,84.522627 L20.5551429,84.522627 C22.9755008,84.522627 24.7106579,84.9764373 25.7606661,85.8840716 C26.8106743,86.7917058 27.3356705,88.2599156 27.3356705,90.288745 C27.3356705,92.3887615 26.8106743,93.9014625 25.7606661,94.8268935 C24.7106579,95.7523244 22.9755008,96.215033 20.5551429,96.215033 L6.78052766,96.215033 C4.32457622,96.215033 2.58052094,95.7523244 1.54830946,94.8268935 C0.516097994,93.9014625 0,92.3887615 0,90.288745 C0,88.4022896 0.498301511,86.9696727 1.49491948,85.9908515 C2.49153745,85.0120303 3.95084902,84.522627 5.87289797,84.522627 L6.78052766,84.522627 L21.0890427,44.6937008 L16.8178442,44.6937008 C14.3974863,44.6937008 12.6623292,44.2309922 11.612321,43.3055613 C10.5623128,42.3801303 10.0373165,40.8852258 10.0373165,38.8208028 C10.0373165,36.7207864 10.5623128,35.2080854 11.612321,34.2826544 C12.6623292,33.3572234 14.3974863,32.8945149 16.8178442,32.8945149 L36.8390873,32.8945149 C40.0069087,32.8945149 42.231469,34.6029772 43.512835,38.0199531 L43.512835,38.180123 L60.4374591,84.522627 Z M32.4611088,44.6937008 L24.7195615,67.224273 L40.2026561,67.224273 L32.4611088,44.6937008 Z M89.5058233,68.5590225 L89.5058233,84.8429669 L97.5143205,84.8429669 C103.173687,84.8429669 107.160099,84.22009 109.473676,82.9743176 C111.787254,81.7285451 112.944025,79.6463566 112.944025,76.7276897 C112.944025,73.7734293 111.840643,71.6734444 109.633846,70.4276719 C107.427049,69.1818994 103.565213,68.5590225 98.0482204,68.5590225 L89.5058233,68.5590225 Z M116.734714,62.6327346 C120.614405,64.0564746 123.461842,66.0051894 125.277111,68.4789376 C127.092379,70.9526857 128,74.1115614 128,77.9556593 C128,81.1946677 127.216955,84.1488838 125.650841,86.8183962 C124.084727,89.4879087 121.84237,91.676876 118.923703,93.385364 C117.215215,94.3819819 115.302093,95.1027395 113.18428,95.5476582 C111.066467,95.9925769 108.06776,96.215033 104.188068,96.215033 L99.7033098,96.215033 L76.3184979,96.215033 C73.9693269,96.215033 72.2875593,95.7523244 71.2731446,94.8268935 C70.2587299,93.9014625 69.7515301,92.3887615 69.7515301,90.288745 C69.7515301,88.4022896 70.2320352,86.9696727 71.1930596,85.9908515 C72.1540841,85.0120303 73.5600062,84.522627 75.4108682,84.522627 L76.3184979,84.522627 L76.3184979,44.6937008 L75.4108682,44.6937008 C73.5600062,44.6937008 72.1540841,44.1953993 71.1930596,43.1987813 C70.2320352,42.2021633 69.7515301,40.7428518 69.7515301,38.8208028 C69.7515301,36.7563799 70.2676281,35.2525771 71.2998396,34.3093494 C72.3320511,33.3661217 74.0049204,32.8945149 76.3184979,32.8945149 L100.877889,32.8945149 C108.388118,32.8945149 114.09189,34.3538264 117.989378,37.2724934 C121.886867,40.1911603 123.835581,44.4623161 123.835581,50.0860889 C123.835581,52.8623819 123.239399,55.3093982 122.047017,57.4272114 C120.854635,59.5450246 119.083885,61.2801816 116.734714,62.6327346 L116.734714,62.6327346 Z M89.5058233,44.3733609 L89.5058233,57.8276363 L96.7134708,57.8276363 C101.091471,57.8276363 104.179161,57.3115383 105.976633,56.2793268 C107.774104,55.2471153 108.672827,53.50306 108.672827,51.0471086 C108.672827,48.7335312 107.863087,47.0428653 106.243583,45.9750604 C104.624078,44.9072554 101.999097,44.3733609 98.3685602,44.3733609 L89.5058233,44.3733609 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/new-button": {
            "title": "$:/core/images/new-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-new-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M56,72 L8.00697327,72 C3.59075293,72 0,68.418278 0,64 C0,59.5907123 3.58484404,56 8.00697327,56 L56,56 L56,8.00697327 C56,3.59075293 59.581722,0 64,0 C68.4092877,0 72,3.58484404 72,8.00697327 L72,56 L119.993027,56 C124.409247,56 128,59.581722 128,64 C128,68.4092877 124.415156,72 119.993027,72 L72,72 L72,119.993027 C72,124.409247 68.418278,128 64,128 C59.5907123,128 56,124.415156 56,119.993027 L56,72 L56,72 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/new-here-button": {
            "title": "$:/core/images/new-here-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-new-here-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n    \t<g transform=\"translate(52.233611, 64.389922) rotate(75.000000) translate(-52.233611, -64.389922) translate(-7.734417, 3.702450)\">\n\t        <path d=\"M18.9270186,45.959338 L18.9080585,49.6521741 C18.8884833,53.4648378 21.0574548,58.7482162 23.7526408,61.4434022 L78.5671839,116.257945 C81.2617332,118.952495 85.6348701,118.950391 88.3334363,116.251825 L115.863237,88.7220241 C118.555265,86.0299959 118.564544,81.6509578 115.869358,78.9557717 L61.0548144,24.1412286 C58.3602652,21.4466794 53.0787224,19.2788426 49.2595808,19.3006519 L25.9781737,19.4336012 C22.1633003,19.4553862 19.0471195,22.5673232 19.0275223,26.3842526 L18.9871663,34.2443819 C19.0818862,34.255617 19.1779758,34.2665345 19.2754441,34.2771502 C22.6891275,34.6489512 27.0485594,34.2348566 31.513244,33.2285542 C31.7789418,32.8671684 32.075337,32.5211298 32.4024112,32.1940556 C34.8567584,29.7397084 38.3789778,29.0128681 41.4406288,30.0213822 C41.5958829,29.9543375 41.7503946,29.8866669 41.9041198,29.8183808 L42.1110981,30.2733467 C43.1114373,30.6972371 44.0473796,31.3160521 44.8614145,32.1300869 C48.2842088,35.5528813 48.2555691,41.130967 44.7974459,44.5890903 C41.4339531,47.952583 36.0649346,48.0717177 32.6241879,44.9262969 C27.8170558,45.8919233 23.0726921,46.2881596 18.9270186,45.959338 Z\"></path>\n\t        <path d=\"M45.4903462,38.8768094 C36.7300141,42.6833154 26.099618,44.7997354 18.1909048,43.9383587 C7.2512621,42.7468685 1.50150083,35.8404432 4.66865776,24.7010202 C7.51507386,14.6896965 15.4908218,6.92103848 24.3842626,4.38423012 C34.1310219,1.60401701 42.4070208,6.15882777 42.4070209,16.3101169 L34.5379395,16.310117 C34.5379394,11.9285862 31.728784,10.3825286 26.5666962,11.8549876 C20.2597508,13.6540114 14.3453742,19.4148216 12.2444303,26.8041943 C10.4963869,32.9523565 12.6250796,35.5092726 19.0530263,36.2093718 C25.5557042,36.9176104 35.0513021,34.9907189 42.7038419,31.5913902 L42.7421786,31.6756595 C44.3874154,31.5384763 47.8846101,37.3706354 45.9274416,38.6772897 L45.9302799,38.6835285 C45.9166992,38.6895612 45.9031139,38.6955897 45.8895238,38.7016142 C45.8389288,38.7327898 45.7849056,38.7611034 45.7273406,38.7863919 C45.6506459,38.8200841 45.571574,38.8501593 45.4903462,38.8768094 Z\"></path>\n        </g>\n        <rect x=\"96\" y=\"80\" width=\"16\" height=\"48\" rx=\"8\"></rect>\n        <rect x=\"80\" y=\"96\" width=\"48\" height=\"16\" rx=\"8\"></rect>\n    </g>\n    </g>\n</svg>"
        },
        "$:/core/images/new-image-button": {
            "title": "$:/core/images/new-image-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-new-image-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M81.3619177,73.6270062 L97.1875317,46.2162388 C97.91364,44.9585822 97.4824378,43.3533085 96.2260476,42.6279312 L46.2162388,13.7547547 C44.9585822,13.0286463 43.3533085,13.4598485 42.6279312,14.7162388 L30.0575956,36.4886988 L40.0978909,31.2276186 C43.1404959,29.6333041 46.8692155,31.3421319 47.6479264,34.6877101 L51.2545483,52.3903732 L61.1353556,53.2399953 C63.2899974,53.4346096 65.1046382,54.9309951 65.706105,57.0091178 C65.7395572,57.1246982 65.8069154,57.3539875 65.9047035,57.6813669 C66.0696435,58.2335608 66.2581528,58.852952 66.4667073,59.5238092 C67.0618822,61.4383079 67.6960725,63.3742727 68.3393254,65.2021174 C68.5462918,65.7902259 68.7511789,66.3583016 68.953259,66.9034738 C69.5777086,68.5881157 70.1617856,70.0172008 70.6783305,71.110045 C70.9334784,71.6498566 71.1627732,72.0871602 71.4035746,72.5373068 C71.6178999,72.7492946 71.9508843,72.9623307 72.4151452,73.1586945 C73.5561502,73.6412938 75.1990755,73.899146 77.0720271,73.9171651 C77.9355886,73.9254732 78.7819239,73.8832103 79.5638842,73.8072782 C80.0123946,73.7637257 80.3172916,73.7224469 80.4352582,73.7027375 C80.7503629,73.6500912 81.0598053,73.6256267 81.3619177,73.6270062 L81.3619177,73.6270062 L81.3619177,73.6270062 L81.3619177,73.6270062 Z M37.4707881,2.64867269 C38.9217993,0.135447653 42.1388058,-0.723707984 44.6486727,0.725364314 L108.293614,37.4707881 C110.806839,38.9217993 111.665994,42.1388058 110.216922,44.6486727 L73.4714982,108.293614 C72.0204871,110.806839 68.8034805,111.665994 66.2936136,110.216922 L2.64867269,73.4714982 C0.135447653,72.0204871 -0.723707984,68.8034805 0.725364314,66.2936136 L37.4707881,2.64867269 L37.4707881,2.64867269 L37.4707881,2.64867269 L37.4707881,2.64867269 Z M80.3080975,53.1397764 C82.8191338,54.5895239 86.0299834,53.7291793 87.4797308,51.218143 C88.9294783,48.7071068 88.0691338,45.4962571 85.5580975,44.0465097 C83.0470612,42.5967622 79.8362116,43.4571068 78.3864641,45.968143 C76.9367166,48.4791793 77.7970612,51.6900289 80.3080975,53.1397764 L80.3080975,53.1397764 L80.3080975,53.1397764 L80.3080975,53.1397764 Z M96,112 L88.0070969,112 C83.5881712,112 80,108.418278 80,104 C80,99.5907123 83.5848994,96 88.0070969,96 L96,96 L96,88.0070969 C96,83.5881712 99.581722,80 104,80 C108.409288,80 112,83.5848994 112,88.0070969 L112,96 L119.992903,96 C124.411829,96 128,99.581722 128,104 C128,108.409288 124.415101,112 119.992903,112 L112,112 L112,119.992903 C112,124.411829 108.418278,128 104,128 C99.5907123,128 96,124.415101 96,119.992903 L96,112 L96,112 Z M33.3471097,51.7910932 C40.7754579,59.7394511 42.3564368,62.4818351 40.7958321,65.1848818 C39.2352273,67.8879286 26.9581062,62.8571718 24.7019652,66.7649227 C22.4458242,70.6726735 23.7947046,70.0228006 22.2648667,72.6725575 L41.9944593,84.0634431 C41.9944593,84.0634431 36.3904568,75.8079231 37.7602356,73.4353966 C40.2754811,69.0788636 46.5298923,72.1787882 48.1248275,69.4162793 C50.538989,65.234829 43.0222016,59.7770885 33.3471097,51.7910932 L33.3471097,51.7910932 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/new-journal-button": {
            "title": "$:/core/images/new-journal-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-new-journal-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M102.545455,112.818182 L102.545455,124.636364 L102.545455,124.636364 L102.545455,124.636364 C102.545455,125.941761 103.630828,127 104.969697,127 L111.030303,127 C112.369172,127 113.454545,125.941761 113.454545,124.636364 L113.454545,112.818182 L125.575758,112.818182 C126.914626,112.818182 128,111.759982 128,110.454545 L128,104.545455 C128,103.240018 126.914626,102.181818 125.575758,102.181818 L113.454545,102.181818 L113.454545,90.3636364 C113.454545,89.0582 112.369172,88 111.030303,88 L104.969697,88 L104.969697,88 C103.630828,88 102.545455,89.0582 102.545455,90.3636364 L102.545455,102.181818 L90.4242424,102.181818 L90.4242424,102.181818 C89.0853705,102.181818 88,103.240018 88,104.545455 L88,110.454545 L88,110.454545 L88,110.454545 C88,111.759982 89.0853705,112.818182 90.4242424,112.818182 L102.545455,112.818182 Z\"></path>\n        <g transform=\"translate(59.816987, 64.316987) rotate(30.000000) translate(-59.816987, -64.316987) translate(20.316987, 12.816987)\">\n            <g transform=\"translate(0.000000, 0.000000)\">\n                <path d=\"M9.99631148,0 C4.4755011,0 -2.27373675e-13,4.48070044 -2.27373675e-13,9.99759461 L-2.27373675e-13,91.6128884 C-2.27373675e-13,97.1344074 4.46966773,101.610483 9.99631148,101.610483 L68.9318917,101.610483 C74.4527021,101.610483 78.9282032,97.1297826 78.9282032,91.6128884 L78.9282032,9.99759461 C78.9282032,4.47607557 74.4585355,0 68.9318917,0 L9.99631148,0 Z M20.8885263,26 C24.2022348,26 26.8885263,23.3137085 26.8885263,20 C26.8885263,16.6862915 24.2022348,14 20.8885263,14 C17.5748178,14 14.8885263,16.6862915 14.8885263,20 C14.8885263,23.3137085 17.5748178,26 20.8885263,26 Z M57.3033321,25.6783342 C60.6170406,25.6783342 63.3033321,22.9920427 63.3033321,19.6783342 C63.3033321,16.3646258 60.6170406,13.6783342 57.3033321,13.6783342 C53.9896236,13.6783342 51.3033321,16.3646258 51.3033321,19.6783342 C51.3033321,22.9920427 53.9896236,25.6783342 57.3033321,25.6783342 Z\"></path>\n                <text font-family=\"Helvetica\" font-size=\"47.1724138\" font-weight=\"bold\" fill=\"#FFFFFF\">\n                    <tspan x=\"42\" y=\"77.4847912\" text-anchor=\"middle\"><<now \"DD\">></tspan>\n                </text>\n            </g>\n        </g>\n    </g>\n</svg>"
        },
        "$:/core/images/opacity": {
            "title": "$:/core/images/opacity",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-opacity tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M102.361773,65 C101.833691,67.051742 101.183534,69.0544767 100.419508,71 L82.5835324,71 C83.7602504,69.1098924 84.7666304,67.1027366 85.581205,65 L102.361773,65 Z M102.834311,63 C103.256674,61.0388326 103.568427,59.0365486 103.762717,57 L87.6555706,57 C87.3692052,59.0609452 86.9083652,61.0660782 86.2884493,63 L102.834311,63 Z M99.5852583,73 C98.6682925,75.0747721 97.6196148,77.0783056 96.4498253,79 L75.8124196,79 C77.8387053,77.2115633 79.6621163,75.1985844 81.2437158,73 L99.5852583,73 Z M95.1689122,81 C93.7449202,83.1155572 92.1695234,85.1207336 90.458251,87 L60.4614747,87 C65.1836162,85.86248 69.5430327,83.794147 73.3347255,81 L95.1689122,81 Z M87.6555706,47 L103.762717,47 C101.246684,20.6269305 79.0321807,0 52,0 C23.281193,0 0,23.281193 0,52 C0,77.2277755 17.9651296,98.2595701 41.8000051,103 L62.1999949,103 C67.8794003,101.870444 73.2255333,99.8158975 78.074754,97 L39,97 L39,95 L81.2493857,95 C83.8589242,93.2215015 86.2981855,91.2116653 88.5376609,89 L39,89 L39,87 L43.5385253,87 C27.7389671,83.1940333 16,68.967908 16,52 C16,32.117749 32.117749,16 52,16 C70.1856127,16 85.2217929,29.4843233 87.6555706,47 Z M87.8767787,49 L103.914907,49 C103.971379,49.9928025 104,50.9930589 104,52 C104,53.0069411 103.971379,54.0071975 103.914907,55 L87.8767787,55 C87.958386,54.0107999 88,53.0102597 88,52 C88,50.9897403 87.958386,49.9892001 87.8767787,49 Z\"></path>\n        <path d=\"M76,128 C104.718807,128 128,104.718807 128,76 C128,47.281193 104.718807,24 76,24 C47.281193,24 24,47.281193 24,76 C24,104.718807 47.281193,128 76,128 L76,128 Z M76,112 C95.882251,112 112,95.882251 112,76 C112,56.117749 95.882251,40 76,40 C56.117749,40 40,56.117749 40,76 C40,95.882251 56.117749,112 76,112 L76,112 Z\"></path>\n        <path d=\"M37,58 L90,58 L90,62 L37,62 L37,58 L37,58 Z M40,50 L93,50 L93,54 L40,54 L40,50 L40,50 Z M40,42 L93,42 L93,46 L40,46 L40,42 L40,42 Z M32,66 L85,66 L85,70 L32,70 L32,66 L32,66 Z M30,74 L83,74 L83,78 L30,78 L30,74 L30,74 Z M27,82 L80,82 L80,86 L27,86 L27,82 L27,82 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/open-window": {
            "title": "$:/core/images/open-window",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-open-window tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M16,112 L104.993898,112 C108.863261,112 112,115.590712 112,120 C112,124.418278 108.858091,128 104.993898,128 L7.00610161,128 C3.13673853,128 0,124.409288 0,120 C0,119.998364 4.30952878e-07,119.996727 1.29273572e-06,119.995091 C4.89579306e-07,119.993456 0,119.99182 0,119.990183 L0,24.0098166 C0,19.586117 3.59071231,16 8,16 C12.418278,16 16,19.5838751 16,24.0098166 L16,112 Z\"></path>\n        <path d=\"M96,43.1959595 L96,56 C96,60.418278 99.581722,64 104,64 C108.418278,64 112,60.418278 112,56 L112,24 C112,19.5907123 108.415101,16 103.992903,16 L72.0070969,16 C67.5881712,16 64,19.581722 64,24 C64,28.4092877 67.5848994,32 72.0070969,32 L84.5685425,32 L48.2698369,68.2987056 C45.1421332,71.4264093 45.1434327,76.4904296 48.267627,79.614624 C51.3854642,82.7324612 56.4581306,82.7378289 59.5835454,79.6124141 L96,43.1959595 Z M32,7.9992458 C32,3.58138434 35.5881049,0 39.9992458,0 L120.000754,0 C124.418616,0 128,3.5881049 128,7.9992458 L128,88.0007542 C128,92.4186157 124.411895,96 120.000754,96 L39.9992458,96 C35.5813843,96 32,92.4118951 32,88.0007542 L32,7.9992458 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/options-button": {
            "title": "$:/core/images/options-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-options-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M110.48779,76.0002544 C109.354214,80.4045063 107.611262,84.5641217 105.354171,88.3838625 L105.354171,88.3838625 L112.07833,95.1080219 C115.20107,98.2307613 115.210098,103.299824 112.089164,106.420759 L106.420504,112.089418 C103.301049,115.208874 98.2346851,115.205502 95.1077675,112.078585 L88.3836082,105.354425 C84.5638673,107.611516 80.4042519,109.354468 76,110.488045 L76,110.488045 L76,119.993281 C76,124.409501 72.4220153,128.000254 68.0083475,128.000254 L59.9916525,128.000254 C55.5800761,128.000254 52,124.41541 52,119.993281 L52,110.488045 C47.5957481,109.354468 43.4361327,107.611516 39.6163918,105.354425 L32.8922325,112.078585 C29.7694931,115.201324 24.7004301,115.210353 21.5794957,112.089418 L15.9108363,106.420759 C12.7913807,103.301303 12.7947522,98.2349395 15.9216697,95.1080219 L22.6458291,88.3838625 C20.3887383,84.5641217 18.6457859,80.4045063 17.5122098,76.0002544 L8.00697327,76.0002544 C3.59075293,76.0002544 2.19088375e-16,72.4222697 4.89347582e-16,68.0086019 L9.80228577e-16,59.9919069 C1.25035972e-15,55.5803305 3.58484404,52.0002544 8.00697327,52.0002544 L17.5122098,52.0002544 C18.6457859,47.5960025 20.3887383,43.4363871 22.6458291,39.6166462 L15.9216697,32.8924868 C12.7989304,29.7697475 12.7899019,24.7006845 15.9108363,21.5797501 L21.5794957,15.9110907 C24.6989513,12.7916351 29.7653149,12.7950065 32.8922325,15.9219241 L39.6163918,22.6460835 C43.4361327,20.3889927 47.5957481,18.6460403 52,17.5124642 L52,8.00722764 C52,3.5910073 55.5779847,0.000254375069 59.9916525,0.000254375069 L68.0083475,0.000254375069 C72.4199239,0.000254375069 76,3.58509841 76,8.00722764 L76,17.5124642 C80.4042519,18.6460403 84.5638673,20.3889927 88.3836082,22.6460835 L95.1077675,15.9219241 C98.2305069,12.7991848 103.29957,12.7901562 106.420504,15.9110907 L112.089164,21.5797501 C115.208619,24.6992057 115.205248,29.7655693 112.07833,32.8924868 L105.354171,39.6166462 L105.354171,39.6166462 C107.611262,43.4363871 109.354214,47.5960025 110.48779,52.0002544 L119.993027,52.0002544 C124.409247,52.0002544 128,55.5782391 128,59.9919069 L128,68.0086019 C128,72.4201783 124.415156,76.0002544 119.993027,76.0002544 L110.48779,76.0002544 L110.48779,76.0002544 Z M64,96.0002544 C81.673112,96.0002544 96,81.6733664 96,64.0002544 C96,46.3271424 81.673112,32.0002544 64,32.0002544 C46.326888,32.0002544 32,46.3271424 32,64.0002544 C32,81.6733664 46.326888,96.0002544 64,96.0002544 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/paint": {
            "title": "$:/core/images/paint",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-paint tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M83.5265806,76.1907935 C90.430962,69.2864121 91.8921169,59.0000433 87.9100453,50.6642209 L125.812763,12.7615036 C128.732035,9.84223095 128.72611,5.10322984 125.812796,2.18991592 C122.893542,-0.729338085 118.161775,-0.730617045 115.241209,2.18994966 L77.3384914,40.092667 C69.002669,36.1105954 58.7163002,37.5717503 51.8119188,44.4761317 L83.5265806,76.1907935 L83.5265806,76.1907935 L83.5265806,76.1907935 L83.5265806,76.1907935 Z M80.8836921,78.8336819 L49.1690303,47.1190201 C49.1690303,47.1190201 8.50573364,81.242543 0,80.2820711 C0,80.2820711 3.78222974,85.8744423 6.82737483,88.320684 C20.8514801,82.630792 44.1526049,63.720771 44.1526049,63.720771 L44.8144806,64.3803375 C44.8144806,64.3803375 19.450356,90.2231043 9.18040433,92.0477601 C10.4017154,93.4877138 13.5343883,96.1014812 15.4269991,97.8235871 C20.8439164,96.3356979 50.1595367,69.253789 50.1595367,69.253789 L50.8214124,69.9133555 L18.4136144,100.936036 L23.6993903,106.221812 L56.1060358,75.2002881 L56.7679115,75.8598546 C56.7679115,75.8598546 28.9040131,106.396168 28.0841366,108.291555 C28.0841366,108.291555 34.1159238,115.144621 35.6529617,116.115796 C36.3545333,113.280171 63.5365402,82.6307925 63.5365402,82.6307925 L64.1984159,83.290359 C64.1984159,83.290359 43.6013016,107.04575 39.2343772,120.022559 C42.443736,123.571575 46.7339155,125.159692 50.1595362,126.321151 C47.9699978,114.504469 80.8836921,78.8336819 80.8836921,78.8336819 L80.8836921,78.8336819 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/palette": {
            "title": "$:/core/images/palette",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-palette tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M80.2470434,39.1821571 C75.0645698,38.2680897 69.6261555,37.7814854 64.0193999,37.7814854 C28.6624616,37.7814854 0,57.1324214 0,81.0030106 C0,90.644534 4.67604329,99.5487133 12.5805659,106.738252 C23.5031767,91.1899067 26.3405471,72.3946229 36.8885698,63.5622337 C52.0716764,50.8486559 63.4268694,55.7343343 63.4268694,55.7343343 L80.2470434,39.1821571 Z M106.781666,48.8370714 C119.830962,56.749628 128.0388,68.229191 128.0388,81.0030106 C128.0388,90.3534932 128.557501,98.4142085 116.165191,106.082518 C105.367708,112.763955 112.341384,99.546808 104.321443,95.1851533 C96.3015017,90.8234987 84.3749007,96.492742 86.1084305,103.091059 C89.3087234,115.272303 105.529892,114.54645 92.4224435,119.748569 C79.3149955,124.950687 74.2201582,124.224536 64.0193999,124.224536 C56.1979176,124.224536 48.7040365,123.277578 41.7755684,121.544216 C51.620343,117.347916 69.6563669,109.006202 75.129737,102.088562 C82.7876655,92.4099199 87.3713218,80.0000002 83.3235694,72.4837191 C83.1303943,72.1250117 94.5392656,60.81569 106.781666,48.8370714 Z M1.13430476,123.866563 C0.914084026,123.867944 0.693884185,123.868637 0.473712455,123.868637 C33.9526848,108.928928 22.6351223,59.642592 59.2924543,59.6425917 C59.6085574,61.0606542 59.9358353,62.5865065 60.3541977,64.1372318 C34.4465025,59.9707319 36.7873124,112.168427 1.13429588,123.866563 L1.13430476,123.866563 Z M1.84669213,123.859694 C40.7185279,123.354338 79.9985412,101.513051 79.9985401,79.0466836 C70.7284906,79.0466835 65.9257264,75.5670082 63.1833375,71.1051511 C46.585768,64.1019718 32.81846,116.819636 1.84665952,123.859695 L1.84669213,123.859694 Z M67.1980193,59.8524981 C62.748213,63.9666823 72.0838429,76.2846822 78.5155805,71.1700593 C89.8331416,59.8524993 112.468264,37.2173758 123.785825,25.8998146 C135.103386,14.5822535 123.785825,3.26469247 112.468264,14.5822535 C101.150703,25.8998144 78.9500931,48.9868127 67.1980193,59.8524981 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/permalink-button": {
            "title": "$:/core/images/permalink-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-permalink-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M80.4834582,48 L73.0956761,80 L73.0956761,80 L47.5165418,80 L54.9043239,48 L80.4834582,48 Z M84.1773493,32 L89.8007299,7.64246248 C90.7941633,3.33942958 95.0918297,0.64641956 99.3968675,1.64031585 C103.693145,2.63218977 106.385414,6.93288901 105.390651,11.2416793 L100.598215,32 L104.000754,32 C108.411895,32 112,35.581722 112,40 C112,44.4092877 108.418616,48 104.000754,48 L96.9043239,48 L89.5165418,80 L104.000754,80 C108.411895,80 112,83.581722 112,88 C112,92.4092877 108.418616,96 104.000754,96 L85.8226507,96 L80.1992701,120.357538 C79.2058367,124.66057 74.9081703,127.35358 70.6031325,126.359684 C66.3068546,125.36781 63.6145865,121.067111 64.6093491,116.758321 L69.401785,96 L43.8226507,96 L38.1992701,120.357538 C37.2058367,124.66057 32.9081703,127.35358 28.6031325,126.359684 C24.3068546,125.36781 21.6145865,121.067111 22.6093491,116.758321 L27.401785,96 L23.9992458,96 C19.5881049,96 16,92.418278 16,88 C16,83.5907123 19.5813843,80 23.9992458,80 L31.0956761,80 L38.4834582,48 L23.9992458,48 C19.5881049,48 16,44.418278 16,40 C16,35.5907123 19.5813843,32 23.9992458,32 L42.1773493,32 L47.8007299,7.64246248 C48.7941633,3.33942958 53.0918297,0.64641956 57.3968675,1.64031585 C61.6931454,2.63218977 64.3854135,6.93288901 63.3906509,11.2416793 L58.598215,32 L84.1773493,32 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/permaview-button": {
            "title": "$:/core/images/permaview-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-permaview-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M81.4834582,48 L79.6365127,56 L79.6365127,56 L74.0573784,56 L75.9043239,48 L81.4834582,48 Z M85.1773493,32 L90.8007299,7.64246248 C91.7941633,3.33942958 96.0918297,0.64641956 100.396867,1.64031585 C104.693145,2.63218977 107.385414,6.93288901 106.390651,11.2416793 L101.598215,32 L104.000754,32 C108.411895,32 112,35.581722 112,40 C112,44.4092877 108.418616,48 104.000754,48 L97.9043239,48 L96.0573784,56 L104.000754,56 C108.411895,56 112,59.581722 112,64 C112,68.4092877 108.418616,72 104.000754,72 L92.3634873,72 L90.5165418,80 L104.000754,80 C108.411895,80 112,83.581722 112,88 C112,92.4092877 108.418616,96 104.000754,96 L86.8226507,96 L81.1992701,120.357538 C80.2058367,124.66057 75.9081703,127.35358 71.6031325,126.359684 C67.3068546,125.36781 64.6145865,121.067111 65.6093491,116.758321 L70.401785,96 L64.8226507,96 L59.1992701,120.357538 C58.2058367,124.66057 53.9081703,127.35358 49.6031325,126.359684 C45.3068546,125.36781 42.6145865,121.067111 43.6093491,116.758321 L48.401785,96 L42.8226507,96 L37.1992701,120.357538 C36.2058367,124.66057 31.9081703,127.35358 27.6031325,126.359684 C23.3068546,125.36781 20.6145865,121.067111 21.6093491,116.758321 L26.401785,96 L23.9992458,96 C19.5881049,96 16,92.418278 16,88 C16,83.5907123 19.5813843,80 23.9992458,80 L30.0956761,80 L31.9426216,72 L23.9992458,72 C19.5881049,72 16,68.418278 16,64 C16,59.5907123 19.5813843,56 23.9992458,56 L35.6365127,56 L37.4834582,48 L23.9992458,48 C19.5881049,48 16,44.418278 16,40 C16,35.5907123 19.5813843,32 23.9992458,32 L41.1773493,32 L46.8007299,7.64246248 C47.7941633,3.33942958 52.0918297,0.64641956 56.3968675,1.64031585 C60.6931454,2.63218977 63.3854135,6.93288901 62.3906509,11.2416793 L57.598215,32 L63.1773493,32 L68.8007299,7.64246248 C69.7941633,3.33942958 74.0918297,0.64641956 78.3968675,1.64031585 C82.6931454,2.63218977 85.3854135,6.93288901 84.3906509,11.2416793 L79.598215,32 L85.1773493,32 Z M53.9043239,48 L52.0573784,56 L57.6365127,56 L59.4834582,48 L53.9043239,48 Z M75.9426216,72 L74.0956761,80 L74.0956761,80 L68.5165418,80 L70.3634873,72 L75.9426216,72 L75.9426216,72 Z M48.3634873,72 L46.5165418,80 L52.0956761,80 L53.9426216,72 L48.3634873,72 L48.3634873,72 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/picture": {
            "title": "$:/core/images/picture",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-picture tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M112,68.2332211 L112,20.0027785 C112,17.7898769 110.207895,16 107.997221,16 L20.0027785,16 C17.7898769,16 16,17.792105 16,20.0027785 L16,58.312373 L25.2413115,43.7197989 C28.041793,39.297674 34.2643908,38.7118128 37.8410347,42.5335275 L56.0882845,63.1470817 L69.7748997,56.7400579 C72.766567,55.3552503 76.3013751,55.9473836 78.678437,58.2315339 C78.8106437,58.3585731 79.0742301,58.609836 79.4527088,58.9673596 C80.0910923,59.570398 80.8117772,60.2441563 81.598127,60.9705595 C83.8422198,63.043576 86.1541548,65.1151944 88.3956721,67.0372264 C89.1168795,67.6556396 89.8200801,68.2492007 90.5021258,68.8146755 C92.6097224,70.5620551 94.4693308,72.0029474 95.9836366,73.0515697 C96.7316295,73.5695379 97.3674038,73.9719282 98.0281481,74.3824999 C98.4724987,74.4989557 99.0742374,74.5263881 99.8365134,74.4317984 C101.709944,74.1993272 104.074502,73.2878514 106.559886,71.8846196 C107.705822,71.2376318 108.790494,70.5370325 109.764561,69.8410487 C110.323259,69.4418522 110.694168,69.1550757 110.834827,69.0391868 C111.210545,68.7296319 111.600264,68.4615815 112,68.2332211 L112,68.2332211 Z M0,8.00697327 C0,3.58484404 3.59075293,0 8.00697327,0 L119.993027,0 C124.415156,0 128,3.59075293 128,8.00697327 L128,119.993027 C128,124.415156 124.409247,128 119.993027,128 L8.00697327,128 C3.58484404,128 0,124.409247 0,119.993027 L0,8.00697327 L0,8.00697327 Z M95,42 C99.418278,42 103,38.418278 103,34 C103,29.581722 99.418278,26 95,26 C90.581722,26 87,29.581722 87,34 C87,38.418278 90.581722,42 95,42 L95,42 Z M32,76 C47.8587691,80.8294182 52.0345556,83.2438712 52.0345556,88 C52.0345556,92.7561288 32,95.4712486 32,102.347107 C32,109.222965 33.2849191,107.337637 33.2849191,112 L67.999999,112 C67.999999,112 54.3147136,105.375255 54.3147136,101.200691 C54.3147136,93.535181 64.9302432,92.860755 64.9302432,88 C64.9302432,80.6425555 50.8523779,79.167282 32,76 L32,76 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/plugin-generic-language": {
            "title": "$:/core/images/plugin-generic-language",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M61.2072232,68.1369825 C56.8829239,70.9319564 54.2082892,74.793177 54.2082892,79.0581634 C54.2082892,86.9638335 63.3980995,93.4821994 75.2498076,94.3940006 C77.412197,98.2964184 83.8475284,101.178858 91.5684735,101.403106 C86.4420125,100.27851 82.4506393,97.6624107 80.9477167,94.3948272 C92.8046245,93.4861461 102,86.9662269 102,79.0581634 C102,70.5281905 91.3014611,63.6132813 78.1041446,63.6132813 C71.5054863,63.6132813 65.5315225,65.3420086 61.2072232,68.1369825 Z M74.001066,53.9793443 C69.6767667,56.7743182 63.7028029,58.5030456 57.1041446,58.5030456 C54.4851745,58.5030456 51.9646095,58.2307276 49.6065315,57.7275105 C46.2945155,59.9778212 41.2235699,61.4171743 35.5395922,61.4171743 C35.4545771,61.4171743 35.3696991,61.4168523 35.2849622,61.4162104 C39.404008,60.5235193 42.7961717,58.6691298 44.7630507,56.286533 C37.8379411,53.5817651 33.2082892,48.669413 33.2082892,43.0581634 C33.2082892,34.5281905 43.9068281,27.6132812 57.1041446,27.6132812 C70.3014611,27.6132812 81,34.5281905 81,43.0581634 C81,47.3231498 78.3253653,51.1843704 74.001066,53.9793443 Z M64,0 L118.5596,32 L118.5596,96 L64,128 L9.44039956,96 L9.44039956,32 L64,0 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/plugin-generic-plugin": {
            "title": "$:/core/images/plugin-generic-plugin",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M40.3972881,76.4456988 L40.3972881,95.3404069 L54.5170166,95.3404069 L54.5170166,95.3404069 C54.5165526,95.3385183 54.516089,95.3366295 54.515626,95.3347404 C54.6093153,95.3385061 54.7034848,95.3404069 54.7980982,95.3404069 C58.6157051,95.3404069 61.710487,92.245625 61.710487,88.4280181 C61.710487,86.6197822 61.01617,84.9737128 59.8795929,83.7418666 L59.8795929,83.7418666 C59.8949905,83.7341665 59.9104102,83.7265043 59.925852,83.7188798 C58.8840576,82.5086663 58.2542926,80.9336277 58.2542926,79.2114996 C58.2542926,75.3938927 61.3490745,72.2991108 65.1666814,72.2991108 C68.9842884,72.2991108 72.0790703,75.3938927 72.0790703,79.2114996 C72.0790703,81.1954221 71.2432806,82.9841354 69.9045961,84.2447446 L69.9045961,84.2447446 C69.9333407,84.2629251 69.9619885,84.281245 69.9905383,84.2997032 L69.9905383,84.2997032 C69.1314315,85.4516923 68.6228758,86.8804654 68.6228758,88.4280181 C68.6228758,91.8584969 71.1218232,94.7053153 74.3986526,95.2474079 C74.3913315,95.2784624 74.3838688,95.3094624 74.3762652,95.3404069 L95.6963988,95.3404069 L95.6963988,75.5678578 L95.6963988,75.5678578 C95.6466539,75.5808558 95.5967614,75.5934886 95.5467242,75.6057531 C95.5504899,75.5120637 95.5523907,75.4178943 95.5523907,75.3232809 C95.5523907,71.505674 92.4576088,68.4108921 88.6400019,68.4108921 C86.831766,68.4108921 85.1856966,69.105209 83.9538504,70.2417862 L83.9538504,70.2417862 C83.9461503,70.2263886 83.938488,70.2109688 83.9308636,70.1955271 C82.7206501,71.2373215 81.1456115,71.8670865 79.4234834,71.8670865 C75.6058765,71.8670865 72.5110946,68.7723046 72.5110946,64.9546976 C72.5110946,61.1370907 75.6058765,58.0423088 79.4234834,58.0423088 C81.4074059,58.0423088 83.1961192,58.8780985 84.4567284,60.2167829 L84.4567284,60.2167829 C84.4749089,60.1880383 84.4932288,60.1593906 84.511687,60.1308407 L84.511687,60.1308407 C85.6636761,60.9899475 87.0924492,61.4985032 88.6400019,61.4985032 C92.0704807,61.4985032 94.9172991,58.9995558 95.4593917,55.7227265 C95.538755,55.7414363 95.6177614,55.761071 95.6963988,55.7816184 L95.6963988,40.0412962 L74.3762652,40.0412962 L74.3762652,40.0412962 C74.3838688,40.0103516 74.3913315,39.9793517 74.3986526,39.9482971 L74.3986526,39.9482971 C71.1218232,39.4062046 68.6228758,36.5593862 68.6228758,33.1289073 C68.6228758,31.5813547 69.1314315,30.1525815 69.9905383,29.0005925 C69.9619885,28.9821342 69.9333407,28.9638143 69.9045961,28.9456339 C71.2432806,27.6850247 72.0790703,25.8963113 72.0790703,23.9123888 C72.0790703,20.0947819 68.9842884,17 65.1666814,17 C61.3490745,17 58.2542926,20.0947819 58.2542926,23.9123888 C58.2542926,25.6345169 58.8840576,27.2095556 59.925852,28.419769 L59.925852,28.419769 C59.9104102,28.4273935 59.8949905,28.4350558 59.8795929,28.4427558 C61.01617,29.674602 61.710487,31.3206715 61.710487,33.1289073 C61.710487,36.9465143 58.6157051,40.0412962 54.7980982,40.0412962 C54.7034848,40.0412962 54.6093153,40.0393953 54.515626,40.0356296 L54.515626,40.0356296 C54.516089,40.0375187 54.5165526,40.0394075 54.5170166,40.0412962 L40.3972881,40.0412962 L40.3972881,52.887664 L40.3972881,52.887664 C40.4916889,53.3430132 40.5412962,53.8147625 40.5412962,54.2980982 C40.5412962,58.1157051 37.4465143,61.210487 33.6289073,61.210487 C32.0813547,61.210487 30.6525815,60.7019313 29.5005925,59.8428245 C29.4821342,59.8713744 29.4638143,59.9000221 29.4456339,59.9287667 C28.1850247,58.5900823 26.3963113,57.7542926 24.4123888,57.7542926 C20.5947819,57.7542926 17.5,60.8490745 17.5,64.6666814 C17.5,68.4842884 20.5947819,71.5790703 24.4123888,71.5790703 C26.134517,71.5790703 27.7095556,70.9493053 28.919769,69.9075109 L28.919769,69.9075109 C28.9273935,69.9229526 28.9350558,69.9383724 28.9427558,69.95377 C30.174602,68.8171928 31.8206715,68.1228758 33.6289073,68.1228758 C37.4465143,68.1228758 40.5412962,71.2176578 40.5412962,75.0352647 C40.5412962,75.5186004 40.4916889,75.9903496 40.3972881,76.4456988 Z M64,0 L118.5596,32 L118.5596,96 L64,128 L9.44039956,96 L9.44039956,32 L64,0 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/plugin-generic-theme": {
            "title": "$:/core/images/plugin-generic-theme",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M29.4078519,91.4716406 L51.4693474,69.4101451 L51.4646675,69.4054652 C50.5969502,68.5377479 50.5929779,67.1348725 51.4693474,66.2585029 C52.3396494,65.3882009 53.7499654,65.3874786 54.6163097,66.2538229 L64.0805963,75.7181095 C64.9483136,76.5858268 64.9522859,77.9887022 64.0759163,78.8650718 C63.2056143,79.7353737 61.7952984,79.736096 60.9289541,78.8697517 L60.9242741,78.8650718 L60.9242741,78.8650718 L38.8627786,100.926567 C36.2518727,103.537473 32.0187578,103.537473 29.4078519,100.926567 C26.796946,98.3156614 26.796946,94.0825465 29.4078519,91.4716406 Z M60.8017407,66.3810363 C58.3659178,63.6765806 56.3370667,61.2899536 54.9851735,59.5123615 C48.1295381,50.4979488 44.671561,55.2444054 40.7586738,59.5123614 C36.8457866,63.7803174 41.789473,67.2384487 38.0759896,70.2532832 C34.3625062,73.2681177 34.5917646,74.3131575 28.3243876,68.7977024 C22.0570105,63.2822473 21.6235306,61.7636888 24.5005999,58.6166112 C27.3776691,55.4695337 29.7823103,60.4247912 35.6595047,54.8320442 C41.5366991,49.2392972 36.5996215,44.2825646 36.5996215,44.2825646 C36.5996215,44.2825646 48.8365511,19.267683 65.1880231,21.1152173 C81.5394952,22.9627517 59.0022276,18.7228947 53.3962199,38.3410355 C50.9960082,46.7405407 53.8429162,44.7613399 58.3941742,48.3090467 C59.7875202,49.3951602 64.4244828,52.7100463 70.1884353,56.9943417 L90.8648751,36.3179019 L92.4795866,31.5515482 L100.319802,26.8629752 L103.471444,30.0146174 L98.782871,37.8548326 L94.0165173,39.4695441 L73.7934912,59.6925702 C86.4558549,69.2403631 102.104532,81.8392557 102.104532,86.4016913 C102.104533,93.6189834 99.0337832,97.9277545 92.5695848,95.5655717 C87.8765989,93.8506351 73.8015497,80.3744087 63.8173444,69.668717 L60.9242741,72.5617873 L57.7726319,69.4101451 L60.8017407,66.3810363 L60.8017407,66.3810363 Z M63.9533761,1.42108547e-13 L118.512977,32 L118.512977,96 L63.9533761,128 L9.39377563,96 L9.39377563,32 L63.9533761,1.42108547e-13 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/preview-closed": {
            "title": "$:/core/images/preview-closed",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-preview-closed tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M0.0881363238,64 C-0.210292223,65.8846266 0.249135869,67.8634737 1.4664206,69.4579969 C16.2465319,88.8184886 39.1692554,100.414336 64,100.414336 C88.8307446,100.414336 111.753468,88.8184886 126.533579,69.4579969 C127.750864,67.8634737 128.210292,65.8846266 127.911864,64 C110.582357,78.4158332 88.3036732,87.0858436 64,87.0858436 C39.6963268,87.0858436 17.4176431,78.4158332 0.0881363238,64 Z\"></path>\n        <rect x=\"62\" y=\"96\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(80.000000, 101.000000) rotate(-5.000000) translate(-80.000000, -101.000000) \" x=\"78\" y=\"93\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(48.000000, 101.000000) rotate(-355.000000) translate(-48.000000, -101.000000) \" x=\"46\" y=\"93\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(32.000000, 96.000000) rotate(-350.000000) translate(-32.000000, -96.000000) \" x=\"30\" y=\"88\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(96.000000, 96.000000) rotate(-10.000000) translate(-96.000000, -96.000000) \" x=\"94\" y=\"88\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(112.000000, 88.000000) rotate(-20.000000) translate(-112.000000, -88.000000) \" x=\"110\" y=\"80\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n        <rect transform=\"translate(16.000000, 88.000000) rotate(-340.000000) translate(-16.000000, -88.000000) \" x=\"14\" y=\"80\" width=\"4\" height=\"16\" rx=\"4\"></rect>\n    </g>\n</svg>"
        },
        "$:/core/images/preview-open": {
            "title": "$:/core/images/preview-open",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-preview-open tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M64.1099282,99.5876785 C39.2791836,99.5876785 16.3564602,87.9918313 1.57634884,68.6313396 C-0.378878622,66.070184 -0.378878622,62.5174945 1.57634884,59.9563389 C16.3564602,40.5958472 39.2791836,29 64.1099282,29 C88.9406729,29 111.863396,40.5958472 126.643508,59.9563389 C128.598735,62.5174945 128.598735,66.070184 126.643508,68.6313396 C111.863396,87.9918313 88.9406729,99.5876785 64.1099282,99.5876785 Z M110.213805,67.5808331 C111.654168,66.0569335 111.654168,63.9430665 110.213805,62.4191669 C99.3257042,50.8995835 82.4391647,44 64.1470385,44 C45.8549124,44 28.9683729,50.8995835 18.0802717,62.4191669 C16.6399094,63.9430665 16.6399094,66.0569335 18.0802717,67.5808331 C28.9683729,79.1004165 45.8549124,86 64.1470385,86 C82.4391647,86 99.3257042,79.1004165 110.213805,67.5808331 Z\"></path>\n        <path d=\"M63.5,88 C76.4786916,88 87,77.4786916 87,64.5 C87,51.5213084 76.4786916,41 63.5,41 C50.5213084,41 40,51.5213084 40,64.5 C40,77.4786916 50.5213084,88 63.5,88 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/print-button": {
            "title": "$:/core/images/print-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-print-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M112,71 L112,30.5 L111.96811,30.5 L111.96811,30.5 C111.932942,28.4998414 111.151676,26.510538 109.625176,24.9840387 L86.9982489,2.35711116 C85.3482153,0.707077645 83.1589869,-0.071534047 81,0.0201838424 L81,0 L23.9992458,0 C19.5808867,0 16,3.58213437 16,8.00092105 L16,71 L24,71 L24,8 L81,8 L81,22.4996539 C81,26.9216269 84.5818769,30.5 89.0003461,30.5 L104,30.5 L104,71 L112,71 Z\"></path>\n        <rect x=\"32\" y=\"36\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"52\" width=\"64\" height=\"8\" rx=\"4\"></rect>\n        <rect x=\"32\" y=\"20\" width=\"40\" height=\"8\" rx=\"4\"></rect>\n        <path d=\"M0,80.0054195 C0,71.1658704 7.15611005,64 16.0008841,64 L111.999116,64 C120.83616,64 128,71.1553215 128,80.0054195 L128,111.99458 C128,120.83413 120.84389,128 111.999116,128 L16.0008841,128 C7.16383982,128 0,120.844679 0,111.99458 L0,80.0054195 Z M104,96 C108.418278,96 112,92.418278 112,88 C112,83.581722 108.418278,80 104,80 C99.581722,80 96,83.581722 96,88 C96,92.418278 99.581722,96 104,96 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/quote": {
            "title": "$:/core/images/quote",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-quote tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M51.2188077,117.712501 L51.2188077,62.1993386 L27.4274524,62.1993386 C27.4274524,53.3075754 29.1096526,45.797753 32.4741035,39.669646 C35.8385544,33.541539 42.0867267,28.9154883 51.2188077,25.7913554 L51.2188077,2 C43.7689521,2.96127169 36.8599155,5.18417913 30.4914905,8.668789 C24.1230656,12.1533989 18.6559149,16.5391352 14.0898743,21.8261295 C9.52383382,27.1131238 5.97919764,33.2411389 3.45585945,40.2103586 C0.932521268,47.1795784 -0.208971741,54.6293222 0.0313461819,62.5598136 L0.0313461819,117.712501 L51.2188077,117.712501 Z M128,117.712501 L128,62.1993386 L104.208645,62.1993386 C104.208645,53.3075754 105.890845,45.797753 109.255296,39.669646 C112.619747,33.541539 118.867919,28.9154883 128,25.7913554 L128,2 C120.550144,2.96127169 113.641108,5.18417913 107.272683,8.668789 C100.904258,12.1533989 95.4371072,16.5391352 90.8710666,21.8261295 C86.3050261,27.1131238 82.7603899,33.2411389 80.2370517,40.2103586 C77.7137136,47.1795784 76.5722206,54.6293222 76.8125385,62.5598136 L76.8125385,117.712501 L128,117.712501 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/refresh-button": {
            "title": "$:/core/images/refresh-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-refresh-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M106.369002,39.4325143 C116.529932,60.3119371 112.939592,86.1974934 95.5979797,103.539105 C73.7286194,125.408466 38.2713806,125.408466 16.4020203,103.539105 C-5.46734008,81.6697449 -5.46734008,46.2125061 16.4020203,24.3431458 C19.5262146,21.2189514 24.5915344,21.2189514 27.7157288,24.3431458 C30.8399231,27.4673401 30.8399231,32.5326599 27.7157288,35.6568542 C12.0947571,51.2778259 12.0947571,76.6044251 27.7157288,92.2253967 C43.3367004,107.846368 68.6632996,107.846368 84.2842712,92.2253967 C97.71993,78.7897379 99.5995262,58.1740623 89.9230597,42.729491 L83.4844861,54.9932839 C81.4307001,58.9052072 76.5945372,60.4115251 72.682614,58.3577391 C68.7706907,56.3039532 67.2643728,51.4677903 69.3181587,47.555867 L84.4354914,18.7613158 C86.4966389,14.8353707 91.3577499,13.3347805 95.273202,15.415792 L124.145886,30.7612457 C128.047354,32.8348248 129.52915,37.6785572 127.455571,41.5800249 C125.381992,45.4814927 120.53826,46.9632892 116.636792,44.8897102 L106.369002,39.4325143 Z M98.1470904,27.0648707 C97.9798954,26.8741582 97.811187,26.6843098 97.6409651,26.4953413 L98.6018187,26.1987327 L98.1470904,27.0648707 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/right-arrow": {
            "title": "$:/core/images/right-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-right-arrow tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <path d=\"M80.3563798,109.353315 C78.9238993,110.786918 76.9450203,111.675144 74.7592239,111.675144 L-4.40893546,111.675144 C-8.77412698,111.675144 -12.3248558,108.130732 -12.3248558,103.758478 C-12.3248558,99.3951199 -8.78077754,95.8418109 -4.40893546,95.8418109 L66.8418109,95.8418109 L66.8418109,24.5910645 C66.8418109,20.225873 70.3862233,16.6751442 74.7584775,16.6751442 C79.1218352,16.6751442 82.6751442,20.2192225 82.6751442,24.5910645 L82.6751442,103.759224 C82.6751442,105.941695 81.7891419,107.920575 80.3566508,109.353886 Z\" transform=\"translate(35.175144, 64.175144) rotate(-45.000000) translate(-35.175144, -64.175144) \"></path>\n</svg>"
        },
        "$:/core/images/rotate-left": {
            "title": "$:/core/images/rotate-left",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-rotate-left tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"32\" height=\"80\" rx=\"8\"/><rect x=\"48\" y=\"96\" width=\"80\" height=\"32\" rx=\"8\"/><path d=\"M61.32 36.65c19.743 2.45 35.023 19.287 35.023 39.693a4 4 0 0 1-8 0c0-15.663-11.254-28.698-26.117-31.46l3.916 3.916a4 4 0 1 1-5.657 5.657L49.172 43.142a4 4 0 0 1 0-5.657l11.313-11.313a4 4 0 1 1 5.657 5.656l-4.821 4.822z\"/></g></svg>"
        },
        "$:/core/images/save-button": {
            "title": "$:/core/images/save-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-save-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M120.78304,34.329058 C125.424287,43.1924006 128.049406,53.2778608 128.049406,63.9764502 C128.049406,99.3226742 99.3956295,127.97645 64.0494055,127.97645 C28.7031816,127.97645 0.0494055385,99.3226742 0.0494055385,63.9764502 C0.0494055385,28.6302262 28.7031816,-0.0235498012 64.0494055,-0.0235498012 C82.8568763,-0.0235498012 99.769563,8.08898558 111.479045,21.0056358 L114.159581,18.3250998 C117.289194,15.1954866 122.356036,15.1939641 125.480231,18.3181584 C128.598068,21.4359957 128.601317,26.5107804 125.473289,29.6388083 L120.78304,34.329058 Z M108.72451,46.3875877 C110.870571,51.8341374 112.049406,57.767628 112.049406,63.9764502 C112.049406,90.4861182 90.5590735,111.97645 64.0494055,111.97645 C37.5397375,111.97645 16.0494055,90.4861182 16.0494055,63.9764502 C16.0494055,37.4667822 37.5397375,15.9764502 64.0494055,15.9764502 C78.438886,15.9764502 91.3495036,22.308215 100.147097,32.3375836 L58.9411255,73.5435552 L41.975581,56.5780107 C38.8486152,53.4510448 33.7746915,53.4551552 30.6568542,56.5729924 C27.5326599,59.6971868 27.5372202,64.7670668 30.6618725,67.8917192 L53.279253,90.5090997 C54.8435723,92.073419 56.8951519,92.8541315 58.9380216,92.8558261 C60.987971,92.8559239 63.0389578,92.0731398 64.6049211,90.5071765 L108.72451,46.3875877 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/size": {
            "title": "$:/core/images/size",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-size tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <path d=\"M92.3431458,26 L83.1715729,35.1715729 C81.6094757,36.73367 81.6094757,39.26633 83.1715729,40.8284271 C84.73367,42.3905243 87.26633,42.3905243 88.8284271,40.8284271 L104.828427,24.8284271 C106.390524,23.26633 106.390524,20.73367 104.828427,19.1715729 L88.8284271,3.17157288 C87.26633,1.60947571 84.73367,1.60947571 83.1715729,3.17157288 C81.6094757,4.73367004 81.6094757,7.26632996 83.1715729,8.82842712 L92.3431457,18 L22,18 C19.790861,18 18,19.790861 18,22 L18,92.3431458 L8.82842712,83.1715729 C7.26632996,81.6094757 4.73367004,81.6094757 3.17157288,83.1715729 C1.60947571,84.73367 1.60947571,87.26633 3.17157288,88.8284271 L19.1715729,104.828427 C20.73367,106.390524 23.26633,106.390524 24.8284271,104.828427 L40.8284271,88.8284271 C42.3905243,87.26633 42.3905243,84.73367 40.8284271,83.1715729 C39.26633,81.6094757 36.73367,81.6094757 35.1715729,83.1715729 L26,92.3431458 L26,22 L22,26 L92.3431458,26 L92.3431458,26 Z M112,52 L112,116 L116,112 L52,112 C49.790861,112 48,113.790861 48,116 C48,118.209139 49.790861,120 52,120 L116,120 C118.209139,120 120,118.209139 120,116 L120,52 C120,49.790861 118.209139,48 116,48 C113.790861,48 112,49.790861 112,52 L112,52 Z\"></path>\n</svg>"
        },
        "$:/core/images/spiral": {
            "title": "$:/core/images/spiral",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-spiral tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"nonzero\">\n        <path d=\"M64.534 68.348c3.39 0 6.097-2.62 6.476-5.968l-4.755-.538 4.75.583c.377-3.07-1.194-6.054-3.89-7.78-2.757-1.773-6.34-2.01-9.566-.7-3.46 1.403-6.14 4.392-7.35 8.148l-.01.026c-1.3 4.08-.72 8.64 1.58 12.52 2.5 4.2 6.77 7.2 11.76 8.27 5.37 1.15 11.11-.05 15.83-3.31 5.04-3.51 8.46-9.02 9.45-15.3 1.05-6.7-.72-13.63-4.92-19.19l.02.02c-4.42-5.93-11.2-9.82-18.78-10.78-7.96-1.01-16.13 1.31-22.59 6.43-6.81 5.39-11.18 13.41-12.11 22.26-.98 9.27 1.87 18.65 7.93 26.02 6.32 7.69 15.6 12.56 25.74 13.48 10.54.96 21.15-2.42 29.45-9.4l.01-.01c8.58-7.25 13.94-17.78 14.86-29.21.94-11.84-2.96-23.69-10.86-32.9-8.19-9.5-19.95-15.36-32.69-16.27-13.16-.94-26.24 3.49-36.34 12.34l.01-.01c-10.41 9.08-16.78 22.1-17.68 36.15-.93 14.44 4.03 28.77 13.79 39.78 10.03 11.32 24.28 18.2 39.6 19.09 15.73.92 31.31-4.56 43.24-15.234 12.23-10.954 19.61-26.44 20.5-43.074.14-2.64-1.89-4.89-4.52-5.03-2.64-.14-4.89 1.88-5.03 4.52-.75 14.1-7 27.2-17.33 36.45-10.03 8.98-23.11 13.58-36.3 12.81-12.79-.75-24.67-6.48-33-15.89-8.07-9.11-12.17-20.94-11.41-32.827.74-11.52 5.942-22.15 14.43-29.54l.01-.01c8.18-7.17 18.74-10.75 29.35-9.998 10.21.726 19.6 5.41 26.11 12.96 6.24 7.273 9.32 16.61 8.573 25.894-.718 8.9-4.88 17.064-11.504 22.66l.01-.007c-6.36 5.342-14.44 7.92-22.425 7.19-7.604-.68-14.52-4.314-19.21-10.027-4.44-5.4-6.517-12.23-5.806-18.94.67-6.3 3.76-11.977 8.54-15.766 4.46-3.54 10.05-5.128 15.44-4.44 5.03.63 9.46 3.18 12.32 7.01l.02.024c2.65 3.5 3.75 7.814 3.1 11.92-.59 3.71-2.58 6.925-5.45 8.924-2.56 1.767-5.61 2.403-8.38 1.81-2.42-.516-4.42-1.92-5.53-3.79-.93-1.56-1.15-3.3-.69-4.75l-4.56-1.446L59.325 65c.36-1.12 1.068-1.905 1.84-2.22.25-.103.48-.14.668-.13.06.006.11.015.14.025.01 0 .01 0-.01-.01-.02-.015-.054-.045-.094-.088-.06-.064-.12-.145-.17-.244-.15-.29-.23-.678-.18-1.11l-.005.04c.15-1.332 1.38-2.523 3.035-2.523-2.65 0-4.79 2.144-4.79 4.787s2.14 4.785 4.78 4.785z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/stamp": {
            "title": "$:/core/images/stamp",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-stamp tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M49.7334301,64 L16.0098166,64 C11.5838751,64 8,67.5829053 8,72.002643 L8,74.4986785 L8,97 L120,97 L120,74.4986785 L120,72.002643 C120,67.5737547 116.413883,64 111.990183,64 L78.2665699,64 C76.502049,60.7519149 75.5,57.0311962 75.5,53.0769231 C75.5,46.6017951 78.1869052,40.7529228 82.5087769,36.5800577 C85.3313113,32.7688808 87,28.0549983 87,22.952183 C87,10.2760423 76.7025492,0 64,0 C51.2974508,0 41,10.2760423 41,22.952183 C41,28.0549983 42.6686887,32.7688808 45.4912231,36.5800577 C49.8130948,40.7529228 52.5,46.6017951 52.5,53.0769231 C52.5,57.0311962 51.497951,60.7519149 49.7334301,64 Z M8,104 L120,104 L120,112 L8,112 L8,104 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/star-filled": {
            "title": "$:/core/images/star-filled",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-star-filled tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"nonzero\">\n        <path d=\"M61.8361286,96.8228569 L99.1627704,124.110219 C101.883827,126.099427 105.541968,123.420868 104.505636,120.198072 L90.2895569,75.9887263 L89.0292911,79.8977279 L126.314504,52.5528988 C129.032541,50.5595011 127.635256,46.2255025 124.273711,46.2229134 L78.1610486,46.1873965 L81.4604673,48.6032923 L67.1773543,4.41589688 C66.1361365,1.19470104 61.6144265,1.19470104 60.5732087,4.41589688 L46.2900957,48.6032923 L49.5895144,46.1873965 L3.47685231,46.2229134 C0.115307373,46.2255025 -1.28197785,50.5595011 1.43605908,52.5528988 L38.7212719,79.8977279 L37.4610061,75.9887263 L23.2449266,120.198072 C22.2085954,123.420868 25.8667356,126.099427 28.5877926,124.110219 L65.9144344,96.8228569 L61.8361286,96.8228569 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/storyview-classic": {
            "title": "$:/core/images/storyview-classic",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-storyview-classic tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M8.00697327,0 C3.58484404,0 0,3.59075293 0,8.00697327 L0,119.993027 C0,124.415156 3.59075293,128 8.00697327,128 L119.993027,128 C124.415156,128 128,124.409247 128,119.993027 L128,8.00697327 C128,3.58484404 124.409247,0 119.993027,0 L8.00697327,0 L8.00697327,0 Z M23.9992458,16 C19.5813843,16 16,19.5776607 16,23.9924054 L16,40.0075946 C16,44.4216782 19.5881049,48 23.9992458,48 L104.000754,48 C108.418616,48 112,44.4223393 112,40.0075946 L112,23.9924054 C112,19.5783218 108.411895,16 104.000754,16 L23.9992458,16 L23.9992458,16 Z M23.9992458,64 C19.5813843,64 16,67.5907123 16,72 C16,76.418278 19.5881049,80 23.9992458,80 L104.000754,80 C108.418616,80 112,76.4092877 112,72 C112,67.581722 108.411895,64 104.000754,64 L23.9992458,64 L23.9992458,64 Z M23.9992458,96 C19.5813843,96 16,99.5907123 16,104 C16,108.418278 19.5881049,112 23.9992458,112 L104.000754,112 C108.418616,112 112,108.409288 112,104 C112,99.581722 108.411895,96 104.000754,96 L23.9992458,96 L23.9992458,96 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/storyview-pop": {
            "title": "$:/core/images/storyview-pop",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-storyview-pop tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M8.00697327,0 C3.58484404,0 0,3.59075293 0,8.00697327 L0,119.993027 C0,124.415156 3.59075293,128 8.00697327,128 L119.993027,128 C124.415156,128 128,124.409247 128,119.993027 L128,8.00697327 C128,3.58484404 124.409247,0 119.993027,0 L8.00697327,0 L8.00697327,0 Z M23.9992458,16 C19.5813843,16 16,19.5776607 16,23.9924054 L16,40.0075946 C16,44.4216782 19.5881049,48 23.9992458,48 L104.000754,48 C108.418616,48 112,44.4223393 112,40.0075946 L112,23.9924054 C112,19.5783218 108.411895,16 104.000754,16 L23.9992458,16 L23.9992458,16 Z M16.0098166,56 C11.586117,56 8,59.5776607 8,63.9924054 L8,80.0075946 C8,84.4216782 11.5838751,88 16.0098166,88 L111.990183,88 C116.413883,88 120,84.4223393 120,80.0075946 L120,63.9924054 C120,59.5783218 116.416125,56 111.990183,56 L16.0098166,56 L16.0098166,56 Z M23.9992458,96 C19.5813843,96 16,99.5907123 16,104 C16,108.418278 19.5881049,112 23.9992458,112 L104.000754,112 C108.418616,112 112,108.409288 112,104 C112,99.581722 108.411895,96 104.000754,96 L23.9992458,96 L23.9992458,96 Z M23.9992458,64 C19.5813843,64 16,67.5907123 16,72 C16,76.418278 19.5881049,80 23.9992458,80 L104.000754,80 C108.418616,80 112,76.4092877 112,72 C112,67.581722 108.411895,64 104.000754,64 L23.9992458,64 L23.9992458,64 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/storyview-zoomin": {
            "title": "$:/core/images/storyview-zoomin",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-storyview-zoomin tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M8.00697327,0 C3.58484404,0 0,3.59075293 0,8.00697327 L0,119.993027 C0,124.415156 3.59075293,128 8.00697327,128 L119.993027,128 C124.415156,128 128,124.409247 128,119.993027 L128,8.00697327 C128,3.58484404 124.409247,0 119.993027,0 L8.00697327,0 L8.00697327,0 Z M23.9992458,16 C19.5813843,16 16,19.578055 16,24.0085154 L16,71.9914846 C16,76.4144655 19.5881049,80 23.9992458,80 L104.000754,80 C108.418616,80 112,76.421945 112,71.9914846 L112,24.0085154 C112,19.5855345 108.411895,16 104.000754,16 L23.9992458,16 L23.9992458,16 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/strikethrough": {
            "title": "$:/core/images/strikethrough",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-strikethrough tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M92.793842,38.7255689 L108.215529,38.7255689 C107.987058,31.985687 106.70193,26.1883331 104.360107,21.3333333 C102.018284,16.4783336 98.8197436,12.4516001 94.7643909,9.25301205 C90.7090382,6.05442399 85.9969032,3.71263572 80.6278447,2.22757697 C75.2587862,0.742518233 69.4328739,0 63.1499331,0 C57.552404,0 52.0977508,0.713959839 46.7858099,2.14190094 C41.473869,3.56984203 36.7331757,5.74027995 32.5635877,8.65327979 C28.3939997,11.5662796 25.0526676,15.2788708 22.5394913,19.7911647 C20.026315,24.3034585 18.7697456,29.6438781 18.7697456,35.8125837 C18.7697456,41.4101128 19.883523,46.0651309 22.1111111,49.7777778 C24.3386992,53.4904246 27.3087722,56.5176144 31.021419,58.8594378 C34.7340659,61.2012612 38.9321497,63.0861151 43.6157965,64.5140562 C48.2994433,65.9419973 53.068695,67.1985666 57.9236948,68.2838019 C62.7786945,69.3690371 67.5479462,70.4256977 72.231593,71.4538153 C76.9152398,72.4819329 81.1133237,73.8241773 84.8259705,75.480589 C88.5386174,77.1370007 91.5086903,79.2788802 93.7362784,81.9062918 C95.9638666,84.5337035 97.0776439,87.9607107 97.0776439,92.1874163 C97.0776439,96.6425926 96.1637753,100.298067 94.3360107,103.153949 C92.5082461,106.009831 90.109341,108.265944 87.1392236,109.922356 C84.1691061,111.578768 80.827774,112.749662 77.1151272,113.435074 C73.4024803,114.120485 69.7184476,114.463186 66.0629183,114.463186 C61.4935068,114.463186 57.0383974,113.892018 52.6974565,112.749665 C48.3565156,111.607312 44.5582492,109.836692 41.3025435,107.437751 C38.0468378,105.03881 35.4194656,101.983062 33.4203481,98.270415 C31.4212305,94.5577681 30.4216867,90.1312171 30.4216867,84.9906292 L15,84.9906292 C15,92.4159229 16.3422445,98.8415614 19.0267738,104.267738 C21.711303,109.693914 25.3667774,114.149023 29.9933066,117.633199 C34.6198357,121.117376 39.9888137,123.71619 46.1004016,125.429719 C52.2119895,127.143248 58.6947448,128 65.5488621,128 C71.1463912,128 76.7723948,127.343157 82.4270415,126.029451 C88.0816882,124.715745 93.1936407,122.602424 97.7630522,119.689424 C102.332464,116.776425 106.073613,113.006717 108.986613,108.380187 C111.899613,103.753658 113.356091,98.1847715 113.356091,91.6733601 C113.356091,85.6188899 112.242314,80.5926126 110.014726,76.5943775 C107.787137,72.5961424 104.817065,69.2833688 101.104418,66.6559572 C97.3917708,64.0285455 93.193687,61.9437828 88.5100402,60.4016064 C83.8263934,58.85943 79.0571416,57.5171855 74.2021419,56.3748327 C69.3471422,55.2324798 64.5778904,54.1758192 59.8942436,53.2048193 C55.2105968,52.2338193 51.012513,51.0058084 47.2998661,49.5207497 C43.5872193,48.0356909 40.6171463,46.1222786 38.3895582,43.7804552 C36.1619701,41.4386318 35.0481928,38.3828836 35.0481928,34.6131191 C35.0481928,30.6148841 35.8192694,27.273552 37.3614458,24.5890228 C38.9036222,21.9044935 40.9598265,19.762614 43.5301205,18.1633199 C46.1004145,16.5640259 49.041929,15.4216902 52.3547523,14.7362784 C55.6675757,14.0508667 59.0374661,13.708166 62.4645248,13.708166 C70.9179361,13.708166 77.8576257,15.6786952 83.2838019,19.6198126 C88.709978,23.56093 91.8799597,29.9294518 92.793842,38.7255689 L92.793842,38.7255689 Z\"></path>\n        <rect x=\"5\" y=\"54\" width=\"118\" height=\"16\"></rect>\n    </g>\n</svg>"
        },
        "$:/core/images/subscript": {
            "title": "$:/core/images/subscript",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-subscript tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M2.27170276,16 L22.1825093,16 L43.8305003,49.6746527 L66.4138983,16 L85.1220387,16 L53.5854592,61.9685735 L87.3937414,111.411516 L67.0820462,111.411516 L43.295982,74.9306422 L19.1090291,111.411516 L0,111.411516 L33.8082822,61.9685735 L2.27170276,16 Z M127.910914,128.411516 L85.3276227,128.411516 C85.3870139,123.24448 86.6342108,118.730815 89.0692508,114.870386 C91.5042907,111.009956 94.8301491,107.654403 99.0469256,104.803624 C101.066227,103.318844 103.174584,101.878629 105.372059,100.482935 C107.569534,99.0872413 109.588805,97.5876355 111.429933,95.9840726 C113.271061,94.3805097 114.785514,92.6433426 115.973338,90.7725192 C117.161163,88.9016958 117.784761,86.7487964 117.844152,84.3137564 C117.844152,83.1853233 117.710524,81.9826691 117.443264,80.7057579 C117.176003,79.4288467 116.656338,78.2410402 115.884252,77.1423026 C115.112166,76.0435651 114.04314,75.123015 112.677142,74.3806248 C111.311144,73.6382345 109.529434,73.267045 107.331959,73.267045 C105.312658,73.267045 103.634881,73.6679297 102.298579,74.4697112 C100.962276,75.2714926 99.8932503,76.3702137 99.0914688,77.7659073 C98.2896874,79.161601 97.6957841,80.8096826 97.3097412,82.7102016 C96.9236982,84.6107206 96.7009845,86.6596869 96.6415933,88.857162 L86.4857457,88.857162 C86.4857457,85.4124713 86.9460207,82.2202411 87.8665846,79.2803758 C88.7871485,76.3405105 90.1679736,73.801574 92.0091014,71.6634901 C93.8502292,69.5254062 96.092214,67.8476295 98.7351233,66.6301095 C101.378033,65.4125895 104.451482,64.8038386 107.955564,64.8038386 C111.756602,64.8038386 114.933984,65.4274371 117.487807,66.6746527 C120.041629,67.9218683 122.105443,69.4957119 123.67931,71.3962309 C125.253178,73.2967499 126.366746,75.3605638 127.02005,77.5877345 C127.673353,79.8149053 128,81.9381095 128,83.9574109 C128,86.4518421 127.613963,88.7086746 126.841877,90.727976 C126.069791,92.7472774 125.03046,94.6032252 123.723854,96.2958749 C122.417247,97.9885247 120.932489,99.5475208 119.269534,100.97291 C117.60658,102.398299 115.884261,103.734582 114.102524,104.981797 C112.320788,106.229013 110.539078,107.416819 108.757341,108.545253 C106.975605,109.673686 105.327523,110.802102 103.813047,111.930535 C102.298571,113.058968 100.977136,114.231927 99.8487031,115.449447 C98.7202699,116.666967 97.9481956,117.958707 97.5324571,119.324705 L127.910914,119.324705 L127.910914,128.411516 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/superscript": {
            "title": "$:/core/images/superscript",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-superscript tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M2.27170276,16 L22.1825093,16 L43.8305003,49.6746527 L66.4138983,16 L85.1220387,16 L53.5854592,61.9685735 L87.3937414,111.411516 L67.0820462,111.411516 L43.295982,74.9306422 L19.1090291,111.411516 L0,111.411516 L33.8082822,61.9685735 L2.27170276,16 Z M127.910914,63.4115159 L85.3276227,63.4115159 C85.3870139,58.2444799 86.6342108,53.7308149 89.0692508,49.8703857 C91.5042907,46.0099565 94.8301491,42.654403 99.0469256,39.8036245 C101.066227,38.318844 103.174584,36.8786285 105.372059,35.4829349 C107.569534,34.0872413 109.588805,32.5876355 111.429933,30.9840726 C113.271061,29.3805097 114.785514,27.6433426 115.973338,25.7725192 C117.161163,23.9016958 117.784761,21.7487964 117.844152,19.3137564 C117.844152,18.1853233 117.710524,16.9826691 117.443264,15.7057579 C117.176003,14.4288467 116.656338,13.2410402 115.884252,12.1423026 C115.112166,11.0435651 114.04314,10.123015 112.677142,9.38062477 C111.311144,8.63823453 109.529434,8.26704499 107.331959,8.26704499 C105.312658,8.26704499 103.634881,8.6679297 102.298579,9.46971115 C100.962276,10.2714926 99.8932503,11.3702137 99.0914688,12.7659073 C98.2896874,14.161601 97.6957841,15.8096826 97.3097412,17.7102016 C96.9236982,19.6107206 96.7009845,21.6596869 96.6415933,23.857162 L86.4857457,23.857162 C86.4857457,20.4124713 86.9460207,17.2202411 87.8665846,14.2803758 C88.7871485,11.3405105 90.1679736,8.80157397 92.0091014,6.6634901 C93.8502292,4.52540622 96.092214,2.84762946 98.7351233,1.63010947 C101.378033,0.412589489 104.451482,-0.196161372 107.955564,-0.196161372 C111.756602,-0.196161372 114.933984,0.427437071 117.487807,1.67465266 C120.041629,2.92186826 122.105443,4.49571195 123.67931,6.39623095 C125.253178,8.29674995 126.366746,10.3605638 127.02005,12.5877345 C127.673353,14.8149053 128,16.9381095 128,18.9574109 C128,21.4518421 127.613963,23.7086746 126.841877,25.727976 C126.069791,27.7472774 125.03046,29.6032252 123.723854,31.2958749 C122.417247,32.9885247 120.932489,34.5475208 119.269534,35.97291 C117.60658,37.3982993 115.884261,38.7345816 114.102524,39.9817972 C112.320788,41.2290128 110.539078,42.4168194 108.757341,43.5452525 C106.975605,44.6736857 105.327523,45.8021019 103.813047,46.9305351 C102.298571,48.0589682 100.977136,49.2319272 99.8487031,50.4494472 C98.7202699,51.6669672 97.9481956,52.9587068 97.5324571,54.3247048 L127.910914,54.3247048 L127.910914,63.4115159 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/tag-button": {
            "title": "$:/core/images/tag-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-tag-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M18.1643182,47.6600756 L18.1677196,51.7651887 C18.1708869,55.5878829 20.3581578,60.8623899 23.0531352,63.5573673 L84.9021823,125.406414 C87.5996731,128.103905 91.971139,128.096834 94.6717387,125.396234 L125.766905,94.3010679 C128.473612,91.5943612 128.472063,87.2264889 125.777085,84.5315115 L63.9280381,22.6824644 C61.2305472,19.9849735 55.9517395,17.801995 52.1318769,17.8010313 L25.0560441,17.7942007 C21.2311475,17.7932358 18.1421354,20.8872832 18.1452985,24.7049463 L18.1535504,34.6641936 C18.2481119,34.6754562 18.3439134,34.6864294 18.4409623,34.6971263 C22.1702157,35.1081705 26.9295004,34.6530132 31.806204,33.5444844 C32.1342781,33.0700515 32.5094815,32.6184036 32.9318197,32.1960654 C35.6385117,29.4893734 39.5490441,28.718649 42.94592,29.8824694 C43.0432142,29.8394357 43.1402334,29.7961748 43.2369683,29.7526887 L43.3646982,30.0368244 C44.566601,30.5115916 45.6933052,31.2351533 46.6655958,32.2074439 C50.4612154,36.0030635 50.4663097,42.1518845 46.6769742,45.94122 C43.0594074,49.5587868 37.2914155,49.7181264 33.4734256,46.422636 C28.1082519,47.5454734 22.7987486,48.0186448 18.1643182,47.6600756 Z\"></path>\n        <path d=\"M47.6333528,39.5324628 L47.6562932,39.5834939 C37.9670934,43.9391617 26.0718874,46.3819521 17.260095,45.4107025 C5.27267473,44.0894301 -1.02778744,36.4307276 2.44271359,24.0779512 C5.56175386,12.9761516 14.3014034,4.36129832 24.0466405,1.54817001 C34.7269254,-1.53487574 43.7955833,3.51606438 43.7955834,14.7730751 L35.1728168,14.7730752 C35.1728167,9.91428944 32.0946059,8.19982862 26.4381034,9.83267419 C19.5270911,11.8276553 13.046247,18.2159574 10.7440788,26.4102121 C8.82861123,33.2280582 11.161186,36.0634845 18.2047888,36.8398415 C25.3302805,37.6252244 35.7353482,35.4884477 44.1208333,31.7188498 L44.1475077,31.7781871 C44.159701,31.7725635 44.1718402,31.7671479 44.1839238,31.7619434 C45.9448098,31.0035157 50.4503245,38.3109156 47.7081571,39.5012767 C47.6834429,39.512005 47.6585061,39.5223987 47.6333528,39.5324628 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/theme-button": {
            "title": "$:/core/images/theme-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-theme-button tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M55.854113,66.9453198 C54.3299482,65.1432292 53.0133883,63.518995 51.9542746,62.1263761 C40.8899947,47.578055 35.3091807,55.2383404 28.9941893,62.1263758 C22.6791979,69.0144112 30.6577916,74.5954741 24.6646171,79.4611023 C18.6714426,84.3267304 19.0414417,86.0133155 8.92654943,77.1119468 C-1.18834284,68.2105781 -1.88793412,65.7597832 2.7553553,60.6807286 C7.39864472,55.601674 11.2794845,63.5989423 20.7646627,54.5728325 C30.2498409,45.5467226 22.2819131,37.5470737 22.2819131,37.5470737 C22.2819131,37.5470737 42.0310399,-2.82433362 68.4206088,0.157393922 C94.8101776,3.13912147 58.4373806,-3.70356506 49.3898693,27.958066 C45.5161782,41.5139906 50.1107906,38.3197672 57.4560458,44.0453955 C59.1625767,45.3756367 63.8839488,48.777453 70.127165,53.3625321 C63.9980513,59.2416709 58.9704753,64.0315459 55.854113,66.9453198 Z M67.4952439,79.8919946 C83.5082212,96.9282402 105.237121,117.617674 112.611591,120.312493 C123.044132,124.12481 128.000001,117.170903 128,105.522947 C127.999999,98.3705516 104.170675,78.980486 84.0760493,63.7529565 C76.6683337,70.9090328 70.7000957,76.7055226 67.4952439,79.8919946 Z\"></path>\n        <path d=\"M58.2852966,138.232794 L58.2852966,88.3943645 C56.318874,88.3923153 54.7254089,86.7952906 54.7254089,84.8344788 C54.7254089,82.8684071 56.3175932,81.2745911 58.2890859,81.2745911 L79.6408336,81.2745911 C81.608998,81.2745911 83.2045105,82.8724076 83.2045105,84.8344788 C83.2045105,86.7992907 81.614366,88.3923238 79.6446228,88.3943645 L79.6446228,88.3943646 L79.6446228,138.232794 C79.6446228,144.131009 74.8631748,148.912457 68.9649597,148.912457 C63.0667446,148.912457 58.2852966,144.131009 58.2852966,138.232794 Z M65.405072,-14.8423767 L72.5248474,-14.8423767 L76.0847351,-0.690681892 L72.5248474,6.51694947 L72.5248474,81.2745911 L65.405072,81.2745911 L65.405072,6.51694947 L61.8451843,-0.690681892 L65.405072,-14.8423767 Z\" transform=\"translate(68.964960, 67.035040) rotate(45.000000) translate(-68.964960, -67.035040) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/timestamp-off": {
            "title": "$:/core/images/timestamp-off",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-timestamp-off tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10c-2.762 0-5-2.24-5-5-.004-2.756 2.238-5 5-5H66.69c2.762 0 5.002 2.24 5 5 .006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M58.25 35.88c-18.777 0-33.998 15.224-33.998 33.998 0 18.773 15.22 34.002 33.998 34.002 18.784 0 34.002-15.23 34.002-34.002 0-18.774-15.218-33.998-34.002-33.998zm-3.03 50.123H44.196v-34H55.22v34zm16.976 0H61.17v-34h11.025v34z\"/>\n    </g>\n</svg>\n"
        },
        "$:/core/images/timestamp-on": {
            "title": "$:/core/images/timestamp-on",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-timestamp-on tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10c-2.762 0-5-2.24-5-5-.004-2.756 2.238-5 5-5H66.69c2.762 0 5.002 2.24 5 5 .006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M13.41 27.178c-2.116 1.775-5.27 1.498-7.045-.613-1.772-2.11-1.498-5.27.616-7.047l9.95-8.348c2.115-1.774 5.27-1.5 7.045.618 1.775 2.108 1.498 5.27-.616 7.043l-9.95 8.348zM102.983 27.178c2.116 1.775 5.27 1.498 7.045-.613 1.772-2.11 1.498-5.27-.616-7.047l-9.95-8.348c-2.114-1.774-5.27-1.5-7.044.618-1.775 2.108-1.498 5.27.616 7.043l9.95 8.348zM65.097 71.072c0 3.826-3.09 6.928-6.897 6.928-3.804.006-6.9-3.102-6.903-6.928 0 0 4.76-39.072 6.903-39.072s6.897 39.072 6.897 39.072z\"/>\n    </g>\n</svg>\n"
        },
        "$:/core/images/tip": {
            "title": "$:/core/images/tip",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-tip tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M64,128.241818 C99.346224,128.241818 128,99.5880417 128,64.2418177 C128,28.8955937 99.346224,0.241817675 64,0.241817675 C28.653776,0.241817675 0,28.8955937 0,64.2418177 C0,99.5880417 28.653776,128.241818 64,128.241818 Z M75.9358659,91.4531941 C75.3115438,95.581915 70.2059206,98.8016748 64,98.8016748 C57.7940794,98.8016748 52.6884562,95.581915 52.0641341,91.4531941 C54.3299053,94.0502127 58.8248941,95.8192805 64,95.8192805 C69.1751059,95.8192805 73.6700947,94.0502127 75.9358659,91.4531941 L75.9358659,91.4531941 Z M75.9358659,95.9453413 C75.3115438,100.074062 70.2059206,103.293822 64,103.293822 C57.7940794,103.293822 52.6884562,100.074062 52.0641341,95.9453413 C54.3299053,98.5423599 58.8248941,100.311428 64,100.311428 C69.1751059,100.311428 73.6700947,98.5423599 75.9358659,95.9453413 L75.9358659,95.9453413 Z M75.9358659,100.40119 C75.3115438,104.529911 70.2059206,107.74967 64,107.74967 C57.7940794,107.74967 52.6884562,104.529911 52.0641341,100.40119 C54.3299053,102.998208 58.8248941,104.767276 64,104.767276 C69.1751059,104.767276 73.6700947,102.998208 75.9358659,100.40119 L75.9358659,100.40119 Z M75.9358659,104.893337 C75.3115438,109.022058 70.2059206,112.241818 64,112.241818 C57.7940794,112.241818 52.6884562,109.022058 52.0641341,104.893337 C54.3299053,107.490356 58.8248941,109.259423 64,109.259423 C69.1751059,109.259423 73.6700947,107.490356 75.9358659,104.893337 L75.9358659,104.893337 Z M64.3010456,24.2418177 C75.9193117,24.2418188 88.0000013,32.0619847 88,48.4419659 C87.9999987,64.8219472 75.9193018,71.7540963 75.9193021,83.5755932 C75.9193022,89.4486648 70.0521957,92.8368862 63.9999994,92.8368862 C57.947803,92.8368862 51.9731007,89.8295115 51.9731007,83.5755932 C51.9731007,71.1469799 39.9999998,65.4700602 40,48.4419647 C40.0000002,31.4138691 52.6827796,24.2418166 64.3010456,24.2418177 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/transcludify": {
            "title": "$:/core/images/transcludify",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-transcludify-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\"><path d=\"M0 59.482c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 0 0 2.75-.932 6.762 6.762 0 0 0 2.306-1.907c.651-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 0 0-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 0 0-2.75-1.02C1.36 67.377.591 67.288 0 67.288v-7.806zm24.66 0c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 0 0 2.75-.932 6.762 6.762 0 0 0 2.306-1.907c.65-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 0 0-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 0 0-2.75-1.02c-.946-.177-1.715-.266-2.306-.266v-7.806zm43.965-3.538L80.6 52.041l2.306 7.097-12.063 3.903 7.628 10.378-6.12 4.435-7.63-10.467-7.45 10.201-5.943-4.524 7.628-10.023-12.152-4.17 2.306-7.096 12.064 4.17V43.347h7.451v12.596zm34.425 11.344c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 0 0-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 0 0 .71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 0 0-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 0 0 2.262 2.084 8.868 8.868 0 0 0 2.75 1.02c.946.177 1.745.266 2.395.266v7.806zm24.66 0c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 0 0-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 0 0 .71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 0 0-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 0 0 2.262 2.084 8.868 8.868 0 0 0 2.75 1.02c.946.177 1.745.266 2.395.266v7.806z\" fill-rule=\"evenodd\"/></svg>\n"
        },
        "$:/core/images/twitter": {
            "title": "$:/core/images/twitter",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-twitter tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M41.6263422,115.803477 C27.0279663,115.803477 13.4398394,111.540813 1.99987456,104.234833 C4.02221627,104.472643 6.08004574,104.594302 8.16644978,104.594302 C20.277456,104.594302 31.4238403,100.47763 40.270894,93.5715185 C28.9590538,93.3635501 19.4123842,85.9189246 16.1230832,75.6885328 C17.7011365,75.9892376 19.320669,76.1503787 20.9862896,76.1503787 C23.344152,76.1503787 25.6278127,75.8359011 27.7971751,75.247346 C15.9709927,72.8821073 7.06079851,62.4745062 7.06079851,49.9982394 C7.06079851,49.8898938 7.06079851,49.7820074 7.06264203,49.67458 C10.5482779,51.6032228 14.5339687,52.7615103 18.7717609,52.8951059 C11.8355159,48.277565 7.2714207,40.3958845 7.2714207,31.4624258 C7.2714207,26.7434257 8.54621495,22.3200804 10.7713439,18.5169676 C23.5211299,34.0957738 42.568842,44.3472839 64.0532269,45.4210985 C63.6126256,43.5365285 63.3835682,41.5711584 63.3835682,39.5529928 C63.3835682,25.3326379 74.95811,13.8034766 89.2347917,13.8034766 C96.6697089,13.8034766 103.387958,16.930807 108.103682,21.9353619 C113.991886,20.780288 119.52429,18.6372496 124.518847,15.6866694 C122.588682,21.6993889 118.490075,26.7457211 113.152623,29.9327334 C118.381769,29.3102055 123.363882,27.926045 127.999875,25.8780385 C124.534056,31.0418981 120.151087,35.5772616 115.100763,39.2077561 C115.150538,40.3118708 115.175426,41.4224128 115.175426,42.538923 C115.175426,76.5663154 89.1744164,115.803477 41.6263422,115.803477\"></path>\n    </g>\n</svg>\n"
        },
        "$:/core/images/underline": {
            "title": "$:/core/images/underline",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-underline tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M7,117.421488 L121.247934,117.421488 L121.247934,128 L7,128 L7,117.421488 Z M104.871212,98.8958333 L104.871212,0 L88.6117424,0 L88.6117424,55.8560606 C88.6117424,60.3194668 88.0060035,64.432115 86.7945076,68.1941288 C85.5830116,71.9561425 83.7657949,75.239885 81.342803,78.0454545 C78.9198111,80.8510241 75.8911167,83.0189317 72.2566288,84.5492424 C68.6221409,86.0795531 64.3182067,86.844697 59.344697,86.844697 C53.0959284,86.844697 48.1862552,85.0593613 44.6155303,81.4886364 C41.0448054,77.9179114 39.2594697,73.0720003 39.2594697,66.9507576 L39.2594697,0 L23,0 L23,65.0378788 C23,70.3939662 23.5419769,75.2717583 24.625947,79.6714015 C25.709917,84.0710447 27.5908957,87.864883 30.2689394,91.0530303 C32.9469831,94.2411776 36.4538925,96.6960141 40.7897727,98.4176136 C45.125653,100.139213 50.545422,101 57.0492424,101 C64.3182182,101 70.630655,99.5653553 75.9867424,96.6960227 C81.3428298,93.8266902 85.742407,89.33147 89.1856061,83.2102273 L89.5681818,83.2102273 L89.5681818,98.8958333 L104.871212,98.8958333 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/unfold-all-button": {
            "title": "$:/core/images/unfold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-unfold-all tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"0\" y=\"0\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <rect x=\"0\" y=\"64\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <path d=\"M85.598226,8.34884273 C84.1490432,6.89863875 82.1463102,6 79.9340286,6 L47.9482224,6 C43.5292967,6 39.9411255,9.581722 39.9411255,14 C39.9411255,18.4092877 43.5260249,22 47.9482224,22 L71.9411255,22 L71.9411255,45.9929031 C71.9411255,50.4118288 75.5228475,54 79.9411255,54 C84.3504132,54 87.9411255,50.4151006 87.9411255,45.9929031 L87.9411255,14.0070969 C87.9411255,11.7964515 87.0447363,9.79371715 85.5956548,8.34412458 Z\" transform=\"translate(63.941125, 30.000000) scale(1, -1) rotate(-45.000000) translate(-63.941125, -30.000000) \"></path>\n        <path d=\"M85.6571005,72.2899682 C84.2079177,70.8397642 82.2051847,69.9411255 79.9929031,69.9411255 L48.0070969,69.9411255 C43.5881712,69.9411255 40,73.5228475 40,77.9411255 C40,82.3504132 43.5848994,85.9411255 48.0070969,85.9411255 L72,85.9411255 L72,109.934029 C72,114.352954 75.581722,117.941125 80,117.941125 C84.4092877,117.941125 88,114.356226 88,109.934029 L88,77.9482224 C88,75.737577 87.1036108,73.7348426 85.6545293,72.2852501 Z\" transform=\"translate(64.000000, 93.941125) scale(1, -1) rotate(-45.000000) translate(-64.000000, -93.941125) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/unfold-button": {
            "title": "$:/core/images/unfold-button",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-unfold tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <rect x=\"0\" y=\"0\" width=\"128\" height=\"16\" rx=\"8\"></rect>\n        <path d=\"M85.598226,11.3488427 C84.1490432,9.89863875 82.1463102,9 79.9340286,9 L47.9482224,9 C43.5292967,9 39.9411255,12.581722 39.9411255,17 C39.9411255,21.4092877 43.5260249,25 47.9482224,25 L71.9411255,25 L71.9411255,48.9929031 C71.9411255,53.4118288 75.5228475,57 79.9411255,57 C84.3504132,57 87.9411255,53.4151006 87.9411255,48.9929031 L87.9411255,17.0070969 C87.9411255,14.7964515 87.0447363,12.7937171 85.5956548,11.3441246 Z\" transform=\"translate(63.941125, 33.000000) scale(1, -1) rotate(-45.000000) translate(-63.941125, -33.000000) \"></path>\n        <path d=\"M85.6571005,53.4077172 C84.2079177,51.9575133 82.2051847,51.0588745 79.9929031,51.0588745 L48.0070969,51.0588745 C43.5881712,51.0588745 40,54.6405965 40,59.0588745 C40,63.4681622 43.5848994,67.0588745 48.0070969,67.0588745 L72,67.0588745 L72,91.0517776 C72,95.4707033 75.581722,99.0588745 80,99.0588745 C84.4092877,99.0588745 88,95.4739751 88,91.0517776 L88,59.0659714 C88,56.855326 87.1036108,54.8525917 85.6545293,53.4029991 Z\" transform=\"translate(64.000000, 75.058875) scale(1, -1) rotate(-45.000000) translate(-64.000000, -75.058875) \"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/unlocked-padlock": {
            "title": "$:/core/images/unlocked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-unlocked-padlock tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M48.6266053,64 L105,64 L105,96.0097716 C105,113.673909 90.6736461,128 73.001193,128 L55.998807,128 C38.3179793,128 24,113.677487 24,96.0097716 L24,64 L30.136303,64 C19.6806213,51.3490406 2.77158986,28.2115132 25.8366966,8.85759246 C50.4723026,-11.8141335 71.6711028,13.2108337 81.613302,25.0594855 C91.5555012,36.9081373 78.9368488,47.4964439 69.1559674,34.9513593 C59.375086,22.4062748 47.9893192,10.8049522 35.9485154,20.9083862 C23.9077117,31.0118202 34.192312,43.2685325 44.7624679,55.8655518 C47.229397,58.805523 48.403443,61.5979188 48.6266053,64 Z M67.7315279,92.3641717 C70.8232551,91.0923621 73,88.0503841 73,84.5 C73,79.8055796 69.1944204,76 64.5,76 C59.8055796,76 56,79.8055796 56,84.5 C56,87.947435 58.0523387,90.9155206 61.0018621,92.2491029 L55.9067479,115.020857 L72.8008958,115.020857 L67.7315279,92.3641717 L67.7315279,92.3641717 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/up-arrow": {
            "title": "$:/core/images/up-arrow",
            "created": "20150316000544368",
            "modified": "20150316000831867",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-up-arrow tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n<path transform=\"rotate(-135, 63.8945, 64.1752)\" d=\"m109.07576,109.35336c-1.43248,1.43361 -3.41136,2.32182 -5.59717,2.32182l-79.16816,0c-4.36519,0 -7.91592,-3.5444 -7.91592,-7.91666c0,-4.36337 3.54408,-7.91667 7.91592,-7.91667l71.25075,0l0,-71.25074c0,-4.3652 3.54442,-7.91592 7.91667,-7.91592c4.36336,0 7.91667,3.54408 7.91667,7.91592l0,79.16815c0,2.1825 -0.88602,4.16136 -2.3185,5.59467l-0.00027,-0.00056l0.00001,-0.00001z\" />\n</svg>\n \n"
        },
        "$:/core/images/video": {
            "title": "$:/core/images/video",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-video tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M64,12 C29.0909091,12 8.72727273,14.9166667 5.81818182,17.8333333 C2.90909091,20.75 1.93784382e-15,41.1666667 0,64.5 C1.93784382e-15,87.8333333 2.90909091,108.25 5.81818182,111.166667 C8.72727273,114.083333 29.0909091,117 64,117 C98.9090909,117 119.272727,114.083333 122.181818,111.166667 C125.090909,108.25 128,87.8333333 128,64.5 C128,41.1666667 125.090909,20.75 122.181818,17.8333333 C119.272727,14.9166667 98.9090909,12 64,12 Z M54.9161194,44.6182253 C51.102648,42.0759111 48.0112186,43.7391738 48.0112186,48.3159447 L48.0112186,79.6840553 C48.0112186,84.2685636 51.109784,85.9193316 54.9161194,83.3817747 L77.0838806,68.6032672 C80.897352,66.0609529 80.890216,61.9342897 77.0838806,59.3967328 L54.9161194,44.6182253 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/core/images/warning": {
            "title": "$:/core/images/warning",
            "tags": "$:/tags/Image",
            "text": "<svg class=\"tc-image-warning tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\">\n    <g fill-rule=\"evenodd\">\n        <path d=\"M57.0717968,11 C60.1509982,5.66666667 67.8490018,5.66666667 70.9282032,11 L126.353829,107 C129.433031,112.333333 125.584029,119 119.425626,119 L8.57437416,119 C2.41597129,119 -1.43303051,112.333333 1.64617093,107 L57.0717968,11 Z M64,37 C59.581722,37 56,40.5820489 56,44.9935776 L56,73.0064224 C56,77.4211534 59.5907123,81 64,81 C68.418278,81 72,77.4179511 72,73.0064224 L72,44.9935776 C72,40.5788466 68.4092877,37 64,37 Z M64,104 C68.418278,104 72,100.418278 72,96 C72,91.581722 68.418278,88 64,88 C59.581722,88 56,91.581722 56,96 C56,100.418278 59.581722,104 64,104 Z\"></path>\n    </g>\n</svg>"
        },
        "$:/language/Buttons/AdvancedSearch/Caption": {
            "title": "$:/language/Buttons/AdvancedSearch/Caption",
            "text": "advanced search"
        },
        "$:/language/Buttons/AdvancedSearch/Hint": {
            "title": "$:/language/Buttons/AdvancedSearch/Hint",
            "text": "Advanced search"
        },
        "$:/language/Buttons/Cancel/Caption": {
            "title": "$:/language/Buttons/Cancel/Caption",
            "text": "cancel"
        },
        "$:/language/Buttons/Cancel/Hint": {
            "title": "$:/language/Buttons/Cancel/Hint",
            "text": "Discard changes to this tiddler"
        },
        "$:/language/Buttons/Clone/Caption": {
            "title": "$:/language/Buttons/Clone/Caption",
            "text": "clone"
        },
        "$:/language/Buttons/Clone/Hint": {
            "title": "$:/language/Buttons/Clone/Hint",
            "text": "Clone this tiddler"
        },
        "$:/language/Buttons/Close/Caption": {
            "title": "$:/language/Buttons/Close/Caption",
            "text": "close"
        },
        "$:/language/Buttons/Close/Hint": {
            "title": "$:/language/Buttons/Close/Hint",
            "text": "Close this tiddler"
        },
        "$:/language/Buttons/CloseAll/Caption": {
            "title": "$:/language/Buttons/CloseAll/Caption",
            "text": "close all"
        },
        "$:/language/Buttons/CloseAll/Hint": {
            "title": "$:/language/Buttons/CloseAll/Hint",
            "text": "Close all tiddlers"
        },
        "$:/language/Buttons/CloseOthers/Caption": {
            "title": "$:/language/Buttons/CloseOthers/Caption",
            "text": "close others"
        },
        "$:/language/Buttons/CloseOthers/Hint": {
            "title": "$:/language/Buttons/CloseOthers/Hint",
            "text": "Close other tiddlers"
        },
        "$:/language/Buttons/ControlPanel/Caption": {
            "title": "$:/language/Buttons/ControlPanel/Caption",
            "text": "control panel"
        },
        "$:/language/Buttons/ControlPanel/Hint": {
            "title": "$:/language/Buttons/ControlPanel/Hint",
            "text": "Open control panel"
        },
        "$:/language/Buttons/CopyToClipboard/Caption": {
            "title": "$:/language/Buttons/CopyToClipboard/Caption",
            "text": "copy to clipboard"
        },
        "$:/language/Buttons/CopyToClipboard/Hint": {
            "title": "$:/language/Buttons/CopyToClipboard/Hint",
            "text": "Copy this text to the clipboard"
        },
        "$:/language/Buttons/Delete/Caption": {
            "title": "$:/language/Buttons/Delete/Caption",
            "text": "delete"
        },
        "$:/language/Buttons/Delete/Hint": {
            "title": "$:/language/Buttons/Delete/Hint",
            "text": "Delete this tiddler"
        },
        "$:/language/Buttons/Edit/Caption": {
            "title": "$:/language/Buttons/Edit/Caption",
            "text": "edit"
        },
        "$:/language/Buttons/Edit/Hint": {
            "title": "$:/language/Buttons/Edit/Hint",
            "text": "Edit this tiddler"
        },
        "$:/language/Buttons/Encryption/Caption": {
            "title": "$:/language/Buttons/Encryption/Caption",
            "text": "encryption"
        },
        "$:/language/Buttons/Encryption/Hint": {
            "title": "$:/language/Buttons/Encryption/Hint",
            "text": "Set or clear a password for saving this wiki"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
            "text": "clear password"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
            "text": "Clear the password and save this wiki without encryption"
        },
        "$:/language/Buttons/Encryption/SetPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Caption",
            "text": "set password"
        },
        "$:/language/Buttons/Encryption/SetPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Hint",
            "text": "Set a password for saving this wiki with encryption"
        },
        "$:/language/Buttons/ExportPage/Caption": {
            "title": "$:/language/Buttons/ExportPage/Caption",
            "text": "export all"
        },
        "$:/language/Buttons/ExportPage/Hint": {
            "title": "$:/language/Buttons/ExportPage/Hint",
            "text": "Export all tiddlers"
        },
        "$:/language/Buttons/ExportTiddler/Caption": {
            "title": "$:/language/Buttons/ExportTiddler/Caption",
            "text": "export tiddler"
        },
        "$:/language/Buttons/ExportTiddler/Hint": {
            "title": "$:/language/Buttons/ExportTiddler/Hint",
            "text": "Export tiddler"
        },
        "$:/language/Buttons/ExportTiddlers/Caption": {
            "title": "$:/language/Buttons/ExportTiddlers/Caption",
            "text": "export tiddlers"
        },
        "$:/language/Buttons/ExportTiddlers/Hint": {
            "title": "$:/language/Buttons/ExportTiddlers/Hint",
            "text": "Export tiddlers"
        },
        "$:/language/Buttons/Fold/Caption": {
            "title": "$:/language/Buttons/Fold/Caption",
            "text": "fold tiddler"
        },
        "$:/language/Buttons/Fold/Hint": {
            "title": "$:/language/Buttons/Fold/Hint",
            "text": "Fold the body of this tiddler"
        },
        "$:/language/Buttons/Fold/FoldBar/Caption": {
            "title": "$:/language/Buttons/Fold/FoldBar/Caption",
            "text": "fold-bar"
        },
        "$:/language/Buttons/Fold/FoldBar/Hint": {
            "title": "$:/language/Buttons/Fold/FoldBar/Hint",
            "text": "Optional bars to fold and unfold tiddlers"
        },
        "$:/language/Buttons/Unfold/Caption": {
            "title": "$:/language/Buttons/Unfold/Caption",
            "text": "unfold tiddler"
        },
        "$:/language/Buttons/Unfold/Hint": {
            "title": "$:/language/Buttons/Unfold/Hint",
            "text": "Unfold the body of this tiddler"
        },
        "$:/language/Buttons/FoldOthers/Caption": {
            "title": "$:/language/Buttons/FoldOthers/Caption",
            "text": "fold other tiddlers"
        },
        "$:/language/Buttons/FoldOthers/Hint": {
            "title": "$:/language/Buttons/FoldOthers/Hint",
            "text": "Fold the bodies of other opened tiddlers"
        },
        "$:/language/Buttons/FoldAll/Caption": {
            "title": "$:/language/Buttons/FoldAll/Caption",
            "text": "fold all tiddlers"
        },
        "$:/language/Buttons/FoldAll/Hint": {
            "title": "$:/language/Buttons/FoldAll/Hint",
            "text": "Fold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Caption": {
            "title": "$:/language/Buttons/UnfoldAll/Caption",
            "text": "unfold all tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Hint": {
            "title": "$:/language/Buttons/UnfoldAll/Hint",
            "text": "Unfold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/FullScreen/Caption": {
            "title": "$:/language/Buttons/FullScreen/Caption",
            "text": "full-screen"
        },
        "$:/language/Buttons/FullScreen/Hint": {
            "title": "$:/language/Buttons/FullScreen/Hint",
            "text": "Enter or leave full-screen mode"
        },
        "$:/language/Buttons/Help/Caption": {
            "title": "$:/language/Buttons/Help/Caption",
            "text": "help"
        },
        "$:/language/Buttons/Help/Hint": {
            "title": "$:/language/Buttons/Help/Hint",
            "text": "Show help panel"
        },
        "$:/language/Buttons/Import/Caption": {
            "title": "$:/language/Buttons/Import/Caption",
            "text": "import"
        },
        "$:/language/Buttons/Import/Hint": {
            "title": "$:/language/Buttons/Import/Hint",
            "text": "Import many types of file including text, image, TiddlyWiki or JSON"
        },
        "$:/language/Buttons/Info/Caption": {
            "title": "$:/language/Buttons/Info/Caption",
            "text": "info"
        },
        "$:/language/Buttons/Info/Hint": {
            "title": "$:/language/Buttons/Info/Hint",
            "text": "Show information for this tiddler"
        },
        "$:/language/Buttons/Home/Caption": {
            "title": "$:/language/Buttons/Home/Caption",
            "text": "home"
        },
        "$:/language/Buttons/Home/Hint": {
            "title": "$:/language/Buttons/Home/Hint",
            "text": "Open the default tiddlers"
        },
        "$:/language/Buttons/Language/Caption": {
            "title": "$:/language/Buttons/Language/Caption",
            "text": "language"
        },
        "$:/language/Buttons/Language/Hint": {
            "title": "$:/language/Buttons/Language/Hint",
            "text": "Choose the user interface language"
        },
        "$:/language/Buttons/Manager/Caption": {
            "title": "$:/language/Buttons/Manager/Caption",
            "text": "tiddler manager"
        },
        "$:/language/Buttons/Manager/Hint": {
            "title": "$:/language/Buttons/Manager/Hint",
            "text": "Open tiddler manager"
        },
        "$:/language/Buttons/More/Caption": {
            "title": "$:/language/Buttons/More/Caption",
            "text": "more"
        },
        "$:/language/Buttons/More/Hint": {
            "title": "$:/language/Buttons/More/Hint",
            "text": "More actions"
        },
        "$:/language/Buttons/NewHere/Caption": {
            "title": "$:/language/Buttons/NewHere/Caption",
            "text": "new here"
        },
        "$:/language/Buttons/NewHere/Hint": {
            "title": "$:/language/Buttons/NewHere/Hint",
            "text": "Create a new tiddler tagged with this one"
        },
        "$:/language/Buttons/NewJournal/Caption": {
            "title": "$:/language/Buttons/NewJournal/Caption",
            "text": "new journal"
        },
        "$:/language/Buttons/NewJournal/Hint": {
            "title": "$:/language/Buttons/NewJournal/Hint",
            "text": "Create a new journal tiddler"
        },
        "$:/language/Buttons/NewJournalHere/Caption": {
            "title": "$:/language/Buttons/NewJournalHere/Caption",
            "text": "new journal here"
        },
        "$:/language/Buttons/NewJournalHere/Hint": {
            "title": "$:/language/Buttons/NewJournalHere/Hint",
            "text": "Create a new journal tiddler tagged with this one"
        },
        "$:/language/Buttons/NewImage/Caption": {
            "title": "$:/language/Buttons/NewImage/Caption",
            "text": "new image"
        },
        "$:/language/Buttons/NewImage/Hint": {
            "title": "$:/language/Buttons/NewImage/Hint",
            "text": "Create a new image tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Caption": {
            "title": "$:/language/Buttons/NewMarkdown/Caption",
            "text": "new Markdown tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Hint": {
            "title": "$:/language/Buttons/NewMarkdown/Hint",
            "text": "Create a new Markdown tiddler"
        },
        "$:/language/Buttons/NewTiddler/Caption": {
            "title": "$:/language/Buttons/NewTiddler/Caption",
            "text": "new tiddler"
        },
        "$:/language/Buttons/NewTiddler/Hint": {
            "title": "$:/language/Buttons/NewTiddler/Hint",
            "text": "Create a new tiddler"
        },
        "$:/language/Buttons/OpenWindow/Caption": {
            "title": "$:/language/Buttons/OpenWindow/Caption",
            "text": "open in new window"
        },
        "$:/language/Buttons/OpenWindow/Hint": {
            "title": "$:/language/Buttons/OpenWindow/Hint",
            "text": "Open tiddler in new window"
        },
        "$:/language/Buttons/Palette/Caption": {
            "title": "$:/language/Buttons/Palette/Caption",
            "text": "palette"
        },
        "$:/language/Buttons/Palette/Hint": {
            "title": "$:/language/Buttons/Palette/Hint",
            "text": "Choose the colour palette"
        },
        "$:/language/Buttons/Permalink/Caption": {
            "title": "$:/language/Buttons/Permalink/Caption",
            "text": "permalink"
        },
        "$:/language/Buttons/Permalink/Hint": {
            "title": "$:/language/Buttons/Permalink/Hint",
            "text": "Set browser address bar to a direct link to this tiddler"
        },
        "$:/language/Buttons/Permaview/Caption": {
            "title": "$:/language/Buttons/Permaview/Caption",
            "text": "permaview"
        },
        "$:/language/Buttons/Permaview/Hint": {
            "title": "$:/language/Buttons/Permaview/Hint",
            "text": "Set browser address bar to a direct link to all the tiddlers in this story"
        },
        "$:/language/Buttons/Print/Caption": {
            "title": "$:/language/Buttons/Print/Caption",
            "text": "print page"
        },
        "$:/language/Buttons/Print/Hint": {
            "title": "$:/language/Buttons/Print/Hint",
            "text": "Print the current page"
        },
        "$:/language/Buttons/Refresh/Caption": {
            "title": "$:/language/Buttons/Refresh/Caption",
            "text": "refresh"
        },
        "$:/language/Buttons/Refresh/Hint": {
            "title": "$:/language/Buttons/Refresh/Hint",
            "text": "Perform a full refresh of the wiki"
        },
        "$:/language/Buttons/Save/Caption": {
            "title": "$:/language/Buttons/Save/Caption",
            "text": "ok"
        },
        "$:/language/Buttons/Save/Hint": {
            "title": "$:/language/Buttons/Save/Hint",
            "text": "Confirm changes to this tiddler"
        },
        "$:/language/Buttons/SaveWiki/Caption": {
            "title": "$:/language/Buttons/SaveWiki/Caption",
            "text": "save changes"
        },
        "$:/language/Buttons/SaveWiki/Hint": {
            "title": "$:/language/Buttons/SaveWiki/Hint",
            "text": "Save changes"
        },
        "$:/language/Buttons/StoryView/Caption": {
            "title": "$:/language/Buttons/StoryView/Caption",
            "text": "storyview"
        },
        "$:/language/Buttons/StoryView/Hint": {
            "title": "$:/language/Buttons/StoryView/Hint",
            "text": "Choose the story visualisation"
        },
        "$:/language/Buttons/HideSideBar/Caption": {
            "title": "$:/language/Buttons/HideSideBar/Caption",
            "text": "hide sidebar"
        },
        "$:/language/Buttons/HideSideBar/Hint": {
            "title": "$:/language/Buttons/HideSideBar/Hint",
            "text": "Hide sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Caption": {
            "title": "$:/language/Buttons/ShowSideBar/Caption",
            "text": "show sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Hint": {
            "title": "$:/language/Buttons/ShowSideBar/Hint",
            "text": "Show sidebar"
        },
        "$:/language/Buttons/TagManager/Caption": {
            "title": "$:/language/Buttons/TagManager/Caption",
            "text": "tag manager"
        },
        "$:/language/Buttons/TagManager/Hint": {
            "title": "$:/language/Buttons/TagManager/Hint",
            "text": "Open tag manager"
        },
        "$:/language/Buttons/Timestamp/Caption": {
            "title": "$:/language/Buttons/Timestamp/Caption",
            "text": "timestamps"
        },
        "$:/language/Buttons/Timestamp/Hint": {
            "title": "$:/language/Buttons/Timestamp/Hint",
            "text": "Choose whether modifications update timestamps"
        },
        "$:/language/Buttons/Timestamp/On/Caption": {
            "title": "$:/language/Buttons/Timestamp/On/Caption",
            "text": "timestamps are on"
        },
        "$:/language/Buttons/Timestamp/On/Hint": {
            "title": "$:/language/Buttons/Timestamp/On/Hint",
            "text": "Update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Timestamp/Off/Caption": {
            "title": "$:/language/Buttons/Timestamp/Off/Caption",
            "text": "timestamps are off"
        },
        "$:/language/Buttons/Timestamp/Off/Hint": {
            "title": "$:/language/Buttons/Timestamp/Off/Hint",
            "text": "Don't update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Theme/Caption": {
            "title": "$:/language/Buttons/Theme/Caption",
            "text": "theme"
        },
        "$:/language/Buttons/Theme/Hint": {
            "title": "$:/language/Buttons/Theme/Hint",
            "text": "Choose the display theme"
        },
        "$:/language/Buttons/Bold/Caption": {
            "title": "$:/language/Buttons/Bold/Caption",
            "text": "bold"
        },
        "$:/language/Buttons/Bold/Hint": {
            "title": "$:/language/Buttons/Bold/Hint",
            "text": "Apply bold formatting to selection"
        },
        "$:/language/Buttons/Clear/Caption": {
            "title": "$:/language/Buttons/Clear/Caption",
            "text": "clear"
        },
        "$:/language/Buttons/Clear/Hint": {
            "title": "$:/language/Buttons/Clear/Hint",
            "text": "Clear image to solid colour"
        },
        "$:/language/Buttons/EditorHeight/Caption": {
            "title": "$:/language/Buttons/EditorHeight/Caption",
            "text": "editor height"
        },
        "$:/language/Buttons/EditorHeight/Caption/Auto": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Auto",
            "text": "Automatically adjust height to fit content"
        },
        "$:/language/Buttons/EditorHeight/Caption/Fixed": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
            "text": "Fixed height:"
        },
        "$:/language/Buttons/EditorHeight/Hint": {
            "title": "$:/language/Buttons/EditorHeight/Hint",
            "text": "Choose the height of the text editor"
        },
        "$:/language/Buttons/Excise/Caption": {
            "title": "$:/language/Buttons/Excise/Caption",
            "text": "excise"
        },
        "$:/language/Buttons/Excise/Caption/Excise": {
            "title": "$:/language/Buttons/Excise/Caption/Excise",
            "text": "Perform excision"
        },
        "$:/language/Buttons/Excise/Caption/MacroName": {
            "title": "$:/language/Buttons/Excise/Caption/MacroName",
            "text": "Macro name:"
        },
        "$:/language/Buttons/Excise/Caption/NewTitle": {
            "title": "$:/language/Buttons/Excise/Caption/NewTitle",
            "text": "Title of new tiddler:"
        },
        "$:/language/Buttons/Excise/Caption/Replace": {
            "title": "$:/language/Buttons/Excise/Caption/Replace",
            "text": "Replace excised text with:"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Macro": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
            "text": "macro"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Link": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Link",
            "text": "link"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
            "text": "transclusion"
        },
        "$:/language/Buttons/Excise/Caption/Tag": {
            "title": "$:/language/Buttons/Excise/Caption/Tag",
            "text": "Tag new tiddler with the title of this tiddler"
        },
        "$:/language/Buttons/Excise/Caption/TiddlerExists": {
            "title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
            "text": "Warning: tiddler already exists"
        },
        "$:/language/Buttons/Excise/Hint": {
            "title": "$:/language/Buttons/Excise/Hint",
            "text": "Excise the selected text into a new tiddler"
        },
        "$:/language/Buttons/Heading1/Caption": {
            "title": "$:/language/Buttons/Heading1/Caption",
            "text": "heading 1"
        },
        "$:/language/Buttons/Heading1/Hint": {
            "title": "$:/language/Buttons/Heading1/Hint",
            "text": "Apply heading level 1 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading2/Caption": {
            "title": "$:/language/Buttons/Heading2/Caption",
            "text": "heading 2"
        },
        "$:/language/Buttons/Heading2/Hint": {
            "title": "$:/language/Buttons/Heading2/Hint",
            "text": "Apply heading level 2 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading3/Caption": {
            "title": "$:/language/Buttons/Heading3/Caption",
            "text": "heading 3"
        },
        "$:/language/Buttons/Heading3/Hint": {
            "title": "$:/language/Buttons/Heading3/Hint",
            "text": "Apply heading level 3 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading4/Caption": {
            "title": "$:/language/Buttons/Heading4/Caption",
            "text": "heading 4"
        },
        "$:/language/Buttons/Heading4/Hint": {
            "title": "$:/language/Buttons/Heading4/Hint",
            "text": "Apply heading level 4 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading5/Caption": {
            "title": "$:/language/Buttons/Heading5/Caption",
            "text": "heading 5"
        },
        "$:/language/Buttons/Heading5/Hint": {
            "title": "$:/language/Buttons/Heading5/Hint",
            "text": "Apply heading level 5 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading6/Caption": {
            "title": "$:/language/Buttons/Heading6/Caption",
            "text": "heading 6"
        },
        "$:/language/Buttons/Heading6/Hint": {
            "title": "$:/language/Buttons/Heading6/Hint",
            "text": "Apply heading level 6 formatting to lines containing selection"
        },
        "$:/language/Buttons/Italic/Caption": {
            "title": "$:/language/Buttons/Italic/Caption",
            "text": "italic"
        },
        "$:/language/Buttons/Italic/Hint": {
            "title": "$:/language/Buttons/Italic/Hint",
            "text": "Apply italic formatting to selection"
        },
        "$:/language/Buttons/LineWidth/Caption": {
            "title": "$:/language/Buttons/LineWidth/Caption",
            "text": "line width"
        },
        "$:/language/Buttons/LineWidth/Hint": {
            "title": "$:/language/Buttons/LineWidth/Hint",
            "text": "Set line width for painting"
        },
        "$:/language/Buttons/Link/Caption": {
            "title": "$:/language/Buttons/Link/Caption",
            "text": "link"
        },
        "$:/language/Buttons/Link/Hint": {
            "title": "$:/language/Buttons/Link/Hint",
            "text": "Create wikitext link"
        },
        "$:/language/Buttons/Linkify/Caption": {
            "title": "$:/language/Buttons/Linkify/Caption",
            "text": "wikilink"
        },
        "$:/language/Buttons/Linkify/Hint": {
            "title": "$:/language/Buttons/Linkify/Hint",
            "text": "Wrap selection in square brackets"
        },
        "$:/language/Buttons/ListBullet/Caption": {
            "title": "$:/language/Buttons/ListBullet/Caption",
            "text": "bulleted list"
        },
        "$:/language/Buttons/ListBullet/Hint": {
            "title": "$:/language/Buttons/ListBullet/Hint",
            "text": "Apply bulleted list formatting to lines containing selection"
        },
        "$:/language/Buttons/ListNumber/Caption": {
            "title": "$:/language/Buttons/ListNumber/Caption",
            "text": "numbered list"
        },
        "$:/language/Buttons/ListNumber/Hint": {
            "title": "$:/language/Buttons/ListNumber/Hint",
            "text": "Apply numbered list formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoBlock/Caption": {
            "title": "$:/language/Buttons/MonoBlock/Caption",
            "text": "monospaced block"
        },
        "$:/language/Buttons/MonoBlock/Hint": {
            "title": "$:/language/Buttons/MonoBlock/Hint",
            "text": "Apply monospaced block formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoLine/Caption": {
            "title": "$:/language/Buttons/MonoLine/Caption",
            "text": "monospaced"
        },
        "$:/language/Buttons/MonoLine/Hint": {
            "title": "$:/language/Buttons/MonoLine/Hint",
            "text": "Apply monospaced character formatting to selection"
        },
        "$:/language/Buttons/Opacity/Caption": {
            "title": "$:/language/Buttons/Opacity/Caption",
            "text": "opacity"
        },
        "$:/language/Buttons/Opacity/Hint": {
            "title": "$:/language/Buttons/Opacity/Hint",
            "text": "Set painting opacity"
        },
        "$:/language/Buttons/Paint/Caption": {
            "title": "$:/language/Buttons/Paint/Caption",
            "text": "paint colour"
        },
        "$:/language/Buttons/Paint/Hint": {
            "title": "$:/language/Buttons/Paint/Hint",
            "text": "Set painting colour"
        },
        "$:/language/Buttons/Picture/Caption": {
            "title": "$:/language/Buttons/Picture/Caption",
            "text": "picture"
        },
        "$:/language/Buttons/Picture/Hint": {
            "title": "$:/language/Buttons/Picture/Hint",
            "text": "Insert picture"
        },
        "$:/language/Buttons/Preview/Caption": {
            "title": "$:/language/Buttons/Preview/Caption",
            "text": "preview"
        },
        "$:/language/Buttons/Preview/Hint": {
            "title": "$:/language/Buttons/Preview/Hint",
            "text": "Show preview pane"
        },
        "$:/language/Buttons/PreviewType/Caption": {
            "title": "$:/language/Buttons/PreviewType/Caption",
            "text": "preview type"
        },
        "$:/language/Buttons/PreviewType/Hint": {
            "title": "$:/language/Buttons/PreviewType/Hint",
            "text": "Choose preview type"
        },
        "$:/language/Buttons/Quote/Caption": {
            "title": "$:/language/Buttons/Quote/Caption",
            "text": "quote"
        },
        "$:/language/Buttons/Quote/Hint": {
            "title": "$:/language/Buttons/Quote/Hint",
            "text": "Apply quoted text formatting to lines containing selection"
        },
        "$:/language/Buttons/RotateLeft/Caption": {
            "title": "$:/language/Buttons/RotateLeft/Caption",
            "text": "rotate left"
        },
        "$:/language/Buttons/RotateLeft/Hint": {
            "title": "$:/language/Buttons/RotateLeft/Hint",
            "text": "Rotate image left by 90 degrees"
        },
        "$:/language/Buttons/Size/Caption": {
            "title": "$:/language/Buttons/Size/Caption",
            "text": "image size"
        },
        "$:/language/Buttons/Size/Caption/Height": {
            "title": "$:/language/Buttons/Size/Caption/Height",
            "text": "Height:"
        },
        "$:/language/Buttons/Size/Caption/Resize": {
            "title": "$:/language/Buttons/Size/Caption/Resize",
            "text": "Resize image"
        },
        "$:/language/Buttons/Size/Caption/Width": {
            "title": "$:/language/Buttons/Size/Caption/Width",
            "text": "Width:"
        },
        "$:/language/Buttons/Size/Hint": {
            "title": "$:/language/Buttons/Size/Hint",
            "text": "Set image size"
        },
        "$:/language/Buttons/Stamp/Caption": {
            "title": "$:/language/Buttons/Stamp/Caption",
            "text": "stamp"
        },
        "$:/language/Buttons/Stamp/Caption/New": {
            "title": "$:/language/Buttons/Stamp/Caption/New",
            "text": "Add your own"
        },
        "$:/language/Buttons/Stamp/Hint": {
            "title": "$:/language/Buttons/Stamp/Hint",
            "text": "Insert a preconfigured snippet of text"
        },
        "$:/language/Buttons/Stamp/New/Title": {
            "title": "$:/language/Buttons/Stamp/New/Title",
            "text": "Name as shown in menu"
        },
        "$:/language/Buttons/Stamp/New/Text": {
            "title": "$:/language/Buttons/Stamp/New/Text",
            "text": "Text of snippet. (Remember to add a descriptive title in the caption field)."
        },
        "$:/language/Buttons/Strikethrough/Caption": {
            "title": "$:/language/Buttons/Strikethrough/Caption",
            "text": "strikethrough"
        },
        "$:/language/Buttons/Strikethrough/Hint": {
            "title": "$:/language/Buttons/Strikethrough/Hint",
            "text": "Apply strikethrough formatting to selection"
        },
        "$:/language/Buttons/Subscript/Caption": {
            "title": "$:/language/Buttons/Subscript/Caption",
            "text": "subscript"
        },
        "$:/language/Buttons/Subscript/Hint": {
            "title": "$:/language/Buttons/Subscript/Hint",
            "text": "Apply subscript formatting to selection"
        },
        "$:/language/Buttons/Superscript/Caption": {
            "title": "$:/language/Buttons/Superscript/Caption",
            "text": "superscript"
        },
        "$:/language/Buttons/Superscript/Hint": {
            "title": "$:/language/Buttons/Superscript/Hint",
            "text": "Apply superscript formatting to selection"
        },
        "$:/language/Buttons/Transcludify/Caption": {
            "title": "$:/language/Buttons/Transcludify/Caption",
            "text": "transclusion"
        },
        "$:/language/Buttons/Transcludify/Hint": {
            "title": "$:/language/Buttons/Transcludify/Hint",
            "text": "Wrap selection in curly brackets"
        },
        "$:/language/Buttons/Underline/Caption": {
            "title": "$:/language/Buttons/Underline/Caption",
            "text": "underline"
        },
        "$:/language/Buttons/Underline/Hint": {
            "title": "$:/language/Buttons/Underline/Hint",
            "text": "Apply underline formatting to selection"
        },
        "$:/language/ControlPanel/Advanced/Caption": {
            "title": "$:/language/ControlPanel/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/ControlPanel/Advanced/Hint": {
            "title": "$:/language/ControlPanel/Advanced/Hint",
            "text": "Internal information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/Appearance/Caption": {
            "title": "$:/language/ControlPanel/Appearance/Caption",
            "text": "Appearance"
        },
        "$:/language/ControlPanel/Appearance/Hint": {
            "title": "$:/language/ControlPanel/Appearance/Hint",
            "text": "Ways to customise the appearance of your TiddlyWiki."
        },
        "$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
            "text": "Animation duration:"
        },
        "$:/language/ControlPanel/Basics/Caption": {
            "title": "$:/language/ControlPanel/Basics/Caption",
            "text": "Basics"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
            "text": "Use &#91;&#91;double square brackets&#93;&#93; for titles with spaces. Or you can choose to <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">retain story ordering</$button>"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
            "text": "Default tiddlers:"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
            "text": "Choose which tiddlers are displayed at startup:"
        },
        "$:/language/ControlPanel/Basics/Language/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Language/Prompt",
            "text": "Hello! Current language:"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
            "text": "Title of new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
            "text": "Text for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
            "text": "Tags for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
            "text": "Title of new tiddlers"
        },
        "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
            "text": "Number of overridden shadow tiddlers:"
        },
        "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
            "text": "Number of shadow tiddlers:"
        },
        "$:/language/ControlPanel/Basics/Subtitle/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
            "text": "Subtitle:"
        },
        "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
            "text": "Number of system tiddlers:"
        },
        "$:/language/ControlPanel/Basics/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tags/Prompt",
            "text": "Number of tags:"
        },
        "$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
            "text": "Number of tiddlers:"
        },
        "$:/language/ControlPanel/Basics/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Title/Prompt",
            "text": "Title of this ~TiddlyWiki:"
        },
        "$:/language/ControlPanel/Basics/Username/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Username/Prompt",
            "text": "Username for signing edits:"
        },
        "$:/language/ControlPanel/Basics/Version/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Version/Prompt",
            "text": "~TiddlyWiki version:"
        },
        "$:/language/ControlPanel/EditorTypes/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Caption",
            "text": "Editor Types"
        },
        "$:/language/ControlPanel/EditorTypes/Editor/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
            "text": "Editor"
        },
        "$:/language/ControlPanel/EditorTypes/Hint": {
            "title": "$:/language/ControlPanel/EditorTypes/Hint",
            "text": "These tiddlers determine which editor is used to edit specific tiddler types."
        },
        "$:/language/ControlPanel/EditorTypes/Type/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
            "text": "Type"
        },
        "$:/language/ControlPanel/Info/Caption": {
            "title": "$:/language/ControlPanel/Info/Caption",
            "text": "Info"
        },
        "$:/language/ControlPanel/Info/Hint": {
            "title": "$:/language/ControlPanel/Info/Hint",
            "text": "Information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
            "text": "Type shortcut here"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
            "text": "add shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
            "text": "Keyboard Shortcuts"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
            "text": "Manage keyboard shortcut assignments"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
            "text": "No keyboard shortcuts assigned"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
            "text": "remove keyboard shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
            "text": "All platforms"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
            "text": "Macintosh platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
            "text": "Non-Macintosh platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
            "text": "Linux platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
            "text": "Non-Linux platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
            "text": "Windows platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
            "text": "Non-Windows platforms only"
        },
        "$:/language/ControlPanel/LoadedModules/Caption": {
            "title": "$:/language/ControlPanel/LoadedModules/Caption",
            "text": "Loaded Modules"
        },
        "$:/language/ControlPanel/LoadedModules/Hint": {
            "title": "$:/language/ControlPanel/LoadedModules/Hint",
            "text": "These are the currently loaded tiddler modules linked to their source tiddlers. Any italicised modules lack a source tiddler, typically because they were setup during the boot process."
        },
        "$:/language/ControlPanel/Palette/Caption": {
            "title": "$:/language/ControlPanel/Palette/Caption",
            "text": "Palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
            "text": "clone"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
            "text": "It is recommended that you clone this shadow palette before editing it"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
            "text": "This shadow palette has been modified"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt",
            "text": "Editing"
        },
        "$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
            "text": "reset"
        },
        "$:/language/ControlPanel/Palette/HideEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
            "text": "hide editor"
        },
        "$:/language/ControlPanel/Palette/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Prompt",
            "text": "Current palette:"
        },
        "$:/language/ControlPanel/Palette/ShowEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
            "text": "show editor"
        },
        "$:/language/ControlPanel/Parsing/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Caption",
            "text": "Parsing"
        },
        "$:/language/ControlPanel/Parsing/Hint": {
            "title": "$:/language/ControlPanel/Parsing/Hint",
            "text": "Here you can globally disable/enable wiki parser rules. For changes to take effect, save and reload your wiki. Disabling certain parser rules can prevent <$text text=\"TiddlyWiki\"/> from functioning correctly. Use [[safe mode|https://tiddlywiki.com/#SafeMode]] to restore normal operation."
        },
        "$:/language/ControlPanel/Parsing/Block/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Block/Caption",
            "text": "Block Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Inline/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Inline/Caption",
            "text": "Inline Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Pragma/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
            "text": "Pragma Parse Rules"
        },
        "$:/language/ControlPanel/Plugins/Add/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Add/Caption",
            "text": "Get more plugins"
        },
        "$:/language/ControlPanel/Plugins/Add/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Add/Hint",
            "text": "Install plugins from the official library"
        },
        "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
            "text": "This plugin is already installed at version <$text text=<<installedVersion>>/>"
        },
        "$:/language/ControlPanel/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Disable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Caption",
            "text": "disable"
        },
        "$:/language/ControlPanel/Plugins/Disable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Hint",
            "text": "Disable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Disabled/Status": {
            "title": "$:/language/ControlPanel/Plugins/Disabled/Status",
            "text": "(disabled)"
        },
        "$:/language/ControlPanel/Plugins/Empty/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Empty/Hint",
            "text": "None"
        },
        "$:/language/ControlPanel/Plugins/Enable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Caption",
            "text": "enable"
        },
        "$:/language/ControlPanel/Plugins/Enable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Hint",
            "text": "Enable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Install/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Install/Caption",
            "text": "install"
        },
        "$:/language/ControlPanel/Plugins/Installed/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Installed/Hint",
            "text": "Currently installed plugins:"
        },
        "$:/language/ControlPanel/Plugins/Languages/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Caption",
            "text": "Languages"
        },
        "$:/language/ControlPanel/Plugins/Languages/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Hint",
            "text": "Language pack plugins"
        },
        "$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
            "text": "No ''\"<$text text=<<currentTab>>/>\"'' found"
        },
        "$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
            "text": "This plugin is not currently installed"
        },
        "$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
            "text": "open plugin library"
        },
        "$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
            "text": "close plugin library"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Reinstall/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
            "text": "reinstall"
        },
        "$:/language/ControlPanel/Plugins/Themes/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Caption",
            "text": "Themes"
        },
        "$:/language/ControlPanel/Plugins/Themes/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Hint",
            "text": "Theme plugins"
        },
        "$:/language/ControlPanel/Saving/Caption": {
            "title": "$:/language/ControlPanel/Saving/Caption",
            "text": "Saving"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
            "text": "Permit automatic saving for the download saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
            "text": "Enable Autosave for Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
            "text": "Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
            "text": "These settings apply to the HTML5-compatible download saver"
        },
        "$:/language/ControlPanel/Saving/General/Caption": {
            "title": "$:/language/ControlPanel/Saving/General/Caption",
            "text": "General"
        },
        "$:/language/ControlPanel/Saving/General/Hint": {
            "title": "$:/language/ControlPanel/Saving/General/Hint",
            "text": "These settings apply to all the loaded savers"
        },
        "$:/language/ControlPanel/Saving/Hint": {
            "title": "$:/language/ControlPanel/Saving/Hint",
            "text": "Settings used for saving the entire TiddlyWiki as a single file via a saver module"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
            "text": "Advanced Settings"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
            "text": "Backup Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
            "text": "Backups"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
            "text": "~TiddlySpot Saver"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Description": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
            "text": "These settings are only used when saving to http://tiddlyspot.com or a compatible remote server"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
            "text": "Upload Filename"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
            "text": "~TiddlySpot"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
            "text": "//The server URL defaults to `http://<wikiname>.tiddlyspot.com/store.cgi` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Password": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
            "text": "Password"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
            "text": "Server URL"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
            "text": "Upload Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
            "text": "Wiki Name"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Caption": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
            "text": "Autosave"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
            "text": "Do not save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
            "text": "Save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
            "text": "Attempt to automatically save changes during editing when using a supporting saver"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Caption": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
            "text": "Camel Case Wiki Links"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Hint": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
            "text": "You can globally disable automatic linking of ~CamelCase phrases. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Description": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Description",
            "text": "Enable automatic ~CamelCase linking"
        },
        "$:/language/ControlPanel/Settings/Caption": {
            "title": "$:/language/ControlPanel/Settings/Caption",
            "text": "Settings"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
            "text": "Enable or disable the editor toolbar:"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Description": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
            "text": "Show editor toolbar"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
            "text": "Tiddler Info Panel Mode"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
            "text": "Control when the tiddler info panel closes:"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
            "text": "Tiddler info panel closes automatically"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
            "text": "Tiddler info panel stays open until explicitly closed"
        },
        "$:/language/ControlPanel/Settings/Hint": {
            "title": "$:/language/ControlPanel/Settings/Hint",
            "text": "These settings let you customise the behaviour of TiddlyWiki."
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
            "text": "Navigation Address Bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
            "text": "Behaviour of the browser address bar when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
            "text": "Do not update the address bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
            "text": "Include the target tiddler"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
            "text": "Include the target tiddler and the current story sequence"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
            "text": "Navigation History"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
            "text": "Update browser history when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
            "text": "Do not update history"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
            "text": "Update history"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
            "text": "Performance Instrumentation"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
            "text": "Displays performance statistics in the browser developer console. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
            "text": "Enable performance instrumentation"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
            "text": "Toolbar Button Style"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
            "text": "Choose the style for toolbar buttons:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
            "text": "Borderless"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
            "text": "Boxed"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
            "text": "Rounded"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
            "text": "Toolbar Buttons"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
            "text": "Default toolbar button appearance:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
            "text": "Include icon"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
            "text": "Include text"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
            "text": "Default Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
            "text": "Specify which sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
            "text": "Default More Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
            "text": "Specify which More sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
            "text": "Tiddler Opening Behaviour"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
            "text": "Navigation from //within// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
            "text": "Navigation from //outside// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
            "text": "Open above the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
            "text": "Open below the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
            "text": "Open at the top of the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
            "text": "Open at the bottom of the story river"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
            "text": "Tiddler Titles"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
            "text": "Optionally display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
            "text": "Do not display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
            "text": "Display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
            "text": "Wiki Links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
            "text": "Choose whether to link to tiddlers that do not exist yet"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Description": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
            "text": "Enable links to missing tiddlers"
        },
        "$:/language/ControlPanel/StoryView/Caption": {
            "title": "$:/language/ControlPanel/StoryView/Caption",
            "text": "Story View"
        },
        "$:/language/ControlPanel/StoryView/Prompt": {
            "title": "$:/language/ControlPanel/StoryView/Prompt",
            "text": "Current view:"
        },
        "$:/language/ControlPanel/Stylesheets/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Caption",
            "text": "Stylesheets"
        },
        "$:/language/ControlPanel/Stylesheets/Expand/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
            "text": "Expand All"
        },
        "$:/language/ControlPanel/Stylesheets/Hint": {
            "title": "$:/language/ControlPanel/Stylesheets/Hint",
            "text": "This is the rendered CSS of the current stylesheet tiddlers tagged with <<tag \"$:/tags/Stylesheet\">>"
        },
        "$:/language/ControlPanel/Stylesheets/Restore/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
            "text": "Restore"
        },
        "$:/language/ControlPanel/Theme/Caption": {
            "title": "$:/language/ControlPanel/Theme/Caption",
            "text": "Theme"
        },
        "$:/language/ControlPanel/Theme/Prompt": {
            "title": "$:/language/ControlPanel/Theme/Prompt",
            "text": "Current theme:"
        },
        "$:/language/ControlPanel/TiddlerFields/Caption": {
            "title": "$:/language/ControlPanel/TiddlerFields/Caption",
            "text": "Tiddler Fields"
        },
        "$:/language/ControlPanel/TiddlerFields/Hint": {
            "title": "$:/language/ControlPanel/TiddlerFields/Hint",
            "text": "This is the full set of TiddlerFields in use in this wiki (including system tiddlers but excluding shadow tiddlers)."
        },
        "$:/language/ControlPanel/Toolbars/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/Caption",
            "text": "Toolbars"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
            "text": "Edit Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in edit mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/Hint",
            "text": "Select which toolbar buttons are displayed"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
            "text": "Page Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
            "text": "Choose which buttons are displayed on the main page toolbar. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
            "text": "Choose which buttons are displayed in the editor toolbar. Note that some buttons will only appear when editing tiddlers of a certain type. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
            "text": "View Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in view mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Tools/Download/Full/Caption": {
            "title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
            "text": "Download full wiki"
        },
        "$:/language/Date/DaySuffix/1": {
            "title": "$:/language/Date/DaySuffix/1",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/2": {
            "title": "$:/language/Date/DaySuffix/2",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/3": {
            "title": "$:/language/Date/DaySuffix/3",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/4": {
            "title": "$:/language/Date/DaySuffix/4",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/5": {
            "title": "$:/language/Date/DaySuffix/5",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/6": {
            "title": "$:/language/Date/DaySuffix/6",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/7": {
            "title": "$:/language/Date/DaySuffix/7",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/8": {
            "title": "$:/language/Date/DaySuffix/8",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/9": {
            "title": "$:/language/Date/DaySuffix/9",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/10": {
            "title": "$:/language/Date/DaySuffix/10",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/11": {
            "title": "$:/language/Date/DaySuffix/11",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/12": {
            "title": "$:/language/Date/DaySuffix/12",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/13": {
            "title": "$:/language/Date/DaySuffix/13",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/14": {
            "title": "$:/language/Date/DaySuffix/14",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/15": {
            "title": "$:/language/Date/DaySuffix/15",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/16": {
            "title": "$:/language/Date/DaySuffix/16",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/17": {
            "title": "$:/language/Date/DaySuffix/17",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/18": {
            "title": "$:/language/Date/DaySuffix/18",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/19": {
            "title": "$:/language/Date/DaySuffix/19",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/20": {
            "title": "$:/language/Date/DaySuffix/20",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/21": {
            "title": "$:/language/Date/DaySuffix/21",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/22": {
            "title": "$:/language/Date/DaySuffix/22",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/23": {
            "title": "$:/language/Date/DaySuffix/23",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/24": {
            "title": "$:/language/Date/DaySuffix/24",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/25": {
            "title": "$:/language/Date/DaySuffix/25",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/26": {
            "title": "$:/language/Date/DaySuffix/26",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/27": {
            "title": "$:/language/Date/DaySuffix/27",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/28": {
            "title": "$:/language/Date/DaySuffix/28",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/29": {
            "title": "$:/language/Date/DaySuffix/29",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/30": {
            "title": "$:/language/Date/DaySuffix/30",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/31": {
            "title": "$:/language/Date/DaySuffix/31",
            "text": "st"
        },
        "$:/language/Date/Long/Day/0": {
            "title": "$:/language/Date/Long/Day/0",
            "text": "Sunday"
        },
        "$:/language/Date/Long/Day/1": {
            "title": "$:/language/Date/Long/Day/1",
            "text": "Monday"
        },
        "$:/language/Date/Long/Day/2": {
            "title": "$:/language/Date/Long/Day/2",
            "text": "Tuesday"
        },
        "$:/language/Date/Long/Day/3": {
            "title": "$:/language/Date/Long/Day/3",
            "text": "Wednesday"
        },
        "$:/language/Date/Long/Day/4": {
            "title": "$:/language/Date/Long/Day/4",
            "text": "Thursday"
        },
        "$:/language/Date/Long/Day/5": {
            "title": "$:/language/Date/Long/Day/5",
            "text": "Friday"
        },
        "$:/language/Date/Long/Day/6": {
            "title": "$:/language/Date/Long/Day/6",
            "text": "Saturday"
        },
        "$:/language/Date/Long/Month/1": {
            "title": "$:/language/Date/Long/Month/1",
            "text": "January"
        },
        "$:/language/Date/Long/Month/2": {
            "title": "$:/language/Date/Long/Month/2",
            "text": "February"
        },
        "$:/language/Date/Long/Month/3": {
            "title": "$:/language/Date/Long/Month/3",
            "text": "March"
        },
        "$:/language/Date/Long/Month/4": {
            "title": "$:/language/Date/Long/Month/4",
            "text": "April"
        },
        "$:/language/Date/Long/Month/5": {
            "title": "$:/language/Date/Long/Month/5",
            "text": "May"
        },
        "$:/language/Date/Long/Month/6": {
            "title": "$:/language/Date/Long/Month/6",
            "text": "June"
        },
        "$:/language/Date/Long/Month/7": {
            "title": "$:/language/Date/Long/Month/7",
            "text": "July"
        },
        "$:/language/Date/Long/Month/8": {
            "title": "$:/language/Date/Long/Month/8",
            "text": "August"
        },
        "$:/language/Date/Long/Month/9": {
            "title": "$:/language/Date/Long/Month/9",
            "text": "September"
        },
        "$:/language/Date/Long/Month/10": {
            "title": "$:/language/Date/Long/Month/10",
            "text": "October"
        },
        "$:/language/Date/Long/Month/11": {
            "title": "$:/language/Date/Long/Month/11",
            "text": "November"
        },
        "$:/language/Date/Long/Month/12": {
            "title": "$:/language/Date/Long/Month/12",
            "text": "December"
        },
        "$:/language/Date/Period/am": {
            "title": "$:/language/Date/Period/am",
            "text": "am"
        },
        "$:/language/Date/Period/pm": {
            "title": "$:/language/Date/Period/pm",
            "text": "pm"
        },
        "$:/language/Date/Short/Day/0": {
            "title": "$:/language/Date/Short/Day/0",
            "text": "Sun"
        },
        "$:/language/Date/Short/Day/1": {
            "title": "$:/language/Date/Short/Day/1",
            "text": "Mon"
        },
        "$:/language/Date/Short/Day/2": {
            "title": "$:/language/Date/Short/Day/2",
            "text": "Tue"
        },
        "$:/language/Date/Short/Day/3": {
            "title": "$:/language/Date/Short/Day/3",
            "text": "Wed"
        },
        "$:/language/Date/Short/Day/4": {
            "title": "$:/language/Date/Short/Day/4",
            "text": "Thu"
        },
        "$:/language/Date/Short/Day/5": {
            "title": "$:/language/Date/Short/Day/5",
            "text": "Fri"
        },
        "$:/language/Date/Short/Day/6": {
            "title": "$:/language/Date/Short/Day/6",
            "text": "Sat"
        },
        "$:/language/Date/Short/Month/1": {
            "title": "$:/language/Date/Short/Month/1",
            "text": "Jan"
        },
        "$:/language/Date/Short/Month/2": {
            "title": "$:/language/Date/Short/Month/2",
            "text": "Feb"
        },
        "$:/language/Date/Short/Month/3": {
            "title": "$:/language/Date/Short/Month/3",
            "text": "Mar"
        },
        "$:/language/Date/Short/Month/4": {
            "title": "$:/language/Date/Short/Month/4",
            "text": "Apr"
        },
        "$:/language/Date/Short/Month/5": {
            "title": "$:/language/Date/Short/Month/5",
            "text": "May"
        },
        "$:/language/Date/Short/Month/6": {
            "title": "$:/language/Date/Short/Month/6",
            "text": "Jun"
        },
        "$:/language/Date/Short/Month/7": {
            "title": "$:/language/Date/Short/Month/7",
            "text": "Jul"
        },
        "$:/language/Date/Short/Month/8": {
            "title": "$:/language/Date/Short/Month/8",
            "text": "Aug"
        },
        "$:/language/Date/Short/Month/9": {
            "title": "$:/language/Date/Short/Month/9",
            "text": "Sep"
        },
        "$:/language/Date/Short/Month/10": {
            "title": "$:/language/Date/Short/Month/10",
            "text": "Oct"
        },
        "$:/language/Date/Short/Month/11": {
            "title": "$:/language/Date/Short/Month/11",
            "text": "Nov"
        },
        "$:/language/Date/Short/Month/12": {
            "title": "$:/language/Date/Short/Month/12",
            "text": "Dec"
        },
        "$:/language/RelativeDate/Future/Days": {
            "title": "$:/language/RelativeDate/Future/Days",
            "text": "<<period>> days from now"
        },
        "$:/language/RelativeDate/Future/Hours": {
            "title": "$:/language/RelativeDate/Future/Hours",
            "text": "<<period>> hours from now"
        },
        "$:/language/RelativeDate/Future/Minutes": {
            "title": "$:/language/RelativeDate/Future/Minutes",
            "text": "<<period>> minutes from now"
        },
        "$:/language/RelativeDate/Future/Months": {
            "title": "$:/language/RelativeDate/Future/Months",
            "text": "<<period>> months from now"
        },
        "$:/language/RelativeDate/Future/Second": {
            "title": "$:/language/RelativeDate/Future/Second",
            "text": "1 second from now"
        },
        "$:/language/RelativeDate/Future/Seconds": {
            "title": "$:/language/RelativeDate/Future/Seconds",
            "text": "<<period>> seconds from now"
        },
        "$:/language/RelativeDate/Future/Years": {
            "title": "$:/language/RelativeDate/Future/Years",
            "text": "<<period>> years from now"
        },
        "$:/language/RelativeDate/Past/Days": {
            "title": "$:/language/RelativeDate/Past/Days",
            "text": "<<period>> days ago"
        },
        "$:/language/RelativeDate/Past/Hours": {
            "title": "$:/language/RelativeDate/Past/Hours",
            "text": "<<period>> hours ago"
        },
        "$:/language/RelativeDate/Past/Minutes": {
            "title": "$:/language/RelativeDate/Past/Minutes",
            "text": "<<period>> minutes ago"
        },
        "$:/language/RelativeDate/Past/Months": {
            "title": "$:/language/RelativeDate/Past/Months",
            "text": "<<period>> months ago"
        },
        "$:/language/RelativeDate/Past/Second": {
            "title": "$:/language/RelativeDate/Past/Second",
            "text": "1 second ago"
        },
        "$:/language/RelativeDate/Past/Seconds": {
            "title": "$:/language/RelativeDate/Past/Seconds",
            "text": "<<period>> seconds ago"
        },
        "$:/language/RelativeDate/Past/Years": {
            "title": "$:/language/RelativeDate/Past/Years",
            "text": "<<period>> years ago"
        },
        "$:/language/Docs/ModuleTypes/allfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/allfilteroperator",
            "text": "A sub-operator for the ''all'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/animation": {
            "title": "$:/language/Docs/ModuleTypes/animation",
            "text": "Animations that may be used with the RevealWidget."
        },
        "$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
            "text": "A bitmap editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/command": {
            "title": "$:/language/Docs/ModuleTypes/command",
            "text": "Commands that can be executed under Node.js."
        },
        "$:/language/Docs/ModuleTypes/config": {
            "title": "$:/language/Docs/ModuleTypes/config",
            "text": "Data to be inserted into `$tw.config`."
        },
        "$:/language/Docs/ModuleTypes/filteroperator": {
            "title": "$:/language/Docs/ModuleTypes/filteroperator",
            "text": "Individual filter operator methods."
        },
        "$:/language/Docs/ModuleTypes/global": {
            "title": "$:/language/Docs/ModuleTypes/global",
            "text": "Global data to be inserted into `$tw`."
        },
        "$:/language/Docs/ModuleTypes/info": {
            "title": "$:/language/Docs/ModuleTypes/info",
            "text": "Publishes system information via the [[$:/temp/info-plugin]] pseudo-plugin."
        },
        "$:/language/Docs/ModuleTypes/isfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/isfilteroperator",
            "text": "Operands for the ''is'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/library": {
            "title": "$:/language/Docs/ModuleTypes/library",
            "text": "Generic module type for general purpose JavaScript modules."
        },
        "$:/language/Docs/ModuleTypes/macro": {
            "title": "$:/language/Docs/ModuleTypes/macro",
            "text": "JavaScript macro definitions."
        },
        "$:/language/Docs/ModuleTypes/parser": {
            "title": "$:/language/Docs/ModuleTypes/parser",
            "text": "Parsers for different content types."
        },
        "$:/language/Docs/ModuleTypes/saver": {
            "title": "$:/language/Docs/ModuleTypes/saver",
            "text": "Savers handle different methods for saving files from the browser."
        },
        "$:/language/Docs/ModuleTypes/startup": {
            "title": "$:/language/Docs/ModuleTypes/startup",
            "text": "Startup functions."
        },
        "$:/language/Docs/ModuleTypes/storyview": {
            "title": "$:/language/Docs/ModuleTypes/storyview",
            "text": "Story views customise the animation and behaviour of list widgets."
        },
        "$:/language/Docs/ModuleTypes/texteditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/texteditoroperation",
            "text": "A text editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
            "text": "Converts different content types into tiddlers."
        },
        "$:/language/Docs/ModuleTypes/tiddlerfield": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerfield",
            "text": "Defines the behaviour of an individual tiddler field."
        },
        "$:/language/Docs/ModuleTypes/tiddlermethod": {
            "title": "$:/language/Docs/ModuleTypes/tiddlermethod",
            "text": "Adds methods to the `$tw.Tiddler` prototype."
        },
        "$:/language/Docs/ModuleTypes/upgrader": {
            "title": "$:/language/Docs/ModuleTypes/upgrader",
            "text": "Applies upgrade processing to tiddlers during an upgrade/import."
        },
        "$:/language/Docs/ModuleTypes/utils": {
            "title": "$:/language/Docs/ModuleTypes/utils",
            "text": "Adds methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/utils-node": {
            "title": "$:/language/Docs/ModuleTypes/utils-node",
            "text": "Adds Node.js-specific methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/widget": {
            "title": "$:/language/Docs/ModuleTypes/widget",
            "text": "Widgets encapsulate DOM rendering and refreshing."
        },
        "$:/language/Docs/ModuleTypes/wikimethod": {
            "title": "$:/language/Docs/ModuleTypes/wikimethod",
            "text": "Adds methods to `$tw.Wiki`."
        },
        "$:/language/Docs/ModuleTypes/wikirule": {
            "title": "$:/language/Docs/ModuleTypes/wikirule",
            "text": "Individual parser rules for the main WikiText parser."
        },
        "$:/language/Docs/PaletteColours/alert-background": {
            "title": "$:/language/Docs/PaletteColours/alert-background",
            "text": "Alert background"
        },
        "$:/language/Docs/PaletteColours/alert-border": {
            "title": "$:/language/Docs/PaletteColours/alert-border",
            "text": "Alert border"
        },
        "$:/language/Docs/PaletteColours/alert-highlight": {
            "title": "$:/language/Docs/PaletteColours/alert-highlight",
            "text": "Alert highlight"
        },
        "$:/language/Docs/PaletteColours/alert-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
            "text": "Alert muted foreground"
        },
        "$:/language/Docs/PaletteColours/background": {
            "title": "$:/language/Docs/PaletteColours/background",
            "text": "General background"
        },
        "$:/language/Docs/PaletteColours/blockquote-bar": {
            "title": "$:/language/Docs/PaletteColours/blockquote-bar",
            "text": "Blockquote bar"
        },
        "$:/language/Docs/PaletteColours/button-background": {
            "title": "$:/language/Docs/PaletteColours/button-background",
            "text": "Default button background"
        },
        "$:/language/Docs/PaletteColours/button-border": {
            "title": "$:/language/Docs/PaletteColours/button-border",
            "text": "Default button border"
        },
        "$:/language/Docs/PaletteColours/button-foreground": {
            "title": "$:/language/Docs/PaletteColours/button-foreground",
            "text": "Default button foreground"
        },
        "$:/language/Docs/PaletteColours/dirty-indicator": {
            "title": "$:/language/Docs/PaletteColours/dirty-indicator",
            "text": "Unsaved changes indicator"
        },
        "$:/language/Docs/PaletteColours/code-background": {
            "title": "$:/language/Docs/PaletteColours/code-background",
            "text": "Code background"
        },
        "$:/language/Docs/PaletteColours/code-border": {
            "title": "$:/language/Docs/PaletteColours/code-border",
            "text": "Code border"
        },
        "$:/language/Docs/PaletteColours/code-foreground": {
            "title": "$:/language/Docs/PaletteColours/code-foreground",
            "text": "Code foreground"
        },
        "$:/language/Docs/PaletteColours/download-background": {
            "title": "$:/language/Docs/PaletteColours/download-background",
            "text": "Download button background"
        },
        "$:/language/Docs/PaletteColours/download-foreground": {
            "title": "$:/language/Docs/PaletteColours/download-foreground",
            "text": "Download button foreground"
        },
        "$:/language/Docs/PaletteColours/dragger-background": {
            "title": "$:/language/Docs/PaletteColours/dragger-background",
            "text": "Dragger background"
        },
        "$:/language/Docs/PaletteColours/dragger-foreground": {
            "title": "$:/language/Docs/PaletteColours/dragger-foreground",
            "text": "Dragger foreground"
        },
        "$:/language/Docs/PaletteColours/dropdown-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-background",
            "text": "Dropdown background"
        },
        "$:/language/Docs/PaletteColours/dropdown-border": {
            "title": "$:/language/Docs/PaletteColours/dropdown-border",
            "text": "Dropdown border"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
            "text": "Dropdown tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
            "text": "Dropdown tab background"
        },
        "$:/language/Docs/PaletteColours/dropzone-background": {
            "title": "$:/language/Docs/PaletteColours/dropzone-background",
            "text": "Dropzone background"
        },
        "$:/language/Docs/PaletteColours/external-link-background-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-hover",
            "text": "External link background hover"
        },
        "$:/language/Docs/PaletteColours/external-link-background-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-visited",
            "text": "External link background visited"
        },
        "$:/language/Docs/PaletteColours/external-link-background": {
            "title": "$:/language/Docs/PaletteColours/external-link-background",
            "text": "External link background"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
            "text": "External link foreground hover"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
            "text": "External link foreground visited"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground",
            "text": "External link foreground"
        },
        "$:/language/Docs/PaletteColours/foreground": {
            "title": "$:/language/Docs/PaletteColours/foreground",
            "text": "General foreground"
        },
        "$:/language/Docs/PaletteColours/message-background": {
            "title": "$:/language/Docs/PaletteColours/message-background",
            "text": "Message box background"
        },
        "$:/language/Docs/PaletteColours/message-border": {
            "title": "$:/language/Docs/PaletteColours/message-border",
            "text": "Message box border"
        },
        "$:/language/Docs/PaletteColours/message-foreground": {
            "title": "$:/language/Docs/PaletteColours/message-foreground",
            "text": "Message box foreground"
        },
        "$:/language/Docs/PaletteColours/modal-backdrop": {
            "title": "$:/language/Docs/PaletteColours/modal-backdrop",
            "text": "Modal backdrop"
        },
        "$:/language/Docs/PaletteColours/modal-background": {
            "title": "$:/language/Docs/PaletteColours/modal-background",
            "text": "Modal background"
        },
        "$:/language/Docs/PaletteColours/modal-border": {
            "title": "$:/language/Docs/PaletteColours/modal-border",
            "text": "Modal border"
        },
        "$:/language/Docs/PaletteColours/modal-footer-background": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-background",
            "text": "Modal footer background"
        },
        "$:/language/Docs/PaletteColours/modal-footer-border": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-border",
            "text": "Modal footer border"
        },
        "$:/language/Docs/PaletteColours/modal-header-border": {
            "title": "$:/language/Docs/PaletteColours/modal-header-border",
            "text": "Modal header border"
        },
        "$:/language/Docs/PaletteColours/muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/muted-foreground",
            "text": "General muted foreground"
        },
        "$:/language/Docs/PaletteColours/notification-background": {
            "title": "$:/language/Docs/PaletteColours/notification-background",
            "text": "Notification background"
        },
        "$:/language/Docs/PaletteColours/notification-border": {
            "title": "$:/language/Docs/PaletteColours/notification-border",
            "text": "Notification border"
        },
        "$:/language/Docs/PaletteColours/page-background": {
            "title": "$:/language/Docs/PaletteColours/page-background",
            "text": "Page background"
        },
        "$:/language/Docs/PaletteColours/pre-background": {
            "title": "$:/language/Docs/PaletteColours/pre-background",
            "text": "Preformatted code background"
        },
        "$:/language/Docs/PaletteColours/pre-border": {
            "title": "$:/language/Docs/PaletteColours/pre-border",
            "text": "Preformatted code border"
        },
        "$:/language/Docs/PaletteColours/primary": {
            "title": "$:/language/Docs/PaletteColours/primary",
            "text": "General primary"
        },
        "$:/language/Docs/PaletteColours/sidebar-button-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
            "text": "Sidebar button foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
            "text": "Sidebar controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
            "text": "Sidebar controls foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
            "text": "Sidebar foreground shadow"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground",
            "text": "Sidebar foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
            "text": "Sidebar muted foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
            "text": "Sidebar muted foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
            "text": "Sidebar tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
            "text": "Sidebar tab background"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
            "text": "Sidebar tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
            "text": "Sidebar tab border"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-divider": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
            "text": "Sidebar tab divider"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
            "text": "Sidebar tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
            "text": "Sidebar tab foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
            "text": "Sidebar tiddler link foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
            "text": "Sidebar tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/site-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/site-title-foreground",
            "text": "Site title foreground"
        },
        "$:/language/Docs/PaletteColours/static-alert-foreground": {
            "title": "$:/language/Docs/PaletteColours/static-alert-foreground",
            "text": "Static alert foreground"
        },
        "$:/language/Docs/PaletteColours/tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-background-selected",
            "text": "Tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-background": {
            "title": "$:/language/Docs/PaletteColours/tab-background",
            "text": "Tab background"
        },
        "$:/language/Docs/PaletteColours/tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-border-selected",
            "text": "Tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-border": {
            "title": "$:/language/Docs/PaletteColours/tab-border",
            "text": "Tab border"
        },
        "$:/language/Docs/PaletteColours/tab-divider": {
            "title": "$:/language/Docs/PaletteColours/tab-divider",
            "text": "Tab divider"
        },
        "$:/language/Docs/PaletteColours/tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
            "text": "Tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground",
            "text": "Tab foreground"
        },
        "$:/language/Docs/PaletteColours/table-border": {
            "title": "$:/language/Docs/PaletteColours/table-border",
            "text": "Table border"
        },
        "$:/language/Docs/PaletteColours/table-footer-background": {
            "title": "$:/language/Docs/PaletteColours/table-footer-background",
            "text": "Table footer background"
        },
        "$:/language/Docs/PaletteColours/table-header-background": {
            "title": "$:/language/Docs/PaletteColours/table-header-background",
            "text": "Table header background"
        },
        "$:/language/Docs/PaletteColours/tag-background": {
            "title": "$:/language/Docs/PaletteColours/tag-background",
            "text": "Tag background"
        },
        "$:/language/Docs/PaletteColours/tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/tag-foreground",
            "text": "Tag foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-background",
            "text": "Tiddler background"
        },
        "$:/language/Docs/PaletteColours/tiddler-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-border",
            "text": "Tiddler border"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
            "text": "Tiddler controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
            "text": "Tiddler controls foreground for selected controls"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
            "text": "Tiddler controls foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
            "text": "Tiddler editor background"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
            "text": "Tiddler editor border image"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
            "text": "Tiddler editor border"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
            "text": "Tiddler editor background for even fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
            "text": "Tiddler editor background for odd fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-background",
            "text": "Tiddler info panel background"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-border",
            "text": "Tiddler info panel border"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
            "text": "Tiddler info panel tab background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-background",
            "text": "Tiddler link background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
            "text": "Tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
            "text": "Tiddler subtitle foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
            "text": "Tiddler title foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-new-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-new-button",
            "text": "Toolbar 'new tiddler' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-options-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-options-button",
            "text": "Toolbar 'options' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-save-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-save-button",
            "text": "Toolbar 'save' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-info-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-info-button",
            "text": "Toolbar 'info' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-edit-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
            "text": "Toolbar 'edit' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-close-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-close-button",
            "text": "Toolbar 'close' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-delete-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
            "text": "Toolbar 'delete' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-cancel-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
            "text": "Toolbar 'cancel' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-done-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-done-button",
            "text": "Toolbar 'done' button foreground"
        },
        "$:/language/Docs/PaletteColours/untagged-background": {
            "title": "$:/language/Docs/PaletteColours/untagged-background",
            "text": "Untagged pill background"
        },
        "$:/language/Docs/PaletteColours/very-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/very-muted-foreground",
            "text": "Very muted foreground"
        },
        "$:/language/EditTemplate/Body/External/Hint": {
            "title": "$:/language/EditTemplate/Body/External/Hint",
            "text": "This tiddler shows content stored outside of the main TiddlyWiki file. You can edit the tags and fields but cannot directly edit the content itself"
        },
        "$:/language/EditTemplate/Body/Placeholder": {
            "title": "$:/language/EditTemplate/Body/Placeholder",
            "text": "Type the text for this tiddler"
        },
        "$:/language/EditTemplate/Body/Preview/Type/Output": {
            "title": "$:/language/EditTemplate/Body/Preview/Type/Output",
            "text": "output"
        },
        "$:/language/EditTemplate/Field/Remove/Caption": {
            "title": "$:/language/EditTemplate/Field/Remove/Caption",
            "text": "remove field"
        },
        "$:/language/EditTemplate/Field/Remove/Hint": {
            "title": "$:/language/EditTemplate/Field/Remove/Hint",
            "text": "Remove field"
        },
        "$:/language/EditTemplate/Field/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Caption",
            "text": "field list"
        },
        "$:/language/EditTemplate/Field/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Hint",
            "text": "Show field list"
        },
        "$:/language/EditTemplate/Fields/Add/Button": {
            "title": "$:/language/EditTemplate/Fields/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
            "text": "field name"
        },
        "$:/language/EditTemplate/Fields/Add/Prompt": {
            "title": "$:/language/EditTemplate/Fields/Add/Prompt",
            "text": "Add a new field:"
        },
        "$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
            "text": "field value"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/System": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
            "text": "System fields"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/User": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
            "text": "User fields"
        },
        "$:/language/EditTemplate/Shadow/Warning": {
            "title": "$:/language/EditTemplate/Shadow/Warning",
            "text": "This is a shadow tiddler. Any changes you make will override the default version from the plugin <<pluginLink>>"
        },
        "$:/language/EditTemplate/Shadow/OverriddenWarning": {
            "title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
            "text": "This is a modified shadow tiddler. You can revert to the default version in the plugin <<pluginLink>> by deleting this tiddler"
        },
        "$:/language/EditTemplate/Tags/Add/Button": {
            "title": "$:/language/EditTemplate/Tags/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Tags/Add/Placeholder": {
            "title": "$:/language/EditTemplate/Tags/Add/Placeholder",
            "text": "tag name"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
            "text": "tag list"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
            "text": "Show tag list"
        },
        "$:/language/EditTemplate/Title/BadCharacterWarning": {
            "title": "$:/language/EditTemplate/Title/BadCharacterWarning",
            "text": "Warning: avoid using any of the characters <<bad-chars>> in tiddler titles"
        },
        "$:/language/EditTemplate/Title/Exists/Prompt": {
            "title": "$:/language/EditTemplate/Title/Exists/Prompt",
            "text": "Target tiddler already exists"
        },
        "$:/language/EditTemplate/Title/Relink/Prompt": {
            "title": "$:/language/EditTemplate/Title/Relink/Prompt",
            "text": "Update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' in the //tags// and //list// fields of other tiddlers"
        },
        "$:/language/EditTemplate/Type/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Caption",
            "text": "content type list"
        },
        "$:/language/EditTemplate/Type/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Hint",
            "text": "Show content type list"
        },
        "$:/language/EditTemplate/Type/Delete/Caption": {
            "title": "$:/language/EditTemplate/Type/Delete/Caption",
            "text": "delete content type"
        },
        "$:/language/EditTemplate/Type/Delete/Hint": {
            "title": "$:/language/EditTemplate/Type/Delete/Hint",
            "text": "Delete content type"
        },
        "$:/language/EditTemplate/Type/Placeholder": {
            "title": "$:/language/EditTemplate/Type/Placeholder",
            "text": "content type"
        },
        "$:/language/EditTemplate/Type/Prompt": {
            "title": "$:/language/EditTemplate/Type/Prompt",
            "text": "Type:"
        },
        "$:/language/Exporters/StaticRiver": {
            "title": "$:/language/Exporters/StaticRiver",
            "text": "Static HTML"
        },
        "$:/language/Exporters/JsonFile": {
            "title": "$:/language/Exporters/JsonFile",
            "text": "JSON file"
        },
        "$:/language/Exporters/CsvFile": {
            "title": "$:/language/Exporters/CsvFile",
            "text": "CSV file"
        },
        "$:/language/Exporters/TidFile": {
            "title": "$:/language/Exporters/TidFile",
            "text": "\".tid\" file"
        },
        "$:/language/Docs/Fields/_canonical_uri": {
            "title": "$:/language/Docs/Fields/_canonical_uri",
            "text": "The full URI of an external image tiddler"
        },
        "$:/language/Docs/Fields/bag": {
            "title": "$:/language/Docs/Fields/bag",
            "text": "The name of the bag from which a tiddler came"
        },
        "$:/language/Docs/Fields/caption": {
            "title": "$:/language/Docs/Fields/caption",
            "text": "The text to be displayed on a tab or button"
        },
        "$:/language/Docs/Fields/color": {
            "title": "$:/language/Docs/Fields/color",
            "text": "The CSS color value associated with a tiddler"
        },
        "$:/language/Docs/Fields/component": {
            "title": "$:/language/Docs/Fields/component",
            "text": "The name of the component responsible for an [[alert tiddler|AlertMechanism]]"
        },
        "$:/language/Docs/Fields/current-tiddler": {
            "title": "$:/language/Docs/Fields/current-tiddler",
            "text": "Used to cache the top tiddler in a [[history list|HistoryMechanism]]"
        },
        "$:/language/Docs/Fields/created": {
            "title": "$:/language/Docs/Fields/created",
            "text": "The date a tiddler was created"
        },
        "$:/language/Docs/Fields/creator": {
            "title": "$:/language/Docs/Fields/creator",
            "text": "The name of the person who created a tiddler"
        },
        "$:/language/Docs/Fields/dependents": {
            "title": "$:/language/Docs/Fields/dependents",
            "text": "For a plugin, lists the dependent plugin titles"
        },
        "$:/language/Docs/Fields/description": {
            "title": "$:/language/Docs/Fields/description",
            "text": "The descriptive text for a plugin, or a modal dialogue"
        },
        "$:/language/Docs/Fields/draft.of": {
            "title": "$:/language/Docs/Fields/draft.of",
            "text": "For draft tiddlers, contains the title of the tiddler of which this is a draft"
        },
        "$:/language/Docs/Fields/draft.title": {
            "title": "$:/language/Docs/Fields/draft.title",
            "text": "For draft tiddlers, contains the proposed new title of the tiddler"
        },
        "$:/language/Docs/Fields/footer": {
            "title": "$:/language/Docs/Fields/footer",
            "text": "The footer text for a wizard"
        },
        "$:/language/Docs/Fields/hack-to-give-us-something-to-compare-against": {
            "title": "$:/language/Docs/Fields/hack-to-give-us-something-to-compare-against",
            "text": "A temporary storage field used in [[$:/core/templates/static.content]]"
        },
        "$:/language/Docs/Fields/icon": {
            "title": "$:/language/Docs/Fields/icon",
            "text": "The title of the tiddler containing the icon associated with a tiddler"
        },
        "$:/language/Docs/Fields/library": {
            "title": "$:/language/Docs/Fields/library",
            "text": "If set to \"yes\" indicates that a tiddler should be saved as a JavaScript library"
        },
        "$:/language/Docs/Fields/list": {
            "title": "$:/language/Docs/Fields/list",
            "text": "An ordered list of tiddler titles associated with a tiddler"
        },
        "$:/language/Docs/Fields/list-before": {
            "title": "$:/language/Docs/Fields/list-before",
            "text": "If set, the title of a tiddler before which this tiddler should be added to the ordered list of tiddler titles, or at the start of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/list-after": {
            "title": "$:/language/Docs/Fields/list-after",
            "text": "If set, the title of the tiddler after which this tiddler should be added to the ordered list of tiddler titles, or at the end of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/modified": {
            "title": "$:/language/Docs/Fields/modified",
            "text": "The date and time at which a tiddler was last modified"
        },
        "$:/language/Docs/Fields/modifier": {
            "title": "$:/language/Docs/Fields/modifier",
            "text": "The tiddler title associated with the person who last modified a tiddler"
        },
        "$:/language/Docs/Fields/name": {
            "title": "$:/language/Docs/Fields/name",
            "text": "The human readable name associated with a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-priority": {
            "title": "$:/language/Docs/Fields/plugin-priority",
            "text": "A numerical value indicating the priority of a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-type": {
            "title": "$:/language/Docs/Fields/plugin-type",
            "text": "The type of plugin in a plugin tiddler"
        },
        "$:/language/Docs/Fields/revision": {
            "title": "$:/language/Docs/Fields/revision",
            "text": "The revision of the tiddler held at the server"
        },
        "$:/language/Docs/Fields/released": {
            "title": "$:/language/Docs/Fields/released",
            "text": "Date of a TiddlyWiki release"
        },
        "$:/language/Docs/Fields/source": {
            "title": "$:/language/Docs/Fields/source",
            "text": "The source URL associated with a tiddler"
        },
        "$:/language/Docs/Fields/subtitle": {
            "title": "$:/language/Docs/Fields/subtitle",
            "text": "The subtitle text for a wizard"
        },
        "$:/language/Docs/Fields/tags": {
            "title": "$:/language/Docs/Fields/tags",
            "text": "A list of tags associated with a tiddler"
        },
        "$:/language/Docs/Fields/text": {
            "title": "$:/language/Docs/Fields/text",
            "text": "The body text of a tiddler"
        },
        "$:/language/Docs/Fields/title": {
            "title": "$:/language/Docs/Fields/title",
            "text": "The unique name of a tiddler"
        },
        "$:/language/Docs/Fields/type": {
            "title": "$:/language/Docs/Fields/type",
            "text": "The content type of a tiddler"
        },
        "$:/language/Docs/Fields/version": {
            "title": "$:/language/Docs/Fields/version",
            "text": "Version information for a plugin"
        },
        "$:/language/Filters/AllTiddlers": {
            "title": "$:/language/Filters/AllTiddlers",
            "text": "All tiddlers except system tiddlers"
        },
        "$:/language/Filters/RecentSystemTiddlers": {
            "title": "$:/language/Filters/RecentSystemTiddlers",
            "text": "Recently modified tiddlers, including system tiddlers"
        },
        "$:/language/Filters/RecentTiddlers": {
            "title": "$:/language/Filters/RecentTiddlers",
            "text": "Recently modified tiddlers"
        },
        "$:/language/Filters/AllTags": {
            "title": "$:/language/Filters/AllTags",
            "text": "All tags except system tags"
        },
        "$:/language/Filters/Missing": {
            "title": "$:/language/Filters/Missing",
            "text": "Missing tiddlers"
        },
        "$:/language/Filters/Drafts": {
            "title": "$:/language/Filters/Drafts",
            "text": "Draft tiddlers"
        },
        "$:/language/Filters/Orphans": {
            "title": "$:/language/Filters/Orphans",
            "text": "Orphan tiddlers"
        },
        "$:/language/Filters/SystemTiddlers": {
            "title": "$:/language/Filters/SystemTiddlers",
            "text": "System tiddlers"
        },
        "$:/language/Filters/ShadowTiddlers": {
            "title": "$:/language/Filters/ShadowTiddlers",
            "text": "Shadow tiddlers"
        },
        "$:/language/Filters/OverriddenShadowTiddlers": {
            "title": "$:/language/Filters/OverriddenShadowTiddlers",
            "text": "Overridden shadow tiddlers"
        },
        "$:/language/Filters/SystemTags": {
            "title": "$:/language/Filters/SystemTags",
            "text": "System tags"
        },
        "$:/language/Filters/StoryList": {
            "title": "$:/language/Filters/StoryList",
            "text": "Tiddlers in the story river, excluding <$text text=\"$:/AdvancedSearch\"/>"
        },
        "$:/language/Filters/TypedTiddlers": {
            "title": "$:/language/Filters/TypedTiddlers",
            "text": "Non wiki-text tiddlers"
        },
        "GettingStarted": {
            "title": "GettingStarted",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nWelcome to ~TiddlyWiki and the ~TiddlyWiki community\n\nBefore you start storing important information in ~TiddlyWiki it is vital to make sure that you can reliably save changes. See https://tiddlywiki.com/#GettingStarted for details\n\n!! Set up this ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\nSee the [[control panel|$:/ControlPanel]] for more options.\n"
        },
        "$:/language/Help/build": {
            "title": "$:/language/Help/build",
            "description": "Automatically run configured commands",
            "text": "Build the specified build targets for the current wiki. If no build targets are specified then all available targets will be built.\n\n```\n--build <target> [<target> ...]\n```\n\nBuild targets are defined in the `tiddlywiki.info` file of a wiki folder.\n\n"
        },
        "$:/language/Help/clearpassword": {
            "title": "$:/language/Help/clearpassword",
            "description": "Clear a password for subsequent crypto operations",
            "text": "Clear the password for subsequent crypto operations\n\n```\n--clearpassword\n```\n"
        },
        "$:/language/Help/default": {
            "title": "$:/language/Help/default",
            "text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\nusage: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\nAvailable commands:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\nTo get detailed help on a command:\n\n```\ntiddlywiki --help <command>\n```\n"
        },
        "$:/language/Help/editions": {
            "title": "$:/language/Help/editions",
            "description": "Lists the available editions of TiddlyWiki",
            "text": "Lists the names and descriptions of the available editions. You can create a new wiki of a specified edition with the `--init` command.\n\n```\n--editions\n```\n"
        },
        "$:/language/Help/fetch": {
            "title": "$:/language/Help/fetch",
            "description": "Fetch tiddlers from wiki by URL",
            "text": "Fetch one or more files over HTTP/HTTPS, and import the tiddlers matching a filter, optionally transforming the incoming titles.\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\nThe \"file\" and \"files\" variants fetch the specified files and attempt to import the tiddlers within them (the same processing as if the files were dragged into the browser window). The \"raw-file\" and \"raw-files\" variants fetch the specified files and then store the raw file data in tiddlers, without applying the import logic.\n\nWith the \"file\" and \"raw-file\" variants only a single file is fetched and the first parameter is the URL of the file to read.\n\nWith the \"files\" and \"raw-files\" variants, multiple files are fetched and the first parameter is a filter yielding a list of URLs of the files to read. For example, given a set of tiddlers tagged \"remote-server\" that have a field \"url\" the filter `[tag[remote-server]get[url]]` will retrieve all the available URLs.\n\nFor the \"file\" and \"files\" variants, the `<import-filter>` parameter specifies a filter determining which tiddlers are imported. It defaults to `[all[tiddlers]]` if not provided.\n\nFor all variants, the `<transform-filter>` parameter specifies an optional filter that transforms the titles of the imported tiddlers. For example, `[addprefix[$:/myimports/]]` would add the prefix `$:/myimports/` to each title.\n\nPreceding the `--fetch` command with `--verbose` will output progress information during the import.\n\nNote that TiddlyWiki will not fetch an older version of an already loaded plugin.\n\nThe following example retrieves all the non-system tiddlers from https://tiddlywiki.com and saves them to a JSON file:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\nThe following example retrieves the \"favicon\" file from tiddlywiki.com and saves it in a file called \"output.ico\". Note that the intermediate tiddler \"Icon Tiddler\" is quoted in the \"--fetch\" command because it is being used as a transformation filter to replace the default title, while there are no quotes for the \"--savetiddler\" command because it is being used directly as a title.\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n\n"
        },
        "$:/language/Help/help": {
            "title": "$:/language/Help/help",
            "description": "Display help for TiddlyWiki commands",
            "text": "Displays help text for a command:\n\n```\n--help [<command>]\n```\n\nIf the command name is omitted then a list of available commands is displayed.\n"
        },
        "$:/language/Help/import": {
            "title": "$:/language/Help/import",
            "description": "Import tiddlers from a file",
            "text": "Import tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The deserializer must be explicitly specified, unlike the `load` command which infers the deserializer from the file extension.\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\nThe deserializers in the core include:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\nThe title of the imported tiddler defaults to the filename.\n\nThe encoding defaults to \"utf8\", but can be \"base64\" for importing binary files.\n\nNote that TiddlyWiki will not import an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/init": {
            "title": "$:/language/Help/init",
            "description": "Initialise a new wiki folder",
            "text": "Initialise an empty [[WikiFolder|WikiFolders]] with a copy of the specified edition.\n\n```\n--init <edition> [<edition> ...]\n```\n\nFor example:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\nNote:\n\n* The wiki folder directory will be created if necessary\n* The \"edition\" defaults to ''empty''\n* The init command will fail if the wiki folder is not empty\n* The init command removes any `includeWikis` definitions in the edition's `tiddlywiki.info` file\n* When multiple editions are specified, editions initialised later will overwrite any files shared with earlier editions (so, the final `tiddlywiki.info` file will be copied from the last edition)\n* `--editions` returns a list of available editions\n"
        },
        "$:/language/Help/load": {
            "title": "$:/language/Help/load",
            "description": "Load tiddlers from a file",
            "text": "Load tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The processing applied to incoming files is determined by the file extension. Use the alternative `import` command if you need to specify the deserializer and encoding explicitly.\n\n```\n--load <filepath>\n--load <dirpath>\n```\n\nTo load tiddlers from an encrypted TiddlyWiki file you should first specify the password with the PasswordCommand. For example:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\nNote that TiddlyWiki will not load an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/makelibrary": {
            "title": "$:/language/Help/makelibrary",
            "description": "Construct library plugin required by upgrade process",
            "text": "Constructs the `$:/UpgradeLibrary` tiddler for the upgrade process.\n\nThe upgrade library is formatted as an ordinary plugin tiddler with the plugin type `library`. It contains a copy of each of the plugins, themes and language packs available within the TiddlyWiki5 repository.\n\nThis command is intended for internal use; it is only relevant to users constructing a custom upgrade procedure.\n\n```\n--makelibrary <title>\n```\n\nThe title argument defaults to `$:/UpgradeLibrary`.\n"
        },
        "$:/language/Help/notfound": {
            "title": "$:/language/Help/notfound",
            "text": "No such help item"
        },
        "$:/language/Help/output": {
            "title": "$:/language/Help/output",
            "description": "Set the base output directory for subsequent commands",
            "text": "Sets the base output directory for subsequent commands. The default output directory is the `output` subdirectory of the edition directory.\n\n```\n--output <pathname>\n```\n\nIf the specified pathname is relative then it is resolved relative to the current working directory. For example `--output .` sets the output directory to the current working directory.\n\n"
        },
        "$:/language/Help/password": {
            "title": "$:/language/Help/password",
            "description": "Set a password for subsequent crypto operations",
            "text": "Set a password for subsequent crypto operations\n\n```\n--password <password>\n```\n\n''Note'': This should not be used for serving TiddlyWiki with password protection. Instead, see the password option under the [[ServerCommand]].\n"
        },
        "$:/language/Help/render": {
            "title": "$:/language/Help/render",
            "description": "Renders individual tiddlers to files",
            "text": "Render individual tiddlers identified by a filter and save the results to the specified files.\n\nOptionally, the title of a template tiddler can be specified. In this case, instead of directly rendering each tiddler, the template tiddler is rendered with the \"currentTiddler\" variable set to the title of the tiddler that is being rendered.\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be rendered\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]addsuffix[.html]]`, which uses the unchanged tiddler title as the filename\n* ''template'': Optional template through which each tiddler is rendered\n* ''render-type'': Optional render type: `text/html` (the default) returns the full HTML text and `text/plain` just returns the text content (ie it ignores HTML tags and other unprintable material)\n* ''name'': Name of optional variable\n* ''value'': Value of optional variable\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When referring to a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--render \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being rendered, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--render` command is a more flexible replacement for both the `--rendertiddler` and `--rendertiddlers` commands, which are deprecated\n\nExamples:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- renders all non-system tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles and the extension HTML\n\n"
        },
        "$:/language/Help/rendertiddler": {
            "title": "$:/language/Help/rendertiddler",
            "description": "Render an individual tiddler as a specified ContentType",
            "text": "(Note: The `--rendertiddler` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender an individual tiddler as a specified ContentType, defaulting to `text/html` and save it to the specified filename.\n\nOptionally the title of a template tiddler can be specified, in which case the template tiddler is rendered with the \"currentTiddler\" variable set to the tiddler that is being rendered (the first parameter value).\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>] [<name>] [<value>]\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n\nFor example, the following command saves all tiddlers matching the filter `[tag[done]]` to a JSON file titled `output.json` by employing the core template `$:/core/templates/exporters/JsonFile`.\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```\n"
        },
        "$:/language/Help/rendertiddlers": {
            "title": "$:/language/Help/rendertiddlers",
            "description": "Render tiddlers matching a filter to a specified ContentType",
            "text": "(Note: The `--rendertiddlers` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender a set of tiddlers matching a filter to separate files of a specified ContentType (defaults to `text/html`) and extension (defaults to `.html`).\n\n```\n--rendertiddlers <filter> <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\nFor example:\n\n```\n--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny files in the target directory are deleted unless the ''noclean'' flag is specified. The target directory is recursively created if it is missing.\n"
        },
        "$:/language/Help/save": {
            "title": "$:/language/Help/save",
            "description": "Saves individual raw tiddlers to files",
            "text": "Saves individual tiddlers identified by a filter in their raw text or binary format to the specified files.\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be saved\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]]`, which uses the unchanged tiddler title as the filename\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When saving a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--save \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being saved, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--save` command is a more flexible replacement for both the `--savetiddler` and `--savetiddlers` commands, which are deprecated\n\nExamples:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- saves all non-system image tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles\n"
        },
        "$:/language/Help/savetiddler": {
            "title": "$:/language/Help/savetiddler",
            "description": "Saves a raw tiddler to a file",
            "text": "(Note: The `--savetiddler` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves an individual tiddler in its raw text or binary format to the specified filename.\n\n```\n--savetiddler <title> <filename>\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n"
        },
        "$:/language/Help/savetiddlers": {
            "title": "$:/language/Help/savetiddlers",
            "description": "Saves a group of raw tiddlers to a directory",
            "text": "(Note: The `--savetiddlers` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves a group of tiddlers in their raw text or binary format to the specified directory.\n\n```\n--savetiddlers <filter> <pathname> [\"noclean\"]\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nThe output directory is cleared of existing files before saving the specified files. The deletion can be disabled by specifying the ''noclean'' flag.\n\nAny missing directories in the pathname are automatically created.\n"
        },
        "$:/language/Help/server": {
            "title": "$:/language/Help/server",
            "description": "Provides an HTTP server interface to TiddlyWiki",
            "text": "The server built in to TiddlyWiki5 is very simple. Although compatible with TiddlyWeb it doesn't support many of the features needed for robust Internet-facing usage.\n\nAt the root, it serves a rendering of a specified tiddler. Away from the root, it serves individual tiddlers encoded in JSON, and supports the basic HTTP operations for `GET`, `PUT` and `DELETE`.\n\n```\n--server <port> <roottiddler> <rendertype> <servetype> <username> <password> <host> <pathprefix>\n```\n\nThe parameters are:\n\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''roottiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''rendertype'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''servetype'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''username'' - the default username for signing edits\n* ''password'' - optional password for basic authentication\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''pathprefix'' - optional prefix for paths\n\nIf the password parameter is specified then the browser will prompt the user for the username and password. Note that the password is transmitted in plain text so this implementation isn't suitable for general use.\n\nFor example:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\nThe username and password can be specified as empty strings if you need to set the hostname or pathprefix and don't want to require a password:\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nTo run multiple TiddlyWiki servers at the same time you'll need to put each one on a different port. It can be useful to use an environment variable to pass the port number to the Node.js process. This example references an environment variable called \"MY_PORT_NUMBER\":\n\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n"
        },
        "$:/language/Help/setfield": {
            "title": "$:/language/Help/setfield",
            "description": "Prepares external tiddlers for use",
            "text": "//Note that this command is experimental and may change or be replaced before being finalised//\n\nSets the specified field of a group of tiddlers to the result of wikifying a template tiddler with the `currentTiddler` variable set to the tiddler.\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\nThe parameters are:\n\n* ''filter'' - filter identifying the tiddlers to be affected\n* ''fieldname'' - the field to modify (defaults to \"text\")\n* ''templatetitle'' - the tiddler to wikify into the specified field. If blank or missing then the specified field is deleted\n* ''rendertype'' - the text type to render (defaults to \"text/plain\"; \"text/html\" can be used to include HTML tags)\n"
        },
        "$:/language/Help/unpackplugin": {
            "title": "$:/language/Help/unpackplugin",
            "description": "Unpack the payload tiddlers from a plugin",
            "text": "Extract the payload tiddlers from a plugin, creating them as ordinary tiddlers:\n\n```\n--unpackplugin <title>\n```\n"
        },
        "$:/language/Help/verbose": {
            "title": "$:/language/Help/verbose",
            "description": "Triggers verbose output mode",
            "text": "Triggers verbose output, useful for debugging\n\n```\n--verbose\n```\n"
        },
        "$:/language/Help/version": {
            "title": "$:/language/Help/version",
            "description": "Displays the version number of TiddlyWiki",
            "text": "Displays the version number of TiddlyWiki.\n\n```\n--version\n```\n"
        },
        "$:/language/Import/Imported/Hint": {
            "title": "$:/language/Import/Imported/Hint",
            "text": "The following tiddlers were imported:"
        },
        "$:/language/Import/Listing/Cancel/Caption": {
            "title": "$:/language/Import/Listing/Cancel/Caption",
            "text": "Cancel"
        },
        "$:/language/Import/Listing/Hint": {
            "title": "$:/language/Import/Listing/Hint",
            "text": "These tiddlers are ready to import:"
        },
        "$:/language/Import/Listing/Import/Caption": {
            "title": "$:/language/Import/Listing/Import/Caption",
            "text": "Import"
        },
        "$:/language/Import/Listing/Select/Caption": {
            "title": "$:/language/Import/Listing/Select/Caption",
            "text": "Select"
        },
        "$:/language/Import/Listing/Status/Caption": {
            "title": "$:/language/Import/Listing/Status/Caption",
            "text": "Status"
        },
        "$:/language/Import/Listing/Title/Caption": {
            "title": "$:/language/Import/Listing/Title/Caption",
            "text": "Title"
        },
        "$:/language/Import/Listing/Preview": {
            "title": "$:/language/Import/Listing/Preview",
            "text": "Preview:"
        },
        "$:/language/Import/Listing/Preview/Text": {
            "title": "$:/language/Import/Listing/Preview/Text",
            "text": "Text"
        },
        "$:/language/Import/Listing/Preview/TextRaw": {
            "title": "$:/language/Import/Listing/Preview/TextRaw",
            "text": "Text (Raw)"
        },
        "$:/language/Import/Listing/Preview/Fields": {
            "title": "$:/language/Import/Listing/Preview/Fields",
            "text": "Fields"
        },
        "$:/language/Import/Listing/Preview/Diff": {
            "title": "$:/language/Import/Listing/Preview/Diff",
            "text": "Diff"
        },
        "$:/language/Import/Listing/Preview/DiffFields": {
            "title": "$:/language/Import/Listing/Preview/DiffFields",
            "text": "Diff (Fields)"
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
            "text": "Blocked incompatible or obsolete plugin"
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
            "text": "Blocked plugin (due to incoming <<incoming>> being older than existing <<existing>>)"
        },
        "$:/language/Import/Upgrader/Plugins/Upgraded": {
            "title": "$:/language/Import/Upgrader/Plugins/Upgraded",
            "text": "Upgraded plugin from <<incoming>> to <<upgraded>>"
        },
        "$:/language/Import/Upgrader/State/Suppressed": {
            "title": "$:/language/Import/Upgrader/State/Suppressed",
            "text": "Blocked temporary state tiddler"
        },
        "$:/language/Import/Upgrader/System/Suppressed": {
            "title": "$:/language/Import/Upgrader/System/Suppressed",
            "text": "Blocked system tiddler"
        },
        "$:/language/Import/Upgrader/ThemeTweaks/Created": {
            "title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
            "text": "Migrated theme tweak from <$text text=<<from>>/>"
        },
        "$:/language/AboveStory/ClassicPlugin/Warning": {
            "title": "$:/language/AboveStory/ClassicPlugin/Warning",
            "text": "It looks like you are trying to load a plugin designed for ~TiddlyWiki Classic. Please note that [[these plugins do not work with TiddlyWiki version 5.x.x|https://tiddlywiki.com/#TiddlyWikiClassic]]. ~TiddlyWiki Classic plugins detected:"
        },
        "$:/language/BinaryWarning/Prompt": {
            "title": "$:/language/BinaryWarning/Prompt",
            "text": "This tiddler contains binary data"
        },
        "$:/language/ClassicWarning/Hint": {
            "title": "$:/language/ClassicWarning/Hint",
            "text": "This tiddler is written in TiddlyWiki Classic wiki text format, which is not fully compatible with TiddlyWiki version 5. See https://tiddlywiki.com/static/Upgrading.html for more details."
        },
        "$:/language/ClassicWarning/Upgrade/Caption": {
            "title": "$:/language/ClassicWarning/Upgrade/Caption",
            "text": "upgrade"
        },
        "$:/language/CloseAll/Button": {
            "title": "$:/language/CloseAll/Button",
            "text": "close all"
        },
        "$:/language/ColourPicker/Recent": {
            "title": "$:/language/ColourPicker/Recent",
            "text": "Recent:"
        },
        "$:/language/ConfirmCancelTiddler": {
            "title": "$:/language/ConfirmCancelTiddler",
            "text": "Do you wish to discard changes to the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmDeleteTiddler": {
            "title": "$:/language/ConfirmDeleteTiddler",
            "text": "Do you wish to delete the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmOverwriteTiddler": {
            "title": "$:/language/ConfirmOverwriteTiddler",
            "text": "Do you wish to overwrite the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmEditShadowTiddler": {
            "title": "$:/language/ConfirmEditShadowTiddler",
            "text": "You are about to edit a ShadowTiddler. Any changes will override the default system making future upgrades non-trivial. Are you sure you want to edit \"<$text text=<<title>>/>\"?"
        },
        "$:/language/Count": {
            "title": "$:/language/Count",
            "text": "count"
        },
        "$:/language/DefaultNewTiddlerTitle": {
            "title": "$:/language/DefaultNewTiddlerTitle",
            "text": "New Tiddler"
        },
        "$:/language/Diffs/CountMessage": {
            "title": "$:/language/Diffs/CountMessage",
            "text": "<<diff-count>> differences"
        },
        "$:/language/DropMessage": {
            "title": "$:/language/DropMessage",
            "text": "Drop here (or use the 'Escape' key to cancel)"
        },
        "$:/language/Encryption/Cancel": {
            "title": "$:/language/Encryption/Cancel",
            "text": "Cancel"
        },
        "$:/language/Encryption/ConfirmClearPassword": {
            "title": "$:/language/Encryption/ConfirmClearPassword",
            "text": "Do you wish to clear the password? This will remove the encryption applied when saving this wiki"
        },
        "$:/language/Encryption/PromptSetPassword": {
            "title": "$:/language/Encryption/PromptSetPassword",
            "text": "Set a new password for this TiddlyWiki"
        },
        "$:/language/Encryption/Username": {
            "title": "$:/language/Encryption/Username",
            "text": "Username"
        },
        "$:/language/Encryption/Password": {
            "title": "$:/language/Encryption/Password",
            "text": "Password"
        },
        "$:/language/Encryption/RepeatPassword": {
            "title": "$:/language/Encryption/RepeatPassword",
            "text": "Repeat password"
        },
        "$:/language/Encryption/PasswordNoMatch": {
            "title": "$:/language/Encryption/PasswordNoMatch",
            "text": "Passwords do not match"
        },
        "$:/language/Encryption/SetPassword": {
            "title": "$:/language/Encryption/SetPassword",
            "text": "Set password"
        },
        "$:/language/Error/Caption": {
            "title": "$:/language/Error/Caption",
            "text": "Error"
        },
        "$:/language/Error/EditConflict": {
            "title": "$:/language/Error/EditConflict",
            "text": "File changed on server"
        },
        "$:/language/Error/Filter": {
            "title": "$:/language/Error/Filter",
            "text": "Filter error"
        },
        "$:/language/Error/FilterSyntax": {
            "title": "$:/language/Error/FilterSyntax",
            "text": "Syntax error in filter expression"
        },
        "$:/language/Error/IsFilterOperator": {
            "title": "$:/language/Error/IsFilterOperator",
            "text": "Filter Error: Unknown operand for the 'is' filter operator"
        },
        "$:/language/Error/LoadingPluginLibrary": {
            "title": "$:/language/Error/LoadingPluginLibrary",
            "text": "Error loading plugin library"
        },
        "$:/language/Error/RecursiveTransclusion": {
            "title": "$:/language/Error/RecursiveTransclusion",
            "text": "Recursive transclusion error in transclude widget"
        },
        "$:/language/Error/RetrievingSkinny": {
            "title": "$:/language/Error/RetrievingSkinny",
            "text": "Error retrieving skinny tiddler list"
        },
        "$:/language/Error/SavingToTWEdit": {
            "title": "$:/language/Error/SavingToTWEdit",
            "text": "Error saving to TWEdit"
        },
        "$:/language/Error/WhileSaving": {
            "title": "$:/language/Error/WhileSaving",
            "text": "Error while saving"
        },
        "$:/language/Error/XMLHttpRequest": {
            "title": "$:/language/Error/XMLHttpRequest",
            "text": "XMLHttpRequest error code"
        },
        "$:/language/InternalJavaScriptError/Title": {
            "title": "$:/language/InternalJavaScriptError/Title",
            "text": "Internal JavaScript Error"
        },
        "$:/language/InternalJavaScriptError/Hint": {
            "title": "$:/language/InternalJavaScriptError/Hint",
            "text": "Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser"
        },
        "$:/language/InvalidFieldName": {
            "title": "$:/language/InvalidFieldName",
            "text": "Illegal characters in field name \"<$text text=<<fieldName>>/>\". Fields can only contain lowercase letters, digits and the characters underscore (`_`), hyphen (`-`) and period (`.`)"
        },
        "$:/language/LazyLoadingWarning": {
            "title": "$:/language/LazyLoadingWarning",
            "text": "<p>Trying to load external content from ''<$text text={{!!_canonical_uri}}/>''</p><p>If this message doesn't disappear, either the tiddler content type doesn't match the type of the external content, or you may be using a browser that doesn't support external content for wikis loaded as standalone files. See https://tiddlywiki.com/#ExternalText</p>"
        },
        "$:/language/LoginToTiddlySpace": {
            "title": "$:/language/LoginToTiddlySpace",
            "text": "Login to TiddlySpace"
        },
        "$:/language/Manager/Controls/FilterByTag/None": {
            "title": "$:/language/Manager/Controls/FilterByTag/None",
            "text": "(none)"
        },
        "$:/language/Manager/Controls/FilterByTag/Prompt": {
            "title": "$:/language/Manager/Controls/FilterByTag/Prompt",
            "text": "Filter by tag:"
        },
        "$:/language/Manager/Controls/Order/Prompt": {
            "title": "$:/language/Manager/Controls/Order/Prompt",
            "text": "Reverse order"
        },
        "$:/language/Manager/Controls/Search/Placeholder": {
            "title": "$:/language/Manager/Controls/Search/Placeholder",
            "text": "Search"
        },
        "$:/language/Manager/Controls/Search/Prompt": {
            "title": "$:/language/Manager/Controls/Search/Prompt",
            "text": "Search:"
        },
        "$:/language/Manager/Controls/Show/Option/Tags": {
            "title": "$:/language/Manager/Controls/Show/Option/Tags",
            "text": "tags"
        },
        "$:/language/Manager/Controls/Show/Option/Tiddlers": {
            "title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
            "text": "tiddlers"
        },
        "$:/language/Manager/Controls/Show/Prompt": {
            "title": "$:/language/Manager/Controls/Show/Prompt",
            "text": "Show:"
        },
        "$:/language/Manager/Controls/Sort/Prompt": {
            "title": "$:/language/Manager/Controls/Sort/Prompt",
            "text": "Sort by:"
        },
        "$:/language/Manager/Item/Colour": {
            "title": "$:/language/Manager/Item/Colour",
            "text": "Colour"
        },
        "$:/language/Manager/Item/Fields": {
            "title": "$:/language/Manager/Item/Fields",
            "text": "Fields"
        },
        "$:/language/Manager/Item/Icon/None": {
            "title": "$:/language/Manager/Item/Icon/None",
            "text": "(none)"
        },
        "$:/language/Manager/Item/Icon": {
            "title": "$:/language/Manager/Item/Icon",
            "text": "Icon"
        },
        "$:/language/Manager/Item/RawText": {
            "title": "$:/language/Manager/Item/RawText",
            "text": "Raw text"
        },
        "$:/language/Manager/Item/Tags": {
            "title": "$:/language/Manager/Item/Tags",
            "text": "Tags"
        },
        "$:/language/Manager/Item/Tools": {
            "title": "$:/language/Manager/Item/Tools",
            "text": "Tools"
        },
        "$:/language/Manager/Item/WikifiedText": {
            "title": "$:/language/Manager/Item/WikifiedText",
            "text": "Wikified text"
        },
        "$:/language/MissingTiddler/Hint": {
            "title": "$:/language/MissingTiddler/Hint",
            "text": "Missing tiddler \"<$text text=<<currentTiddler>>/>\" -- click {{||$:/core/ui/Buttons/edit}} to create"
        },
        "$:/language/No": {
            "title": "$:/language/No",
            "text": "No"
        },
        "$:/language/OfficialPluginLibrary": {
            "title": "$:/language/OfficialPluginLibrary",
            "text": "Official ~TiddlyWiki Plugin Library"
        },
        "$:/language/OfficialPluginLibrary/Hint": {
            "title": "$:/language/OfficialPluginLibrary/Hint",
            "text": "The official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team."
        },
        "$:/language/PluginReloadWarning": {
            "title": "$:/language/PluginReloadWarning",
            "text": "Please save {{$:/core/ui/Buttons/save-wiki}} and reload {{$:/core/ui/Buttons/refresh}} to allow changes to plugins to take effect"
        },
        "$:/language/RecentChanges/DateFormat": {
            "title": "$:/language/RecentChanges/DateFormat",
            "text": "DDth MMM YYYY"
        },
        "$:/language/SystemTiddler/Tooltip": {
            "title": "$:/language/SystemTiddler/Tooltip",
            "text": "This is a system tiddler"
        },
        "$:/language/SystemTiddlers/Include/Prompt": {
            "title": "$:/language/SystemTiddlers/Include/Prompt",
            "text": "Include system tiddlers"
        },
        "$:/language/TagManager/Colour/Heading": {
            "title": "$:/language/TagManager/Colour/Heading",
            "text": "Colour"
        },
        "$:/language/TagManager/Count/Heading": {
            "title": "$:/language/TagManager/Count/Heading",
            "text": "Count"
        },
        "$:/language/TagManager/Icon/Heading": {
            "title": "$:/language/TagManager/Icon/Heading",
            "text": "Icon"
        },
        "$:/language/TagManager/Info/Heading": {
            "title": "$:/language/TagManager/Info/Heading",
            "text": "Info"
        },
        "$:/language/TagManager/Tag/Heading": {
            "title": "$:/language/TagManager/Tag/Heading",
            "text": "Tag"
        },
        "$:/language/Tiddler/DateFormat": {
            "title": "$:/language/Tiddler/DateFormat",
            "text": "DDth MMM YYYY at hh12:0mmam"
        },
        "$:/language/UnsavedChangesWarning": {
            "title": "$:/language/UnsavedChangesWarning",
            "text": "You have unsaved changes in TiddlyWiki"
        },
        "$:/language/Yes": {
            "title": "$:/language/Yes",
            "text": "Yes"
        },
        "$:/language/Modals/Download": {
            "title": "$:/language/Modals/Download",
            "subtitle": "Download changes",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/DownloadingChanges.html",
            "text": "Your browser only supports manual saving.\n\nTo save your modified wiki, right click on the download link below and select \"Download file\" or \"Save file\", and then choose the folder and filename.\n\n//You can marginally speed things up by clicking the link with the control key (Windows) or the options/alt key (Mac OS X). You will not be prompted for the folder or filename, but your browser is likely to give it an unrecognisable name -- you may need to rename the file to include an `.html` extension before you can do anything useful with it.//\n\nOn smartphones that do not allow files to be downloaded you can instead bookmark the link, and then sync your bookmarks to a desktop computer from where the wiki can be saved normally.\n"
        },
        "$:/language/Modals/SaveInstructions": {
            "title": "$:/language/Modals/SaveInstructions",
            "subtitle": "Save your work",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/SavingChanges.html",
            "text": "Your changes to this wiki need to be saved as a ~TiddlyWiki HTML file.\n\n!!! Desktop browsers\n\n# Select ''Save As'' from the ''File'' menu\n# Choose a filename and location\n#* Some browsers also require you to explicitly specify the file saving format as ''Webpage, HTML only'' or similar\n# Close this tab\n\n!!! Smartphone browsers\n\n# Create a bookmark to this page\n#* If you've got iCloud or Google Sync set up then the bookmark will automatically sync to your desktop where you can open it and save it as above\n# Close this tab\n\n//If you open the bookmark again in Mobile Safari you will see this message again. If you want to go ahead and use the file, just click the ''close'' button below//\n"
        },
        "$:/config/NewJournal/Title": {
            "title": "$:/config/NewJournal/Title",
            "text": "DDth MMM YYYY"
        },
        "$:/config/NewJournal/Text": {
            "title": "$:/config/NewJournal/Text",
            "text": ""
        },
        "$:/config/NewJournal/Tags": {
            "title": "$:/config/NewJournal/Tags",
            "text": "Journal"
        },
        "$:/language/Notifications/Save/Done": {
            "title": "$:/language/Notifications/Save/Done",
            "text": "Saved wiki"
        },
        "$:/language/Notifications/Save/Starting": {
            "title": "$:/language/Notifications/Save/Starting",
            "text": "Starting to save wiki"
        },
        "$:/language/Notifications/CopiedToClipboard/Succeeded": {
            "title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
            "text": "Copied!"
        },
        "$:/language/Notifications/CopiedToClipboard/Failed": {
            "title": "$:/language/Notifications/CopiedToClipboard/Failed",
            "text": "Failed to copy to clipboard!"
        },
        "$:/language/Search/DefaultResults/Caption": {
            "title": "$:/language/Search/DefaultResults/Caption",
            "text": "List"
        },
        "$:/language/Search/Filter/Caption": {
            "title": "$:/language/Search/Filter/Caption",
            "text": "Filter"
        },
        "$:/language/Search/Filter/Hint": {
            "title": "$:/language/Search/Filter/Hint",
            "text": "Search via a [[filter expression|https://tiddlywiki.com/static/Filters.html]]"
        },
        "$:/language/Search/Filter/Matches": {
            "title": "$:/language/Search/Filter/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches": {
            "title": "$:/language/Search/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches/All": {
            "title": "$:/language/Search/Matches/All",
            "text": "All matches:"
        },
        "$:/language/Search/Matches/Title": {
            "title": "$:/language/Search/Matches/Title",
            "text": "Title matches:"
        },
        "$:/language/Search/Search": {
            "title": "$:/language/Search/Search",
            "text": "Search"
        },
        "$:/language/Search/Search/TooShort": {
            "title": "$:/language/Search/Search/TooShort",
            "text": "Search text too short"
        },
        "$:/language/Search/Shadows/Caption": {
            "title": "$:/language/Search/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/Search/Shadows/Hint": {
            "title": "$:/language/Search/Shadows/Hint",
            "text": "Search for shadow tiddlers"
        },
        "$:/language/Search/Shadows/Matches": {
            "title": "$:/language/Search/Shadows/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Standard/Caption": {
            "title": "$:/language/Search/Standard/Caption",
            "text": "Standard"
        },
        "$:/language/Search/Standard/Hint": {
            "title": "$:/language/Search/Standard/Hint",
            "text": "Search for standard tiddlers"
        },
        "$:/language/Search/Standard/Matches": {
            "title": "$:/language/Search/Standard/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/System/Caption": {
            "title": "$:/language/Search/System/Caption",
            "text": "System"
        },
        "$:/language/Search/System/Hint": {
            "title": "$:/language/Search/System/Hint",
            "text": "Search for system tiddlers"
        },
        "$:/language/Search/System/Matches": {
            "title": "$:/language/Search/System/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/SideBar/All/Caption": {
            "title": "$:/language/SideBar/All/Caption",
            "text": "All"
        },
        "$:/language/SideBar/Contents/Caption": {
            "title": "$:/language/SideBar/Contents/Caption",
            "text": "Contents"
        },
        "$:/language/SideBar/Drafts/Caption": {
            "title": "$:/language/SideBar/Drafts/Caption",
            "text": "Drafts"
        },
        "$:/language/SideBar/Explorer/Caption": {
            "title": "$:/language/SideBar/Explorer/Caption",
            "text": "Explorer"
        },
        "$:/language/SideBar/Missing/Caption": {
            "title": "$:/language/SideBar/Missing/Caption",
            "text": "Missing"
        },
        "$:/language/SideBar/More/Caption": {
            "title": "$:/language/SideBar/More/Caption",
            "text": "More"
        },
        "$:/language/SideBar/Open/Caption": {
            "title": "$:/language/SideBar/Open/Caption",
            "text": "Open"
        },
        "$:/language/SideBar/Orphans/Caption": {
            "title": "$:/language/SideBar/Orphans/Caption",
            "text": "Orphans"
        },
        "$:/language/SideBar/Recent/Caption": {
            "title": "$:/language/SideBar/Recent/Caption",
            "text": "Recent"
        },
        "$:/language/SideBar/Shadows/Caption": {
            "title": "$:/language/SideBar/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/SideBar/System/Caption": {
            "title": "$:/language/SideBar/System/Caption",
            "text": "System"
        },
        "$:/language/SideBar/Tags/Caption": {
            "title": "$:/language/SideBar/Tags/Caption",
            "text": "Tags"
        },
        "$:/language/SideBar/Tags/Untagged/Caption": {
            "title": "$:/language/SideBar/Tags/Untagged/Caption",
            "text": "untagged"
        },
        "$:/language/SideBar/Tools/Caption": {
            "title": "$:/language/SideBar/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/SideBar/Types/Caption": {
            "title": "$:/language/SideBar/Types/Caption",
            "text": "Types"
        },
        "$:/SiteSubtitle": {
            "title": "$:/SiteSubtitle",
            "text": "a non-linear personal web notebook"
        },
        "$:/SiteTitle": {
            "title": "$:/SiteTitle",
            "text": "My ~TiddlyWiki"
        },
        "$:/language/Snippets/ListByTag": {
            "title": "$:/language/Snippets/ListByTag",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "List of tiddlers by tag",
            "text": "<<list-links \"[tag[task]sort[title]]\">>\n"
        },
        "$:/language/Snippets/MacroDefinition": {
            "title": "$:/language/Snippets/MacroDefinition",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Macro definition",
            "text": "\\define macroName(param1:\"default value\",param2)\nText of the macro\n\\end\n"
        },
        "$:/language/Snippets/Table4x3": {
            "title": "$:/language/Snippets/Table4x3",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table with 4 columns by 3 rows",
            "text": "|! |!Alpha |!Beta |!Gamma |!Delta |\n|!One | | | | |\n|!Two | | | | |\n|!Three | | | | |\n"
        },
        "$:/language/Snippets/TableOfContents": {
            "title": "$:/language/Snippets/TableOfContents",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table of Contents",
            "text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
        },
        "$:/language/ThemeTweaks/ThemeTweaks": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks",
            "text": "Theme Tweaks"
        },
        "$:/language/ThemeTweaks/ThemeTweaks/Hint": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
            "text": "You can tweak certain aspects of the ''Vanilla'' theme."
        },
        "$:/language/ThemeTweaks/Options": {
            "title": "$:/language/ThemeTweaks/Options",
            "text": "Options"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout",
            "text": "Sidebar layout"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
            "text": "Fixed story, fluid sidebar"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
            "text": "Fluid story, fixed sidebar"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles",
            "text": "Sticky titles"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
            "text": "Causes tiddler titles to \"stick\" to the top of the browser window. Caution: Does not work at all with Chrome, and causes some layout issues in Firefox"
        },
        "$:/language/ThemeTweaks/Options/CodeWrapping": {
            "title": "$:/language/ThemeTweaks/Options/CodeWrapping",
            "text": "Wrap long lines in code blocks"
        },
        "$:/language/ThemeTweaks/Settings": {
            "title": "$:/language/ThemeTweaks/Settings",
            "text": "Settings"
        },
        "$:/language/ThemeTweaks/Settings/FontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/FontFamily",
            "text": "Font family"
        },
        "$:/language/ThemeTweaks/Settings/CodeFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
            "text": "Code font family"
        },
        "$:/language/ThemeTweaks/Settings/EditorFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
            "text": "Editor font family"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImage": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
            "text": "Page background image"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
            "text": "Page background image attachment"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
            "text": "Scroll with tiddlers"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
            "text": "Fixed to window"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
            "text": "Page background image size"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
            "text": "Auto"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
            "text": "Cover"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
            "text": "Contain"
        },
        "$:/language/ThemeTweaks/Metrics": {
            "title": "$:/language/ThemeTweaks/Metrics",
            "text": "Sizes"
        },
        "$:/language/ThemeTweaks/Metrics/FontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/FontSize",
            "text": "Font size"
        },
        "$:/language/ThemeTweaks/Metrics/LineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/LineHeight",
            "text": "Line height"
        },
        "$:/language/ThemeTweaks/Metrics/BodyFontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
            "text": "Font size for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
            "text": "Line height for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
            "text": "Story left position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
            "text": "how far the left margin of the story river<br>(tiddler area) is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop",
            "text": "Story top position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
            "text": "how far the top margin of the story river<br>is from the top of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight",
            "text": "Story right"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
            "text": "how far the left margin of the sidebar <br>is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
            "text": "Story width"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
            "text": "the overall width of the story river"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
            "text": "Tiddler width"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
            "text": "within the story river"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
            "text": "Sidebar breakpoint"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
            "text": "the minimum page width at which the story<br>river and sidebar will appear side by side"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
            "text": "Sidebar width"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
            "text": "the width of the sidebar in fluid-fixed layout"
        },
        "$:/language/TiddlerInfo/Advanced/Caption": {
            "title": "$:/language/TiddlerInfo/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
            "text": "none"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
            "text": "Plugin Details"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
            "text": "This plugin contains the following shadow tiddlers:"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
            "text": "Shadow Status"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is not a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
            "text": "It is defined in the plugin <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
            "text": "It is overridden by an ordinary tiddler"
        },
        "$:/language/TiddlerInfo/Fields/Caption": {
            "title": "$:/language/TiddlerInfo/Fields/Caption",
            "text": "Fields"
        },
        "$:/language/TiddlerInfo/List/Caption": {
            "title": "$:/language/TiddlerInfo/List/Caption",
            "text": "List"
        },
        "$:/language/TiddlerInfo/List/Empty": {
            "title": "$:/language/TiddlerInfo/List/Empty",
            "text": "This tiddler does not have a list"
        },
        "$:/language/TiddlerInfo/Listed/Caption": {
            "title": "$:/language/TiddlerInfo/Listed/Caption",
            "text": "Listed"
        },
        "$:/language/TiddlerInfo/Listed/Empty": {
            "title": "$:/language/TiddlerInfo/Listed/Empty",
            "text": "This tiddler is not listed by any others"
        },
        "$:/language/TiddlerInfo/References/Caption": {
            "title": "$:/language/TiddlerInfo/References/Caption",
            "text": "References"
        },
        "$:/language/TiddlerInfo/References/Empty": {
            "title": "$:/language/TiddlerInfo/References/Empty",
            "text": "No tiddlers link to this one"
        },
        "$:/language/TiddlerInfo/Tagging/Caption": {
            "title": "$:/language/TiddlerInfo/Tagging/Caption",
            "text": "Tagging"
        },
        "$:/language/TiddlerInfo/Tagging/Empty": {
            "title": "$:/language/TiddlerInfo/Tagging/Empty",
            "text": "No tiddlers are tagged with this one"
        },
        "$:/language/TiddlerInfo/Tools/Caption": {
            "title": "$:/language/TiddlerInfo/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/Docs/Types/application/javascript": {
            "title": "$:/language/Docs/Types/application/javascript",
            "description": "JavaScript code",
            "name": "application/javascript",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/json": {
            "title": "$:/language/Docs/Types/application/json",
            "description": "JSON data",
            "name": "application/json",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/x-tiddler-dictionary": {
            "title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
            "description": "Data dictionary",
            "name": "application/x-tiddler-dictionary",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/image/gif": {
            "title": "$:/language/Docs/Types/image/gif",
            "description": "GIF image",
            "name": "image/gif",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/jpeg": {
            "title": "$:/language/Docs/Types/image/jpeg",
            "description": "JPEG image",
            "name": "image/jpeg",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/png": {
            "title": "$:/language/Docs/Types/image/png",
            "description": "PNG image",
            "name": "image/png",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/svg+xml": {
            "title": "$:/language/Docs/Types/image/svg+xml",
            "description": "Structured Vector Graphics image",
            "name": "image/svg+xml",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/x-icon": {
            "title": "$:/language/Docs/Types/image/x-icon",
            "description": "ICO format icon file",
            "name": "image/x-icon",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/text/css": {
            "title": "$:/language/Docs/Types/text/css",
            "description": "Static stylesheet",
            "name": "text/css",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/text/html": {
            "title": "$:/language/Docs/Types/text/html",
            "description": "HTML markup",
            "name": "text/html",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/plain": {
            "title": "$:/language/Docs/Types/text/plain",
            "description": "Plain text",
            "name": "text/plain",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/vnd.tiddlywiki": {
            "title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
            "description": "TiddlyWiki 5",
            "name": "text/vnd.tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/x-tiddlywiki": {
            "title": "$:/language/Docs/Types/text/x-tiddlywiki",
            "description": "TiddlyWiki Classic",
            "name": "text/x-tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/languages/en-GB/icon": {
            "title": "$:/languages/en-GB/icon",
            "type": "image/svg+xml",
            "text": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 60 30\" width=\"1200\" height=\"600\">\n<clipPath id=\"t\">\n\t<path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\"/>\n</clipPath>\n<path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" clip-path=\"url(#t)\" stroke=\"#cf142b\" stroke-width=\"4\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\"/>\n</svg>\n"
        },
        "$:/languages/en-GB": {
            "title": "$:/languages/en-GB",
            "name": "en-GB",
            "description": "English (British)",
            "author": "JeremyRuston",
            "core-version": ">=5.0.0\"",
            "text": "Stub pseudo-plugin for the default language"
        },
        "$:/core/modules/commander.js": {
            "title": "$:/core/modules/commander.js",
            "text": "/*\\\ntitle: $:/core/modules/commander.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Commander class is a command interpreter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a sequence of commands\n\tcommandTokens: an array of command string tokens\n\twiki: reference to the wiki store object\n\tstreams: {output:, error:}, each of which has a write(string) method\n\tcallback: a callback invoked as callback(err) where err is null if there was no error\n*/\nvar Commander = function(commandTokens,callback,wiki,streams) {\n\tvar path = require(\"path\");\n\tthis.commandTokens = commandTokens;\n\tthis.nextToken = 0;\n\tthis.callback = callback;\n\tthis.wiki = wiki;\n\tthis.streams = streams;\n\tthis.outputPath = path.resolve($tw.boot.wikiPath,$tw.config.wikiOutputSubDir);\n};\n\n/*\nLog a string if verbose flag is set\n*/\nCommander.prototype.log = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str + \"\\n\");\n\t}\n};\n\n/*\nWrite a string if verbose flag is set\n*/\nCommander.prototype.write = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str);\n\t}\n};\n\n/*\nAdd a string of tokens to the command queue\n*/\nCommander.prototype.addCommandTokens = function(commandTokens) {\n\tvar params = commandTokens.slice(0);\n\tparams.unshift(0);\n\tparams.unshift(this.nextToken);\n\tArray.prototype.splice.apply(this.commandTokens,params);\n};\n\n/*\nExecute the sequence of commands and invoke a callback on completion\n*/\nCommander.prototype.execute = function() {\n\tthis.executeNextCommand();\n};\n\n/*\nExecute the next command in the sequence\n*/\nCommander.prototype.executeNextCommand = function() {\n\tvar self = this;\n\t// Invoke the callback if there are no more commands\n\tif(this.nextToken >= this.commandTokens.length) {\n\t\tthis.callback(null);\n\t} else {\n\t\t// Get and check the command token\n\t\tvar commandName = this.commandTokens[this.nextToken++];\n\t\tif(commandName.substr(0,2) !== \"--\") {\n\t\t\tthis.callback(\"Missing command: \" + commandName);\n\t\t} else {\n\t\t\tcommandName = commandName.substr(2); // Trim off the --\n\t\t\t// Accumulate the parameters to the command\n\t\t\tvar params = [];\n\t\t\twhile(this.nextToken < this.commandTokens.length && \n\t\t\t\tthis.commandTokens[this.nextToken].substr(0,2) !== \"--\") {\n\t\t\t\tparams.push(this.commandTokens[this.nextToken++]);\n\t\t\t}\n\t\t\t// Get the command info\n\t\t\tvar command = $tw.commands[commandName],\n\t\t\t\tc,err;\n\t\t\tif(!command) {\n\t\t\t\tthis.callback(\"Unknown command: \" + commandName);\n\t\t\t} else {\n\t\t\t\tif(this.verbose) {\n\t\t\t\t\tthis.streams.output.write(\"Executing command: \" + commandName + \" \" + params.join(\" \") + \"\\n\");\n\t\t\t\t}\n\t\t\t\tif(command.info.synchronous) {\n\t\t\t\t\t// Synchronous command\n\t\t\t\t\tc = new command.Command(params,this);\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.executeNextCommand();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Asynchronous command\n\t\t\t\t\tc = new command.Command(params,this,function(err) {\n\t\t\t\t\t\tif(err) {\n\t\t\t\t\t\t\tself.callback(err);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself.executeNextCommand();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nCommander.initCommands = function(moduleType) {\n\tmoduleType = moduleType || \"command\";\n\t$tw.commands = {};\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tvar c = $tw.commands[module.info.name] = {};\n\t\t// Add the methods defined by the module\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\tc[f] = module[f];\n\t\t\t}\n\t\t}\n\t});\n};\n\nexports.Commander = Commander;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/commands/build.js": {
            "title": "$:/core/modules/commands/build.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/build.js\ntype: application/javascript\nmodule-type: command\n\nCommand to build a build target\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"build\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\t// Get the build targets defined in the wiki\n\tvar buildTargets = $tw.boot.wikiInfo.build;\n\tif(!buildTargets) {\n\t\treturn \"No build targets defined\";\n\t}\n\t// Loop through each of the specified targets\n\tvar targets;\n\tif(this.params.length > 0) {\n\t\ttargets = this.params;\n\t} else {\n\t\ttargets = Object.keys(buildTargets);\n\t}\n\tfor(var targetIndex=0; targetIndex<targets.length; targetIndex++) {\n\t\tvar target = targets[targetIndex],\n\t\t\tcommands = buildTargets[target];\n\t\tif(!commands) {\n\t\t\treturn \"Build target '\" + target + \"' not found\";\n\t\t}\n\t\t// Add the commands to the queue\n\t\tthis.commander.addCommandTokens(commands);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/clearpassword.js": {
            "title": "$:/core/modules/commands/clearpassword.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/clearpassword.js\ntype: application/javascript\nmodule-type: command\n\nClear password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"clearpassword\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\t$tw.crypto.setPassword(null);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/editions.js": {
            "title": "$:/core/modules/commands/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/editions.js\ntype: application/javascript\nmodule-type: command\n\nCommand to list the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"editions\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\t// Output the list\n\tthis.commander.streams.output.write(\"Available editions:\\n\\n\");\n\tvar editionInfo = $tw.utils.getEditionInfo();\n\t$tw.utils.each(editionInfo,function(info,name) {\n\t\tself.commander.streams.output.write(\"    \" + name + \": \" + info.description + \"\\n\");\n\t});\n\tthis.commander.streams.output.write(\"\\n\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/fetch.js": {
            "title": "$:/core/modules/commands/fetch.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/fetch.js\ntype: application/javascript\nmodule-type: command\n\nCommands to fetch external tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"fetch\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing subcommand and url\";\n\t}\n\tswitch(this.params[0]) {\n\t\tcase \"raw-file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turl: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turl: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"raw-files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t}\n\treturn null;\n};\n\nCommand.prototype.fetchFiles = function(options) {\n\tvar self = this;\n\t// Get the list of URLs\n\tvar urls;\n\tif(options.url) {\n\t\turls = [options.url]\n\t} else if(options.urlFilter) {\n\t\turls = $tw.wiki.filterTiddlers(options.urlFilter);\n\t} else {\n\t\treturn \"Missing URL\";\n\t}\n\t// Process each URL in turn\n\tvar next = 0;\n\tvar getNextFile = function(err) {\n\t\tif(err) {\n\t\t\treturn options.callback(err);\n\t\t}\n\t\tif(next < urls.length) {\n\t\t\tself.fetchFile(urls[next++],options,getNextFile);\n\t\t} else {\n\t\t\toptions.callback(null);\n\t\t}\n\t};\n\tgetNextFile(null);\n\t// Success\n\treturn null;\n};\n\nCommand.prototype.fetchFile = function(url,options,callback,redirectCount) {\n\tif(redirectCount > 10) {\n\t\treturn callback(\"Error too many redirects retrieving \" + url);\n\t}\n\tvar self = this,\n\t\tlib = url.substr(0,8) === \"https://\" ? require(\"https\") : require(\"http\");\n\tlib.get(url).on(\"response\",function(response) {\n\t    var type = (response.headers[\"content-type\"] || \"\").split(\";\")[0],\n\t    \tdata = [];\n\t    self.commander.write(\"Reading \" + url + \": \");\n\t    response.on(\"data\",function(chunk) {\n\t        data.push(chunk);\n\t        self.commander.write(\".\");\n\t    });\n\t    response.on(\"end\",function() {\n\t        self.commander.write(\"\\n\");\n\t        if(response.statusCode === 200) {\n\t\t        self.processBody(Buffer.concat(data),type,options,url);\n\t\t        callback(null);\n\t        } else {\n\t        \tif(response.statusCode === 302 || response.statusCode === 303 || response.statusCode === 307) {\n\t        \t\treturn self.fetchFile(response.headers.location,options,callback,redirectCount + 1);\n\t        \t} else {\n\t\t        \treturn callback(\"Error \" + response.statusCode + \" retrieving \" + url)\t        \t\t\n\t        \t}\n\t        }\n\t   \t});\n\t   \tresponse.on(\"error\",function(e) {\n\t\t\tconsole.log(\"Error on GET request: \" + e);\n\t\t\tcallback(e);\n\t   \t});\n\t});\n\treturn null;\n};\n\nCommand.prototype.processBody = function(body,type,options,url) {\n\tvar self = this;\n\t// Collect the tiddlers in a wiki\n\tvar incomingWiki = new $tw.Wiki();\n\tif(options.raw) {\n\t\tvar typeInfo = type ? $tw.config.contentTypeInfo[type] : null,\n\t\t\tencoding = typeInfo ? typeInfo.encoding : \"utf8\";\n\t\tincomingWiki.addTiddler(new $tw.Tiddler({\n\t\t\ttitle: url,\n\t\t\ttype: type,\n\t\t\ttext: body.toString(encoding)\n\t\t}));\n\t} else {\n\t\t// Deserialise the file to extract the tiddlers\n\t\tvar tiddlers = this.commander.wiki.deserializeTiddlers(type || \"text/html\",body.toString(\"utf8\"),{});\n\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\tincomingWiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t});\n\t}\n\t// Filter the tiddlers to select the ones we want\n\tvar filteredTitles = incomingWiki.filterTiddlers(options.importFilter || \"[all[tiddlers]]\");\n\t// Import the selected tiddlers\n\tvar count = 0;\n\tincomingWiki.each(function(tiddler,title) {\n\t\tif(filteredTitles.indexOf(title) !== -1) {\n\t\t\tvar newTiddler;\n\t\t\tif(options.transformFilter) {\n\t\t\t\tvar transformedTitle = (incomingWiki.filterTiddlers(options.transformFilter,null,self.commander.wiki.makeTiddlerIterator([title])) || [\"\"])[0];\n\t\t\t\tif(transformedTitle) {\n\t\t\t\t\tself.commander.log(\"Importing \" + title + \" as \" + transformedTitle)\n\t\t\t\t\tnewTiddler = new $tw.Tiddler(tiddler,{title: transformedTitle});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.commander.log(\"Importing \" + title)\n\t\t\t\tnewTiddler = tiddler;\n\t\t\t}\n\t\t\tself.commander.wiki.importTiddler(newTiddler);\n\t\t\tcount++;\n\t\t}\n\t});\n\tself.commander.log(\"Imported \" + count + \" tiddlers\")\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/help.js": {
            "title": "$:/core/modules/commands/help.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/help.js\ntype: application/javascript\nmodule-type: command\n\nHelp command\n\n\\*/\n(function(){\n\n/*jshint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"help\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar subhelp = this.params[0] || \"default\",\n\t\thelpBase = \"$:/language/Help/\",\n\t\ttext;\n\tif(!this.commander.wiki.getTiddler(helpBase + subhelp)) {\n\t\tsubhelp = \"notfound\";\n\t}\n\t// Wikify the help as formatted text (ie block elements generate newlines)\n\ttext = this.commander.wiki.renderTiddler(\"text/plain-formatted\",helpBase + subhelp);\n\t// Remove any leading linebreaks\n\ttext = text.replace(/^(\\r?\\n)*/g,\"\");\n\tthis.commander.streams.output.write(text);\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/import.js": {
            "title": "$:/core/modules/commands/import.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/import.js\ntype: application/javascript\nmodule-type: command\n\nCommand to import tiddlers from a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"import\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 2) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar filename = self.params[0],\n\t\tdeserializer = self.params[1],\n\t\ttitle = self.params[2] || filename,\n\t\tencoding = self.params[3] || \"utf8\",\n\t\ttext = fs.readFileSync(filename,encoding),\n\t\ttiddlers = this.commander.wiki.deserializeTiddlers(null,text,{title: title},{deserializer: deserializer});\n\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t});\n\tthis.commander.log(tiddlers.length + \" tiddler(s) imported\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/init.js": {
            "title": "$:/core/modules/commands/init.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/init.js\ntype: application/javascript\nmodule-type: command\n\nCommand to initialise an empty wiki folder\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"init\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\t// Check that we don't already have a valid wiki folder\n\tif($tw.boot.wikiTiddlersPath || ($tw.utils.isDirectory($tw.boot.wikiPath) && !$tw.utils.isDirectoryEmpty($tw.boot.wikiPath))) {\n\t\treturn \"Wiki folder is not empty\";\n\t}\n\t// Loop through each of the specified editions\n\tvar editions = this.params.length > 0 ? this.params : [\"empty\"];\n\tfor(var editionIndex=0; editionIndex<editions.length; editionIndex++) {\n\t\tvar editionName = editions[editionIndex];\n\t\t// Check the edition exists\n\t\tvar editionPath = $tw.findLibraryItem(editionName,$tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar));\n\t\tif(!$tw.utils.isDirectory(editionPath)) {\n\t\t\treturn \"Edition '\" + editionName + \"' not found\";\n\t\t}\n\t\t// Copy the edition content\n\t\tvar err = $tw.utils.copyDirectory(editionPath,$tw.boot.wikiPath);\n\t\tif(!err) {\n\t\t\tthis.commander.streams.output.write(\"Copied edition '\" + editionName + \"' to \" + $tw.boot.wikiPath + \"\\n\");\n\t\t} else {\n\t\t\treturn err;\n\t\t}\n\t}\n\t// Tweak the tiddlywiki.info to remove any included wikis\n\tvar packagePath = $tw.boot.wikiPath + \"/tiddlywiki.info\",\n\t\tpackageJson = JSON.parse(fs.readFileSync(packagePath));\n\tdelete packageJson.includeWikis;\n\tfs.writeFileSync(packagePath,JSON.stringify(packageJson,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/load.js": {
            "title": "$:/core/modules/commands/load.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/load.js\ntype: application/javascript\nmodule-type: command\n\nCommand to load tiddlers from a file or directory\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"load\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar tiddlers = $tw.loadTiddlersFromPath(self.params[0]),\n\t\tcount = 0;\n\t$tw.utils.each(tiddlers,function(tiddlerInfo) {\n\t\t$tw.utils.each(tiddlerInfo.tiddlers,function(tiddler) {\n\t\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t\t\tcount++;\n\t\t});\n\t});\n\tif(!count) {\n\t\tself.callback(\"No tiddlers found in file \\\"\" + self.params[0] + \"\\\"\");\n\t} else {\n\t\tself.callback(null);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/makelibrary.js": {
            "title": "$:/core/modules/commands/makelibrary.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/makelibrary.js\ntype: application/javascript\nmodule-type: command\n\nCommand to pack all of the plugins in the library into a plugin tiddler of type \"library\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"makelibrary\",\n\tsynchronous: true\n};\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar wiki = this.commander.wiki,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tupgradeLibraryTitle = this.params[0] || UPGRADE_LIBRARY_TITLE,\n\t\ttiddlers = {};\n\t// Collect up the library plugins\n\tvar collectPlugins = function(folder) {\n\t\t\tvar pluginFolders = fs.readdirSync(folder);\n\t\t\tfor(var p=0; p<pluginFolders.length; p++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(pluginFolders[p])) {\n\t\t\t\t\tpluginFields = $tw.loadPluginFolder(path.resolve(folder,\"./\" + pluginFolders[p]));\n\t\t\t\t\tif(pluginFields && pluginFields.title) {\n\t\t\t\t\t\ttiddlers[pluginFields.title] = pluginFields;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tcollectPublisherPlugins = function(folder) {\n\t\t\tvar publisherFolders = fs.readdirSync(folder);\n\t\t\tfor(var t=0; t<publisherFolders.length; t++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(publisherFolders[t])) {\n\t\t\t\t\tcollectPlugins(path.resolve(folder,\"./\" + publisherFolders[t]));\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\tcollectPublisherPlugins(path.resolve($tw.boot.corePath,$tw.config.pluginsPath));\n\tcollectPublisherPlugins(path.resolve($tw.boot.corePath,$tw.config.themesPath));\n\tcollectPlugins(path.resolve($tw.boot.corePath,$tw.config.languagesPath));\n\t// Save the upgrade library tiddler\n\tvar pluginFields = {\n\t\ttitle: upgradeLibraryTitle,\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"library\",\n\t\t\"text\": JSON.stringify({tiddlers: tiddlers},null,$tw.config.preferences.jsonSpaces)\n\t};\n\twiki.addTiddler(new $tw.Tiddler(pluginFields));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/output.js": {
            "title": "$:/core/modules/commands/output.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/output.js\ntype: application/javascript\nmodule-type: command\n\nCommand to set the default output location (defaults to current working directory)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"output\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing output path\";\n\t}\n\tthis.commander.outputPath = path.resolve(process.cwd(),this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/password.js": {
            "title": "$:/core/modules/commands/password.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/password.js\ntype: application/javascript\nmodule-type: command\n\nSave password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"password\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing password\";\n\t}\n\t$tw.crypto.setPassword(this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/render.js": {
            "title": "$:/core/modules/commands/render.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/render.js\ntype: application/javascript\nmodule-type: command\n\nRender individual tiddlers and save the results to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"render\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing tiddler filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]addsuffix[.html]]\",\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tvarName = this.params[4],\n\t\tvarValue = this.params[5],\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template || title),\n\t\t\tvariables = {currentTiddler: title};\n\t\tif(varName) {\n\t\t\tvariables[varName] = varValue || \"\";\n\t\t}\n\t\tvar widgetNode = wiki.makeWidget(parser,{variables: variables}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Rendering \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddler.js": {
            "title": "$:/core/modules/commands/rendertiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render a tiddler and save it to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"rendertiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tname = this.params[4],\n\t\tvalue = this.params[5],\n\t\tvariables = {};\n\t$tw.utils.createFileDirectories(filename);\n\tif(template) {\n\t\tvariables.currentTiddler = title;\n\t\ttitle = template;\n\t}\n\tif(name && value) {\n\t\tvariables[name] = value;\n\t}\n\tfs.writeFile(filename,this.commander.wiki.renderTiddler(type,title,{variables: variables}),\"utf8\",function(err) {\n\t\tself.callback(err);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddlers.js": {
            "title": "$:/core/modules/commands/rendertiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"rendertiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttemplate = this.params[1],\n\t\toutputPath = this.commander.outputPath,\n\t\tpathname = path.resolve(outputPath,this.params[2]),\t\t\n\t\ttype = this.params[3] || \"text/html\",\n\t\textension = this.params[4] || \".html\",\n\t\tdeleteDirectory = (this.params[5] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template),\n\t\t\twidgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\texportPath = null;\n\t\tif($tw.utils.hop($tw.macros,\"tv-get-export-path\")) {\n\t\t\tvar macroPath = $tw.macros[\"tv-get-export-path\"].run.apply(self,[title]);\n\t\t\tif(macroPath) {\n\t\t\t\texportPath = path.resolve(outputPath,macroPath + extension);\n\t\t\t}\n\t\t}\n\t\tvar finalPath = exportPath || path.resolve(pathname,encodeURIComponent(title) + extension);\n\t\t$tw.utils.createFileDirectories(finalPath);\n\t\tfs.writeFileSync(finalPath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/save.js": {
            "title": "$:/core/modules/commands/save.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/save.js\ntype: application/javascript\nmodule-type: command\n\nSaves individual tiddlers in their raw text or binary format to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"save\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]]\",\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Saving \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savelibrarytiddlers.js": {
            "title": "$:/core/modules/commands/savelibrarytiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savelibrarytiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the subtiddlers of a bundle tiddler as a series of JSON files\n\n--savelibrarytiddlers <tiddler> <pathname> <skinnylisting>\n\nThe tiddler identifies the bundle tiddler that contains the subtiddlers.\n\nThe pathname specifies the pathname to the folder in which the JSON files should be saved. The filename is the URL encoded title of the subtiddler.\n\nThe skinnylisting specifies the title of the tiddler to which a JSON catalogue of the subtiddlers will be saved. The JSON file contains the same data as the bundle tiddler but with the `text` field removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savelibrarytiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tcontainerTitle = this.params[0],\n\t\tfilter = this.params[1],\n\t\tbasepath = this.params[2],\n\t\tskinnyListTitle = this.params[3];\n\t// Get the container tiddler as data\n\tvar containerData = self.commander.wiki.getTiddlerDataCached(containerTitle,undefined);\n\tif(!containerData) {\n\t\treturn \"'\" + containerTitle + \"' is not a tiddler bundle\";\n\t}\n\t// Filter the list of plugins\n\tvar pluginList = [];\n\t$tw.utils.each(containerData.tiddlers,function(tiddler,title) {\n\t\tpluginList.push(title);\n\t});\n\tvar filteredPluginList;\n\tif(filter) {\n\t\tfilteredPluginList = self.commander.wiki.filterTiddlers(filter,null,self.commander.wiki.makeTiddlerIterator(pluginList));\n\t} else {\n\t\tfilteredPluginList = pluginList;\n\t}\n\t// Iterate through the plugins\n\tvar skinnyList = [];\n\t$tw.utils.each(filteredPluginList,function(title) {\n\t\tvar tiddler = containerData.tiddlers[title];\n\t\t// Save each JSON file and collect the skinny data\n\t\tvar pathname = path.resolve(self.commander.outputPath,basepath + encodeURIComponent(title) + \".json\");\n\t\t$tw.utils.createFileDirectories(pathname);\n\t\tfs.writeFileSync(pathname,JSON.stringify(tiddler,null,$tw.config.preferences.jsonSpaces),\"utf8\");\n\t\t// Collect the skinny list data\n\t\tvar pluginTiddlers = JSON.parse(tiddler.text),\n\t\t\treadmeContent = (pluginTiddlers.tiddlers[title + \"/readme\"] || {}).text,\n\t\t\ticonTiddler = pluginTiddlers.tiddlers[title + \"/icon\"] || {},\n\t\t\ticonType = iconTiddler.type,\n\t\t\ticonText = iconTiddler.text,\n\t\t\ticonContent;\n\t\tif(iconType && iconText) {\n\t\t\ticonContent = $tw.utils.makeDataUri(iconText,iconType);\n\t\t}\n\t\tskinnyList.push($tw.utils.extend({},tiddler,{text: undefined, readme: readmeContent, icon: iconContent}));\n\t});\n\t// Save the catalogue tiddler\n\tif(skinnyListTitle) {\n\t\tself.commander.wiki.setTiddlerData(skinnyListTitle,skinnyList);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddler.js": {
            "title": "$:/core/modules/commands/savetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the content of a tiddler to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savetiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttiddler = this.commander.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar type = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"};\n\t\t$tw.utils.createFileDirectories(filename);\n\t\tfs.writeFile(filename,tiddler.fields.text,contentTypeInfo.encoding,function(err) {\n\t\t\tself.callback(err);\n\t\t});\n\t} else {\n\t\treturn \"Missing tiddler: \" + title;\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddlers.js": {
            "title": "$:/core/modules/commands/savetiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"savetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tpathname = path.resolve(this.commander.outputPath,this.params[1]),\n\t\tdeleteDirectory = (this.params[2] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.createDirectory(pathname);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilename = path.resolve(pathname,encodeURIComponent(title));\n\t\tfs.writeFileSync(filename,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/server.js": {
            "title": "$:/core/modules/commands/server.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/server.js\ntype: application/javascript\nmodule-type: command\n\nServe tiddlers over http\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\"),\n\t\thttp = require(\"http\");\n}\n\nexports.info = {\n\tname: \"server\",\n\tsynchronous: true\n};\n\n/*\nA simple HTTP server with regexp-based routes\n*/\nfunction SimpleServer(options) {\n\tthis.routes = options.routes || [];\n\tthis.wiki = options.wiki;\n\tthis.variables = options.variables || {};\n}\n\nSimpleServer.prototype.set = function(obj) {\n\tvar self = this;\n\t$tw.utils.each(obj,function(value,name) {\n\t\tself.variables[name] = value;\n\t});\n};\n\nSimpleServer.prototype.get = function(name) {\n\treturn this.variables[name];\n};\n\nSimpleServer.prototype.addRoute = function(route) {\n\tthis.routes.push(route);\n};\n\nSimpleServer.prototype.findMatchingRoute = function(request,state) {\n\tvar pathprefix = this.get(\"pathprefix\") || \"\";\n\tfor(var t=0; t<this.routes.length; t++) {\n\t\tvar potentialRoute = this.routes[t],\n\t\t\tpathRegExp = potentialRoute.path,\n\t\t\tpathname = state.urlInfo.pathname,\n\t\t\tmatch;\n\t\tif(pathprefix) {\n\t\t\tif(pathname.substr(0,pathprefix.length) === pathprefix) {\n\t\t\t\tpathname = pathname.substr(pathprefix.length);\n\t\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t\t} else {\n\t\t\t\tmatch = false;\n\t\t\t}\n\t\t} else {\n\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t}\n\t\tif(match && request.method === potentialRoute.method) {\n\t\t\tstate.params = [];\n\t\t\tfor(var p=1; p<match.length; p++) {\n\t\t\t\tstate.params.push(match[p]);\n\t\t\t}\n\t\t\treturn potentialRoute;\n\t\t}\n\t}\n\treturn null;\n};\n\nSimpleServer.prototype.checkCredentials = function(request,incomingUsername,incomingPassword) {\n\tvar header = request.headers.authorization || \"\",\n\t\ttoken = header.split(/\\s+/).pop() || \"\",\n\t\tauth = $tw.utils.base64Decode(token),\n\t\tparts = auth.split(/:/),\n\t\tusername = parts[0],\n\t\tpassword = parts[1];\n\tif(incomingUsername === username && incomingPassword === password) {\n\t\treturn \"ALLOWED\";\n\t} else {\n\t\treturn \"DENIED\";\n\t}\n};\n\nSimpleServer.prototype.requestHandler = function(request,response) {\n\t// Compose the state object\n\tvar self = this;\n\tvar state = {};\n\tstate.wiki = self.wiki;\n\tstate.server = self;\n\tstate.urlInfo = url.parse(request.url);\n\t// Find the route that matches this path\n\tvar route = self.findMatchingRoute(request,state);\n\t// Check for the username and password if we've got one\n\tvar username = self.get(\"username\"),\n\t\tpassword = self.get(\"password\");\n\tif(username && password) {\n\t\t// Check they match\n\t\tif(self.checkCredentials(request,username,password) !== \"ALLOWED\") {\n\t\t\tvar servername = state.wiki.getTiddlerText(\"$:/SiteTitle\") || \"TiddlyWiki5\";\n\t\t\tresponse.writeHead(401,\"Authentication required\",{\n\t\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + servername + '\"'\n\t\t\t});\n\t\t\tresponse.end();\n\t\t\treturn;\n\t\t}\n\t}\n\t// Return a 404 if we didn't find a route\n\tif(!route) {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Set the encoding for the incoming request\n\t// TODO: Presumably this would need tweaking if we supported PUTting binary tiddlers\n\trequest.setEncoding(\"utf8\");\n\t// Dispatch the appropriate method\n\tswitch(request.method) {\n\t\tcase \"GET\": // Intentional fall-through\n\t\tcase \"DELETE\":\n\t\t\troute.handler(request,response,state);\n\t\t\tbreak;\n\t\tcase \"PUT\":\n\t\t\tvar data = \"\";\n\t\t\trequest.on(\"data\",function(chunk) {\n\t\t\t\tdata += chunk.toString();\n\t\t\t});\n\t\t\trequest.on(\"end\",function() {\n\t\t\t\tstate.data = data;\n\t\t\t\troute.handler(request,response,state);\n\t\t\t});\n\t\t\tbreak;\n\t}\n};\n\t\nSimpleServer.prototype.listen = function(port,host) {\n\treturn http.createServer(this.requestHandler.bind(this)).listen(port,host);\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n\t// Set up server\n\tthis.server = new SimpleServer({\n\t\twiki: this.commander.wiki\n\t});\n\t// Add route handlers\n\tthis.server.addRoute({\n\t\tmethod: \"PUT\",\n\t\tpath: /^\\/recipes\\/default\\/tiddlers\\/(.+)$/,\n\t\thandler: function(request,response,state) {\n\t\t\tvar title = decodeURIComponent(state.params[0]),\n\t\t\t\tfields = JSON.parse(state.data);\n\t\t\t// Pull up any subfields in the `fields` object\n\t\t\tif(fields.fields) {\n\t\t\t\t$tw.utils.each(fields.fields,function(field,name) {\n\t\t\t\t\tfields[name] = field;\n\t\t\t\t});\n\t\t\t\tdelete fields.fields;\n\t\t\t}\n\t\t\t// Remove any revision field\n\t\t\tif(fields.revision) {\n\t\t\t\tdelete fields.revision;\n\t\t\t}\n\t\t\tstate.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields()));\n\t\t\tvar changeCount = state.wiki.getChangeCount(title).toString();\n\t\t\tresponse.writeHead(204, \"OK\",{\n\t\t\t\tEtag: \"\\\"default/\" + encodeURIComponent(title) + \"/\" + changeCount + \":\\\"\",\n\t\t\t\t\"Content-Type\": \"text/plain\"\n\t\t\t});\n\t\t\tresponse.end();\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"DELETE\",\n\t\tpath: /^\\/bags\\/default\\/tiddlers\\/(.+)$/,\n\t\thandler: function(request,response,state) {\n\t\t\tvar title = decodeURIComponent(state.params[0]);\n\t\t\tstate.wiki.deleteTiddler(title);\n\t\t\tresponse.writeHead(204, \"OK\", {\n\t\t\t\t\"Content-Type\": \"text/plain\"\n\t\t\t});\n\t\t\tresponse.end();\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"GET\",\n\t\tpath: /^\\/$/,\n\t\thandler: function(request,response,state) {\n\t\t\tresponse.writeHead(200, {\"Content-Type\": state.server.get(\"serveType\")});\n\t\t\tvar text = state.wiki.renderTiddler(state.server.get(\"renderType\"),state.server.get(\"rootTiddler\"));\n\t\t\tresponse.end(text,\"utf8\");\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"GET\",\n\t\tpath: /^\\/status$/,\n\t\thandler: function(request,response,state) {\n\t\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\t\tvar text = JSON.stringify({\n\t\t\t\tusername: state.server.get(\"username\"),\n\t\t\t\tspace: {\n\t\t\t\t\trecipe: \"default\"\n\t\t\t\t},\n\t\t\t\ttiddlywiki_version: $tw.version\n\t\t\t});\n\t\t\tresponse.end(text,\"utf8\");\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"GET\",\n\t\tpath: /^\\/favicon.ico$/,\n\t\thandler: function(request,response,state) {\n\t\t\tresponse.writeHead(200, {\"Content-Type\": \"image/x-icon\"});\n\t\t\tvar buffer = state.wiki.getTiddlerText(\"$:/favicon.ico\",\"\");\n\t\t\tresponse.end(buffer,\"base64\");\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"GET\",\n\t\tpath: /^\\/recipes\\/default\\/tiddlers.json$/,\n\t\thandler: function(request,response,state) {\n\t\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\t\tvar tiddlers = [];\n\t\t\tstate.wiki.forEachTiddler({sortField: \"title\"},function(title,tiddler) {\n\t\t\t\tvar tiddlerFields = {};\n\t\t\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\t\t\tif(name !== \"text\") {\n\t\t\t\t\t\ttiddlerFields[name] = tiddler.getFieldString(name);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\ttiddlers.push(tiddlerFields);\n\t\t\t});\n\t\t\tvar text = JSON.stringify(tiddlers);\n\t\t\tresponse.end(text,\"utf8\");\n\t\t}\n\t});\n\tthis.server.addRoute({\n\t\tmethod: \"GET\",\n\t\tpath: /^\\/recipes\\/default\\/tiddlers\\/(.+)$/,\n\t\thandler: function(request,response,state) {\n\t\t\tvar title = decodeURIComponent(state.params[0]),\n\t\t\t\ttiddler = state.wiki.getTiddler(title),\n\t\t\t\ttiddlerFields = {},\n\t\t\t\tknownFields = [\n\t\t\t\t\t\"bag\", \"created\", \"creator\", \"modified\", \"modifier\", \"permissions\", \"recipe\", \"revision\", \"tags\", \"text\", \"title\", \"type\", \"uri\"\n\t\t\t\t];\n\t\t\tif(tiddler) {\n\t\t\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\t\t\tif(knownFields.indexOf(name) !== -1) {\n\t\t\t\t\t\ttiddlerFields[name] = value;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttiddlerFields.fields = tiddlerFields.fields || {};\n\t\t\t\t\t\ttiddlerFields.fields[name] = value;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\t\t\tresponse.end(JSON.stringify(tiddlerFields),\"utf8\");\n\t\t\t} else {\n\t\t\t\tresponse.writeHead(404);\n\t\t\t\tresponse.end();\n\t\t\t}\n\t\t}\n\t});\n};\n\nCommand.prototype.execute = function() {\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\tvar port = this.params[0] || \"8080\",\n\t\trootTiddler = this.params[1] || \"$:/core/save/all\",\n\t\trenderType = this.params[2] || \"text/plain\",\n\t\tserveType = this.params[3] || \"text/html\",\n\t\tusername = this.params[4],\n\t\tpassword = this.params[5],\n\t\thost = this.params[6] || \"127.0.0.1\",\n\t\tpathprefix = this.params[7];\n\tif(parseInt(port,10).toString() !== port) {\n\t\tport = process.env[port] || 8080;\n\t}\n\tthis.server.set({\n\t\trootTiddler: rootTiddler,\n\t\trenderType: renderType,\n\t\tserveType: serveType,\n\t\tusername: username,\n\t\tpassword: password,\n\t\tpathprefix: pathprefix\n\t});\n\tvar nodeServer = this.server.listen(port,host);\n\t$tw.utils.log(\"Serving on \" + host + \":\" + port,\"brown/orange\");\n\t$tw.utils.log(\"(press ctrl-C to exit)\",\"red\");\n\t// Warn if required plugins are missing\n\tif(!$tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/tiddlyweb\") || !$tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/filesystem\")) {\n\t\t$tw.utils.warning(\"Warning: Plugins required for client-server operation (\\\"tiddlywiki/filesystem\\\" and \\\"tiddlywiki/tiddlyweb\\\") are missing from tiddlywiki.info file\");\n\t}\n\t$tw.hooks.invokeHook('th-server-command-post-start', this.server, nodeServer);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/setfield.js": {
            "title": "$:/core/modules/commands/setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/setfield.js\ntype: application/javascript\nmodule-type: command\n\nCommand to modify selected tiddlers to set a field to the text of a template tiddler that has been wikified with the selected tiddler as the current tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"setfield\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 4) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tfieldname = this.params[1] || \"text\",\n\t\ttemplatetitle = this.params[2],\n\t\trendertype = this.params[3] || \"text/plain\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(templatetitle),\n\t\t\tnewFields = {},\n\t\t\ttiddler = wiki.getTiddler(title);\n\t\tif(parser) {\n\t\t\tvar widgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}});\n\t\t\tvar container = $tw.fakeDocument.createElement(\"div\");\n\t\t\twidgetNode.render(container,null);\n\t\t\tnewFields[fieldname] = rendertype === \"text/html\" ? container.innerHTML : container.textContent;\n\t\t} else {\n\t\t\tnewFields[fieldname] = undefined;\n\t\t}\n\t\twiki.addTiddler(new $tw.Tiddler(tiddler,newFields));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/unpackplugin.js": {
            "title": "$:/core/modules/commands/unpackplugin.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/unpackplugin.js\ntype: application/javascript\nmodule-type: command\n\nCommand to extract the shadow tiddlers from within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"unpackplugin\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing plugin name\";\n\t}\n\tvar self = this,\n\t\ttitle = this.params[0],\n\t\tpluginData = this.commander.wiki.getTiddlerDataCached(title);\n\tif(!pluginData) {\n\t\treturn \"Plugin '\" + title + \"' not found\";\n\t}\n\t$tw.utils.each(pluginData.tiddlers,function(tiddler) {\n\t\tself.commander.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/verbose.js": {
            "title": "$:/core/modules/commands/verbose.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/verbose.js\ntype: application/javascript\nmodule-type: command\n\nVerbose command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"verbose\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.verbose = true;\n\t// Output the boot message log\n\tthis.commander.streams.output.write(\"Boot log:\\n  \" + $tw.boot.logMessages.join(\"\\n  \") + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/version.js": {
            "title": "$:/core/modules/commands/version.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/version.js\ntype: application/javascript\nmodule-type: command\n\nVersion command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"version\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.streams.output.write($tw.version + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/config.js": {
            "title": "$:/core/modules/config.js",
            "text": "/*\\\ntitle: $:/core/modules/config.js\ntype: application/javascript\nmodule-type: config\n\nCore configuration constants\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.preferences = {};\n\nexports.preferences.notificationDuration = 3 * 1000;\nexports.preferences.jsonSpaces = 4;\n\nexports.textPrimitives = {\n\tupperLetter: \"[A-Z\\u00c0-\\u00d6\\u00d8-\\u00de\\u0150\\u0170]\",\n\tlowerLetter: \"[a-z\\u00df-\\u00f6\\u00f8-\\u00ff\\u0151\\u0171]\",\n\tanyLetter:   \"[A-Za-z0-9\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\",\n\tblockPrefixLetters:\t\"[A-Za-z0-9-_\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\"\n};\n\nexports.textPrimitives.unWikiLink = \"~\";\nexports.textPrimitives.wikiLink = exports.textPrimitives.upperLetter + \"+\" +\n\texports.textPrimitives.lowerLetter + \"+\" +\n\texports.textPrimitives.upperLetter +\n\texports.textPrimitives.anyLetter + \"*\";\n\nexports.htmlEntities = {quot:34, amp:38, apos:39, lt:60, gt:62, nbsp:160, iexcl:161, cent:162, pound:163, curren:164, yen:165, brvbar:166, sect:167, uml:168, copy:169, ordf:170, laquo:171, not:172, shy:173, reg:174, macr:175, deg:176, plusmn:177, sup2:178, sup3:179, acute:180, micro:181, para:182, middot:183, cedil:184, sup1:185, ordm:186, raquo:187, frac14:188, frac12:189, frac34:190, iquest:191, Agrave:192, Aacute:193, Acirc:194, Atilde:195, Auml:196, Aring:197, AElig:198, Ccedil:199, Egrave:200, Eacute:201, Ecirc:202, Euml:203, Igrave:204, Iacute:205, Icirc:206, Iuml:207, ETH:208, Ntilde:209, Ograve:210, Oacute:211, Ocirc:212, Otilde:213, Ouml:214, times:215, Oslash:216, Ugrave:217, Uacute:218, Ucirc:219, Uuml:220, Yacute:221, THORN:222, szlig:223, agrave:224, aacute:225, acirc:226, atilde:227, auml:228, aring:229, aelig:230, ccedil:231, egrave:232, eacute:233, ecirc:234, euml:235, igrave:236, iacute:237, icirc:238, iuml:239, eth:240, ntilde:241, ograve:242, oacute:243, ocirc:244, otilde:245, ouml:246, divide:247, oslash:248, ugrave:249, uacute:250, ucirc:251, uuml:252, yacute:253, thorn:254, yuml:255, OElig:338, oelig:339, Scaron:352, scaron:353, Yuml:376, fnof:402, circ:710, tilde:732, Alpha:913, Beta:914, Gamma:915, Delta:916, Epsilon:917, Zeta:918, Eta:919, Theta:920, Iota:921, Kappa:922, Lambda:923, Mu:924, Nu:925, Xi:926, Omicron:927, Pi:928, Rho:929, Sigma:931, Tau:932, Upsilon:933, Phi:934, Chi:935, Psi:936, Omega:937, alpha:945, beta:946, gamma:947, delta:948, epsilon:949, zeta:950, eta:951, theta:952, iota:953, kappa:954, lambda:955, mu:956, nu:957, xi:958, omicron:959, pi:960, rho:961, sigmaf:962, sigma:963, tau:964, upsilon:965, phi:966, chi:967, psi:968, omega:969, thetasym:977, upsih:978, piv:982, ensp:8194, emsp:8195, thinsp:8201, zwnj:8204, zwj:8205, lrm:8206, rlm:8207, ndash:8211, mdash:8212, lsquo:8216, rsquo:8217, sbquo:8218, ldquo:8220, rdquo:8221, bdquo:8222, dagger:8224, Dagger:8225, bull:8226, hellip:8230, permil:8240, prime:8242, Prime:8243, lsaquo:8249, rsaquo:8250, oline:8254, frasl:8260, euro:8364, image:8465, weierp:8472, real:8476, trade:8482, alefsym:8501, larr:8592, uarr:8593, rarr:8594, darr:8595, harr:8596, crarr:8629, lArr:8656, uArr:8657, rArr:8658, dArr:8659, hArr:8660, forall:8704, part:8706, exist:8707, empty:8709, nabla:8711, isin:8712, notin:8713, ni:8715, prod:8719, sum:8721, minus:8722, lowast:8727, radic:8730, prop:8733, infin:8734, ang:8736, and:8743, or:8744, cap:8745, cup:8746, int:8747, there4:8756, sim:8764, cong:8773, asymp:8776, ne:8800, equiv:8801, le:8804, ge:8805, sub:8834, sup:8835, nsub:8836, sube:8838, supe:8839, oplus:8853, otimes:8855, perp:8869, sdot:8901, lceil:8968, rceil:8969, lfloor:8970, rfloor:8971, lang:9001, rang:9002, loz:9674, spades:9824, clubs:9827, hearts:9829, diams:9830 };\n\nexports.htmlVoidElements = \"area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr\".split(\",\");\n\nexports.htmlBlockElements = \"address,article,aside,audio,blockquote,canvas,dd,div,dl,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,li,noscript,ol,output,p,pre,section,table,tfoot,ul,video\".split(\",\");\n\nexports.htmlUnsafeElements = \"script\".split(\",\");\n\n})();\n",
            "type": "application/javascript",
            "module-type": "config"
        },
        "$:/core/modules/deserializers.js": {
            "title": "$:/core/modules/deserializers.js",
            "text": "/*\\\ntitle: $:/core/modules/deserializers.js\ntype: application/javascript\nmodule-type: tiddlerdeserializer\n\nFunctions to deserialise tiddlers from a block of text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nUtility function to parse an old-style tiddler DIV in a *.tid file. It looks like this:\n\n<div title=\"Title\" creator=\"JoeBloggs\" modifier=\"JoeBloggs\" created=\"201102111106\" modified=\"201102111310\" tags=\"myTag [[my long tag]]\">\n<pre>The text of the tiddler (without the expected HTML encoding).\n</pre>\n</div>\n\nNote that the field attributes are HTML encoded, but that the body of the <PRE> tag is not encoded.\n\nWhen these tiddler DIVs are encountered within a TiddlyWiki HTML file then the body is encoded in the usual way.\n*/\nvar parseTiddlerDiv = function(text /* [,fields] */) {\n\t// Slot together the default results\n\tvar result = {};\n\tif(arguments.length > 1) {\n\t\tfor(var f=1; f<arguments.length; f++) {\n\t\t\tvar fields = arguments[f];\n\t\t\tfor(var t in fields) {\n\t\t\t\tresult[t] = fields[t];\t\t\n\t\t\t}\n\t\t}\n\t}\n\t// Parse the DIV body\n\tvar startRegExp = /^\\s*<div\\s+([^>]*)>(\\s*<pre>)?/gi,\n\t\tendRegExp,\n\t\tmatch = startRegExp.exec(text);\n\tif(match) {\n\t\t// Old-style DIVs don't have the <pre> tag\n\t\tif(match[2]) {\n\t\t\tendRegExp = /<\\/pre>\\s*<\\/div>\\s*$/gi;\n\t\t} else {\n\t\t\tendRegExp = /<\\/div>\\s*$/gi;\n\t\t}\n\t\tvar endMatch = endRegExp.exec(text);\n\t\tif(endMatch) {\n\t\t\t// Extract the text\n\t\t\tresult.text = text.substring(match.index + match[0].length,endMatch.index);\n\t\t\t// Process the attributes\n\t\t\tvar attrRegExp = /\\s*([^=\\s]+)\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/gi,\n\t\t\t\tattrMatch;\n\t\t\tdo {\n\t\t\t\tattrMatch = attrRegExp.exec(match[1]);\n\t\t\t\tif(attrMatch) {\n\t\t\t\t\tvar name = attrMatch[1];\n\t\t\t\t\tvar value = attrMatch[2] !== undefined ? attrMatch[2] : attrMatch[3];\n\t\t\t\t\tresult[name] = value;\n\t\t\t\t}\n\t\t\t} while(attrMatch);\n\t\t\treturn result;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports[\"application/x-tiddler-html-div\"] = function(text,fields) {\n\treturn [parseTiddlerDiv(text,fields)];\n};\n\nexports[\"application/json\"] = function(text,fields) {\n\tvar incoming,\n\t\tresults = [];\n\ttry {\n\t\tincoming = JSON.parse(text);\n\t} catch(e) {\n\t\tincoming = [{\n\t\t\ttitle: \"JSON error: \" + e,\n\t\t\ttext: \"\"\n\t\t}]\n\t}\n\tif(!$tw.utils.isArray(incoming)) {\n\t\tincoming = [incoming];\n\t}\n\tfor(var t=0; t<incoming.length; t++) {\n\t\tvar incomingFields = incoming[t],\n\t\t\tfields = {};\n\t\tfor(var f in incomingFields) {\n\t\t\tif(typeof incomingFields[f] === \"string\") {\n\t\t\t\tfields[f] = incomingFields[f];\n\t\t\t}\n\t\t}\n\t\tresults.push(fields);\n\t}\n\treturn results;\n};\n\n/*\nParse an HTML file into tiddlers. There are three possibilities:\n# A TiddlyWiki classic HTML file containing `text/x-tiddlywiki` tiddlers\n# A TiddlyWiki5 HTML file containing `text/vnd.tiddlywiki` tiddlers\n# An ordinary HTML file\n*/\nexports[\"text/html\"] = function(text,fields) {\n\t// Check if we've got a store area\n\tvar storeAreaMarkerRegExp = /<div id=[\"']?storeArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\tmatch = storeAreaMarkerRegExp.exec(text);\n\tif(match) {\n\t\t// If so, it's either a classic TiddlyWiki file or an unencrypted TW5 file\n\t\t// First read the normal tiddlers\n\t\tvar results = deserializeTiddlyWikiFile(text,storeAreaMarkerRegExp.lastIndex,!!match[1],fields);\n\t\t// Then any system tiddlers\n\t\tvar systemAreaMarkerRegExp = /<div id=[\"']?systemArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\t\tsysMatch = systemAreaMarkerRegExp.exec(text);\n\t\tif(sysMatch) {\n\t\t\tresults.push.apply(results,deserializeTiddlyWikiFile(text,systemAreaMarkerRegExp.lastIndex,!!sysMatch[1],fields));\n\t\t}\n\t\treturn results;\n\t} else {\n\t\t// Check whether we've got an encrypted file\n\t\tvar encryptedStoreArea = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedStoreArea) {\n\t\t\t// If so, attempt to decrypt it using the current password\n\t\t\treturn $tw.utils.decryptStoreArea(encryptedStoreArea);\n\t\t} else {\n\t\t\t// It's not a TiddlyWiki so we'll return the entire HTML file as a tiddler\n\t\t\treturn deserializeHtmlFile(text,fields);\n\t\t}\n\t}\n};\n\nfunction deserializeHtmlFile(text,fields) {\n\tvar result = {};\n\t$tw.utils.each(fields,function(value,name) {\n\t\tresult[name] = value;\n\t});\n\tresult.text = text;\n\tresult.type = \"text/html\";\n\treturn [result];\n}\n\nfunction deserializeTiddlyWikiFile(text,storeAreaEnd,isTiddlyWiki5,fields) {\n\tvar results = [],\n\t\tendOfDivRegExp = /(<\\/div>\\s*)/gi,\n\t\tstartPos = storeAreaEnd,\n\t\tdefaultType = isTiddlyWiki5 ? undefined : \"text/x-tiddlywiki\";\n\tendOfDivRegExp.lastIndex = startPos;\n\tvar match = endOfDivRegExp.exec(text);\n\twhile(match) {\n\t\tvar endPos = endOfDivRegExp.lastIndex,\n\t\t\ttiddlerFields = parseTiddlerDiv(text.substring(startPos,endPos),fields,{type: defaultType});\n\t\tif(!tiddlerFields) {\n\t\t\tbreak;\n\t\t}\n\t\t$tw.utils.each(tiddlerFields,function(value,name) {\n\t\t\tif(typeof value === \"string\") {\n\t\t\t\ttiddlerFields[name] = $tw.utils.htmlDecode(value);\n\t\t\t}\n\t\t});\n\t\tif(tiddlerFields.text !== null) {\n\t\t\tresults.push(tiddlerFields);\n\t\t}\n\t\tstartPos = endPos;\n\t\tmatch = endOfDivRegExp.exec(text);\n\t}\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlerdeserializer"
        },
        "$:/core/modules/editor/engines/framed.js": {
            "title": "$:/core/modules/editor/engines/framed.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/framed.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea within an iframe. This is done so that the selection is preserved even when clicking away from the textarea\n\n\\*/\n(function(){\n\n/*jslint node: true,browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction FramedEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Create our hidden dummy text area for reading styles\n\tthis.dummyTextArea = this.widget.document.createElement(\"textarea\");\n\tif(this.widget.editClass) {\n\t\tthis.dummyTextArea.className = this.widget.editClass;\n\t}\n\tthis.dummyTextArea.setAttribute(\"hidden\",\"true\");\n\tthis.parentNode.insertBefore(this.dummyTextArea,this.nextSibling);\n\tthis.widget.domNodes.push(this.dummyTextArea);\n\t// Create the iframe\n\tthis.iframeNode = this.widget.document.createElement(\"iframe\");\n\tthis.parentNode.insertBefore(this.iframeNode,this.nextSibling);\n\tthis.iframeDoc = this.iframeNode.contentWindow.document;\n\t// (Firefox requires us to put some empty content in the iframe)\n\tthis.iframeDoc.open();\n\tthis.iframeDoc.write(\"\");\n\tthis.iframeDoc.close();\n\t// Style the iframe\n\tthis.iframeNode.className = this.dummyTextArea.className;\n\tthis.iframeNode.style.border = \"none\";\n\tthis.iframeNode.style.padding = \"0\";\n\tthis.iframeNode.style.resize = \"none\";\n\tthis.iframeDoc.body.style.margin = \"0\";\n\tthis.iframeDoc.body.style.padding = \"0\";\n\tthis.widget.domNodes.push(this.iframeNode);\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.iframeDoc.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.iframeDoc.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\t// Copy the styles from the dummy textarea\n\tthis.copyStyles();\n\t// Add event listeners\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"click\",handlerObject: this,handlerMethod: \"handleClickEvent\"},\n\t\t{name: \"input\",handlerObject: this,handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"keydown\",handlerObject: this.widget,handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.iframeDoc.body.appendChild(this.domNode);\n}\n\n/*\nCopy styles from the dummy text area to the textarea in the iframe\n*/\nFramedEngine.prototype.copyStyles = function() {\n\t// Copy all styles\n\t$tw.utils.copyStyles(this.dummyTextArea,this.domNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\tthis.domNode.style.display = \"block\";\n\tthis.domNode.style.width = \"100%\";\n\tthis.domNode.style.margin = \"0\";\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\tthis.domNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n};\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nFramedEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nFramedEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nFramedEngine.prototype.fixHeight = function() {\n\t// Make sure styles are updated\n\tthis.copyStyles();\n\t// Adjust height\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tvar newHeight = $tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t\tthis.iframeNode.style.height = (newHeight + 14) + \"px\"; // +14 for the border on the textarea\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t\tthis.iframeNode.style.height = (fixedHeight + 14) + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nFramedEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a click\n*/\nFramedEngine.prototype.handleClickEvent = function(event) {\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nFramedEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nFramedEngine.prototype.createTextOperation = function() {\n\tvar operation = {\n\t\ttext: this.domNode.value,\n\t\tselStart: this.domNode.selectionStart,\n\t\tselEnd: this.domNode.selectionEnd,\n\t\tcutStart: null,\n\t\tcutEnd: null,\n\t\treplacement: null,\n\t\tnewSelStart: null,\n\t\tnewSelEnd: null\n\t};\n\toperation.selection = operation.text.substring(operation.selStart,operation.selEnd);\n\treturn operation;\n};\n\n/*\nExecute a text operation\n*/\nFramedEngine.prototype.executeTextOperation = function(operation) {\n\t// Perform the required changes to the text area and the underlying tiddler\n\tvar newText = operation.text;\n\tif(operation.replacement !== null) {\n\t\tnewText = operation.text.substring(0,operation.cutStart) + operation.replacement + operation.text.substring(operation.cutEnd);\n\t\t// Attempt to use a execCommand to modify the value of the control\n\t\tif(this.iframeDoc.queryCommandSupported(\"insertText\") && this.iframeDoc.queryCommandSupported(\"delete\") && !$tw.browser.isFirefox) {\n\t\t\tthis.domNode.focus();\n\t\t\tthis.domNode.setSelectionRange(operation.cutStart,operation.cutEnd);\n\t\t\tif(operation.replacement === \"\") {\n\t\t\t\tthis.iframeDoc.execCommand(\"delete\",false,\"\");\n\t\t\t} else {\n\t\t\t\tthis.iframeDoc.execCommand(\"insertText\",false,operation.replacement);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.domNode.value = newText;\n\t\t}\n\t\tthis.domNode.focus();\n\t\tthis.domNode.setSelectionRange(operation.newSelStart,operation.newSelEnd);\n\t}\n\tthis.domNode.focus();\n\treturn newText;\n};\n\nexports.FramedEngine = FramedEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/engines/simple.js": {
            "title": "$:/core/modules/editor/engines/simple.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/simple.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction SimpleEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.widget.document.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.widget.document.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\t// Add an input event handler\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"focus\", handlerObject: this, handlerMethod: \"handleFocusEvent\"},\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n}\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nSimpleEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode || text === \"\") {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nSimpleEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nSimpleEngine.prototype.fixHeight = function() {\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\t$tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nSimpleEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nSimpleEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editFocusPopup) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNode,\n\t\t\ttitle: this.widget.editFocusPopup,\n\t\t\twiki: this.widget.wiki,\n\t\t\tforce: true\n\t\t});\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nSimpleEngine.prototype.createTextOperation = function() {\n\treturn null;\n};\n\n/*\nExecute a text operation\n*/\nSimpleEngine.prototype.executeTextOperation = function(operation) {\n};\n\nexports.SimpleEngine = SimpleEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/factory.js": {
            "title": "$:/core/modules/editor/factory.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/factory.js\ntype: application/javascript\nmodule-type: library\n\nFactory for constructing text editor widgets with specified engines for the toolbar and non-toolbar cases\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_MIN_TEXT_AREA_HEIGHT = \"100px\"; // Minimum height of textareas in pixels\n\n// Configuration tiddlers\nvar HEIGHT_MODE_TITLE = \"$:/config/TextEditor/EditorHeight/Mode\";\nvar ENABLE_TOOLBAR_TITLE = \"$:/config/TextEditor/EnableToolbar\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nfunction editTextWidgetFactory(toolbarEngine,nonToolbarEngine) {\n\n\tvar EditTextWidget = function(parseTreeNode,options) {\n\t\t// Initialise the editor operations if they've not been done already\n\t\tif(!this.editorOperations) {\n\t\t\tEditTextWidget.prototype.editorOperations = {};\n\t\t\t$tw.modules.applyMethods(\"texteditoroperation\",this.editorOperations);\n\t\t}\n\t\tthis.initialise(parseTreeNode,options);\n\t};\n\n\t/*\n\tInherit from the base widget class\n\t*/\n\tEditTextWidget.prototype = new Widget();\n\n\t/*\n\tRender this widget into the DOM\n\t*/\n\tEditTextWidget.prototype.render = function(parent,nextSibling) {\n\t\t// Save the parent dom node\n\t\tthis.parentDomNode = parent;\n\t\t// Compute our attributes\n\t\tthis.computeAttributes();\n\t\t// Execute our logic\n\t\tthis.execute();\n\t\t// Create the wrapper for the toolbar and render its content\n\t\tif(this.editShowToolbar) {\n\t\t\tthis.toolbarNode = this.document.createElement(\"div\");\n\t\t\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\t\t\tparent.insertBefore(this.toolbarNode,nextSibling);\n\t\t\tthis.renderChildren(this.toolbarNode,null);\n\t\t\tthis.domNodes.push(this.toolbarNode);\n\t\t}\n\t\t// Create our element\n\t\tvar editInfo = this.getEditInfo(),\n\t\t\tEngine = this.editShowToolbar ? toolbarEngine : nonToolbarEngine;\n\t\tthis.engine = new Engine({\n\t\t\t\twidget: this,\n\t\t\t\tvalue: editInfo.value,\n\t\t\t\ttype: editInfo.type,\n\t\t\t\tparentNode: parent,\n\t\t\t\tnextSibling: nextSibling\n\t\t\t});\n\t\t// Call the postRender hook\n\t\tif(this.postRender) {\n\t\t\tthis.postRender();\n\t\t}\n\t\t// Fix height\n\t\tthis.engine.fixHeight();\n\t\t// Focus if required\n\t\tif(this.editFocus === \"true\" || this.editFocus === \"yes\") {\n\t\t\tthis.engine.focus();\n\t\t}\n\t\t// Add widget message listeners\n\t\tthis.addEventListeners([\n\t\t\t{type: \"tm-edit-text-operation\", handler: \"handleEditTextOperationMessage\"}\n\t\t]);\n\t};\n\n\t/*\n\tGet the tiddler being edited and current value\n\t*/\n\tEditTextWidget.prototype.getEditInfo = function() {\n\t\t// Get the edit value\n\t\tvar self = this,\n\t\t\tvalue,\n\t\t\ttype = \"text/plain\",\n\t\t\tupdate;\n\t\tif(this.editIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.editTitle,this.editIndex,this.editDefault);\n\t\t\tupdate = function(value) {\n\t\t\t\tvar data = self.wiki.getTiddlerData(self.editTitle,{});\n\t\t\t\tif(data[self.editIndex] !== value) {\n\t\t\t\t\tdata[self.editIndex] = value;\n\t\t\t\t\tself.wiki.setTiddlerData(self.editTitle,data);\n\t\t\t\t}\n\t\t\t};\n\t\t} else {\n\t\t\t// Get the current tiddler and the field name\n\t\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\t\tif(tiddler) {\n\t\t\t\t// If we've got a tiddler, the value to display is the field string value\n\t\t\t\tvalue = tiddler.getFieldString(this.editField);\n\t\t\t\tif(this.editField === \"text\") {\n\t\t\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, we need to construct a default value for the editor\n\t\t\t\tswitch(this.editField) {\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\tvalue = \"Type the text for the tiddler '\" + this.editTitle + \"'\";\n\t\t\t\t\t\ttype = \"text/vnd.tiddlywiki\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"title\":\n\t\t\t\t\t\tvalue = this.editTitle;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvalue = \"\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif(this.editDefault !== undefined) {\n\t\t\t\t\tvalue = this.editDefault;\n\t\t\t\t}\n\t\t\t}\n\t\t\tupdate = function(value) {\n\t\t\t\tvar tiddler = self.wiki.getTiddler(self.editTitle),\n\t\t\t\t\tupdateFields = {\n\t\t\t\t\t\ttitle: self.editTitle\n\t\t\t\t\t};\n\t\t\t\tupdateFields[self.editField] = value;\n\t\t\t\tself.wiki.addTiddler(new $tw.Tiddler(self.wiki.getCreationFields(),tiddler,updateFields,self.wiki.getModificationFields()));\n\t\t\t};\n\t\t}\n\t\tif(this.editType) {\n\t\t\ttype = this.editType;\n\t\t}\n\t\treturn {value: value || \"\", type: type, update: update};\n\t};\n\n\t/*\n\tHandle an edit text operation message from the toolbar\n\t*/\n\tEditTextWidget.prototype.handleEditTextOperationMessage = function(event) {\n\t\t// Prepare information about the operation\n\t\tvar operation = this.engine.createTextOperation();\n\t\t// Invoke the handler for the selected operation\n\t\tvar handler = this.editorOperations[event.param];\n\t\tif(handler) {\n\t\t\thandler.call(this,event,operation);\n\t\t}\n\t\t// Execute the operation via the engine\n\t\tvar newText = this.engine.executeTextOperation(operation);\n\t\t// Fix the tiddler height and save changes\n\t\tthis.engine.fixHeight();\n\t\tthis.saveChanges(newText);\n\t};\n\n\t/*\n\tCompute the internal state of the widget\n\t*/\n\tEditTextWidget.prototype.execute = function() {\n\t\t// Get our parameters\n\t\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t\tthis.editField = this.getAttribute(\"field\",\"text\");\n\t\tthis.editIndex = this.getAttribute(\"index\");\n\t\tthis.editDefault = this.getAttribute(\"default\");\n\t\tthis.editClass = this.getAttribute(\"class\");\n\t\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\t\tthis.editSize = this.getAttribute(\"size\");\n\t\tthis.editRows = this.getAttribute(\"rows\");\n\t\tthis.editAutoHeight = this.wiki.getTiddlerText(HEIGHT_MODE_TITLE,\"auto\");\n\t\tthis.editAutoHeight = this.getAttribute(\"autoHeight\",this.editAutoHeight === \"auto\" ? \"yes\" : \"no\") === \"yes\";\n\t\tthis.editMinHeight = this.getAttribute(\"minHeight\",DEFAULT_MIN_TEXT_AREA_HEIGHT);\n\t\tthis.editFocusPopup = this.getAttribute(\"focusPopup\");\n\t\tthis.editFocus = this.getAttribute(\"focus\");\n\t\t// Get the default editor element tag and type\n\t\tvar tag,type;\n\t\tif(this.editField === \"text\") {\n\t\t\ttag = \"textarea\";\n\t\t} else {\n\t\t\ttag = \"input\";\n\t\t\tvar fieldModule = $tw.Tiddler.fieldModules[this.editField];\n\t\t\tif(fieldModule && fieldModule.editTag) {\n\t\t\t\ttag = fieldModule.editTag;\n\t\t\t}\n\t\t\tif(fieldModule && fieldModule.editType) {\n\t\t\t\ttype = fieldModule.editType;\n\t\t\t}\n\t\t\ttype = type || \"text\";\n\t\t}\n\t\t// Get the rest of our parameters\n\t\tthis.editTag = this.getAttribute(\"tag\",tag);\n\t\tthis.editType = this.getAttribute(\"type\",type);\n\t\t// Make the child widgets\n\t\tthis.makeChildWidgets();\n\t\t// Determine whether to show the toolbar\n\t\tthis.editShowToolbar = this.wiki.getTiddlerText(ENABLE_TOOLBAR_TITLE,\"yes\");\n\t\tthis.editShowToolbar = (this.editShowToolbar === \"yes\") && !!(this.children && this.children.length > 0) && (!this.document.isTiddlyWikiFakeDom);\n\t};\n\n\t/*\n\tSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n\t*/\n\tEditTextWidget.prototype.refresh = function(changedTiddlers) {\n\t\tvar changedAttributes = this.computeAttributes();\n\t\t// Completely rerender if any of our attributes have changed\n\t\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.placeholder || changedAttributes.size || changedAttributes.autoHeight || changedAttributes.minHeight || changedAttributes.focusPopup ||  changedAttributes.rows || changedTiddlers[HEIGHT_MODE_TITLE] || changedTiddlers[ENABLE_TOOLBAR_TITLE]) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t\t} else if(changedTiddlers[this.editTitle]) {\n\t\t\tvar editInfo = this.getEditInfo();\n\t\t\tthis.updateEditor(editInfo.value,editInfo.type);\n\t\t}\n\t\tthis.engine.fixHeight();\n\t\tif(this.editShowToolbar) {\n\t\t\treturn this.refreshChildren(changedTiddlers);\t\t\t\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\t/*\n\tUpdate the editor with new text. This method is separate from updateEditorDomNode()\n\tso that subclasses can override updateEditor() and still use updateEditorDomNode()\n\t*/\n\tEditTextWidget.prototype.updateEditor = function(text,type) {\n\t\tthis.updateEditorDomNode(text,type);\n\t};\n\n\t/*\n\tUpdate the editor dom node with new text\n\t*/\n\tEditTextWidget.prototype.updateEditorDomNode = function(text,type) {\n\t\tthis.engine.setText(text,type);\n\t};\n\n\t/*\n\tSave changes back to the tiddler store\n\t*/\n\tEditTextWidget.prototype.saveChanges = function(text) {\n\t\tvar editInfo = this.getEditInfo();\n\t\tif(text !== editInfo.value) {\n\t\t\teditInfo.update(text);\n\t\t}\n\t};\n\n\t/*\n\tHandle a dom \"keydown\" event, which we'll bubble up to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.handleKeydownEvent = function(event) {\n\t\t// Check for a keyboard shortcut\n\t\tif(this.toolbarNode) {\n\t\t\tvar shortcutElements = this.toolbarNode.querySelectorAll(\"[data-tw-keyboard-shortcut]\");\n\t\t\tfor(var index=0; index<shortcutElements.length; index++) {\n\t\t\t\tvar el = shortcutElements[index],\n\t\t\t\t\tshortcutData = el.getAttribute(\"data-tw-keyboard-shortcut\"),\n\t\t\t\t\tkeyInfoArray = $tw.keyboardManager.parseKeyDescriptors(shortcutData,{\n\t\t\t\t\t\twiki: this.wiki\n\t\t\t\t\t});\n\t\t\t\tif($tw.keyboardManager.checkKeyDescriptors(event,keyInfoArray)) {\n\t\t\t\t\tvar clickEvent = this.document.createEvent(\"Events\");\n\t\t\t\t    clickEvent.initEvent(\"click\",true,false);\n\t\t\t\t    el.dispatchEvent(clickEvent);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\treturn true;\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// Propogate the event to the container\n\t\tif(this.propogateKeydownEvent(event)) {\n\t\t\t// Ignore the keydown if it was already handled\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\t// Otherwise, process the keydown normally\n\t\treturn false;\n\t};\n\n\t/*\n\tPropogate keydown events to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.propogateKeydownEvent = function(event) {\n\t\tvar newEvent = this.document.createEventObject ? this.document.createEventObject() : this.document.createEvent(\"Events\");\n\t\tif(newEvent.initEvent) {\n\t\t\tnewEvent.initEvent(\"keydown\", true, true);\n\t\t}\n\t\tnewEvent.keyCode = event.keyCode;\n\t\tnewEvent.which = event.which;\n\t\tnewEvent.metaKey = event.metaKey;\n\t\tnewEvent.ctrlKey = event.ctrlKey;\n\t\tnewEvent.altKey = event.altKey;\n\t\tnewEvent.shiftKey = event.shiftKey;\n\t\treturn !this.parentDomNode.dispatchEvent(newEvent);\n\t};\n\n\treturn EditTextWidget;\n\n}\n\nexports.editTextWidgetFactory = editTextWidgetFactory;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/operations/bitmap/clear.js": {
            "title": "$:/core/modules/editor/operations/bitmap/clear.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/clear.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to clear the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"clear\"] = function(event) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.globalAlpha = 1;\n\tctx.fillStyle = event.paramObject.colour || \"white\";\n\tctx.fillRect(0,0,this.canvasDomNode.width,this.canvasDomNode.height);\n\t// Save changes\n\tthis.strokeEnd();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/resize.js": {
            "title": "$:/core/modules/editor/operations/bitmap/resize.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/resize.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to resize the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"resize\"] = function(event) {\n\t// Get the new width\n\tvar newWidth = parseInt(event.paramObject.width || this.canvasDomNode.width,10),\n\t\tnewHeight = parseInt(event.paramObject.height || this.canvasDomNode.height,10);\n\t// Update if necessary\n\tif(newWidth > 0 && newHeight > 0 && !(newWidth === this.currCanvas.width && newHeight === this.currCanvas.height)) {\n\t\tthis.changeCanvasSize(newWidth,newHeight);\n\t}\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/rotate-left.js": {
            "title": "$:/core/modules/editor/operations/bitmap/rotate-left.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/rotate-left.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to rotate the image left by 90 degrees\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"rotate-left\"] = function(event) {\n\t// Rotate the canvas left by 90 degrees\n\tthis.rotateCanvasLeft();\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/text/excise.js": {
            "title": "$:/core/modules/editor/operations/text/excise.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/excise.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to excise the selection to a new tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"excise\"] = function(event,operation) {\n\tvar editTiddler = this.wiki.getTiddler(this.editTitle),\n\t\teditTiddlerTitle = this.editTitle;\n\tif(editTiddler && editTiddler.fields[\"draft.of\"]) {\n\t\teditTiddlerTitle = editTiddler.fields[\"draft.of\"];\n\t}\n\tvar excisionTitle = event.paramObject.title || this.wiki.generateNewTitle(\"New Excision\");\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\tthis.wiki.getModificationFields(),\n\t\t{\n\t\t\ttitle: excisionTitle,\n\t\t\ttext: operation.selection,\n\t\t\ttags: event.paramObject.tagnew === \"yes\" ?  [editTiddlerTitle] : []\n\t\t}\n\t));\n\toperation.replacement = excisionTitle;\n\tswitch(event.paramObject.type || \"transclude\") {\n\t\tcase \"transclude\":\n\t\t\toperation.replacement = \"{{\" + operation.replacement+ \"}}\";\n\t\t\tbreak;\n\t\tcase \"link\":\n\t\t\toperation.replacement = \"[[\" + operation.replacement+ \"]]\";\n\t\t\tbreak;\n\t\tcase \"macro\":\n\t\t\toperation.replacement = \"<<\" + (event.paramObject.macro || \"translink\") + \" \\\"\\\"\\\"\" + operation.replacement + \"\\\"\\\"\\\">>\";\n\t\t\tbreak;\n\t}\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/make-link.js": {
            "title": "$:/core/modules/editor/operations/text/make-link.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/make-link.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to make a link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"make-link\"] = function(event,operation) {\n\tif(operation.selection) {\n\t\toperation.replacement = \"[[\" + operation.selection + \"|\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t} else {\n\t\toperation.replacement = \"[[\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t}\n\toperation.newSelStart = operation.selStart + operation.replacement.length;\n\toperation.newSelEnd = operation.newSelStart;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/prefix-lines.js": {
            "title": "$:/core/modules/editor/operations/text/prefix-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/prefix-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to add a prefix to the selected lines\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"prefix-lines\"] = function(event,operation) {\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Compose the required prefix\n\tvar prefix = $tw.utils.repeat(event.paramObject.character,event.paramObject.count);\n\t// Process each line\n\tvar lines = operation.text.substring(operation.cutStart,operation.cutEnd).split(/\\r?\\n/mg);\n\t$tw.utils.each(lines,function(line,index) {\n\t\t// Remove and count any existing prefix characters\n\t\tvar count = 0;\n\t\twhile(line.charAt(0) === event.paramObject.character) {\n\t\t\tline = line.substring(1);\n\t\t\tcount++;\n\t\t}\n\t\t// Remove any whitespace\n\t\twhile(line.charAt(0) === \" \") {\n\t\t\tline = line.substring(1);\n\t\t}\n\t\t// We're done if we removed the exact required prefix, otherwise add it\n\t\tif(count !== event.paramObject.count) {\n\t\t\t// Apply the prefix\n\t\t\tline =  prefix + \" \" + line;\n\t\t}\n\t\t// Save the modified line\n\t\tlines[index] = line;\n\t});\n\t// Stitch the replacement text together and set the selection\n\toperation.replacement = lines.join(\"\\n\");\n\tif(lines.length === 1) {\n\t\toperation.newSelStart = operation.cutStart + operation.replacement.length;\n\t\toperation.newSelEnd = operation.newSelStart;\n\t} else {\n\t\toperation.newSelStart = operation.cutStart;\n\t\toperation.newSelEnd = operation.newSelStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-all.js": {
            "title": "$:/core/modules/editor/operations/text/replace-all.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-all.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the entire text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-all\"] = function(event,operation) {\n\toperation.cutStart = 0;\n\toperation.cutEnd = operation.text.length;\n\toperation.replacement = event.paramObject.text;\n\toperation.newSelStart = 0;\n\toperation.newSelEnd = operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-selection.js": {
            "title": "$:/core/modules/editor/operations/text/replace-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the selection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-selection\"] = function(event,operation) {\n\toperation.replacement = event.paramObject.text;\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-lines.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selected lines with a prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-lines\"] = function(event,operation) {\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Add the prefix and suffix\n\toperation.replacement = event.paramObject.prefix + \"\\n\" +\n\t\t\t\toperation.text.substring(operation.cutStart,operation.cutEnd) + \"\\n\" +\n\t\t\t\tevent.paramObject.suffix + \"\\n\";\n\toperation.newSelStart = operation.cutStart + event.paramObject.prefix.length + 1;\n\toperation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-selection.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selection with the specified prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-selection\"] = function(event,operation) {\n\tif(operation.selStart === operation.selEnd) {\n\t\t// No selection; check if we're within the prefix/suffix\n\t\tif(operation.text.substring(operation.selStart - event.paramObject.prefix.length,operation.selStart + event.paramObject.suffix.length) === event.paramObject.prefix + event.paramObject.suffix) {\n\t\t\t// Remove the prefix and suffix unless they comprise the entire text\n\t\t\tif(operation.selStart > event.paramObject.prefix.length || (operation.selEnd + event.paramObject.suffix.length) < operation.text.length ) {\n\t\t\t\toperation.cutStart = operation.selStart - event.paramObject.prefix.length;\n\t\t\t\toperation.cutEnd = operation.selEnd + event.paramObject.suffix.length;\n\t\t\t\toperation.replacement = \"\";\n\t\t\t\toperation.newSelStart = operation.cutStart;\n\t\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t\t}\n\t\t} else {\n\t\t\t// Wrap the cursor instead\n\t\t\toperation.cutStart = operation.selStart;\n\t\t\toperation.cutEnd = operation.selEnd;\n\t\t\toperation.replacement = event.paramObject.prefix + event.paramObject.suffix;\n\t\t\toperation.newSelStart = operation.selStart + event.paramObject.prefix.length;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t}\n\t} else if(operation.text.substring(operation.selStart,operation.selStart + event.paramObject.prefix.length) === event.paramObject.prefix && operation.text.substring(operation.selEnd - event.paramObject.suffix.length,operation.selEnd) === event.paramObject.suffix) {\n\t\t// Prefix and suffix are already present, so remove them\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = operation.selection.substring(event.paramObject.prefix.length,operation.selection.length - event.paramObject.suffix.length);\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t} else {\n\t\t// Add the prefix and suffix\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = event.paramObject.prefix + operation.selection + event.paramObject.suffix;\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/filters/addprefix.js": {
            "title": "$:/core/modules/filters/addprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a prefix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand + title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/addsuffix.js": {
            "title": "$:/core/modules/filters/addsuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addsuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a suffix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addsuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title + operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/after.js": {
            "title": "$:/core/modules/filters/after.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/after.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is after the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.after = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index === -1 || index > (results.length - 2)) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index + 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/all/current.js": {
            "title": "$:/core/modules/filters/all/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/current.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar currTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(currTiddlerTitle) {\n\t\treturn [currTiddlerTitle];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/missing.js": {
            "title": "$:/core/modules/filters/all/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/missing.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\treturn options.wiki.getMissingTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/orphans.js": {
            "title": "$:/core/modules/filters/all/orphans.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/orphans.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[orphans]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphans = function(source,prefix,options) {\n\treturn options.wiki.getOrphanTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/shadows.js": {
            "title": "$:/core/modules/filters/all/shadows.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/shadows.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[shadows]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadows = function(source,prefix,options) {\n\treturn options.wiki.allShadowTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tags.js": {
            "title": "$:/core/modules/filters/all/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tags.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tags]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,prefix,options) {\n\treturn Object.keys(options.wiki.getTagMap());\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tiddlers.js": {
            "title": "$:/core/modules/filters/all/tiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tiddlers.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddlers = function(source,prefix,options) {\n\treturn options.wiki.allTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all.js": {
            "title": "$:/core/modules/filters/all.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for selecting tiddlers\n\n[all[shadows+tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar allFilterOperators;\n\nfunction getAllFilterOperators() {\n\tif(!allFilterOperators) {\n\t\tallFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"allfilteroperator\",allFilterOperators);\n\t}\n\treturn allFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.all = function(source,operator,options) {\n\t// Get our suboperators\n\tvar allFilterOperators = getAllFilterOperators();\n\t// Cycle through the suboperators accumulating their results\n\tvar results = [],\n\t\tsubops = operator.operand.split(\"+\");\n\t// Check for common optimisations\n\tif(subops.length === 1 && subops[0] === \"\") {\n\t\treturn source;\n\t} else if(subops.length === 1 && subops[0] === \"tiddlers\") {\n\t\treturn options.wiki.each;\n\t} else if(subops.length === 1 && subops[0] === \"shadows\") {\n\t\treturn options.wiki.eachShadow;\n\t} else if(subops.length === 2 && subops[0] === \"tiddlers\" && subops[1] === \"shadows\") {\n\t\treturn options.wiki.eachTiddlerPlusShadows;\n\t} else if(subops.length === 2 && subops[0] === \"shadows\" && subops[1] === \"tiddlers\") {\n\t\treturn options.wiki.eachShadowPlusTiddlers;\n\t}\n\t// Do it the hard way\n\tfor(var t=0; t<subops.length; t++) {\n\t\tvar subop = allFilterOperators[subops[t]];\n\t\tif(subop) {\n\t\t\t$tw.utils.pushTop(results,subop(source,operator.prefix,options));\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/backlinks.js": {
            "title": "$:/core/modules/filters/backlinks.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/backlinks.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the backlinks from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.backlinks = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerBacklinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/before.js": {
            "title": "$:/core/modules/filters/before.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/before.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is before the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.before = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index <= 0) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index - 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/commands.js": {
            "title": "$:/core/modules/filters/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/commands.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the commands available in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.commands = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.commands,function(commandInfo,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/count.js": {
            "title": "$:/core/modules/filters/count.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/count.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the number of entries in the current list.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.count = function(source,operator,options) {\n\tvar count = 0;\n\tsource(function(tiddler,title) {\n\t\tcount++;\n\t});\n\treturn [count + \"\"];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/days.js": {
            "title": "$:/core/modules/filters/days.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/days.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a specified date field within a specified date interval.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.days = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\tdayInterval = (parseInt(operator.operand,10)||0),\n\t\tdayIntervalSign = $tw.utils.sign(dayInterval),\n\t\ttargetTimeStamp = (new Date()).setHours(0,0,0,0) + 1000*60*60*24*dayInterval,\n\t\tisWithinDays = function(dateField) {\n\t\t\tvar sign = $tw.utils.sign(targetTimeStamp - (new Date(dateField)).setHours(0,0,0,0));\n\t\t\treturn sign === 0 || sign === dayIntervalSign;\n\t\t};\n\n\tif(operator.prefix === \"!\") {\n\t\ttargetTimeStamp = targetTimeStamp - 1000*60*60*24*dayIntervalSign;\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(!isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/each.js": {
            "title": "$:/core/modules/filters/each.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/each.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique value of the specified field.\nWith suffix \"list\", selects all tiddlers that are values in a specified list field.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.each = function(source,operator,options) {\n\tvar results =[] ,\n\tvalue,values = {},\n\tfield = operator.operand || \"title\";\n\tif(operator.suffix === \"value\" && field === \"title\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(values,title)) {\n\t\t\t\tvalues[title] = true;\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else if(operator.suffix !== \"list-item\") {\n\t\tif(field === \"title\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && !$tw.utils.hop(values,title)) {\n\t\t\t\t\tvalues[title] = true;\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvalue = tiddler.getFieldString(field);\n\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\t$tw.utils.each(\n\t\t\t\t\toptions.wiki.getTiddlerList(title,field),\n\t\t\t\t\tfunction(value) {\n\t\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\t\tresults.push(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/eachday.js": {
            "title": "$:/core/modules/filters/eachday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/eachday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique day covered by the specified date field\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.eachday = function(source,operator,options) {\n\tvar results = [],\n\t\tvalues = [],\n\t\tfieldName = operator.operand || \"modified\";\n\t// Function to convert a date/time to a date integer\n\tvar toDate = function(value) {\n\t\tvalue = (new Date(value)).setHours(0,0,0,0);\n\t\treturn value+0;\n\t};\n\tsource(function(tiddler,title) {\n\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\tvar value = toDate($tw.utils.parseDate(tiddler.fields[fieldName]));\n\t\t\tif(values.indexOf(value) === -1) {\n\t\t\t\tvalues.push(value);\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editiondescription.js": {
            "title": "$:/core/modules/filters/editiondescription.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editiondescription.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the descriptions of the specified edition names\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editiondescription = function(source,operator,options) {\n\tvar results = [],\n\t\teditionInfo = $tw.utils.getEditionInfo();\n\tif(editionInfo) {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(editionInfo,title)) {\n\t\t\t\tresults.push(editionInfo[title].description || \"\");\t\t\t\t\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editions.js": {
            "title": "$:/core/modules/filters/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editions.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the available editions in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editions = function(source,operator,options) {\n\tvar results = [],\n\t\teditionInfo = $tw.utils.getEditionInfo();\n\tif(editionInfo) {\n\t\t$tw.utils.each(editionInfo,function(info,name) {\n\t\t\tresults.push(name);\n\t\t});\n\t}\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/decodeuricomponent.js": {
            "title": "$:/core/modules/filters/decodeuricomponent.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/decodeuricomponent.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for applying decodeURIComponent() to each item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter functions\n*/\n\nexports.decodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(decodeURIComponent(title));\n\t});\n\treturn results;\n};\n\nexports.encodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURIComponent(title));\n\t});\n\treturn results;\n};\n\nexports.decodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(decodeURI(title));\n\t});\n\treturn results;\n};\n\nexports.encodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURI(title));\n\t});\n\treturn results;\n};\n\nexports.decodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlDecode(title));\n\t});\n\treturn results;\n};\n\nexports.encodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlEncode(title));\n\t});\n\treturn results;\n};\n\nexports.stringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.stringify(title));\n\t});\n\treturn results;\n};\n\nexports.jsonstringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.jsonStringify(title));\n\t});\n\treturn results;\n};\n\nexports.escaperegexp = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.escapeRegExp(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/enlist.js": {
            "title": "$:/core/modules/filters/enlist.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/enlist.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand parsed as a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.enlist = function(source,operator,options) {\n\tvar list = $tw.utils.parseStringArray(operator.operand);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/field.js": {
            "title": "$:/core/modules/filters/field.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/field.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.field = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || operator.operator || \"title\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text !== operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !!operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text === operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/fields.js": {
            "title": "$:/core/modules/filters/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/fields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.fields = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tfor(var fieldName in tiddler.fields) {\n\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/get.js": {
            "title": "$:/core/modules/filters/get.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/get.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing tiddler titles by the value of the field specified in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.get = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tvar value = tiddler.getFieldString(operator.operand);\n\t\t\tif(value) {\n\t\t\t\tresults.push(value);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/getindex.js": {
            "title": "$:/core/modules/filters/getindex.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/getindex.js\ntype: application/javascript\nmodule-type: filteroperator\n\nreturns the value at a given index of datatiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getindex = function(source,operator,options) {\n\tvar data,title,results = [];\n\tif(operator.operand){\n\t\tsource(function(tiddler,title) {\n\t\t\ttitle = tiddler ? tiddler.fields.title : title;\n\t\t\tdata = options.wiki.extractTiddlerDataItem(tiddler,operator.operand);\n\t\t\tif(data) {\n\t\t\t\tresults.push(data);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/has.js": {
            "title": "$:/core/modules/filters/has.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/has.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a tiddler has the specified field\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.has = function(source,operator,options) {\n\tvar results = [],\n\t\tinvert = operator.prefix === \"!\";\n\n\tif(operator.suffix === \"field\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(tiddler.fields,operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,operator.operand) || (tiddler.fields[operator.operand] === \"\")) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand) && !(tiddler.fields[operator.operand] === \"\" || tiddler.fields[operator.operand].length === 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/haschanged.js": {
            "title": "$:/core/modules/filters/haschanged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/haschanged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returns tiddlers from the list that have a non-zero changecount.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.haschanged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) === 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) > 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/indexes.js": {
            "title": "$:/core/modules/filters/indexes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/indexes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the indexes of a data tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.indexes = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar data = options.wiki.getTiddlerDataCached(title);\n\t\tif(data) {\n\t\t\t$tw.utils.pushTop(results,Object.keys(data));\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/insertbefore.js": {
            "title": "$:/core/modules/filters/insertbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/insertbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nInsert an item before another item in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.insertbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar target = options.widget && options.widget.getVariable(operator.suffix || \"currentTiddler\");\n\tif(target !== operator.operand) {\n\t\t// Remove the entry from the list if it is present\n\t\tvar pos = results.indexOf(operator.operand);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,1);\n\t\t}\n\t\t// Insert the entry before the target marker\n\t\tpos = results.indexOf(target);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,0,operator.operand);\n\t\t} else {\n\t\t\tresults.push(operator.operand);\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/is/current.js": {
            "title": "$:/core/modules/filters/is/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/current.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar results = [],\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title !== currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title === currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/image.js": {
            "title": "$:/core/modules/filters/is/image.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/image.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[image]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.image = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/missing.js": {
            "title": "$:/core/modules/filters/is/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/missing.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/orphan.js": {
            "title": "$:/core/modules/filters/is/orphan.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/orphan.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[orphan]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphan = function(source,prefix,options) {\n\tvar results = [],\n\t\torphanTitles = options.wiki.getOrphanTitles();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) !== -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/shadow.js": {
            "title": "$:/core/modules/filters/is/shadow.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/shadow.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[shadow]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadow = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/system.js": {
            "title": "$:/core/modules/filters/is/system.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/system.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[system]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.system = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tag.js": {
            "title": "$:/core/modules/filters/is/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tag.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tag]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,prefix,options) {\n\tvar results = [],\n\t\ttagMap = options.wiki.getTagMap();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tiddler.js": {
            "title": "$:/core/modules/filters/is/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tiddler.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tiddler]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddler = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is.js": {
            "title": "$:/core/modules/filters/is.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking tiddler properties\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar isFilterOperators;\n\nfunction getIsFilterOperators() {\n\tif(!isFilterOperators) {\n\t\tisFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"isfilteroperator\",isFilterOperators);\n\t}\n\treturn isFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.is = function(source,operator,options) {\n\n\n\tif( !operator.operand) {\n\t\t// Return all tiddlers if the operand is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n\n\t// Get our isfilteroperators\n\tvar isFilterOperators = getIsFilterOperators(),\n\t    subops = operator.operand.split(\"+\"),\n\t\tfilteredResults = {},\n\t\tresults = [];\n\tfor (var t=0; t<subops.length; t++) {\n\t\tvar subop = isFilterOperators[subops[t]];\n\t\tif(subop) {\n\t\t\tfilteredResults[subops[t]] = subop(source,operator.prefix,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/IsFilterOperator\")];\n\t\t}\n\t\t\n\t}\n\t\n    source(function(tiddler,title) {\n        for (var t=0; t<subops.length; t++) {\n            if (filteredResults[subops[t]].indexOf(title) != -1){\n                results.push(title);\n                break;\n            }\n        }\n    });\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/limit.js": {
            "title": "$:/core/modules/filters/limit.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/limit.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for chopping the results to a specified maximum number of entries\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.limit = function(source,operator,options) {\n\tvar results = [];\n\t// Convert to an array\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Slice the array if necessary\n\tvar limit = Math.min(results.length,parseInt(operator.operand,10));\n\tif(operator.prefix === \"!\") {\n\t\tresults = results.slice(-limit);\n\t} else {\n\t\tresults = results.slice(0,limit);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/links.js": {
            "title": "$:/core/modules/filters/links.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/links.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the links from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.links = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerLinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/list.js": {
            "title": "$:/core/modules/filters/list.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/list.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddlers whose title is listed in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.list = function(source,operator,options) {\n\tvar results = [],\n\t\ttr = $tw.utils.parseTextReference(operator.operand),\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tlist = options.wiki.getTiddlerList(tr.title || currTiddlerTitle,tr.field,tr.index);\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults = list;\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listed.js": {
            "title": "$:/core/modules/filters/listed.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listed.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that have the selected tiddlers in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.listed = function(source,operator,options) {\n\tvar field = operator.operand || \"list\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.findListingsOfTiddler(title,field));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listops.js": {
            "title": "$:/core/modules/filters/listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for manipulating the current selection list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.order = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.operand.toLowerCase() === \"reverse\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.unshift(title);\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nReverse list\n*/\nexports.reverse = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.unshift(title);\n\t});\n\treturn results;\n};\n\n/*\nFirst entry/entries in list\n*/\nexports.first = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,count);\n};\n\n/*\nLast entry/entries in list\n*/\nexports.last = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(-count);\n};\n\n/*\nAll but the first entry/entries of the list\n*/\nexports.rest = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count);\n};\nexports.butfirst = exports.rest;\nexports.bf = exports.rest;\n\n/*\nAll but the last entry/entries of the list\n*/\nexports.butlast = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,-count);\n};\nexports.bl = exports.butlast;\n\n/*\nThe nth member of the list\n*/\nexports.nth = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count - 1,count);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/lookup.js": {
            "title": "$:/core/modules/filters/lookup.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/lookup.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that looks up values via a title prefix\n\n[lookup:<field>[<prefix>]]\n\nPrepends the prefix to the selected items and returns the specified field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.lookup = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.getTiddlerText(operator.operand + title) || options.wiki.getTiddlerText(operator.operand + operator.suffix));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/minlength.js": {
            "title": "$:/core/modules/filters/minlength.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/minlength.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for filtering out titles that don't meet the minimum length in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.minlength = function(source,operator,options) {\n\tvar results = [],\n\t\tminLength = parseInt(operator.operand || \"\",10) || 0;\n\tsource(function(tiddler,title) {\n\t\tif(title.length >= minLength) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/modules.js": {
            "title": "$:/core/modules/filters/modules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/modules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the modules of a given type in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.modules = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.each($tw.modules.types[title],function(moduleInfo,moduleName) {\n\t\t\tresults.push(moduleName);\n\t\t});\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/moduletypes.js": {
            "title": "$:/core/modules/filters/moduletypes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/moduletypes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the module types in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.moduletypes = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.modules.types,function(moduleInfo,type) {\n\t\tresults.push(type);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/next.js": {
            "title": "$:/core/modules/filters/next.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/next.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs next in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.next = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch++;\n\t\tif(match > 0 && match < list.length) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/plugintiddlers.js": {
            "title": "$:/core/modules/filters/plugintiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/plugintiddlers.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the shadow tiddlers within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.plugintiddlers = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar pluginInfo = options.wiki.getPluginInfo(title) || options.wiki.getTiddlerDataCached(title,{tiddlers:[]});\n\t\tif(pluginInfo && pluginInfo.tiddlers) {\n\t\t\t$tw.utils.each(pluginInfo.tiddlers,function(fields,title) {\n\t\t\t\tresults.push(title);\n\t\t\t});\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/prefix.js": {
            "title": "$:/core/modules/filters/prefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/prefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title starts with a prefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.prefix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/previous.js": {
            "title": "$:/core/modules/filters/previous.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/previous.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs immediately prior in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.previous = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch--;\n\t\tif(match >= 0) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/regexp.js": {
            "title": "$:/core/modules/filters/regexp.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/regexp.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for regexp matching\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.regexp = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"title\").toLowerCase(),\n\t\tregexpString, regexp, flags = \"\", match,\n\t\tgetFieldString = function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\treturn tiddler.getFieldString(fieldname);\n\t\t\t} else if(fieldname === \"title\") {\n\t\t\t\treturn title;\n\t\t\t} else {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t};\n\t// Process flags and construct regexp\n\tregexpString = operator.operand;\n\tmatch = /^\\(\\?([gim]+)\\)/.exec(regexpString);\n\tif(match) {\n\t\tflags = match[1];\n\t\tregexpString = regexpString.substr(match[0].length);\n\t} else {\n\t\tmatch = /\\(\\?([gim]+)\\)$/.exec(regexpString);\n\t\tif(match) {\n\t\t\tflags = match[1];\n\t\t\tregexpString = regexpString.substr(0,regexpString.length - match[0].length);\n\t\t}\n\t}\n\ttry {\n\t\tregexp = new RegExp(regexpString,flags);\n\t} catch(e) {\n\t\treturn [\"\" + e];\n\t}\n\t// Process the incoming tiddlers\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removeprefix.js": {
            "title": "$:/core/modules/filters/removeprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removeprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a prefix from each title in the list. Titles that do not start with the prefix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removeprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removesuffix.js": {
            "title": "$:/core/modules/filters/removesuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removesuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a suffix from each title in the list. Titles that do not end with the suffix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removesuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title.substr(-operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(0,title.length - operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sameday.js": {
            "title": "$:/core/modules/filters/sameday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sameday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a modified date field on the same day as the provided value.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sameday = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\ttargetDate = (new Date($tw.utils.parseDate(operator.operand))).setHours(0,0,0,0);\n\t// Function to convert a date/time to a date integer\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(tiddler.getFieldDay(fieldName) === targetDate) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/search.js": {
            "title": "$:/core/modules/filters/search.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/search.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for searching for the text in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.search = function(source,operator,options) {\n\tvar invert = operator.prefix === \"!\";\n\tif(operator.suffix) {\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert,\n\t\t\tfield: operator.suffix\n\t\t});\n\t} else {\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/shadowsource.js": {
            "title": "$:/core/modules/filters/shadowsource.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/shadowsource.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the source plugins for shadow tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadowsource = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar source = options.wiki.getShadowSource(title);\n\t\tif(source) {\n\t\t\t$tw.utils.pushTop(results,source);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sort.js": {
            "title": "$:/core/modules/filters/sort.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sort.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,false);\n\treturn results;\n};\n\nexports.nsort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,true);\n\treturn results;\n};\n\nexports.sortan = function(source, operator, options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results, operator.operand || \"title\", operator.prefix === \"!\",false,false,true);\n\treturn results;\n};\n\nexports.sortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,false);\n\treturn results;\n};\n\nexports.nsortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,true);\n\treturn results;\n};\n\nvar prepare_results = function (source) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/splitbefore.js": {
            "title": "$:/core/modules/filters/splitbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that splits each result on the first occurance of the specified separator and returns the unique values.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar parts = title.split(operator.operand);\n\t\tif(parts.length === 1) {\n\t\t\t$tw.utils.pushTop(results,parts[0]);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,parts[0] + operator.operand);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/storyviews.js": {
            "title": "$:/core/modules/filters/storyviews.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/storyviews.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the story views in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.storyviews = function(source,operator,options) {\n\tvar results = [],\n\t\tstoryviews = {};\n\t$tw.modules.applyMethods(\"storyview\",storyviews);\n\t$tw.utils.each(storyviews,function(info,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/subtiddlerfields.js": {
            "title": "$:/core/modules/filters/subtiddlerfields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/subtiddlerfields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected subtiddlers of the plugin named in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subtiddlerfields = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar subtiddler = options.wiki.getSubTiddler(operator.operand,title);\n\t\tif(subtiddler) {\n\t\t\tfor(var fieldName in subtiddler.fields) {\n\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/suffix.js": {
            "title": "$:/core/modules/filters/suffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/suffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title ends with a suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.suffix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tag.js": {
            "title": "$:/core/modules/filters/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tag.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking for the presence of a tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,operator,options) {\n\tvar results = [];\n\tif((operator.suffix || \"\").toLowerCase() === \"strict\" && !operator.operand) {\n\t\t// New semantics:\n\t\t// Always return copy of input if operator.operand is missing\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t} else {\n\t\t// Old semantics:\n\t\tvar tiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\tif(operator.prefix === \"!\") {\n\t\t\t// Returns a copy of the input if operator.operand is missing\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddlers.indexOf(title) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// Returns empty results if operator.operand is missing\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddlers.indexOf(title) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t\tresults = options.wiki.sortByList(results,operator.operand);\n\t\t}\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tagging.js": {
            "title": "$:/core/modules/filters/tagging.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tagging.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that are tagged with the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tagging = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlersWithTag(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tags.js": {
            "title": "$:/core/modules/filters/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tags.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the tags of the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,operator,options) {\n\tvar tags = {};\n\tsource(function(tiddler,title) {\n\t\tvar t, length;\n\t\tif(tiddler && tiddler.fields.tags) {\n\t\t\tfor(t=0, length=tiddler.fields.tags.length; t<length; t++) {\n\t\t\t\ttags[tiddler.fields.tags[t]] = true;\n\t\t\t}\n\t\t}\n\t});\n\treturn Object.keys(tags);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/title.js": {
            "title": "$:/core/modules/filters/title.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/title.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing title fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.title = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields.title !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults.push(operator.operand);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/untagged.js": {
            "title": "$:/core/modules/filters/untagged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/untagged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the selected tiddlers that are untagged\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.untagged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length > 0) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !tiddler.hasField(\"tags\") || ($tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length === 0)) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/wikiparserrules.js": {
            "title": "$:/core/modules/filters/wikiparserrules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/wikiparserrules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the wiki parser rules in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.wikiparserrules = function(source,operator,options) {\n\tvar results = [],\n\t\toperand = operator.operand;\n\t$tw.utils.each($tw.modules.types.wikirule,function(mod) {\n\t\tvar exp = mod.exports;\n\t\tif(!operand || exp.types[operand]) {\n\t\t\tresults.push(exp.name);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/x-listops.js": {
            "title": "$:/core/modules/filters/x-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/x-listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nExtended filter operators to manipulate the current list.\n\n\\*/\n(function () {\n\n    /*jslint node: true, browser: true */\n    /*global $tw: false */\n    \"use strict\";\n\n    /*\n    Fetch titles from the current list\n    */\n    var prepare_results = function (source) {\n    var results = [];\n        source(function (tiddler, title) {\n            results.push(title);\n        });\n        return results;\n    };\n\n    /*\n    Moves a number of items from the tail of the current list before the item named in the operand\n    */\n    exports.putbefore = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand),\n            count = $tw.utils.getInt(operator.suffix,1);\n        return (index === -1) ?\n            results.slice(0, -1) :\n            results.slice(0, index).concat(results.slice(-count)).concat(results.slice(index, -count));\n    };\n\n    /*\n    Moves a number of items from the tail of the current list after the item named in the operand\n    */\n    exports.putafter = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand),\n            count = $tw.utils.getInt(operator.suffix,1);\n        return (index === -1) ?\n            results.slice(0, -1) :\n            results.slice(0, index + 1).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n    };\n\n    /*\n    Replaces the item named in the operand with a number of items from the tail of the current list\n    */\n    exports.replace = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand),\n            count = $tw.utils.getInt(operator.suffix,1);\n        return (index === -1) ?\n            results.slice(0, -count) :\n            results.slice(0, index).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n    };\n\n    /*\n    Moves a number of items from the tail of the current list to the head of the list\n    */\n    exports.putfirst = function (source, operator) {\n        var results = prepare_results(source),\n            count = $tw.utils.getInt(operator.suffix,1);\n        return results.slice(-count).concat(results.slice(0, -count));\n    };\n\n    /*\n    Moves a number of items from the head of the current list to the tail of the list\n    */\n    exports.putlast = function (source, operator) {\n        var results = prepare_results(source),\n            count = $tw.utils.getInt(operator.suffix,1);\n        return results.slice(count).concat(results.slice(0, count));\n    };\n\n    /*\n    Moves the item named in the operand a number of places forward or backward in the list\n    */\n    exports.move = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand),\n            count = $tw.utils.getInt(operator.suffix,1),\n            marker = results.splice(index, 1),\n            offset =  (index + count) > 0 ? index + count : 0;\n        return results.slice(0, offset).concat(marker).concat(results.slice(offset));\n    };\n\n    /*\n    Returns the items from the current list that are after the item named in the operand\n    */\n    exports.allafter = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand);\n        return (index === -1 || index > (results.length - 2)) ? [] :\n            (operator.suffix) ? results.slice(index) :\n            results.slice(index + 1);\n    };\n\n    /*\n    Returns the items from the current list that are before the item named in the operand\n    */\n    exports.allbefore = function (source, operator) {\n        var results = prepare_results(source),\n            index = results.indexOf(operator.operand);\n        return (index < 0) ? [] :\n            (operator.suffix) ? results.slice(0, index + 1) :\n            results.slice(0, index);\n    };\n\n    /*\n    Appends the items listed in the operand array to the tail of the current list\n    */\n    exports.append = function (source, operator) {\n        var append = $tw.utils.parseStringArray(operator.operand, \"true\"),\n            results = prepare_results(source),\n            count = parseInt(operator.suffix) || append.length;\n        return (append.length === 0) ? results :\n            (operator.prefix) ? results.concat(append.slice(-count)) :\n            results.concat(append.slice(0, count));\n    };\n\n    /*\n    Prepends the items listed in the operand array to the head of the current list\n    */\n    exports.prepend = function (source, operator) {\n        var prepend = $tw.utils.parseStringArray(operator.operand, \"true\"),\n            results = prepare_results(source),\n            count = $tw.utils.getInt(operator.suffix,prepend.length);\n        return (prepend.length === 0) ? results :\n            (operator.prefix) ? prepend.slice(-count).concat(results) :\n            prepend.slice(0, count).concat(results);\n    };\n\n    /*\n    Returns all items from the current list except the items listed in the operand array\n    */\n    exports.remove = function (source, operator) {\n        var array = $tw.utils.parseStringArray(operator.operand, \"true\"),\n            results = prepare_results(source),\n            count = parseInt(operator.suffix) || array.length,\n            p,\n            len,\n            index;\n        len = array.length - 1;\n        for (p = 0; p < count; ++p) {\n            if (operator.prefix) {\n                index = results.indexOf(array[len - p]);\n            } else {\n                index = results.indexOf(array[p]);\n            }\n            if (index !== -1) {\n                results.splice(index, 1);\n            }\n        }\n        return results;\n    };\n\n    /*\n    Returns all items from the current list sorted in the order of the items in the operand array\n    */\n    exports.sortby = function (source, operator) {\n        var results = prepare_results(source);\n        if (!results || results.length < 2) {\n            return results;\n        }\n        var lookup = $tw.utils.parseStringArray(operator.operand, \"true\");\n        results.sort(function (a, b) {\n            return lookup.indexOf(a) - lookup.indexOf(b);\n        });\n        return results;\n    };\n\n    /*\n    Removes all duplicate items from the current list\n    */\n    exports.unique = function (source, operator) {\n        var results = prepare_results(source);\n        var set = results.reduce(function (a, b) {\n            if (a.indexOf(b) < 0) {\n                a.push(b);\n            }\n            return a;\n        }, []);\n        return set;\n    };\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters.js": {
            "title": "$:/core/modules/filters.js",
            "text": "/*\\\ntitle: $:/core/modules/filters.js\ntype: application/javascript\nmodule-type: wikimethod\n\nAdds tiddler filtering methods to the $tw.Wiki object.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParses an operation (i.e. a run) within a filter string\n\toperators: Array of array of operator nodes into which results should be inserted\n\tfilterString: filter string\n\tp: start position within the string\nReturns the new start position, after the parsed operation\n*/\nfunction parseFilterOperation(operators,filterString,p) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\tthrow \"Missing [ in filter expression\";\n\t}\n\t// Process each operator in turn\n\tdo {\n\t\toperator = {};\n\t\t// Check for an operator prefix\n\t\tif(filterString.charAt(p) === \"!\") {\n\t\t\toperator.prefix = filterString.charAt(p++);\n\t\t}\n\t\t// Get the operator name\n\t\tnextBracketPos = filterString.substring(p).search(/[\\[\\{<\\/]/);\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing [ in filter expression\";\n\t\t}\n\t\tnextBracketPos += p;\n\t\tvar bracket = filterString.charAt(nextBracketPos);\n\t\toperator.operator = filterString.substring(p,nextBracketPos);\n\n\t\t// Any suffix?\n\t\tvar colon = operator.operator.indexOf(':');\n\t\tif(colon > -1) {\n\t\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t\t}\n\t\t// Empty operator means: title\n\t\telse if(operator.operator === \"\") {\n\t\t\toperator.operator = \"title\";\n\t\t}\n\n\t\tp = nextBracketPos + 1;\n\t\tswitch (bracket) {\n\t\t\tcase \"{\": // Curly brackets\n\t\t\t\toperator.indirect = true;\n\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"[\": // Square brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"<\": // Angle brackets\n\t\t\t\toperator.variable = true;\n\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"/\": // regexp brackets\n\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\tif(rexMatch) {\n\t\t\t\t\toperator.regexp = new RegExp(rexMatch[1], rexMatch[2]);\n// DEPRECATION WARNING\nconsole.log(\"WARNING: Filter\",operator.operator,\"has a deprecated regexp operand\",operator.regexp);\n\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow \"Unterminated regular expression in filter expression\";\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing closing bracket in filter expression\";\n\t\t}\n\t\tif(!operator.regexp) {\n\t\t\toperator.operand = filterString.substring(p,nextBracketPos);\n\t\t}\n\t\tp = nextBracketPos + 1;\n\n\t\t// Push this operator\n\t\toperators.push(operator);\n\t} while(filterString.charAt(p) !== \"]\");\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\tthrow \"Missing ] in filter expression\";\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\n/*\nParse a filter string\n*/\nexports.parseFilter = function(filterString) {\n\tfilterString = filterString || \"\";\n\tvar results = [], // Array of arrays of operator nodes {operator:,operand:}\n\t\tp = 0, // Current position in the filter string\n\t\tmatch;\n\tvar whitespaceRegExp = /(\\s+)/mg,\n\t\toperandRegExp = /((?:\\+|\\-)?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg;\n\twhile(p < filterString.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filterString);\n\t\tif(match && match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p < filterString.length) {\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filterString);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\tthrow $tw.language.getString(\"Error/FilterSyntax\");\n\t\t\t}\n\t\t\tvar operation = {\n\t\t\t\tprefix: \"\",\n\t\t\t\toperators: []\n\t\t\t};\n\t\t\tif(match[1]) {\n\t\t\t\toperation.prefix = match[1];\n\t\t\t\tp++;\n\t\t\t}\n\t\t\tif(match[2]) { // Opening square bracket\n\t\t\t\tp = parseFilterOperation(operation.operators,filterString,p);\n\t\t\t} else {\n\t\t\t\tp = match.index + match[0].length;\n\t\t\t}\n\t\t\tif(match[3] || match[4] || match[5]) { // Double quoted string, single quoted string or unquoted title\n\t\t\t\toperation.operators.push(\n\t\t\t\t\t{operator: \"title\", operand: match[3] || match[4] || match[5]}\n\t\t\t\t);\n\t\t\t}\n\t\t\tresults.push(operation);\n\t\t}\n\t}\n\treturn results;\n};\n\nexports.getFilterOperators = function() {\n\tif(!this.filterOperators) {\n\t\t$tw.Wiki.prototype.filterOperators = {};\n\t\t$tw.modules.applyMethods(\"filteroperator\",this.filterOperators);\n\t}\n\treturn this.filterOperators;\n};\n\nexports.filterTiddlers = function(filterString,widget,source) {\n\tvar fn = this.compileFilter(filterString);\n\treturn fn.call(this,source,widget);\n};\n\n/*\nCompile a filter into a function with the signature fn(source,widget) where:\nsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\nwidget: an optional widget node for retrieving the current tiddler etc.\n*/\nexports.compileFilter = function(filterString) {\n\tvar filterParseTree;\n\ttry {\n\t\tfilterParseTree = this.parseFilter(filterString);\n\t} catch(e) {\n\t\treturn function(source,widget) {\n\t\t\treturn [$tw.language.getString(\"Error/Filter\") + \": \" + e];\n\t\t};\n\t}\n\t// Get the hashmap of filter operator functions\n\tvar filterOperators = this.getFilterOperators();\n\t// Assemble array of functions, one for each operation\n\tvar operationFunctions = [];\n\t// Step through the operations\n\tvar self = this;\n\t$tw.utils.each(filterParseTree,function(operation) {\n\t\t// Create a function for the chain of operators in the operation\n\t\tvar operationSubFunction = function(source,widget) {\n\t\t\tvar accumulator = source,\n\t\t\t\tresults = [],\n\t\t\t\tcurrTiddlerTitle = widget && widget.getVariable(\"currentTiddler\");\n\t\t\t$tw.utils.each(operation.operators,function(operator) {\n\t\t\t\tvar operand = operator.operand,\n\t\t\t\t\toperatorFunction;\n\t\t\t\tif(!operator.operator) {\n\t\t\t\t\toperatorFunction = filterOperators.title;\n\t\t\t\t} else if(!filterOperators[operator.operator]) {\n\t\t\t\t\toperatorFunction = filterOperators.field;\n\t\t\t\t} else {\n\t\t\t\t\toperatorFunction = filterOperators[operator.operator];\n\t\t\t\t}\n\t\t\t\tif(operator.indirect) {\n\t\t\t\t\toperand = self.getTextReference(operator.operand,\"\",currTiddlerTitle);\n\t\t\t\t}\n\t\t\t\tif(operator.variable) {\n\t\t\t\t\toperand = widget.getVariable(operator.operand,{defaultValue: \"\"});\n\t\t\t\t}\n\t\t\t\t// Invoke the appropriate filteroperator module\n\t\t\t\tresults = operatorFunction(accumulator,{\n\t\t\t\t\t\t\toperator: operator.operator,\n\t\t\t\t\t\t\toperand: operand,\n\t\t\t\t\t\t\tprefix: operator.prefix,\n\t\t\t\t\t\t\tsuffix: operator.suffix,\n\t\t\t\t\t\t\tregexp: operator.regexp\n\t\t\t\t\t\t},{\n\t\t\t\t\t\t\twiki: self,\n\t\t\t\t\t\t\twidget: widget\n\t\t\t\t\t\t});\n\t\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\t\taccumulator = self.makeTiddlerIterator(results);\n\t\t\t\t} else {\n\t\t\t\t\taccumulator = results;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\treturn results;\n\t\t\t} else {\n\t\t\t\tvar resultArray = [];\n\t\t\t\tresults(function(tiddler,title) {\n\t\t\t\t\tresultArray.push(title);\n\t\t\t\t});\n\t\t\t\treturn resultArray;\n\t\t\t}\n\t\t};\n\t\t// Wrap the operator functions in a wrapper function that depends on the prefix\n\t\toperationFunctions.push((function() {\n\t\t\tswitch(operation.prefix || \"\") {\n\t\t\t\tcase \"\": // No prefix means that the operation is unioned into the result\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t$tw.utils.pushTop(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"-\": // The results of this operation are removed from the main result\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t$tw.utils.removeArrayEntries(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"+\": // This operation is applied to the main results so far\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t// This replaces all the elements of the array, but keeps the actual array so that references to it are preserved\n\t\t\t\t\t\tsource = self.makeTiddlerIterator(results);\n\t\t\t\t\t\tresults.splice(0,results.length);\n\t\t\t\t\t\t$tw.utils.pushTop(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t}\n\t\t})());\n\t});\n\t// Return a function that applies the operations to a source iterator of tiddler titles\n\treturn $tw.perf.measure(\"filter\",function filterFunction(source,widget) {\n\t\tif(!source) {\n\t\t\tsource = self.each;\n\t\t} else if(typeof source === \"object\") { // Array or hashmap\n\t\t\tsource = self.makeTiddlerIterator(source);\n\t\t}\n\t\tvar results = [];\n\t\t$tw.utils.each(operationFunctions,function(operationFunction) {\n\t\t\toperationFunction(results,source,widget);\n\t\t});\n\t\treturn results;\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/info/platform.js": {
            "title": "$:/core/modules/info/platform.js",
            "text": "/*\\\ntitle: $:/core/modules/info/platform.js\ntype: application/javascript\nmodule-type: info\n\nInitialise basic platform $:/info/ tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.getInfoTiddlerFields = function() {\n\tvar mapBoolean = function(value) {return value ? \"yes\" : \"no\";},\n\t\tinfoTiddlerFields = [];\n\t// Basics\n\tinfoTiddlerFields.push({title: \"$:/info/browser\", text: mapBoolean(!!$tw.browser)});\n\tinfoTiddlerFields.push({title: \"$:/info/node\", text: mapBoolean(!!$tw.node)});\n\tif($tw.browser) {\n\t\t// Document location\n\t\tvar setLocationProperty = function(name,value) {\n\t\t\t\tinfoTiddlerFields.push({title: \"$:/info/url/\" + name, text: value});\t\t\t\n\t\t\t},\n\t\t\tlocation = document.location;\n\t\tsetLocationProperty(\"full\", (location.toString()).split(\"#\")[0]);\n\t\tsetLocationProperty(\"host\", location.host);\n\t\tsetLocationProperty(\"hostname\", location.hostname);\n\t\tsetLocationProperty(\"protocol\", location.protocol);\n\t\tsetLocationProperty(\"port\", location.port);\n\t\tsetLocationProperty(\"pathname\", location.pathname);\n\t\tsetLocationProperty(\"search\", location.search);\n\t\tsetLocationProperty(\"origin\", location.origin);\n\t\t// Screen size\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/width\", text: window.screen.width.toString()});\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/height\", text: window.screen.height.toString()});\n\t}\n\treturn infoTiddlerFields;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "info"
        },
        "$:/core/modules/keyboard.js": {
            "title": "$:/core/modules/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/keyboard.js\ntype: application/javascript\nmodule-type: global\n\nKeyboard handling utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar namedKeys = {\n\t\"cancel\": 3,\n\t\"help\": 6,\n\t\"backspace\": 8,\n\t\"tab\": 9,\n\t\"clear\": 12,\n\t\"return\": 13,\n\t\"enter\": 13,\n\t\"pause\": 19,\n\t\"escape\": 27,\n\t\"space\": 32,\n\t\"page_up\": 33,\n\t\"page_down\": 34,\n\t\"end\": 35,\n\t\"home\": 36,\n\t\"left\": 37,\n\t\"up\": 38,\n\t\"right\": 39,\n\t\"down\": 40,\n\t\"printscreen\": 44,\n\t\"insert\": 45,\n\t\"delete\": 46,\n\t\"0\": 48,\n\t\"1\": 49,\n\t\"2\": 50,\n\t\"3\": 51,\n\t\"4\": 52,\n\t\"5\": 53,\n\t\"6\": 54,\n\t\"7\": 55,\n\t\"8\": 56,\n\t\"9\": 57,\n\t\"firefoxsemicolon\": 59,\n\t\"firefoxequals\": 61,\n\t\"a\": 65,\n\t\"b\": 66,\n\t\"c\": 67,\n\t\"d\": 68,\n\t\"e\": 69,\n\t\"f\": 70,\n\t\"g\": 71,\n\t\"h\": 72,\n\t\"i\": 73,\n\t\"j\": 74,\n\t\"k\": 75,\n\t\"l\": 76,\n\t\"m\": 77,\n\t\"n\": 78,\n\t\"o\": 79,\n\t\"p\": 80,\n\t\"q\": 81,\n\t\"r\": 82,\n\t\"s\": 83,\n\t\"t\": 84,\n\t\"u\": 85,\n\t\"v\": 86,\n\t\"w\": 87,\n\t\"x\": 88,\n\t\"y\": 89,\n\t\"z\": 90,\n\t\"numpad0\": 96,\n\t\"numpad1\": 97,\n\t\"numpad2\": 98,\n\t\"numpad3\": 99,\n\t\"numpad4\": 100,\n\t\"numpad5\": 101,\n\t\"numpad6\": 102,\n\t\"numpad7\": 103,\n\t\"numpad8\": 104,\n\t\"numpad9\": 105,\n\t\"multiply\": 106,\n\t\"add\": 107,\n\t\"separator\": 108,\n\t\"subtract\": 109,\n\t\"decimal\": 110,\n\t\"divide\": 111,\n\t\"f1\": 112,\n\t\"f2\": 113,\n\t\"f3\": 114,\n\t\"f4\": 115,\n\t\"f5\": 116,\n\t\"f6\": 117,\n\t\"f7\": 118,\n\t\"f8\": 119,\n\t\"f9\": 120,\n\t\"f10\": 121,\n\t\"f11\": 122,\n\t\"f12\": 123,\n\t\"f13\": 124,\n\t\"f14\": 125,\n\t\"f15\": 126,\n\t\"f16\": 127,\n\t\"f17\": 128,\n\t\"f18\": 129,\n\t\"f19\": 130,\n\t\"f20\": 131,\n\t\"f21\": 132,\n\t\"f22\": 133,\n\t\"f23\": 134,\n\t\"f24\": 135,\n\t\"firefoxminus\": 173,\n\t\"semicolon\": 186,\n\t\"equals\": 187,\n\t\"comma\": 188,\n\t\"dash\": 189,\n\t\"period\": 190,\n\t\"slash\": 191,\n\t\"backquote\": 192,\n\t\"openbracket\": 219,\n\t\"backslash\": 220,\n\t\"closebracket\": 221,\n\t\"quote\": 222\n};\n\nfunction KeyboardManager(options) {\n\tvar self = this;\n\toptions = options || \"\";\n\t// Save the named key hashmap\n\tthis.namedKeys = namedKeys;\n\t// Create a reverse mapping of code to keyname\n\tthis.keyNames = [];\n\t$tw.utils.each(namedKeys,function(keyCode,name) {\n\t\tself.keyNames[keyCode] = name.substr(0,1).toUpperCase() + name.substr(1);\n\t});\n\t// Save the platform-specific name of the \"meta\" key\n\tthis.metaKeyName = $tw.platform.isMac ? \"cmd-\" : \"win-\";\n}\n\n/*\nReturn an array of keycodes for the modifier keys ctrl, shift, alt, meta\n*/\nKeyboardManager.prototype.getModifierKeys = function() {\n\treturn [\n\t\t16, // Shift\n\t\t17, // Ctrl\n\t\t18, // Alt\n\t\t20, // CAPS LOCK\n\t\t91, // Meta (left)\n\t\t93, // Meta (right)\n\t\t224 // Meta (Firefox)\n\t]\n};\n\n/*\nParses a key descriptor into the structure:\n{\n\tkeyCode: numeric keycode\n\tshiftKey: boolean\n\taltKey: boolean\n\tctrlKey: boolean\n\tmetaKey: boolean\n}\nKey descriptors have the following format:\n\tctrl+enter\n\tctrl+shift+alt+A\n*/\nKeyboardManager.prototype.parseKeyDescriptor = function(keyDescriptor) {\n\tvar components = keyDescriptor.split(/\\+|\\-/),\n\t\tinfo = {\n\t\t\tkeyCode: 0,\n\t\t\tshiftKey: false,\n\t\t\taltKey: false,\n\t\t\tctrlKey: false,\n\t\t\tmetaKey: false\n\t\t};\n\tfor(var t=0; t<components.length; t++) {\n\t\tvar s = components[t].toLowerCase(),\n\t\t\tc = s.charCodeAt(0);\n\t\t// Look for modifier keys\n\t\tif(s === \"ctrl\") {\n\t\t\tinfo.ctrlKey = true;\n\t\t} else if(s === \"shift\") {\n\t\t\tinfo.shiftKey = true;\n\t\t} else if(s === \"alt\") {\n\t\t\tinfo.altKey = true;\n\t\t} else if(s === \"meta\" || s === \"cmd\" || s === \"win\") {\n\t\t\tinfo.metaKey = true;\n\t\t}\n\t\t// Replace named keys with their code\n\t\tif(this.namedKeys[s]) {\n\t\t\tinfo.keyCode = this.namedKeys[s];\n\t\t}\n\t}\n\tif(info.keyCode) {\n\t\treturn info;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nParse a list of key descriptors into an array of keyInfo objects. The key descriptors can be passed as an array of strings or a space separated string\n*/\nKeyboardManager.prototype.parseKeyDescriptors = function(keyDescriptors,options) {\n\tvar self = this;\n\toptions = options || {};\n\toptions.stack = options.stack || [];\n\tvar wiki = options.wiki || $tw.wiki;\n\tif(typeof keyDescriptors === \"string\" && keyDescriptors === \"\") {\n\t\treturn [];\n\t}\n\tif(!$tw.utils.isArray(keyDescriptors)) {\n\t\tkeyDescriptors = keyDescriptors.split(\" \");\n\t}\n\tvar result = [];\n\t$tw.utils.each(keyDescriptors,function(keyDescriptor) {\n\t\t// Look for a named shortcut\n\t\tif(keyDescriptor.substr(0,2) === \"((\" && keyDescriptor.substr(-2,2) === \"))\") {\n\t\t\tif(options.stack.indexOf(keyDescriptor) === -1) {\n\t\t\t\toptions.stack.push(keyDescriptor);\n\t\t\t\tvar name = keyDescriptor.substring(2,keyDescriptor.length - 2),\n\t\t\t\t\tlookupName = function(configName) {\n\t\t\t\t\t\tvar keyDescriptors = wiki.getTiddlerText(\"$:/config/\" + configName + \"/\" + name);\n\t\t\t\t\t\tif(keyDescriptors) {\n\t\t\t\t\t\t\tresult.push.apply(result,self.parseKeyDescriptors(keyDescriptors,options));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\tlookupName(\"shortcuts\");\n\t\t\t\tlookupName($tw.platform.isMac ? \"shortcuts-mac\" : \"shortcuts-not-mac\");\n\t\t\t\tlookupName($tw.platform.isWindows ? \"shortcuts-windows\" : \"shortcuts-not-windows\");\n\t\t\t\tlookupName($tw.platform.isLinux ? \"shortcuts-linux\" : \"shortcuts-not-linux\");\n\t\t\t}\n\t\t} else {\n\t\t\tresult.push(self.parseKeyDescriptor(keyDescriptor));\n\t\t}\n\t});\n\treturn result;\n};\n\nKeyboardManager.prototype.getPrintableShortcuts = function(keyInfoArray) {\n\tvar self = this,\n\t\tresult = [];\n\t$tw.utils.each(keyInfoArray,function(keyInfo) {\n\t\tif(keyInfo) {\n\t\t\tresult.push((keyInfo.ctrlKey ? \"ctrl-\" : \"\") + \n\t\t\t\t   (keyInfo.shiftKey ? \"shift-\" : \"\") + \n\t\t\t\t   (keyInfo.altKey ? \"alt-\" : \"\") + \n\t\t\t\t   (keyInfo.metaKey ? self.metaKeyName : \"\") + \n\t\t\t\t   (self.keyNames[keyInfo.keyCode]));\n\t\t}\n\t});\n\treturn result;\n}\n\nKeyboardManager.prototype.checkKeyDescriptor = function(event,keyInfo) {\n\treturn keyInfo &&\n\t\t\tevent.keyCode === keyInfo.keyCode && \n\t\t\tevent.shiftKey === keyInfo.shiftKey && \n\t\t\tevent.altKey === keyInfo.altKey && \n\t\t\tevent.ctrlKey === keyInfo.ctrlKey && \n\t\t\tevent.metaKey === keyInfo.metaKey;\n};\n\nKeyboardManager.prototype.checkKeyDescriptors = function(event,keyInfoArray) {\n\tfor(var t=0; t<keyInfoArray.length; t++) {\n\t\tif(this.checkKeyDescriptor(event,keyInfoArray[t])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\nexports.KeyboardManager = KeyboardManager;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/language.js": {
            "title": "$:/core/modules/language.js",
            "text": "/*\\\ntitle: $:/core/modules/language.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Language() manages translateable strings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate an instance of the language manager. Options include:\nwiki: wiki from which to retrieve translation tiddlers\n*/\nfunction Language(options) {\n\toptions = options || \"\";\n\tthis.wiki = options.wiki || $tw.wiki;\n}\n\n/*\nReturn a wikified translateable string. The title is automatically prefixed with \"$:/language/\"\nOptions include:\nvariables: optional hashmap of variables to supply to the language wikification\n*/\nLanguage.prototype.getString = function(title,options) {\n\toptions = options || {};\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.renderTiddler(\"text/plain\",title,{variables: options.variables});\n};\n\n/*\nReturn a raw, unwikified translateable string. The title is automatically prefixed with \"$:/language/\"\n*/\nLanguage.prototype.getRawString = function(title) {\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.getTiddlerText(title);\n};\n\nexports.Language = Language;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/macros/changecount.js": {
            "title": "$:/core/modules/macros/changecount.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/changecount.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the changecount for the current tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"changecount\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn this.wiki.getChangeCount(this.getVariable(\"currentTiddler\")) + \"\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/contrastcolour.js": {
            "title": "$:/core/modules/macros/contrastcolour.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/contrastcolour.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to choose which of two colours has the highest contrast with a base colour\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"contrastcolour\";\n\nexports.params = [\n\t{name: \"target\"},\n\t{name: \"fallbackTarget\"},\n\t{name: \"colourA\"},\n\t{name: \"colourB\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(target,fallbackTarget,colourA,colourB) {\n\tvar rgbTarget = $tw.utils.parseCSSColor(target) || $tw.utils.parseCSSColor(fallbackTarget);\n\tif(!rgbTarget) {\n\t\treturn colourA;\n\t}\n\tvar rgbColourA = $tw.utils.parseCSSColor(colourA),\n\t\trgbColourB = $tw.utils.parseCSSColor(colourB);\n\tif(rgbColourA && !rgbColourB) {\n\t\treturn rgbColourA;\n\t}\n\tif(rgbColourB && !rgbColourA) {\n\t\treturn rgbColourB;\n\t}\n\tif(!rgbColourA && !rgbColourB) {\n\t\t// If neither colour is readable, return a crude inverse of the target\n\t\treturn [255 - rgbTarget[0],255 - rgbTarget[1],255 - rgbTarget[2],rgbTarget[3]];\n\t}\n\t// Colour brightness formula derived from http://www.w3.org/WAI/ER/WD-AERT/#color-contrast\n\tvar brightnessTarget = rgbTarget[0] * 0.299 + rgbTarget[1] * 0.587 + rgbTarget[2] * 0.114,\n\t\tbrightnessA = rgbColourA[0] * 0.299 + rgbColourA[1] * 0.587 + rgbColourA[2] * 0.114,\n\t\tbrightnessB = rgbColourB[0] * 0.299 + rgbColourB[1] * 0.587 + rgbColourB[2] * 0.114;\n\treturn Math.abs(brightnessTarget - brightnessA) > Math.abs(brightnessTarget - brightnessB) ? colourA : colourB;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/csvtiddlers.js": {
            "title": "$:/core/modules/macros/csvtiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/csvtiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to CSV\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"csvtiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"format\"},\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,format) {\n\tvar self = this,\n\t\ttiddlers = this.wiki.filterTiddlers(filter),\n\t\ttiddler,\n\t\tfields = [],\n\t\tt,f;\n\t// Collect all the fields\n\tfor(t=0;t<tiddlers.length; t++) {\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\tfor(f in tiddler.fields) {\n\t\t\tif(fields.indexOf(f) === -1) {\n\t\t\t\tfields.push(f);\n\t\t\t}\n\t\t}\n\t}\n\t// Sort the fields and bring the standard ones to the front\n\tfields.sort();\n\t\"title text modified modifier created creator\".split(\" \").reverse().forEach(function(value,index) {\n\t\tvar p = fields.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tfields.splice(p,1);\n\t\t\tfields.unshift(value)\n\t\t}\n\t});\n\t// Output the column headings\n\tvar output = [], row = [];\n\tfields.forEach(function(value) {\n\t\trow.push(quoteAndEscape(value))\n\t});\n\toutput.push(row.join(\",\"));\n\t// Output each tiddler\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\trow = [];\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\t\tfor(f=0; f<fields.length; f++) {\n\t\t\t\trow.push(quoteAndEscape(tiddler ? tiddler.getFieldString(fields[f]) || \"\" : \"\"));\n\t\t\t}\n\t\toutput.push(row.join(\",\"));\n\t}\n\treturn output.join(\"\\n\");\n};\n\nfunction quoteAndEscape(value) {\n\treturn \"\\\"\" + value.replace(/\"/mg,\"\\\"\\\"\") + \"\\\"\";\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/displayshortcuts.js": {
            "title": "$:/core/modules/macros/displayshortcuts.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/displayshortcuts.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to display a list of keyboard shortcuts in human readable form. Notably, it resolves named shortcuts like `((bold))` to the underlying keystrokes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"displayshortcuts\";\n\nexports.params = [\n\t{name: \"shortcuts\"},\n\t{name: \"prefix\"},\n\t{name: \"separator\"},\n\t{name: \"suffix\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(shortcuts,prefix,separator,suffix) {\n\tvar shortcutArray = $tw.keyboardManager.getPrintableShortcuts($tw.keyboardManager.parseKeyDescriptors(shortcuts,{\n\t\twiki: this.wiki\n\t}));\n\tif(shortcutArray.length > 0) {\n\t\tshortcutArray.sort(function(a,b) {\n\t\t    return a.toLowerCase().localeCompare(b.toLowerCase());\n\t\t})\n\t\treturn prefix + shortcutArray.join(separator) + suffix;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/dumpvariables.js": {
            "title": "$:/core/modules/macros/dumpvariables.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/dumpvariables.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to dump all active variable values\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"dumpvariables\";\n\nexports.params = [\n];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\tvar output = [\"|!Variable |!Value |\"],\n\t\tvariables = [], variable;\n\tfor(variable in this.variables) {\n\t\tvariables.push(variable);\n\t}\n\tvariables.sort();\n\tfor(var index=0; index<variables.length; index++) {\n\t\tvar variable = variables[index];\n\t\toutput.push(\"|\" + variable + \" |<input size=50 value=<<\" + variable + \">>/> |\")\n\t}\n\treturn output.join(\"\\n\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddler.js": {
            "title": "$:/core/modules/macros/jsontiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddler.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output a single tiddler to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddler\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\ttitle = title || this.getVariable(\"currentTiddler\");\n\tvar tiddler = !!title && this.wiki.getTiddler(title),\n\t\tfields = new Object();\n\tif(tiddler) {\n\t\tfor(var field in tiddler.fields) {\n\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t}\n\t}\n\treturn JSON.stringify(fields,null,$tw.config.preferences.jsonSpaces);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddlers.js": {
            "title": "$:/core/modules/macros/jsontiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddlers\";\n\nexports.params = [\n\t{name: \"filter\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter) {\n\tvar tiddlers = this.wiki.filterTiddlers(filter),\n\t\tdata = [];\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\tvar tiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\tif(tiddler) {\n\t\t\tvar fields = new Object();\n\t\t\tfor(var field in tiddler.fields) {\n\t\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t\t}\n\t\t\tdata.push(fields);\n\t\t}\n\t}\n\treturn JSON.stringify(data,null,$tw.config.preferences.jsonSpaces);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/makedatauri.js": {
            "title": "$:/core/modules/macros/makedatauri.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/makedatauri.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to convert a string of text to a data URI\n\n<<makedatauri text:\"Text to be converted\" type:\"text/vnd.tiddlywiki\">>\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"makedatauri\";\n\nexports.params = [\n\t{name: \"text\"},\n\t{name: \"type\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(text,type) {\n\treturn $tw.utils.makeDataUri(text,type);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/now.js": {
            "title": "$:/core/modules/macros/now.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/now.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return a formatted version of the current time\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"now\";\n\nexports.params = [\n\t{name: \"format\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(format) {\n\treturn $tw.utils.formatDateString(new Date(),format || \"0hh:0mm, DDth MMM YYYY\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/qualify.js": {
            "title": "$:/core/modules/macros/qualify.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/qualify.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to qualify a state tiddler title according\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"qualify\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\treturn title + \"-\" + this.getStateQualifier();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/resolvepath.js": {
            "title": "$:/core/modules/macros/resolvepath.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/resolvepath.js\ntype: application/javascript\nmodule-type: macro\n\nResolves a relative path for an absolute rootpath.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"resolvepath\";\n\nexports.params = [\n\t{name: \"source\"},\n\t{name: \"root\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(source, root) {\n\treturn $tw.utils.resolvePath(source, root);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/version.js": {
            "title": "$:/core/modules/macros/version.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/version.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the TiddlyWiki core version number\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"version\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn $tw.version;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/parsers/audioparser.js": {
            "title": "$:/core/modules/parsers/audioparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/audioparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe audio parser parses an audio tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar AudioParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"audio\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"audio/ogg\"] = AudioParser;\nexports[\"audio/mpeg\"] = AudioParser;\nexports[\"audio/mp3\"] = AudioParser;\nexports[\"audio/mp4\"] = AudioParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/csvparser.js": {
            "title": "$:/core/modules/parsers/csvparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/csvparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe CSV text parser processes CSV files into a table wrapped in a scrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar CsvParser = function(type,text,options) {\n\t// Table framework\n\tthis.tree = [{\n\t\t\"type\": \"scrollable\", \"children\": [{\n\t\t\t\"type\": \"element\", \"tag\": \"table\", \"children\": [{\n\t\t\t\t\"type\": \"element\", \"tag\": \"tbody\", \"children\": []\n\t\t\t}], \"attributes\": {\n\t\t\t\t\"class\": {\"type\": \"string\", \"value\": \"tc-csv-table\"}\n\t\t\t}\n\t\t}]\n\t}];\n\t// Split the text into lines\n\tvar lines = text.split(/\\r?\\n/mg),\n\t\ttag = \"th\";\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar lineText = lines[line];\n\t\tif(lineText) {\n\t\t\tvar row = {\n\t\t\t\t\t\"type\": \"element\", \"tag\": \"tr\", \"children\": []\n\t\t\t\t};\n\t\t\tvar columns = lineText.split(\",\");\n\t\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\t\trow.children.push({\n\t\t\t\t\t\t\"type\": \"element\", \"tag\": tag, \"children\": [{\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": columns[column]\n\t\t\t\t\t\t}]\n\t\t\t\t\t});\n\t\t\t}\n\t\t\ttag = \"td\";\n\t\t\tthis.tree[0].children[0].children[0].children.push(row);\n\t\t}\n\t}\n};\n\nexports[\"text/csv\"] = CsvParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/htmlparser.js": {
            "title": "$:/core/modules/parsers/htmlparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/htmlparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe HTML parser displays text as raw HTML\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HtmlParser = function(type,text,options) {\n\tvar src;\n\tif(options._canonical_uri) {\n\t\tsrc = options._canonical_uri;\n\t} else if(text) {\n\t\tsrc = \"data:text/html;charset=utf-8,\" + encodeURIComponent(text);\n\t}\n\tthis.tree = [{\n\t\ttype: \"element\",\n\t\ttag: \"iframe\",\n\t\tattributes: {\n\t\t\tsrc: {type: \"string\", value: src},\n\t\t\tsandbox: {type: \"string\", value: \"\"}\n\t\t}\n\t}];\n};\n\nexports[\"text/html\"] = HtmlParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/imageparser.js": {
            "title": "$:/core/modules/parsers/imageparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/imageparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe image parser parses an image into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"img\",\n\t\t\tattributes: {}\n\t\t};\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\tif(type === \"image/svg+xml\" || type === \".svg\") {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:image/svg+xml,\" + encodeURIComponent(text)};\n\t\t} else {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t\t}\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"image/svg+xml\"] = ImageParser;\nexports[\"image/jpg\"] = ImageParser;\nexports[\"image/jpeg\"] = ImageParser;\nexports[\"image/png\"] = ImageParser;\nexports[\"image/gif\"] = ImageParser;\nexports[\"image/x-icon\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/utils/parseutils.js": {
            "title": "$:/core/modules/utils/parseutils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parseutils.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions concerned with parsing text into tokens.\n\nMost functions have the following pattern:\n\n* The parameters are:\n** `source`: the source string being parsed\n** `pos`: the current parse position within the string\n** Any further parameters are used to identify the token that is being parsed\n* The return value is:\n** null if the token was not found at the specified position\n** an object representing the token with the following standard fields:\n*** `type`: string indicating the type of the token\n*** `start`: start position of the token in the source string\n*** `end`: end position of the token in the source string\n*** Any further fields required to describe the token\n\nThe exception is `skipWhiteSpace`, which just returns the position after the whitespace.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for a whitespace token. Returns null if not found, otherwise returns {type: \"whitespace\", start:, end:,}\n*/\nexports.parseWhiteSpace = function(source,pos) {\n\tvar p = pos,c;\n\twhile(true) {\n\t\tc = source.charAt(p);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tp++;\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n\tif(p === pos) {\n\t\treturn null;\n\t} else {\n\t\treturn {\n\t\t\ttype: \"whitespace\",\n\t\t\tstart: pos,\n\t\t\tend: p\n\t\t}\n\t}\n};\n\n/*\nConvenience wrapper for parseWhiteSpace. Returns the position after the whitespace\n*/\nexports.skipWhiteSpace = function(source,pos) {\n\tvar c;\n\twhile(true) {\n\t\tc = source.charAt(pos);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tpos++;\n\t\t} else {\n\t\t\treturn pos;\n\t\t}\n\t}\n};\n\n/*\nLook for a given string token. Returns null if not found, otherwise returns {type: \"token\", value:, start:, end:,}\n*/\nexports.parseTokenString = function(source,pos,token) {\n\tvar match = source.indexOf(token,pos) === pos;\n\tif(match) {\n\t\treturn {\n\t\t\ttype: \"token\",\n\t\t\tvalue: token,\n\t\t\tstart: pos,\n\t\t\tend: pos + token.length\n\t\t};\n\t}\n\treturn null;\n};\n\n/*\nLook for a token matching a regex. Returns null if not found, otherwise returns {type: \"regexp\", match:, start:, end:,}\n*/\nexports.parseTokenRegExp = function(source,pos,reToken) {\n\tvar node = {\n\t\ttype: \"regexp\",\n\t\tstart: pos\n\t};\n\treToken.lastIndex = pos;\n\tnode.match = reToken.exec(source);\n\tif(node.match && node.match.index === pos) {\n\t\tnode.end = pos + node.match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a string literal. Returns null if not found, otherwise returns {type: \"string\", value:, start:, end:,}\n*/\nexports.parseStringLiteral = function(source,pos) {\n\tvar node = {\n\t\ttype: \"string\",\n\t\tstart: pos\n\t};\n\tvar reString = /(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\")|(?:'([^']*)')/g;\n\treString.lastIndex = pos;\n\tvar match = reString.exec(source);\n\tif(match && match.index === pos) {\n\t\tnode.value = match[1] !== undefined ? match[1] :(\n\t\t\tmatch[2] !== undefined ? match[2] : match[3] \n\t\t\t\t\t);\n\t\tnode.end = pos + match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a macro invocation parameter. Returns null if not found, or {type: \"macro-parameter\", name:, value:, start:, end:}\n*/\nexports.parseMacroParameter = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macro-parameter\",\n\t\tstart: pos\n\t};\n\t// Define our regexp\n\tvar reMacroParameter = /(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\\s>\"'=]+)))/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the parameter\n\tvar token = $tw.utils.parseTokenRegExp(source,pos,reMacroParameter);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the parameter details\n\tnode.value = token.match[2] !== undefined ? token.match[2] : (\n\t\t\t\t\ttoken.match[3] !== undefined ? token.match[3] : (\n\t\t\t\t\t\ttoken.match[4] !== undefined ? token.match[4] : (\n\t\t\t\t\t\t\ttoken.match[5] !== undefined ? token.match[5] : (\n\t\t\t\t\t\t\t\ttoken.match[6] !== undefined ? token.match[6] : (\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t);\n\tif(token.match[1]) {\n\t\tnode.name = token.match[1];\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for a macro invocation. Returns null if not found, or {type: \"macrocall\", name:, parameters:, start:, end:}\n*/\nexports.parseMacroInvocation = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macrocall\",\n\t\tstart: pos,\n\t\tparams: []\n\t};\n\t// Define our regexps\n\tvar reMacroName = /([^\\s>\"'=]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double less than sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"<<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the macro name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reMacroName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Process parameters\n\tvar parameter = $tw.utils.parseMacroParameter(source,pos);\n\twhile(parameter) {\n\t\tnode.params.push(parameter);\n\t\tpos = parameter.end;\n\t\t// Get the next parameter\n\t\tparameter = $tw.utils.parseMacroParameter(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">>\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for an HTML attribute definition. Returns null if not found, otherwise returns {type: \"attribute\", name:, valueType: \"string|indirect|macro\", value:, start:, end:,}\n*/\nexports.parseAttribute = function(source,pos) {\n\tvar node = {\n\t\tstart: pos\n\t};\n\t// Define our regexps\n\tvar reAttributeName = /([^\\/\\s>\"'=]+)/g,\n\t\treUnquotedAttribute = /([^\\/\\s<>\"'=]+)/g,\n\t\treFilteredValue = /\\{\\{\\{(.+?)\\}\\}\\}/g,\n\t\treIndirectValue = /\\{\\{([^\\}]+)\\}\\}/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the attribute name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reAttributeName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for an equals sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"=\");\n\tif(token) {\n\t\tpos = token.end;\n\t\t// Skip whitespace\n\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t// Look for a string literal\n\t\tvar stringLiteral = $tw.utils.parseStringLiteral(source,pos);\n\t\tif(stringLiteral) {\n\t\t\tpos = stringLiteral.end;\n\t\t\tnode.type = \"string\";\n\t\t\tnode.value = stringLiteral.value;\n\t\t} else {\n\t\t\t// Look for a filtered value\n\t\t\tvar filteredValue = $tw.utils.parseTokenRegExp(source,pos,reFilteredValue);\n\t\t\tif(filteredValue) {\n\t\t\t\tpos = filteredValue.end;\n\t\t\t\tnode.type = \"filtered\";\n\t\t\t\tnode.filter = filteredValue.match[1];\n\t\t\t} else {\n\t\t\t\t// Look for an indirect value\n\t\t\t\tvar indirectValue = $tw.utils.parseTokenRegExp(source,pos,reIndirectValue);\n\t\t\t\tif(indirectValue) {\n\t\t\t\t\tpos = indirectValue.end;\n\t\t\t\t\tnode.type = \"indirect\";\n\t\t\t\t\tnode.textReference = indirectValue.match[1];\n\t\t\t\t} else {\n\t\t\t\t\t// Look for a unquoted value\n\t\t\t\t\tvar unquotedValue = $tw.utils.parseTokenRegExp(source,pos,reUnquotedAttribute);\n\t\t\t\t\tif(unquotedValue) {\n\t\t\t\t\t\tpos = unquotedValue.end;\n\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\tnode.value = unquotedValue.match[1];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Look for a macro invocation value\n\t\t\t\t\t\tvar macroInvocation = $tw.utils.parseMacroInvocation(source,pos);\n\t\t\t\t\t\tif(macroInvocation) {\n\t\t\t\t\t\t\tpos = macroInvocation.end;\n\t\t\t\t\t\t\tnode.type = \"macro\";\n\t\t\t\t\t\t\tnode.value = macroInvocation;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\t\tnode.value = \"true\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} else {\n\t\tnode.type = \"string\";\n\t\tnode.value = \"true\";\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/parsers/pdfparser.js": {
            "title": "$:/core/modules/parsers/pdfparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/pdfparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe PDF parser embeds a PDF viewer\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"embed\",\n\t\t\tattributes: {}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:application/pdf;base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/pdf\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/textparser.js": {
            "title": "$:/core/modules/parsers/textparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/textparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe plain text parser processes blocks of source text into a degenerate parse tree consisting of a single text node\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TextParser = function(type,text,options) {\n\tthis.tree = [{\n\t\ttype: \"codeblock\",\n\t\tattributes: {\n\t\t\tcode: {type: \"string\", value: text},\n\t\t\tlanguage: {type: \"string\", value: type}\n\t\t}\n\t}];\n};\n\nexports[\"text/plain\"] = TextParser;\nexports[\"text/x-tiddlywiki\"] = TextParser;\nexports[\"application/javascript\"] = TextParser;\nexports[\"application/json\"] = TextParser;\nexports[\"text/css\"] = TextParser;\nexports[\"application/x-tiddler-dictionary\"] = TextParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/videoparser.js": {
            "title": "$:/core/modules/parsers/videoparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/videoparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe video parser parses a video tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar VideoParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"video\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"video/mp4\"] = VideoParser;\nexports[\"video/quicktime\"] = VideoParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for code blocks. For example:\n\n```\n\t```\n\tThis text will not be //wikified//\n\t```\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match and get language if defined\n\tthis.matchRegExp = /```([\\w-]*)\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\\r?\\n```$)/mg;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Return the $codeblock widget\n\treturn [{\n\t\t\ttype: \"codeblock\",\n\t\t\tattributes: {\n\t\t\t\t\tcode: {type: \"string\", value: text},\n\t\t\t\t\tlanguage: {type: \"string\", value: this.match[1]}\n\t\t\t}\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for code runs. For example:\n\n```\n\tThis is a `code run`.\n\tThis is another ``code run``\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(``?)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar reEnd = new RegExp(this.match[1], \"mg\");\n\t// Look for the end marker\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the text\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"code\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: text\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/dash.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/dash.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/dash.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for dashes. For example:\n\n```\nThis is an en-dash: --\n\nThis is an em-dash: ---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"dash\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{2,3}(?!-)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar dash = this.match[0].length === 2 ? \"&ndash;\" : \"&mdash;\";\n\treturn [{\n\t\ttype: \"entity\",\n\t\tentity: dash\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/bold.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - bold. For example:\n\n```\n\tThis is ''bold'' text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except bold \n\\rules only bold \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"bold\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /''/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/''/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strong\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/italic.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - italic. For example:\n\n```\n\tThis is //italic// text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except italic\n\\rules only italic\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"italic\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\/\\//mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\/\\//mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"em\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - strikethrough. For example:\n\n```\n\tThis is ~~strikethrough~~ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except strikethrough \n\\rules only strikethrough \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"strikethrough\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~~/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/~~/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strike\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - subscript. For example:\n\n```\n\tThis is ,,subscript,, text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except subscript \n\\rules only subscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"subscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /,,/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/,,/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sub\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - superscript. For example:\n\n```\n\tThis is ^^superscript^^ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except superscript \n\\rules only superscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"superscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\^\\^/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\^\\^/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sup\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - underscore. For example:\n\n```\n\tThis is __underscore__ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except underscore \n\\rules only underscore\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"underscore\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /__/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/__/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"u\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/entity.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/entity.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML entities. For example:\n\n```\n\tThis is a copyright symbol: &copy;\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"entity\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(&#?[a-zA-Z0-9]{2,8};)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar entityString = this.match[1];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Return the entity\n\treturn [{type: \"entity\", entity: this.match[0]}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/extlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/extlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/extlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\nAn external link: https://www.tiddlywiki.com/\n\nA suppressed external link: ~http://www.tiddlyspace.com/\n```\n\nExternal links can be suppressed by preceding them with `~`.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"extlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~?(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(this.match[0].substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: this.match[0].substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: this.match[0]},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: this.match[0]\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t},\n\t\tisBlock: true\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t}\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for marking areas with hard line breaks. For example:\n\n```\n\"\"\"\nThis is some text\nThat is set like\nIt is a Poem\nWhen it is\nClearly\nNot\n\"\"\"\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"hardlinebreaks\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\"\"\"(?:\\r?\\n)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\"\"\")|(\\r?\\n)/mg,\n\t\ttree = [],\n\t\tmatch;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tdo {\n\t\t// Parse the run up to the terminator\n\t\ttree.push.apply(tree,this.parser.parseInlineRun(reEnd,{eatTerminator: false}));\n\t\t// Redo the terminator match\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tmatch = reEnd.exec(this.parser.source);\n\t\tif(match) {\n\t\t\tthis.parser.pos = reEnd.lastIndex;\n\t\t\t// Add a line break if the terminator was a line break\n\t\t\tif(match[2]) {\n\t\t\t\ttree.push({type: \"element\", tag: \"br\"});\n\t\t\t}\n\t\t}\n\t} while(match && !match[1]);\n\t// Return the nodes\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/heading.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/heading.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/heading.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for headings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"heading\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(!{1,6})/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar headingLevel = this.match[1].length;\n\t// Move past the !s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse any classes, whitespace and then the heading itself\n\tvar classes = this.parser.parseClasses();\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// Return the heading\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"h\" + headingLevel, \n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: classes.join(\" \")}\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/horizrule.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/horizrule.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/horizrule.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for rules. For example:\n\n```\n---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"horizrule\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{3,}\\r?(?:\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\treturn [{type: \"element\", tag: \"hr\"}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/html.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/html.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/html.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for HTML elements and widgets. For example:\n\n{{{\n<aside>\nThis is an HTML5 aside element\n</aside>\n\n<$slider target=\"MyTiddler\">\nThis is a widget invocation\n</$slider>\n\n}}}\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"html\";\nexports.types = {inline: true, block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextTag = this.findNextTag(this.parser.source,startPos,{\n\t\trequireLineBreak: this.is.block\n\t});\n\treturn this.nextTag ? this.nextTag.start : undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Retrieve the most recent match so that recursive calls don't overwrite it\n\tvar tag = this.nextTag;\n\tthis.nextTag = null;\n\t// Advance the parser position to past the tag\n\tthis.parser.pos = tag.end;\n\t// Check for an immediately following double linebreak\n\tvar hasLineBreak = !tag.isSelfClosing && !!$tw.utils.parseTokenRegExp(this.parser.source,this.parser.pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t// Set whether we're in block mode\n\ttag.isBlock = this.is.block || hasLineBreak;\n\t// Parse the body if we need to\n\tif(!tag.isSelfClosing && $tw.config.htmlVoidElements.indexOf(tag.tag) === -1) {\n\t\t\tvar reEndString = \"</\" + $tw.utils.escapeRegExp(tag.tag) + \">\",\n\t\t\t\treEnd = new RegExp(\"(\" + reEndString + \")\",\"mg\");\n\t\tif(hasLineBreak) {\n\t\t\ttag.children = this.parser.parseBlocks(reEndString);\n\t\t} else {\n\t\t\ttag.children = this.parser.parseInlineRun(reEnd);\n\t\t}\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tvar endMatch = reEnd.exec(this.parser.source);\n\t\tif(endMatch && endMatch.index === this.parser.pos) {\n\t\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t\t}\n\t}\n\t// Return the tag\n\treturn [tag];\n};\n\n/*\nLook for an HTML tag. Returns null if not found, otherwise returns {type: \"element\", name:, attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseTag = function(source,pos,options) {\n\toptions = options || {};\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Define our regexps\n\tvar reTagName = /([a-zA-Z0-9\\-\\$]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a less than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\"<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the tag name\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,reTagName);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tnode.tag = token.match[1];\n\tif(node.tag.slice(1).indexOf(\"$\") !== -1) {\n\t\treturn null;\n\t}\n\tif(node.tag.charAt(0) === \"$\") {\n\t\tnode.type = node.tag.substr(1);\n\t}\n\tpos = token.end;\n\t// Check that the tag is terminated by a space, / or >\n\tif(!$tw.utils.parseWhiteSpace(source,pos) && !(source.charAt(pos) === \"/\") && !(source.charAt(pos) === \">\") ) {\n\t\treturn null;\n\t}\n\t// Process attributes\n\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\twhile(attribute) {\n\t\tnode.attributes[attribute.name] = attribute;\n\t\tpos = attribute.end;\n\t\t// Get the next attribute\n\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a closing slash\n\ttoken = $tw.utils.parseTokenString(source,pos,\"/\");\n\tif(token) {\n\t\tpos = token.end;\n\t\tnode.isSelfClosing = true;\n\t}\n\t// Look for a greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Check for a required line break\n\tif(options.requireLineBreak) {\n\t\ttoken = $tw.utils.parseTokenRegExp(source,pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t\tif(!token) {\n\t\t\treturn null;\n\t\t}\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\nexports.findNextTag = function(source,pos,options) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /<([a-zA-Z\\-\\$]+)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseTag(source,match.index,options);\n\t\t// Return success\n\t\tif(tag && this.isLegalTag(tag)) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\nexports.isLegalTag = function(tag) {\n\t// Widgets are always OK\n\tif(tag.type !== \"element\") {\n\t\treturn true;\n\t// If it's an HTML tag that starts with a dash then it's not legal\n\t} else if(tag.tag.charAt(0) === \"-\") {\n\t\treturn false;\n\t} else {\n\t\t// Otherwise it's OK\n\t\treturn true;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/image.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/image.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/image.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for embedding images. For example:\n\n```\n[img[https://tiddlywiki.com/fractalveg.jpg]]\n[img width=23 height=24 [https://tiddlywiki.com/fractalveg.jpg]]\n[img width={{!!width}} height={{!!height}} [https://tiddlywiki.com/fractalveg.jpg]]\n[img[Description of image|https://tiddlywiki.com/fractalveg.jpg]]\n[img[TiddlerTitle]]\n[img[Description of image|TiddlerTitle]]\n```\n\nGenerates the `<$image>` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"image\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextImage = this.findNextImage(this.parser.source,startPos);\n\treturn this.nextImage ? this.nextImage.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextImage.end;\n\tvar node = {\n\t\ttype: \"image\",\n\t\tattributes: this.nextImage.attributes\n\t};\n\treturn [node];\n};\n\n/*\nFind the next image from the current position\n*/\nexports.findNextImage = function(source,pos) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /(\\[img)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseImage(source,match.index);\n\t\t// Return success\n\t\tif(tag) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an image at the specified position. Returns null if not found, otherwise returns {type: \"image\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseImage = function(source,pos) {\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"image\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[img`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[img\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Process attributes\n\tif(source.charAt(pos) !== \"[\") {\n\t\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\t\twhile(attribute) {\n\t\t\tnode.attributes[attribute.name] = attribute;\n\t\t\tpos = attribute.end;\n\t\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t\tif(source.charAt(pos) !== \"[\") {\n\t\t\t\t// Get the next attribute\n\t\t\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t\t\t} else {\n\t\t\t\tattribute = null;\n\t\t\t}\n\t\t}\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[` after the attributes\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the source up to the terminating `]]`\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,/(?:([^|\\]]*?)\\|)?([^\\]]+?)\\]\\]/g);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\tif(token.match[1]) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: token.match[1].trim()};\n\t}\n\tnode.attributes.source = {type: \"string\", value: (token.match[2] || \"\").trim()};\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/list.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/list.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/list.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for lists. For example:\n\n```\n* This is an unordered list\n* It has two items\n\n# This is a numbered list\n## With a subitem\n# And a third item\n\n; This is a term that is being defined\n: This is the definition of that term\n```\n\nNote that lists can be nested arbitrarily:\n\n```\n#** One\n#* Two\n#** Three\n#**** Four\n#**# Five\n#**## Six\n## Seven\n### Eight\n## Nine\n```\n\nA CSS class can be applied to a list item as follows:\n\n```\n* List item one\n*.active List item two has the class `active`\n* List item three\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"list\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /([\\*#;:>]+)/mg;\n};\n\nvar listTypes = {\n\t\"*\": {listTag: \"ul\", itemTag: \"li\"},\n\t\"#\": {listTag: \"ol\", itemTag: \"li\"},\n\t\";\": {listTag: \"dl\", itemTag: \"dt\"},\n\t\":\": {listTag: \"dl\", itemTag: \"dd\"},\n\t\">\": {listTag: \"blockquote\", itemTag: \"p\"}\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Array of parse tree nodes for the previous row of the list\n\tvar listStack = [];\n\t// Cycle through the items in the list\n\twhile(true) {\n\t\t// Match the list marker\n\t\tvar reMatch = /([\\*#;:>]+)/mg;\n\t\treMatch.lastIndex = this.parser.pos;\n\t\tvar match = reMatch.exec(this.parser.source);\n\t\tif(!match || match.index !== this.parser.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check whether the list type of the top level matches\n\t\tvar listInfo = listTypes[match[0].charAt(0)];\n\t\tif(listStack.length > 0 && listStack[0].tag !== listInfo.listTag) {\n\t\t\tbreak;\n\t\t}\n\t\t// Move past the list marker\n\t\tthis.parser.pos = match.index + match[0].length;\n\t\t// Walk through the list markers for the current row\n\t\tfor(var t=0; t<match[0].length; t++) {\n\t\t\tlistInfo = listTypes[match[0].charAt(t)];\n\t\t\t// Remove any stacked up element if we can't re-use it because the list type doesn't match\n\t\t\tif(listStack.length > t && listStack[t].tag !== listInfo.listTag) {\n\t\t\t\tlistStack.splice(t,listStack.length - t);\n\t\t\t}\n\t\t\t// Construct the list element or reuse the previous one at this level\n\t\t\tif(listStack.length <= t) {\n\t\t\t\tvar listElement = {type: \"element\", tag: listInfo.listTag, children: [\n\t\t\t\t\t{type: \"element\", tag: listInfo.itemTag, children: []}\n\t\t\t\t]};\n\t\t\t\t// Link this list element into the last child item of the parent list item\n\t\t\t\tif(t) {\n\t\t\t\t\tvar prevListItem = listStack[t-1].children[listStack[t-1].children.length-1];\n\t\t\t\t\tprevListItem.children.push(listElement);\n\t\t\t\t}\n\t\t\t\t// Save this element in the stack\n\t\t\t\tlistStack[t] = listElement;\n\t\t\t} else if(t === (match[0].length - 1)) {\n\t\t\t\tlistStack[t].children.push({type: \"element\", tag: listInfo.itemTag, children: []});\n\t\t\t}\n\t\t}\n\t\tif(listStack.length > match[0].length) {\n\t\t\tlistStack.splice(match[0].length,listStack.length - match[0].length);\n\t\t}\n\t\t// Process the body of the list item into the last list item\n\t\tvar lastListChildren = listStack[listStack.length-1].children,\n\t\t\tlastListItem = lastListChildren[lastListChildren.length-1],\n\t\t\tclasses = this.parser.parseClasses();\n\t\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\t\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t\tlastListItem.children.push.apply(lastListItem.children,tree);\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(lastListItem,classes.join(\" \"));\n\t\t}\n\t\t// Consume any whitespace following the list item\n\t\tthis.parser.skipWhitespace();\n\t}\n\t// Return the root element of the list\n\treturn [listStack[0]];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for block macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^>\\s]+)(?:\\s*)((?:[^>]|(?:>(?!>)))*?)>>(?:\\r?\\n|$)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params,\n\t\tisBlock: true\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^\\s>]+)\\s*([\\s\\S]*?)>>/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5]|| paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrodef.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrodef.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrodef.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for macro definitions\n\n```\n\\define name(param:defaultvalue,param2:defaultvalue)\ndefinition text, including $param$ markers\n\\end\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrodef\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\define\\s+([^(\\s]+)\\(\\s*([^)]*)\\)(\\s*\\r?\\n)?/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the macro name and parameters\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the parameters\n\tvar paramString = this.match[2],\n\t\tparams = [];\n\tif(paramString !== \"\") {\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))?/mg,\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\twhile(paramMatch) {\n\t\t\t// Save the parameter details\n\t\t\tvar paramInfo = {name: paramMatch[1]},\n\t\t\t\tdefaultValue = paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6];\n\t\t\tif(defaultValue) {\n\t\t\t\tparamInfo[\"default\"] = defaultValue;\n\t\t\t}\n\t\t\tparams.push(paramInfo);\n\t\t\t// Look for the next parameter\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n\t// Is this a multiline definition?\n\tvar reEnd;\n\tif(this.match[3]) {\n\t\t// If so, the end of the body is marked with \\end\n\t\treEnd = /(\\r?\\n\\\\end[^\\S\\n\\r]*(?:$|\\r?\\n))/mg;\n\t} else {\n\t\t// Otherwise, the end of the definition is marked by the end of the line\n\t\treEnd = /($|\\r?\\n)/mg;\n\t\t// Move past any whitespace\n\t\tthis.parser.pos = $tw.utils.skipWhiteSpace(this.parser.source,this.parser.pos);\n\t}\n\t// Find the end of the definition\n\treEnd.lastIndex = this.parser.pos;\n\tvar text,\n\t\tendMatch = reEnd.exec(this.parser.source);\n\tif(endMatch) {\n\t\ttext = this.parser.source.substring(this.parser.pos,endMatch.index);\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t} else {\n\t\t// We didn't find the end of the definition, so we'll make it blank\n\t\ttext = \"\";\n\t}\n\t// Save the macro definition\n\treturn [{\n\t\ttype: \"set\",\n\t\tattributes: {\n\t\t\tname: {type: \"string\", value: this.match[1]},\n\t\t\tvalue: {type: \"string\", value: text}\n\t\t},\n\t\tchildren: [],\n\t\tparams: params\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettyextlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\n[ext[https://tiddlywiki.com/fractalveg.jpg]]\n[ext[Tooltip|https://tiddlywiki.com/fractalveg.jpg]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettyextlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextLink = this.findNextLink(this.parser.source,startPos);\n\treturn this.nextLink ? this.nextLink.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextLink.end;\n\treturn [this.nextLink];\n};\n\n/*\nFind the next link from the current position\n*/\nexports.findNextLink = function(source,pos) {\n\t// A regexp for finding candidate links\n\tvar reLookahead = /(\\[ext\\[)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a link\n\t\tvar link = this.parseLink(source,match.index);\n\t\t// Return success\n\t\tif(link) {\n\t\t\treturn link;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an link at the specified position. Returns null if not found, otherwise returns {type: \"element\", tag: \"a\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseLink = function(source,pos) {\n\tvar token,\n\t\ttextNode = {\n\t\t\ttype: \"text\"\n\t\t},\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tstart: pos,\n\t\t\tattributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t},\n\t\t\tchildren: [textNode]\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[ext[`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[ext[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Look ahead for the terminating `]]`\n\tvar closePos = source.indexOf(\"]]\",pos);\n\tif(closePos === -1) {\n\t\treturn null;\n\t}\n\t// Look for a `|` separating the tooltip\n\tvar splitPos = source.indexOf(\"|\",pos);\n\tif(splitPos === -1 || splitPos > closePos) {\n\t\tsplitPos = null;\n\t}\n\t// Pull out the tooltip and URL\n\tvar tooltip, URL;\n\tif(splitPos) {\n\t\tURL = source.substring(splitPos + 1,closePos).trim();\n\t\ttextNode.text = source.substring(pos,splitPos).trim();\n\t} else {\n\t\tURL = source.substring(pos,closePos).trim();\n\t\ttextNode.text = URL;\n\t}\n\tnode.attributes.href = {type: \"string\", value: URL};\n\tnode.attributes.target = {type: \"string\", value: \"_blank\"};\n\tnode.attributes.rel = {type: \"string\", value: \"noopener noreferrer\"};\n\t// Update the end position\n\tnode.end = closePos + 2;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettylink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettylink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettylink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for pretty links. For example:\n\n```\n[[Introduction]]\n\n[[Link description|TiddlerTitle]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettylink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\[\\[(.*?)(?:\\|(.*?))?\\]\\]/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Process the link\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif($tw.utils.isLinkExternal(link)) {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: link},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: link}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/quoteblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/quoteblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/quoteblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for quote blocks. For example:\n\n```\n\t<<<.optionalClass(es) optional cited from\n\ta quote\n\t<<<\n\t\n\t<<<.optionalClass(es)\n\ta quote\n\t<<< optional cited from\n```\n\nQuotes can be quoted by putting more <s\n\n```\n\t<<<\n\tQuote Level 1\n\t\n\t<<<<\n\tQuoteLevel 2\n\t<<<<\n\t\n\t<<<\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"quoteblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(<<<+)/mg;\n};\n\nexports.parse = function() {\n\tvar classes = [\"tc-quote\"];\n\t// Get all the details of the match\n\tvar reEndString = \"^\" + this.match[1] + \"(?!<)\";\n\t// Move past the <s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\n\t// Parse any classes, whitespace and then the optional cite itself\n\tclasses.push.apply(classes, this.parser.parseClasses());\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar cite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// before handling the cite, parse the body of the quote\n\tvar tree= this.parser.parseBlocks(reEndString);\n\t// If we got a cite, put it before the text\n\tif(cite.length > 0) {\n\t\ttree.unshift({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Parse any optional cite\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tcite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// If we got a cite, push it\n\tif(cite.length > 0) {\n\t\ttree.push({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Return the blockquote element\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"blockquote\",\n\t\tattributes: {\n\t\t\tclass: { type: \"string\", value: classes.join(\" \") },\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/rules.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/rules.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/rules.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for rules specifications\n\n```\n\\rules except ruleone ruletwo rulethree\n\\rules only ruleone ruletwo rulethree\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"rules\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\rules[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\tif(tokens.length > 0) {\n\t\tthis.parser.amendRules(tokens[0],tokens.slice(1));\n\t}\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for assigning styles and classes to paragraphs and other blocks. For example:\n\n```\n@@.myClass\n@@background-color:red;\nThis paragraph will have the CSS class `myClass`.\n\n* The `<ul>` around this list will also have the class `myClass`\n* List item 2\n\n@@\n```\n\nNote that classes and styles can be mixed subject to the rule that styles must precede classes. For example\n\n```\n@@.myFirstClass.mySecondClass\n@@width:100px;.myThirdClass\nThis is a paragraph\n@@\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(?:\\.([^\\r\\n\\s]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEndString = \"^@@(?:\\\\r?\\\\n)?\";\n\tvar classes = [], styles = [];\n\tdo {\n\t\t// Get the class and style\n\t\tif(this.match[1]) {\n\t\t\tstyles.push(this.match[1]);\n\t\t}\n\t\tif(this.match[2]) {\n\t\t\tclasses.push(this.match[2].split(\".\").join(\" \"));\n\t\t}\n\t\t// Move past the match\n\t\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\t// Look for another line of classes and styles\n\t\tthis.match = this.matchRegExp.exec(this.parser.source);\n\t} while(this.match && this.match.index === this.parser.pos);\n\t// Parse the body\n\tvar tree = this.parser.parseBlocks(reEndString);\n\tfor(var t=0; t<tree.length; t++) {\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(tree[t],classes.join(\" \"));\n\t\t}\n\t\tif(styles.length > 0) {\n\t\t\t$tw.utils.addAttributeToParseTreeNode(tree[t],\"style\",styles.join(\"\"));\n\t\t}\n\t}\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for assigning styles and classes to inline runs. For example:\n\n```\n@@.myClass This is some text with a class@@\n@@background-color:red;This is some text with a background colour@@\n@@width:100px;.myClass This is some text with a class and a width@@\n```\n\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(\\.(?:[^\\r\\n\\s]+)\\s+)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /@@/g;\n\t// Get the styles and class\n\tvar stylesString = this.match[1],\n\t\tclassString = this.match[2] ? this.match[2].split(\".\").join(\" \") : undefined;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the run up to the terminator\n\tvar tree = this.parser.parseInlineRun(reEnd,{eatTerminator: true});\n\t// Return the classed span\n\tvar node = {\n\t\ttype: \"element\",\n\t\ttag: \"span\",\n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: \"tc-inline-style\"}\n\t\t},\n\t\tchildren: tree\n\t};\n\tif(classString) {\n\t\t$tw.utils.addClassToParseTreeNode(node,classString);\n\t}\n\tif(stylesString) {\n\t\t$tw.utils.addAttributeToParseTreeNode(node,\"style\",stylesString);\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/syslink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/syslink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/syslink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for system tiddler links.\nCan be suppressed preceding them with `~`.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"syslink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp(\n\t\t\"~?\\\\$:\\\\/[\" +\n\t\t$tw.config.textPrimitives.anyLetter.substr(1,$tw.config.textPrimitives.anyLetter.length - 2) +\n\t\t\"\\/._-]+\",\n\t\t\"mg\"\n\t);\n};\n\nexports.parse = function() {\n\tvar match = this.match[0];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(match.substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: match.substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: match}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: match\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/table.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/table.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/table.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for tables.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"table\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\|(?:[^\\n]*)\\|(?:[fhck]?)\\r?(?:\\n|$)/mg;\n};\n\nvar processRow = function(prevColumns) {\n\tvar cellRegExp = /(?:\\|([^\\n\\|]*)\\|)|(\\|[fhck]?\\r?(?:\\n|$))/mg,\n\t\tcellTermRegExp = /((?:\\x20*)\\|)/mg,\n\t\ttree = [],\n\t\tcol = 0,\n\t\tcolSpanCount = 1,\n\t\tprevCell,\n\t\tvAlign;\n\t// Match a single cell\n\tcellRegExp.lastIndex = this.parser.pos;\n\tvar cellMatch = cellRegExp.exec(this.parser.source);\n\twhile(cellMatch && cellMatch.index === this.parser.pos) {\n\t\tif(cellMatch[1] === \"~\") {\n\t\t\t// Rowspan\n\t\t\tvar last = prevColumns[col];\n\t\t\tif(last) {\n\t\t\t\tlast.rowSpanCount++;\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"rowspan\",last.rowSpanCount);\n\t\t\t\tvAlign = $tw.utils.getAttributeValueFromParseTreeNode(last.element,\"valign\",\"center\");\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"valign\",vAlign);\n\t\t\t\tif(colSpanCount > 1) {\n\t\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"colspan\",colSpanCount);\n\t\t\t\t\tcolSpanCount = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \">\") {\n\t\t\t// Colspan\n\t\t\tcolSpanCount++;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \"<\" && prevCell) {\n\t\t\tcolSpanCount = 1 + $tw.utils.getAttributeValueFromParseTreeNode(prevCell,\"colspan\",1);\n\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\tcolSpanCount = 1;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[2]) {\n\t\t\t// End of row\n\t\t\tif(prevCell && colSpanCount > 1) {\n\t\t\t\tif(prevCell.attributes && prevCell.attributes && prevCell.attributes.colspan) {\n\t\t\t\t\t\tcolSpanCount += prevCell.attributes.colspan.value;\n\t\t\t\t} else {\n\t\t\t\t\tcolSpanCount -= 1;\n\t\t\t\t}\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\t}\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t\tbreak;\n\t\t} else {\n\t\t\t// For ordinary cells, step beyond the opening `|`\n\t\t\tthis.parser.pos++;\n\t\t\t// Look for a space at the start of the cell\n\t\t\tvar spaceLeft = false;\n\t\t\tvAlign = null;\n\t\t\tif(this.parser.source.substr(this.parser.pos).search(/^\\^([^\\^]|\\^\\^)/) === 0) {\n\t\t\t\tvAlign = \"top\";\n\t\t\t} else if(this.parser.source.substr(this.parser.pos).search(/^,([^,]|,,)/) === 0) {\n\t\t\t\tvAlign = \"bottom\";\n\t\t\t}\n\t\t\tif(vAlign) {\n\t\t\t\tthis.parser.pos++;\n\t\t\t}\n\t\t\tvar chr = this.parser.source.substr(this.parser.pos,1);\n\t\t\twhile(chr === \" \") {\n\t\t\t\tspaceLeft = true;\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tchr = this.parser.source.substr(this.parser.pos,1);\n\t\t\t}\n\t\t\t// Check whether this is a heading cell\n\t\t\tvar cell;\n\t\t\tif(chr === \"!\") {\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tcell = {type: \"element\", tag: \"th\", children: []};\n\t\t\t} else {\n\t\t\t\tcell = {type: \"element\", tag: \"td\", children: []};\n\t\t\t}\n\t\t\ttree.push(cell);\n\t\t\t// Record information about this cell\n\t\t\tprevCell = cell;\n\t\t\tprevColumns[col] = {rowSpanCount:1,element:cell};\n\t\t\t// Check for a colspan\n\t\t\tif(colSpanCount > 1) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"colspan\",colSpanCount);\n\t\t\t\tcolSpanCount = 1;\n\t\t\t}\n\t\t\t// Parse the cell\n\t\t\tcell.children = this.parser.parseInlineRun(cellTermRegExp,{eatTerminator: true});\n\t\t\t// Set the alignment for the cell\n\t\t\tif(vAlign) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"valign\",vAlign);\n\t\t\t}\n\t\t\tif(this.parser.source.substr(this.parser.pos - 2,1) === \" \") { // spaceRight\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",spaceLeft ? \"center\" : \"left\");\n\t\t\t} else if(spaceLeft) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",\"right\");\n\t\t\t}\n\t\t\t// Move back to the closing `|`\n\t\t\tthis.parser.pos--;\n\t\t}\n\t\tcol++;\n\t\tcellRegExp.lastIndex = this.parser.pos;\n\t\tcellMatch = cellRegExp.exec(this.parser.source);\n\t}\n\treturn tree;\n};\n\nexports.parse = function() {\n\tvar rowContainerTypes = {\"c\":\"caption\", \"h\":\"thead\", \"\":\"tbody\", \"f\":\"tfoot\"},\n\t\ttable = {type: \"element\", tag: \"table\", children: []},\n\t\trowRegExp = /^\\|([^\\n]*)\\|([fhck]?)\\r?(?:\\n|$)/mg,\n\t\trowTermRegExp = /(\\|(?:[fhck]?)\\r?(?:\\n|$))/mg,\n\t\tprevColumns = [],\n\t\tcurrRowType,\n\t\trowContainer,\n\t\trowCount = 0;\n\t// Match the row\n\trowRegExp.lastIndex = this.parser.pos;\n\tvar rowMatch = rowRegExp.exec(this.parser.source);\n\twhile(rowMatch && rowMatch.index === this.parser.pos) {\n\t\tvar rowType = rowMatch[2];\n\t\t// Check if it is a class assignment\n\t\tif(rowType === \"k\") {\n\t\t\t$tw.utils.addClassToParseTreeNode(table,rowMatch[1]);\n\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t} else {\n\t\t\t// Otherwise, create a new row if this one is of a different type\n\t\t\tif(rowType !== currRowType) {\n\t\t\t\trowContainer = {type: \"element\", tag: rowContainerTypes[rowType], children: []};\n\t\t\t\ttable.children.push(rowContainer);\n\t\t\t\tcurrRowType = rowType;\n\t\t\t}\n\t\t\t// Is this a caption row?\n\t\t\tif(currRowType === \"c\") {\n\t\t\t\t// If so, move past the opening `|` of the row\n\t\t\t\tthis.parser.pos++;\n\t\t\t\t// Move the caption to the first row if it isn't already\n\t\t\t\tif(table.children.length !== 1) {\n\t\t\t\t\ttable.children.pop(); // Take rowContainer out of the children array\n\t\t\t\t\ttable.children.splice(0,0,rowContainer); // Insert it at the bottom\t\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t// Set the alignment - TODO: figure out why TW did this\n//\t\t\t\trowContainer.attributes.align = rowCount === 0 ? \"top\" : \"bottom\";\n\t\t\t\t// Parse the caption\n\t\t\t\trowContainer.children = this.parser.parseInlineRun(rowTermRegExp,{eatTerminator: true});\n\t\t\t} else {\n\t\t\t\t// Create the row\n\t\t\t\tvar theRow = {type: \"element\", tag: \"tr\", children: []};\n\t\t\t\t$tw.utils.addClassToParseTreeNode(theRow,rowCount%2 ? \"oddRow\" : \"evenRow\");\n\t\t\t\trowContainer.children.push(theRow);\n\t\t\t\t// Process the row\n\t\t\t\ttheRow.children = processRow.call(this,prevColumns);\n\t\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t\t\t// Increment the row count\n\t\t\t\trowCount++;\n\t\t\t}\n\t\t}\n\t\trowMatch = rowRegExp.exec(this.parser.source);\n\t}\n\treturn [table];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {},\n\t\t\tisBlock: true\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tisBlock: true,\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {}\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/typedblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/typedblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/typedblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for typed blocks. For example:\n\n```\n$$$.js\nThis will be rendered as JavaScript\n$$$\n\n$$$.svg\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"100\">\n  <circle cx=\"100\" cy=\"50\" r=\"40\" stroke=\"black\" stroke-width=\"2\" fill=\"red\" />\n</svg>\n$$$\n\n$$$text/vnd.tiddlywiki>text/html\nThis will be rendered as an //HTML representation// of WikiText\n$$$\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.name = \"typedblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\$\\$\\$([^ >\\r\\n]*)(?: *> *([^ \\r\\n]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /\\r?\\n\\$\\$\\$\\r?(?:\\n|$)/mg;\n\t// Save the type\n\tvar parseType = this.match[1],\n\t\trenderType = this.match[2];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Parse the block according to the specified type\n\tvar parser = this.parser.wiki.parseText(parseType,text,{defaultType: \"text/plain\"});\n\t// If there's no render type, just return the parse tree\n\tif(!renderType) {\n\t\treturn parser.tree;\n\t} else {\n\t\t// Otherwise, render to the rendertype and return in a <PRE> tag\n\t\tvar widgetNode = this.parser.wiki.makeWidget(parser),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\ttext = renderType === \"text/html\" ? container.innerHTML : container.textContent;\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"pre\",\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/whitespace.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/whitespace.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/whitespace.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for whitespace specifications\n\n```\n\\whitespace trim\n\\whitespace notrim\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"whitespace\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\whitespace[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\t$tw.utils.each(tokens,function(token) {\n\t\tswitch(token) {\n\t\t\tcase \"trim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = true;\n\t\t\t\tbreak;\n\t\t\tcase \"notrim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = false;\n\t\t\t\tbreak;\n\t\t}\n\t});\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikilink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikilink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikilink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for wiki links. For example:\n\n```\nAWikiLink\nAnotherLink\n~SuppressedLink\n```\n\nPrecede a camel case word with `~` to prevent it from being recognised as a link.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"wikilink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp($tw.config.textPrimitives.unWikiLink + \"?\" + $tw.config.textPrimitives.wikiLink,\"mg\");\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get the details of the match\n\tvar linkText = this.match[0];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// If the link starts with the unwikilink character then just output it as plain text\n\tif(linkText.substr(0,1) === $tw.config.textPrimitives.unWikiLink) {\n\t\treturn [{type: \"text\", text: linkText.substr(1)}];\n\t}\n\t// If the link has been preceded with a blocked letter then don't treat it as a link\n\tif(this.match.index > 0) {\n\t\tvar preRegExp = new RegExp($tw.config.textPrimitives.blockPrefixLetters,\"mg\");\n\t\tpreRegExp.lastIndex = this.match.index-1;\n\t\tvar preMatch = preRegExp.exec(this.parser.source);\n\t\tif(preMatch && preMatch.index === this.match.index-1) {\n\t\t\treturn [{type: \"text\", text: linkText}];\n\t\t}\n\t}\n\treturn [{\n\t\ttype: \"link\",\n\t\tattributes: {\n\t\t\tto: {type: \"string\", value: linkText}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: linkText\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/wikiparser.js": {
            "title": "$:/core/modules/parsers/wikiparser/wikiparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/wikiparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe wiki text parser processes blocks of source text into a parse tree.\n\nThe parse tree is made up of nested arrays of these JavaScript objects:\n\n\t{type: \"element\", tag: <string>, attributes: {}, children: []} - an HTML element\n\t{type: \"text\", text: <string>} - a text node\n\t{type: \"entity\", value: <string>} - an entity\n\t{type: \"raw\", html: <string>} - raw HTML\n\nAttributes are stored as hashmaps of the following objects:\n\n\t{type: \"string\", value: <string>} - literal string\n\t{type: \"indirect\", textReference: <textReference>} - indirect through a text reference\n\t{type: \"macro\", macro: <TBD>} - indirect through a macro invocation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar WikiParser = function(type,text,options) {\n\tthis.wiki = options.wiki;\n\tvar self = this;\n\t// Check for an externally linked tiddler\n\tif($tw.browser && (text || \"\") === \"\" && options._canonical_uri) {\n\t\tthis.loadRemoteTiddler(options._canonical_uri);\n\t\ttext = $tw.language.getRawString(\"LazyLoadingWarning\");\n\t}\n\t// Initialise the classes if we don't have them already\n\tif(!this.pragmaRuleClasses) {\n\t\tWikiParser.prototype.pragmaRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"pragma\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.pragmaRuleClasses,\"$:/config/WikiParserRules/Pragmas/\");\n\t}\n\tif(!this.blockRuleClasses) {\n\t\tWikiParser.prototype.blockRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"block\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.blockRuleClasses,\"$:/config/WikiParserRules/Block/\");\n\t}\n\tif(!this.inlineRuleClasses) {\n\t\tWikiParser.prototype.inlineRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"inline\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.inlineRuleClasses,\"$:/config/WikiParserRules/Inline/\");\n\t}\n\t// Save the parse text\n\tthis.type = type || \"text/vnd.tiddlywiki\";\n\tthis.source = text || \"\";\n\tthis.sourceLength = this.source.length;\n\t// Flag for ignoring whitespace\n\tthis.configTrimWhiteSpace = false;\n\t// Set current parse position\n\tthis.pos = 0;\n\t// Instantiate the pragma parse rules\n\tthis.pragmaRules = this.instantiateRules(this.pragmaRuleClasses,\"pragma\",0);\n\t// Instantiate the parser block and inline rules\n\tthis.blockRules = this.instantiateRules(this.blockRuleClasses,\"block\",0);\n\tthis.inlineRules = this.instantiateRules(this.inlineRuleClasses,\"inline\",0);\n\t// Parse any pragmas\n\tthis.tree = [];\n\tvar topBranch = this.parsePragmas();\n\t// Parse the text into inline runs or blocks\n\tif(options.parseAsInline) {\n\t\ttopBranch.push.apply(topBranch,this.parseInlineRun());\n\t} else {\n\t\ttopBranch.push.apply(topBranch,this.parseBlocks());\n\t}\n\t// Return the parse tree\n};\n\n/*\n*/\nWikiParser.prototype.loadRemoteTiddler = function(url) {\n\tvar self = this;\n\t$tw.utils.httpRequest({\n\t\turl: url,\n\t\ttype: \"GET\",\n\t\tcallback: function(err,data) {\n\t\t\tif(!err) {\n\t\t\t\tvar tiddlers = self.wiki.deserializeTiddlers(\".tid\",data,self.wiki.getCreationFields());\n\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\ttiddler[\"_canonical_uri\"] = url;\n\t\t\t\t});\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tself.wiki.addTiddlers(tiddlers);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\n*/\nWikiParser.prototype.setupRules = function(proto,configPrefix) {\n\tvar self = this;\n\tif(!$tw.safemode) {\n\t\t$tw.utils.each(proto,function(object,name) {\n\t\t\tif(self.wiki.getTiddlerText(configPrefix + name,\"enable\") !== \"enable\") {\n\t\t\t\tdelete proto[name];\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nInstantiate an array of parse rules\n*/\nWikiParser.prototype.instantiateRules = function(classes,type,startPos) {\n\tvar rulesInfo = [],\n\t\tself = this;\n\t$tw.utils.each(classes,function(RuleClass) {\n\t\t// Instantiate the rule\n\t\tvar rule = new RuleClass(self);\n\t\trule.is = {};\n\t\trule.is[type] = true;\n\t\trule.init(self);\n\t\tvar matchIndex = rule.findNextMatch(startPos);\n\t\tif(matchIndex !== undefined) {\n\t\t\trulesInfo.push({\n\t\t\t\trule: rule,\n\t\t\t\tmatchIndex: matchIndex\n\t\t\t});\n\t\t}\n\t});\n\treturn rulesInfo;\n};\n\n/*\nSkip any whitespace at the current position. Options are:\n\ttreatNewlinesAsNonWhitespace: true if newlines are NOT to be treated as whitespace\n*/\nWikiParser.prototype.skipWhitespace = function(options) {\n\toptions = options || {};\n\tvar whitespaceRegExp = options.treatNewlinesAsNonWhitespace ? /([^\\S\\n]+)/mg : /(\\s+)/mg;\n\twhitespaceRegExp.lastIndex = this.pos;\n\tvar whitespaceMatch = whitespaceRegExp.exec(this.source);\n\tif(whitespaceMatch && whitespaceMatch.index === this.pos) {\n\t\tthis.pos = whitespaceRegExp.lastIndex;\n\t}\n};\n\n/*\nGet the next match out of an array of parse rule instances\n*/\nWikiParser.prototype.findNextMatch = function(rules,startPos) {\n\t// Find the best matching rule by finding the closest match position\n\tvar matchingRule,\n\t\tmatchingRulePos = this.sourceLength;\n\t// Step through each rule\n\tfor(var t=0; t<rules.length; t++) {\n\t\tvar ruleInfo = rules[t];\n\t\t// Ask the rule to get the next match if we've moved past the current one\n\t\tif(ruleInfo.matchIndex !== undefined  && ruleInfo.matchIndex < startPos) {\n\t\t\truleInfo.matchIndex = ruleInfo.rule.findNextMatch(startPos);\n\t\t}\n\t\t// Adopt this match if it's closer than the current best match\n\t\tif(ruleInfo.matchIndex !== undefined && ruleInfo.matchIndex <= matchingRulePos) {\n\t\t\tmatchingRule = ruleInfo;\n\t\t\tmatchingRulePos = ruleInfo.matchIndex;\n\t\t}\n\t}\n\treturn matchingRule;\n};\n\n/*\nParse any pragmas at the beginning of a block of parse text\n*/\nWikiParser.prototype.parsePragmas = function() {\n\tvar currentTreeBranch = this.tree;\n\twhile(true) {\n\t\t// Skip whitespace\n\t\tthis.skipWhitespace();\n\t\t// Check for the end of the text\n\t\tif(this.pos >= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check if we've arrived at a pragma rule match\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules,this.pos);\n\t\t// If not, just exit\n\t\tif(!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the pragma rule\n\t\tvar subTree = nextMatch.rule.parse();\n\t\tif(subTree.length > 0) {\n\t\t\t// Quick hack; we only cope with a single parse tree node being returned, which is true at the moment\n\t\t\tcurrentTreeBranch.push.apply(currentTreeBranch,subTree);\n\t\t\tsubTree[0].children = [];\n\t\t\tcurrentTreeBranch = subTree[0].children;\n\t\t}\n\t}\n\treturn currentTreeBranch;\n};\n\n/*\nParse a block from the current position\n\tterminatorRegExpString: optional regular expression string that identifies the end of plain paragraphs. Must not include capturing parenthesis\n*/\nWikiParser.prototype.parseBlock = function(terminatorRegExpString) {\n\tvar terminatorRegExp = terminatorRegExpString ? new RegExp(\"(\" + terminatorRegExpString + \"|\\\\r?\\\\n\\\\r?\\\\n)\",\"mg\") : /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif(this.pos >= this.sourceLength) {\n\t\treturn [];\n\t}\n\t// Look for a block rule that applies at the current position\n\tvar nextMatch = this.findNextMatch(this.blockRules,this.pos);\n\tif(nextMatch && nextMatch.matchIndex === this.pos) {\n\t\treturn nextMatch.rule.parse();\n\t}\n\t// Treat it as a paragraph if we didn't find a block rule\n\treturn [{type: \"element\", tag: \"p\", children: this.parseInlineRun(terminatorRegExp)}];\n};\n\n/*\nParse a series of blocks of text until a terminating regexp is encountered or the end of the text\n\tterminatorRegExpString: terminating regular expression\n*/\nWikiParser.prototype.parseBlocks = function(terminatorRegExpString) {\n\tif(terminatorRegExpString) {\n\t\treturn this.parseBlocksTerminated(terminatorRegExpString);\n\t} else {\n\t\treturn this.parseBlocksUnterminated();\n\t}\n};\n\n/*\nParse a block from the current position to the end of the text\n*/\nWikiParser.prototype.parseBlocksUnterminated = function() {\n\tvar tree = [];\n\twhile(this.pos < this.sourceLength) {\n\t\ttree.push.apply(tree,this.parseBlock());\n\t}\n\treturn tree;\n};\n\n/*\nParse blocks of text until a terminating regexp is encountered\n*/\nWikiParser.prototype.parseBlocksTerminated = function(terminatorRegExpString) {\n\tvar terminatorRegExp = new RegExp(\"(\" + terminatorRegExpString + \")\",\"mg\"),\n\t\ttree = [];\n\t// Skip any whitespace\n\tthis.skipWhitespace();\n\t//  Check if we've got the end marker\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar match = terminatorRegExp.exec(this.source);\n\t// Parse the text into blocks\n\twhile(this.pos < this.sourceLength && !(match && match.index === this.pos)) {\n\t\tvar blocks = this.parseBlock(terminatorRegExpString);\n\t\ttree.push.apply(tree,blocks);\n\t\t// Skip any whitespace\n\t\tthis.skipWhitespace();\n\t\t//  Check if we've got the end marker\n\t\tterminatorRegExp.lastIndex = this.pos;\n\t\tmatch = terminatorRegExp.exec(this.source);\n\t}\n\tif(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t}\n\treturn tree;\n};\n\n/*\nParse a run of text at the current position\n\tterminatorRegExp: a regexp at which to stop the run\n\toptions: see below\nOptions available:\n\teatTerminator: move the parse position past any encountered terminator (default false)\n*/\nWikiParser.prototype.parseInlineRun = function(terminatorRegExp,options) {\n\tif(terminatorRegExp) {\n\t\treturn this.parseInlineRunTerminated(terminatorRegExp,options);\n\t} else {\n\t\treturn this.parseInlineRunUnterminated(options);\n\t}\n};\n\nWikiParser.prototype.parseInlineRunUnterminated = function(options) {\n\tvar tree = [];\n\t// Find the next occurrence of an inline rule\n\tvar nextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around the matches until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && nextMatch) {\n\t\t// Process the text preceding the run rule\n\t\tif(nextMatch.matchIndex > this.pos) {\n\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,nextMatch.matchIndex));\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\t// Process the run rule\n\t\ttree.push.apply(tree,nextMatch.rule.parse());\n\t\t// Look for the next run rule\n\t\tnextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\nWikiParser.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\toptions = options || {};\n\tvar tree = [];\n\t// Find the next occurrence of the terminator\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\t// Find the next occurrence of a inlinerule\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\n\t\t// Return if we've found the terminator, and it precedes any inline rule match\n\t\tif(terminatorMatch) {\n\t\t\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\n\t\t\t\tif(terminatorMatch.index > this.pos) {\n\t\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,terminatorMatch.index));\n\t\t\t\t}\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif(options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}\n\t\t}\n\t\t// Process any inline rule, along with the text preceding it\n\t\tif(inlineRuleMatch) {\n\t\t\t// Preceding text\n\t\t\tif(inlineRuleMatch.matchIndex > this.pos) {\n\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,inlineRuleMatch.matchIndex));\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\t// Process the inline rule\n\t\t\ttree.push.apply(tree,inlineRuleMatch.rule.parse());\n\t\t\t// Look for the next inline rule\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t\t\t// Look for the next terminator match\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\n/*\nPush a text widget onto an array, respecting the configTrimWhiteSpace setting\n*/\nWikiParser.prototype.pushTextWidget = function(array,text) {\n\tif(this.configTrimWhiteSpace) {\n\t\ttext = $tw.utils.trim(text);\n\t}\n\tif(text) {\n\t\tarray.push({type: \"text\", text: text});\t\t\n\t}\n};\n\n/*\nParse zero or more class specifiers `.classname`\n*/\nWikiParser.prototype.parseClasses = function() {\n\tvar classRegExp = /\\.([^\\s\\.]+)/mg,\n\t\tclassNames = [];\n\tclassRegExp.lastIndex = this.pos;\n\tvar match = classRegExp.exec(this.source);\n\twhile(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t\tclassNames.push(match[1]);\n\t\tmatch = classRegExp.exec(this.source);\n\t}\n\treturn classNames;\n};\n\n/*\nAmend the rules used by this instance of the parser\n\ttype: `only` keeps just the named rules, `except` keeps all but the named rules\n\tnames: array of rule names\n*/\nWikiParser.prototype.amendRules = function(type,names) {\n\tnames = names || [];\n\t// Define the filter function\n\tvar keepFilter;\n\tif(type === \"only\") {\n\t\tkeepFilter = function(name) {\n\t\t\treturn names.indexOf(name) !== -1;\n\t\t};\n\t} else if(type === \"except\") {\n\t\tkeepFilter = function(name) {\n\t\t\treturn names.indexOf(name) === -1;\n\t\t};\n\t} else {\n\t\treturn;\n\t}\n\t// Define a function to process each of our rule arrays\n\tvar processRuleArray = function(ruleArray) {\n\t\tfor(var t=ruleArray.length-1; t>=0; t--) {\n\t\t\tif(!keepFilter(ruleArray[t].rule.name)) {\n\t\t\t\truleArray.splice(t,1);\n\t\t\t}\n\t\t}\n\t};\n\t// Process each rule array\n\tprocessRuleArray(this.pragmaRules);\n\tprocessRuleArray(this.blockRules);\n\tprocessRuleArray(this.inlineRules);\n};\n\nexports[\"text/vnd.tiddlywiki\"] = WikiParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikirulebase.js\ntype: application/javascript\nmodule-type: global\n\nBase class for wiki parser rules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nThis constructor is always overridden with a blank constructor, and so shouldn't be used\n*/\nvar WikiRuleBase = function() {\n};\n\n/*\nTo be overridden by individual rules\n*/\nWikiRuleBase.prototype.init = function(parser) {\n\tthis.parser = parser;\n};\n\n/*\nDefault implementation of findNextMatch uses RegExp matching\n*/\nWikiRuleBase.prototype.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\treturn this.match ? this.match.index : undefined;\n};\n\nexports.WikiRuleBase = WikiRuleBase;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/pluginswitcher.js": {
            "title": "$:/core/modules/pluginswitcher.js",
            "text": "/*\\\ntitle: $:/core/modules/pluginswitcher.js\ntype: application/javascript\nmodule-type: global\n\nManages switching plugins for themes and languages.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\noptions:\nwiki: wiki store to be used\npluginType: type of plugin to be switched\ncontrollerTitle: title of tiddler used to control switching of this resource\ndefaultPlugins: array of default plugins to be used if nominated plugin isn't found\nonSwitch: callback when plugin is switched (single parameter is array of plugin titles)\n*/\nfunction PluginSwitcher(options) {\n\tthis.wiki = options.wiki;\n\tthis.pluginType = options.pluginType;\n\tthis.controllerTitle = options.controllerTitle;\n\tthis.defaultPlugins = options.defaultPlugins || [];\n\tthis.onSwitch = options.onSwitch;\n\t// Switch to the current plugin\n\tthis.switchPlugins();\n\t// Listen for changes to the selected plugin\n\tvar self = this;\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,self.controllerTitle)) {\n\t\t\tself.switchPlugins();\n\t\t}\n\t});\n}\n\nPluginSwitcher.prototype.switchPlugins = function() {\n\t// Get the name of the current theme\n\tvar selectedPluginTitle = this.wiki.getTiddlerText(this.controllerTitle);\n\t// If it doesn't exist, then fallback to one of the default themes\n\tvar index = 0;\n\twhile(!this.wiki.getTiddler(selectedPluginTitle) && index < this.defaultPlugins.length) {\n\t\tselectedPluginTitle = this.defaultPlugins[index++];\n\t}\n\t// Accumulate the titles of the plugins that we need to load\n\tvar plugins = [],\n\t\tself = this,\n\t\taccumulatePlugin = function(title) {\n\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\tif(tiddler && tiddler.isPlugin() && plugins.indexOf(title) === -1) {\n\t\t\t\tplugins.push(title);\n\t\t\t\tvar pluginInfo = JSON.parse(self.wiki.getTiddlerText(title)),\n\t\t\t\t\tdependents = $tw.utils.parseStringArray(tiddler.fields.dependents || \"\");\n\t\t\t\t$tw.utils.each(dependents,function(title) {\n\t\t\t\t\taccumulatePlugin(title);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\taccumulatePlugin(selectedPluginTitle);\n\t// Unregister any existing theme tiddlers\n\tvar unregisteredTiddlers = $tw.wiki.unregisterPluginTiddlers(this.pluginType);\n\t// Register any new theme tiddlers\n\tvar registeredTiddlers = $tw.wiki.registerPluginTiddlers(this.pluginType,plugins);\n\t// Unpack the current theme tiddlers\n\t$tw.wiki.unpackPluginTiddlers();\n\t// Call the switch handler\n\tif(this.onSwitch) {\n\t\tthis.onSwitch(plugins);\n\t}\n};\n\nexports.PluginSwitcher = PluginSwitcher;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/saver-handler.js": {
            "title": "$:/core/modules/saver-handler.js",
            "text": "/*\\\ntitle: $:/core/modules/saver-handler.js\ntype: application/javascript\nmodule-type: global\n\nThe saver handler tracks changes to the store and handles saving the entire wiki via saver modules.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInstantiate the saver handler with the following options:\nwiki: wiki to be synced\ndirtyTracking: true if dirty tracking should be performed\n*/\nfunction SaverHandler(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\tthis.dirtyTracking = options.dirtyTracking;\n\tthis.pendingAutoSave = false;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"saver-handler\");\n\t// Initialise our savers\n\tif($tw.browser) {\n\t\tthis.initSavers();\n\t}\n\t// Only do dirty tracking if required\n\tif($tw.browser && this.dirtyTracking) {\n\t\t// Compile the dirty tiddler filter\n\t\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t\t// Count of changes that have not yet been saved\n\t\tthis.numChanges = 0;\n\t\t// Listen out for changes to tiddlers\n\t\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t\t// Filter the changes so that we only count changes to tiddlers that we care about\n\t\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t\t});\n\t\t\t// Adjust the number of changes\n\t\t\tself.numChanges += filteredChanges.length;\n\t\t\tself.updateDirtyStatus();\n\t\t\t// Do any autosave if one is pending and there's no more change events\n\t\t\tif(self.pendingAutoSave && self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tself.pendingAutoSave = false;\n\t\t\t}\n\t\t});\n\t\t// Listen for the autosave event\n\t\t$tw.rootWidget.addEventListener(\"tm-auto-save-wiki\",function(event) {\n\t\t\t// Do the autosave unless there are outstanding tiddler change events\n\t\t\tif(self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise put ourselves in the \"pending autosave\" state and wait for the change event before we do the autosave\n\t\t\t\tself.pendingAutoSave = true;\n\t\t\t}\n\t\t});\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t}\n\t// Install the save action handlers\n\tif($tw.browser) {\n\t\t$tw.rootWidget.addEventListener(\"tm-save-wiki\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-download-file\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\tmethod: \"download\",\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t}\n}\n\nSaverHandler.prototype.titleSyncFilter = \"$:/config/SaverFilter\";\nSaverHandler.prototype.titleAutoSave = \"$:/config/AutoSave\";\nSaverHandler.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\n\n/*\nSelect the appropriate saver modules and set them up\n*/\nSaverHandler.prototype.initSavers = function(moduleType) {\n\tmoduleType = moduleType || \"saver\";\n\t// Instantiate the available savers\n\tthis.savers = [];\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tif(module.canSave(self)) {\n\t\t\tself.savers.push(module.create(self.wiki));\n\t\t}\n\t});\n\t// Sort the savers into priority order\n\tthis.savers.sort(function(a,b) {\n\t\tif(a.info.priority < b.info.priority) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(a.info.priority > b.info.priority) {\n\t\t\t\treturn +1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nSave the wiki contents. Options are:\n\tmethod: \"save\", \"autosave\" or \"download\"\n\ttemplate: the tiddler containing the template to save\n\tdownloadType: the content type for the saved file\n*/\nSaverHandler.prototype.saveWiki = function(options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tmethod = options.method || \"save\",\n\t\tvariables = options.variables || {},\n\t\ttemplate = options.template || \"$:/core/save/all\",\n\t\tdownloadType = options.downloadType || \"text/plain\",\n\t\ttext = this.wiki.renderTiddler(downloadType,template,options),\n\t\tcallback = function(err) {\n\t\t\tif(err) {\n\t\t\t\talert($tw.language.getString(\"Error/WhileSaving\") + \":\\n\\n\" + err);\n\t\t\t} else {\n\t\t\t\t// Clear the task queue if we're saving (rather than downloading)\n\t\t\t\tif(method !== \"download\") {\n\t\t\t\t\tself.numChanges = 0;\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t}\n\t\t\t\t$tw.notifier.display(self.titleSavedNotification);\n\t\t\t\tif(options.callback) {\n\t\t\t\t\toptions.callback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t// Ignore autosave if disabled\n\tif(method === \"autosave\" && this.wiki.getTiddlerText(this.titleAutoSave,\"yes\") !== \"yes\") {\n\t\treturn false;\n\t}\n\t// Call the highest priority saver that supports this method\n\tfor(var t=this.savers.length-1; t>=0; t--) {\n\t\tvar saver = this.savers[t];\n\t\tif(saver.info.capabilities.indexOf(method) !== -1 && saver.save(text,method,callback,{variables: {filename: variables.filename}})) {\n\t\t\tthis.logger.log(\"Saving wiki with method\",method,\"through saver\",saver.info.name);\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSaverHandler.prototype.isDirty = function() {\n\treturn this.numChanges > 0;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSaverHandler.prototype.updateDirtyStatus = function() {\n\tif($tw.browser) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t}\n};\n\nexports.SaverHandler = SaverHandler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/savers/andtidwiki.js": {
            "title": "$:/core/modules/savers/andtidwiki.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/andtidwiki.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the AndTidWiki Android app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar AndTidWiki = function(wiki) {\n};\n\nAndTidWiki.prototype.save = function(text,method,callback) {\n\t// Get the pathname of this document\n\tvar pathname = decodeURIComponent(document.location.toString().split(\"#\")[0]);\n\t// Strip the file://\n\tif(pathname.indexOf(\"file://\") === 0) {\n\t\tpathname = pathname.substr(7);\n\t}\n\t// Strip any query or location part\n\tvar p = pathname.indexOf(\"?\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\tp = pathname.indexOf(\"#\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\t// Save the file\n\twindow.twi.saveFile(pathname,text);\n\t// Call the callback\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nAndTidWiki.prototype.info = {\n\tname: \"andtidwiki\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.twi && !!window.twi.saveFile;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new AndTidWiki(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/beaker.js": {
            "title": "$:/core/modules/savers/beaker.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/beaker.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Beaker browser's (https://beakerbrowser.com) Dat protocol (https://datproject.org/)\nCompatible with beaker >= V0.7.2\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar BeakerSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nBeakerSaver.prototype.save = function(text,method,callback) {\n\tvar dat = new DatArchive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Beaker Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Beaker Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nBeakerSaver.prototype.info = {\n\tname: \"beaker\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.DatArchive;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new BeakerSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/download.js": {
            "title": "$:/core/modules/savers/download.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/download.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar DownloadSaver = function(wiki) {\n};\n\nDownloadSaver.prototype.save = function(text,method,callback,options) {\n\toptions = options || {};\n\t// Get the current filename\n\tvar filename = options.variables.filename;\n\tif(!filename) {\n\t\tvar p = document.location.pathname.lastIndexOf(\"/\");\n\t\tif(p !== -1) {\n\t\t\t// We decode the pathname because document.location is URL encoded by the browser\n\t\t\tfilename = decodeURIComponent(document.location.pathname.substr(p+1));\n\t\t}\n\t}\n\tif(!filename) {\n\t\tfilename = \"tiddlywiki.html\";\n\t}\n\t// Set up the link\n\tvar link = document.createElement(\"a\");\n\tif(Blob !== undefined) {\n\t\tvar blob = new Blob([text], {type: \"text/html\"});\n\t\tlink.setAttribute(\"href\", URL.createObjectURL(blob));\n\t} else {\n\t\tlink.setAttribute(\"href\",\"data:text/html,\" + encodeURIComponent(text));\n\t}\n\tlink.setAttribute(\"download\",filename);\n\tdocument.body.appendChild(link);\n\tlink.click();\n\tdocument.body.removeChild(link);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nDownloadSaver.prototype.info = {\n\tname: \"download\",\n\tpriority: 100\n};\n\nObject.defineProperty(DownloadSaver.prototype.info, \"capabilities\", {\n\tget: function() {\n\t\tvar capabilities = [\"save\", \"download\"];\n\t\tif(($tw.wiki.getTextReference(\"$:/config/DownloadSaver/AutoSave\") || \"\").toLowerCase() === \"yes\") {\n\t\t\tcapabilities.push(\"autosave\");\n\t\t}\n\t\treturn capabilities;\n\t}\n});\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn document.createElement(\"a\").download !== undefined;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new DownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/fsosaver.js": {
            "title": "$:/core/modules/savers/fsosaver.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/fsosaver.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via MS FileSystemObject ActiveXObject\n\nNote: Since TiddlyWiki's markup contains the MOTW, the FileSystemObject normally won't be available. \nHowever, if the wiki is loaded as an .HTA file (Windows HTML Applications) then the FSO can be used.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar FSOSaver = function(wiki) {\n};\n\nFSOSaver.prototype.save = function(text,method,callback) {\n\t// Get the pathname of this document\n\tvar pathname = unescape(document.location.pathname);\n\t// Test for a Windows path of the form /x:\\blah...\n\tif(/^\\/[A-Z]\\:\\\\[^\\\\]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t} else if(document.location.hostname !== \"\" && /^\\/\\\\[^\\\\]+\\\\[^\\\\]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t\t// reconstruct UNC path\n\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t} else {\n\t\treturn false;\n\t}\n\t// Save the file (as UTF-16)\n\tvar fso = new ActiveXObject(\"Scripting.FileSystemObject\");\n\tvar file = fso.OpenTextFile(pathname,2,-1,-1);\n\tfile.Write(text);\n\tfile.Close();\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nFSOSaver.prototype.info = {\n\tname: \"FSOSaver\",\n\tpriority: 120,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\ttry {\n\t\treturn (window.location.protocol === \"file:\") && !!(new ActiveXObject(\"Scripting.FileSystemObject\"));\n\t} catch(e) { return false; }\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new FSOSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/manualdownload.js": {
            "title": "$:/core/modules/savers/manualdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/manualdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Title of the tiddler containing the download message\nvar downloadInstructionsTitle = \"$:/language/Modals/Download\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar ManualDownloadSaver = function(wiki) {\n};\n\nManualDownloadSaver.prototype.save = function(text,method,callback) {\n\t$tw.modal.display(downloadInstructionsTitle,{\n\t\tdownloadLink: \"data:text/html,\" + encodeURIComponent(text)\n\t});\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nManualDownloadSaver.prototype.info = {\n\tname: \"manualdownload\",\n\tpriority: 0,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new ManualDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/msdownload.js": {
            "title": "$:/core/modules/savers/msdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/msdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via window.navigator.msSaveBlob()\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar MsDownloadSaver = function(wiki) {\n};\n\nMsDownloadSaver.prototype.save = function(text,method,callback) {\n\t// Get the current filename\n\tvar filename = \"tiddlywiki.html\",\n\t\tp = document.location.pathname.lastIndexOf(\"/\");\n\tif(p !== -1) {\n\t\tfilename = document.location.pathname.substr(p+1);\n\t}\n\t// Set up the link\n\tvar blob = new Blob([text], {type: \"text/html\"});\n\twindow.navigator.msSaveBlob(blob,filename);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nMsDownloadSaver.prototype.info = {\n\tname: \"msdownload\",\n\tpriority: 110,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.navigator.msSaveBlob;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new MsDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/put.js": {
            "title": "$:/core/modules/savers/put.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/put.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by performing a PUT request to the server\n\nWorks with any server which accepts a PUT request\nto the current URL, such as a WebDAV server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar PutSaver = function(wiki) {\n\tthis.wiki = wiki;\n\tvar self = this;\n\tvar uri = this.uri();\n\t// Async server probe. Until probe finishes, save will fail fast\n\t// See also https://github.com/Jermolene/TiddlyWiki5/issues/2276\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"OPTIONS\",\n\t\tcallback: function(err, data, xhr) {\n\t\t\t// Check DAV header http://www.webdav.org/specs/rfc2518.html#rfc.section.9.1\n\t\t\tif(!err) {\n\t\t\t\tself.serverAcceptsPuts = xhr.status === 200 && !!xhr.getResponseHeader(\"dav\");\n\t\t\t}\n\t\t}\n\t});\n\t// Retrieve ETag if available\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"HEAD\",\n\t\tcallback: function(err, data, xhr) {\n\t\t\tif(!err) {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t}\n\t\t}\n\t});\n};\n\nPutSaver.prototype.uri = function() {\n\treturn document.location.toString().split(\"#\")[0];\n};\n\n// TODO: in case of edit conflict\n// Prompt: Do you want to save over this? Y/N\n// Merging would be ideal, and may be possible using future generic merge flow\nPutSaver.prototype.save = function(text, method, callback) {\n\tif(!this.serverAcceptsPuts) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tvar headers = { \"Content-Type\": \"text/html;charset=UTF-8\" };\n\tif(this.etag) {\n\t\theaders[\"If-Match\"] = this.etag;\n\t}\n\t$tw.utils.httpRequest({\n\t\turl: this.uri(),\n\t\ttype: \"PUT\",\n\t\theaders: headers,\n\t\tdata: text,\n\t\tcallback: function(err, data, xhr) {\n\t\t\tif(err) {\n\t\t\t\tcallback(err);\n\t\t\t} else if(xhr.status === 200 || xhr.status === 201) {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t\tcallback(null); // success\n\t\t\t} else if(xhr.status === 412) { // edit conflict\n\t\t\t\tvar message = $tw.language.getString(\"Error/EditConflict\");\n\t\t\t\tcallback(message);\n\t\t\t} else {\n\t\t\t\tcallback(xhr.responseText); // fail\n\t\t\t}\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nPutSaver.prototype.info = {\n\tname: \"put\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn /^https?:/.test(location.protocol);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new PutSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyfox.js": {
            "title": "$:/core/modules/savers/tiddlyfox.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyfox.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TiddlyFox file extension\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TiddlyFoxSaver = function(wiki) {\n};\n\nTiddlyFoxSaver.prototype.save = function(text,method,callback) {\n\tvar messageBox = document.getElementById(\"tiddlyfox-message-box\");\n\tif(messageBox) {\n\t\t// Get the pathname of this document\n\t\tvar pathname = document.location.toString().split(\"#\")[0];\n\t\t// Replace file://localhost/ with file:///\n\t\tif(pathname.indexOf(\"file://localhost/\") === 0) {\n\t\t\tpathname = \"file://\" + pathname.substr(16);\n\t\t}\n\t\t// Windows path file:///x:/blah/blah --> x:\\blah\\blah\n\t\tif(/^file\\:\\/\\/\\/[A-Z]\\:\\//i.test(pathname)) {\n\t\t\t// Remove the leading slash and convert slashes to backslashes\n\t\t\tpathname = pathname.substr(8).replace(/\\//g,\"\\\\\");\n\t\t// Firefox Windows network path file://///server/share/blah/blah --> //server/share/blah/blah\n\t\t} else if(pathname.indexOf(\"file://///\") === 0) {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(10)).replace(/\\//g,\"\\\\\");\n\t\t// Mac/Unix local path file:///path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:///\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(7));\n\t\t// Mac/Unix local path file:/path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:/\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(5));\n\t\t// Otherwise Windows networth path file://server/share/path/path --> \\\\server\\share\\path\\path\n\t\t} else {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(7)).replace(new RegExp(\"/\",\"g\"),\"\\\\\");\n\t\t}\n\t\t// Create the message element and put it in the message box\n\t\tvar message = document.createElement(\"div\");\n\t\tmessage.setAttribute(\"data-tiddlyfox-path\",decodeURIComponent(pathname));\n\t\tmessage.setAttribute(\"data-tiddlyfox-content\",text);\n\t\tmessageBox.appendChild(message);\n\t\t// Add an event handler for when the file has been saved\n\t\tmessage.addEventListener(\"tiddlyfox-have-saved-file\",function(event) {\n\t\t\tcallback(null);\n\t\t}, false);\n\t\t// Create and dispatch the custom event to the extension\n\t\tvar event = document.createEvent(\"Events\");\n\t\tevent.initEvent(\"tiddlyfox-save-file\",true,false);\n\t\tmessage.dispatchEvent(event);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyFoxSaver.prototype.info = {\n\tname: \"tiddlyfox\",\n\tpriority: 1500,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyFoxSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyie.js": {
            "title": "$:/core/modules/savers/tiddlyie.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyie.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via Internet Explorer BHO extenion (TiddlyIE)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar TiddlyIESaver = function(wiki) {\n};\n\nTiddlyIESaver.prototype.save = function(text,method,callback) {\n\t// Check existence of TiddlyIE BHO extension (note: only works after document is complete)\n\tif(typeof(window.TiddlyIE) != \"undefined\") {\n\t\t// Get the pathname of this document\n\t\tvar pathname = unescape(document.location.pathname);\n\t\t// Test for a Windows path of the form /x:/blah...\n\t\tif(/^\\/[A-Z]\\:\\/[^\\/]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+ (is this better?: ^/[a-z]:/[^/]+(/[^/]+)*\\.[^/]+ )\n\t\t\t// Remove the leading slash\n\t\t\tpathname = pathname.substr(1);\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t} else if(document.hostname !== \"\" && /^\\/[^\\/]+\\/[^\\/]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t\t// reconstruct UNC path\n\t\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t\t} else return false;\n\t\t// Prompt the user to save the file\n\t\twindow.TiddlyIE.save(pathname, text);\n\t\t// Callback that we succeeded\n\t\tcallback(null);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyIESaver.prototype.info = {\n\tname: \"tiddlyiesaver\",\n\tpriority: 1500,\n\tcapabilities: [\"save\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn (window.location.protocol === \"file:\");\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyIESaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/twedit.js": {
            "title": "$:/core/modules/savers/twedit.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/twedit.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TWEdit iOS app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TWEditSaver = function(wiki) {\n};\n\nTWEditSaver.prototype.save = function(text,method,callback) {\n\t// Bail if we're not running under TWEdit\n\tif(typeof DeviceInfo !== \"object\") {\n\t\treturn false;\n\t}\n\t// Get the pathname of this document\n\tvar pathname = decodeURIComponent(document.location.pathname);\n\t// Strip any query or location part\n\tvar p = pathname.indexOf(\"?\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\tp = pathname.indexOf(\"#\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\t// Remove the leading \"/Documents\" from path\n\tvar prefix = \"/Documents\";\n\tif(pathname.indexOf(prefix) === 0) {\n\t\tpathname = pathname.substr(prefix.length);\n\t}\n\t// Error handler\n\tvar errorHandler = function(event) {\n\t\t// Error\n\t\tcallback($tw.language.getString(\"Error/SavingToTWEdit\") + \": \" + event.target.error.code);\n\t};\n\t// Get the file system\n\twindow.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem) {\n\t\t// Now we've got the filesystem, get the fileEntry\n\t\tfileSystem.root.getFile(pathname, {create: true}, function(fileEntry) {\n\t\t\t// Now we've got the fileEntry, create the writer\n\t\t\tfileEntry.createWriter(function(writer) {\n\t\t\t\twriter.onerror = errorHandler;\n\t\t\t\twriter.onwrite = function() {\n\t\t\t\t\tcallback(null);\n\t\t\t\t};\n\t\t\t\twriter.position = 0;\n\t\t\t\twriter.write(text);\n\t\t\t},errorHandler);\n\t\t}, errorHandler);\n\t}, errorHandler);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nTWEditSaver.prototype.info = {\n\tname: \"twedit\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TWEditSaver(wiki);\n};\n\n/////////////////////////// Hack\n// HACK: This ensures that TWEdit recognises us as a TiddlyWiki document\nif($tw.browser) {\n\twindow.version = {title: \"TiddlyWiki\"};\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/upload.js": {
            "title": "$:/core/modules/savers/upload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/upload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via upload to a server.\n\nDesigned to be compatible with BidiX's UploadPlugin at http://tiddlywiki.bidix.info/#UploadPlugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar UploadSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nUploadSaver.prototype.save = function(text,method,callback) {\n\t// Get the various parameters we need\n\tvar backupDir = this.wiki.getTextReference(\"$:/UploadBackupDir\") || \".\",\n\t\tusername = this.wiki.getTextReference(\"$:/UploadName\"),\n\t\tpassword = $tw.utils.getPassword(\"upload\"),\n\t\tuploadDir = this.wiki.getTextReference(\"$:/UploadDir\") || \".\",\n\t\tuploadFilename = this.wiki.getTextReference(\"$:/UploadFilename\") || \"index.html\",\n\t\turl = this.wiki.getTextReference(\"$:/UploadURL\");\n\t// Bail out if we don't have the bits we need\n\tif(!username || username.toString().trim() === \"\" || !password || password.toString().trim() === \"\") {\n\t\treturn false;\n\t}\n\t// Construct the url if not provided\n\tif(!url) {\n\t\turl = \"http://\" + username + \".tiddlyspot.com/store.cgi\";\n\t}\n\t// Assemble the header\n\tvar boundary = \"---------------------------\" + \"AaB03x\";\t\n\tvar uploadFormName = \"UploadPlugin\";\n\tvar head = [];\n\thead.push(\"--\" + boundary + \"\\r\\nContent-disposition: form-data; name=\\\"UploadPlugin\\\"\\r\\n\");\n\thead.push(\"backupDir=\" + backupDir + \";user=\" + username + \";password=\" + password + \";uploaddir=\" + uploadDir + \";;\"); \n\thead.push(\"\\r\\n\" + \"--\" + boundary);\n\thead.push(\"Content-disposition: form-data; name=\\\"userfile\\\"; filename=\\\"\" + uploadFilename + \"\\\"\");\n\thead.push(\"Content-Type: text/html;charset=UTF-8\");\n\thead.push(\"Content-Length: \" + text.length + \"\\r\\n\");\n\thead.push(\"\");\n\t// Assemble the tail and the data itself\n\tvar tail = \"\\r\\n--\" + boundary + \"--\\r\\n\",\n\t\tdata = head.join(\"\\r\\n\") + text + tail;\n\t// Do the HTTP post\n\tvar http = new XMLHttpRequest();\n\thttp.open(\"POST\",url,true,username,password);\n\thttp.setRequestHeader(\"Content-Type\",\"multipart/form-data; charset=UTF-8; boundary=\" + boundary);\n\thttp.onreadystatechange = function() {\n\t\tif(http.readyState == 4 && http.status == 200) {\n\t\t\tif(http.responseText.substr(0,4) === \"0 - \") {\n\t\t\t\tcallback(null);\n\t\t\t} else {\n\t\t\t\tcallback(http.responseText);\n\t\t\t}\n\t\t}\n\t};\n\ttry {\n\t\thttp.send(data);\n\t} catch(ex) {\n\t\treturn callback($tw.language.getString(\"Error/Caption\") + \":\" + ex);\n\t}\n\t$tw.notifier.display(\"$:/language/Notifications/Save/Starting\");\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nUploadSaver.prototype.info = {\n\tname: \"upload\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new UploadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/browser-messaging.js": {
            "title": "$:/core/modules/browser-messaging.js",
            "text": "/*\\\ntitle: $:/core/modules/browser-messaging.js\ntype: application/javascript\nmodule-type: startup\n\nBrowser message handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"browser-messaging\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*\nLoad a specified url as an iframe and call the callback when it is loaded. If the url is already loaded then the existing iframe instance is used\n*/\nfunction loadIFrame(url,callback) {\n\t// Check if iframe already exists\n\tvar iframeInfo = $tw.browserMessaging.iframeInfoMap[url];\n\tif(iframeInfo) {\n\t\t// We've already got the iframe\n\t\tcallback(null,iframeInfo);\n\t} else {\n\t\t// Create the iframe and save it in the list\n\t\tvar iframe = document.createElement(\"iframe\");\n\t\tiframeInfo = {\n\t\t\turl: url,\n\t\t\tstatus: \"loading\",\n\t\t\tdomNode: iframe\n\t\t};\n\t\t$tw.browserMessaging.iframeInfoMap[url] = iframeInfo;\n\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t// Add the iframe to the DOM and hide it\n\t\tiframe.style.display = \"none\";\n\t\tiframe.setAttribute(\"library\",\"true\");\n\t\tdocument.body.appendChild(iframe);\n\t\t// Set up onload\n\t\tiframe.onload = function() {\n\t\t\tiframeInfo.status = \"loaded\";\n\t\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t\tcallback(null,iframeInfo);\n\t\t};\n\t\tiframe.onerror = function() {\n\t\t\tcallback(\"Cannot load iframe\");\n\t\t};\n\t\ttry {\n\t\t\tiframe.src = url;\n\t\t} catch(ex) {\n\t\t\tcallback(ex);\n\t\t}\n\t}\n}\n\n/*\nUnload library iframe for given url\n*/\nfunction unloadIFrame(url){\n\t$tw.utils.each(document.getElementsByTagName('iframe'), function(iframe) {\n\t\tif(iframe.getAttribute(\"library\") === \"true\" &&\n\t\t  iframe.getAttribute(\"src\") === url) {\n\t\t\tiframe.parentNode.removeChild(iframe);\n\t\t}\n\t});\n}\n\nfunction saveIFrameInfoTiddler(iframeInfo) {\n\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),{\n\t\ttitle: \"$:/temp/ServerConnection/\" + iframeInfo.url,\n\t\ttext: iframeInfo.status,\n\t\ttags: [\"$:/tags/ServerConnection\"],\n\t\turl: iframeInfo.url\n\t},$tw.wiki.getModificationFields()));\n}\n\nexports.startup = function() {\n\t// Initialise the store of iframes we've created\n\t$tw.browserMessaging = {\n\t\tiframeInfoMap: {} // Hashmap by URL of {url:,status:\"loading/loaded\",domNode:}\n\t};\n\t// Listen for widget messages to control loading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\tif(url) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers.json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-info\",\n\t\t\t\t\t\t\tinfoTitlePrefix: paramObject.infoTitlePrefix || \"$:/temp/RemoteAssetInfo/\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for widget messages to control unloading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-unload-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\t$tw.browserMessaging.iframeInfoMap[url] = undefined;\n\t\tif(url) {\n\t\t\tunloadIFrame(url);\n\t\t\t$tw.utils.each(\n\t\t\t\t$tw.wiki.filterTiddlers(\"[[$:/temp/ServerConnection/\" + url + \"]] [prefix[$:/temp/RemoteAssetInfo/\" + url + \"/]]\"),\n\t\t\t\tfunction(title) {\n\t\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-from-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url,\n\t\t\ttitle = paramObject.title;\n\t\tif(url && title) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers/\" + encodeURIComponent(title) + \".json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-tiddler\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for window messages from other windows\n\twindow.addEventListener(\"message\",function listener(event){\n\t\tconsole.log(\"browser-messaging: \",document.location.toString())\n\t\tconsole.log(\"browser-messaging: Received message from\",event.origin);\n\t\tconsole.log(\"browser-messaging: Message content\",event.data);\n\t\tswitch(event.data.verb) {\n\t\t\tcase \"GET-RESPONSE\":\n\t\t\t\tif(event.data.status.charAt(0) === \"2\") {\n\t\t\t\t\tif(event.data.cookies) {\n\t\t\t\t\t\tif(event.data.cookies.type === \"save-info\") {\n\t\t\t\t\t\t\tvar tiddlers = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\t\t\t\t\ttitle: event.data.cookies.infoTitlePrefix + event.data.cookies.url + \"/\" + tiddler.title,\n\t\t\t\t\t\t\t\t\t\"original-title\": tiddler.title,\n\t\t\t\t\t\t\t\t\ttext: \"\",\n\t\t\t\t\t\t\t\t\ttype: \"text/vnd.tiddlywiki\",\n\t\t\t\t\t\t\t\t\t\"original-type\": tiddler.type,\n\t\t\t\t\t\t\t\t\t\"plugin-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-plugin-type\": tiddler[\"plugin-type\"],\n\t\t\t\t\t\t\t\t\t\"module-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-module-type\": tiddler[\"module-type\"],\n\t\t\t\t\t\t\t\t\ttags: [\"$:/tags/RemoteAssetInfo\"],\n\t\t\t\t\t\t\t\t\t\"original-tags\": $tw.utils.stringifyList(tiddler.tags || []),\n\t\t\t\t\t\t\t\t\t\"server-url\": event.data.cookies.url\n\t\t\t\t\t\t\t\t},$tw.wiki.getModificationFields()));\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else if(event.data.cookies.type === \"save-tiddler\") {\n\t\t\t\t\t\t\tvar tiddler = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t},false);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/commands.js": {
            "title": "$:/core/modules/startup/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/commands.js\ntype: application/javascript\nmodule-type: startup\n\nCommand processing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"commands\";\nexports.platforms = [\"node\"];\nexports.after = [\"story\"];\nexports.synchronous = false;\n\nexports.startup = function(callback) {\n\t// On the server, start a commander with the command line arguments\n\tvar commander = new $tw.Commander(\n\t\t$tw.boot.argv,\n\t\tfunction(err) {\n\t\t\tif(err) {\n\t\t\t\treturn $tw.utils.error(\"Error: \" + err);\n\t\t\t}\n\t\t\tcallback();\n\t\t},\n\t\t$tw.wiki,\n\t\t{output: process.stdout, error: process.stderr}\n\t);\n\tcommander.execute();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/favicon.js": {
            "title": "$:/core/modules/startup/favicon.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/favicon.js\ntype: application/javascript\nmodule-type: startup\n\nFavicon handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"favicon\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\t\t\n// Favicon tiddler\nvar FAVICON_TITLE = \"$:/favicon.ico\";\n\nexports.startup = function() {\n\t// Set up the favicon\n\tsetFavicon();\n\t// Reset the favicon when the tiddler changes\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,FAVICON_TITLE)) {\n\t\t\tsetFavicon();\n\t\t}\n\t});\n};\n\nfunction setFavicon() {\n\tvar tiddler = $tw.wiki.getTiddler(FAVICON_TITLE);\n\tif(tiddler) {\n\t\tvar faviconLink = document.getElementById(\"faviconLink\");\n\t\tfaviconLink.setAttribute(\"href\",\"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text);\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/info.js": {
            "title": "$:/core/modules/startup/info.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/info.js\ntype: application/javascript\nmodule-type: startup\n\nInitialise $:/info tiddlers via $:/temp/info-plugin pseudo-plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"info\";\nexports.before = [\"startup\"];\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Collect up the info tiddlers\n\tvar infoTiddlerFields = {};\n\t// Give each info module a chance to fill in as many info tiddlers as they want\n\t$tw.modules.forEachModuleOfType(\"info\",function(title,moduleExports) {\n\t\tif(moduleExports && moduleExports.getInfoTiddlerFields) {\n\t\t\tvar tiddlerFieldsArray = moduleExports.getInfoTiddlerFields(infoTiddlerFields);\n\t\t\t$tw.utils.each(tiddlerFieldsArray,function(fields) {\n\t\t\t\tif(fields) {\n\t\t\t\t\tinfoTiddlerFields[fields.title] = fields;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Bake the info tiddlers into a plugin\n\tvar fields = {\n\t\ttitle: \"$:/temp/info-plugin\",\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"info\",\n\t\ttext: JSON.stringify({tiddlers: infoTiddlerFields},null,$tw.config.preferences.jsonSpaces)\n\t};\n\t$tw.wiki.addTiddler(new $tw.Tiddler(fields));\n\t$tw.wiki.readPluginInfo();\n\t$tw.wiki.registerPluginTiddlers(\"info\");\n\t$tw.wiki.unpackPluginTiddlers();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/load-modules.js": {
            "title": "$:/core/modules/startup/load-modules.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/load-modules.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"load-modules\";\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Load modules\n\t$tw.modules.applyMethods(\"utils\",$tw.utils);\n\tif($tw.node) {\n\t\t$tw.modules.applyMethods(\"utils-node\",$tw.utils);\n\t}\n\t$tw.modules.applyMethods(\"global\",$tw);\n\t$tw.modules.applyMethods(\"config\",$tw.config);\n\t$tw.Tiddler.fieldModules = $tw.modules.getModulesByTypeAsHashmap(\"tiddlerfield\");\n\t$tw.modules.applyMethods(\"tiddlermethod\",$tw.Tiddler.prototype);\n\t$tw.modules.applyMethods(\"wikimethod\",$tw.Wiki.prototype);\n\t$tw.modules.applyMethods(\"tiddlerdeserializer\",$tw.Wiki.tiddlerDeserializerModules);\n\t$tw.macros = $tw.modules.getModulesByTypeAsHashmap(\"macro\");\n\t$tw.wiki.initParsers();\n\t$tw.Commander.initCommands();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/password.js": {
            "title": "$:/core/modules/startup/password.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/password.js\ntype: application/javascript\nmodule-type: startup\n\nPassword handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"password\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t$tw.rootWidget.addEventListener(\"tm-set-password\",function(event) {\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: $tw.language.getString(\"Encryption/PromptSetPassword\"),\n\t\t\tnoUserName: true,\n\t\t\tsubmitText: $tw.language.getString(\"Encryption/SetPassword\"),\n\t\t\tcanCancel: true,\n\t\t\trepeatPassword: true,\n\t\t\tcallback: function(data) {\n\t\t\t\tif(data) {\n\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t}\n\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t}\n\t\t});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-clear-password\",function(event) {\n\t\tif($tw.browser) {\n\t\t\tif(!confirm($tw.language.getString(\"Encryption/ConfirmClearPassword\"))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t$tw.crypto.setPassword(null);\n\t});\n\t// Ensure that $:/isEncrypted is maintained properly\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,\"$:/isEncrypted\")) {\n\t\t\t$tw.crypto.updateCryptoStateTiddler();\n\t\t}\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/render.js": {
            "title": "$:/core/modules/startup/render.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/render.js\ntype: application/javascript\nmodule-type: startup\n\nTitle, stylesheet and page rendering\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"render\";\nexports.platforms = [\"browser\"];\nexports.after = [\"story\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar PAGE_TITLE_TITLE = \"$:/core/wiki/title\";\nvar PAGE_STYLESHEET_TITLE = \"$:/core/ui/PageStylesheet\";\nvar PAGE_TEMPLATE_TITLE = \"$:/core/ui/PageTemplate\";\n\n// Time (in ms) that we defer refreshing changes to draft tiddlers\nvar DRAFT_TIDDLER_TIMEOUT_TITLE = \"$:/config/Drafts/TypingTimeout\";\nvar DRAFT_TIDDLER_TIMEOUT = 400;\n\nexports.startup = function() {\n\t// Set up the title\n\t$tw.titleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TITLE_TITLE,{document: $tw.fakeDocument, parseAsInline: true});\n\t$tw.titleContainer = $tw.fakeDocument.createElement(\"div\");\n\t$tw.titleWidgetNode.render($tw.titleContainer,null);\n\tdocument.title = $tw.titleContainer.textContent;\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.titleWidgetNode.refresh(changes,$tw.titleContainer,null)) {\n\t\t\tdocument.title = $tw.titleContainer.textContent;\n\t\t}\n\t});\n\t// Set up the styles\n\t$tw.styleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_STYLESHEET_TITLE,{document: $tw.fakeDocument});\n\t$tw.styleContainer = $tw.fakeDocument.createElement(\"style\");\n\t$tw.styleWidgetNode.render($tw.styleContainer,null);\n\t$tw.styleElement = document.createElement(\"style\");\n\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\tdocument.head.insertBefore($tw.styleElement,document.head.firstChild);\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"styleRefresh\",function(changes) {\n\t\tif($tw.styleWidgetNode.refresh(changes,$tw.styleContainer,null)) {\n\t\t\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\t\t}\n\t}));\n\t// Display the $:/core/ui/PageTemplate tiddler to kick off the display\n\t$tw.perf.report(\"mainRender\",function() {\n\t\t$tw.pageWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TEMPLATE_TITLE,{document: document, parentWidget: $tw.rootWidget});\n\t\t$tw.pageContainer = document.createElement(\"div\");\n\t\t$tw.utils.addClass($tw.pageContainer,\"tc-page-container-wrapper\");\n\t\tdocument.body.insertBefore($tw.pageContainer,document.body.firstChild);\n\t\t$tw.pageWidgetNode.render($tw.pageContainer,null);\n   \t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t})();\n\t// Prepare refresh mechanism\n\tvar deferredChanges = Object.create(null),\n\t\ttimerId;\n\tfunction refresh() {\n\t\t// Process the refresh\n\t\t$tw.pageWidgetNode.refresh(deferredChanges);\n\t\tdeferredChanges = Object.create(null);\n   \t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t}\n\t// Add the change event handler\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"mainRefresh\",function(changes) {\n\t\t// Check if only drafts have changed\n\t\tvar onlyDraftsHaveChanged = true;\n\t\tfor(var title in changes) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(!tiddler || !tiddler.hasField(\"draft.of\")) {\n\t\t\t\tonlyDraftsHaveChanged = false;\n\t\t\t}\n\t\t}\n\t\t// Defer the change if only drafts have changed\n\t\tif(timerId) {\n\t\t\tclearTimeout(timerId);\n\t\t}\n\t\ttimerId = null;\n\t\tif(onlyDraftsHaveChanged) {\n\t\t\tvar timeout = parseInt($tw.wiki.getTiddlerText(DRAFT_TIDDLER_TIMEOUT_TITLE,\"\"),10);\n\t\t\tif(isNaN(timeout)) {\n\t\t\t\ttimeout = DRAFT_TIDDLER_TIMEOUT;\n\t\t\t}\n\t\t\ttimerId = setTimeout(refresh,timeout);\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t} else {\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t\trefresh();\n\t\t}\n\t}));\n\t// Fix up the link between the root widget and the page container\n\t$tw.rootWidget.domNodes = [$tw.pageContainer];\n\t$tw.rootWidget.children = [$tw.pageWidgetNode];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/rootwidget.js": {
            "title": "$:/core/modules/startup/rootwidget.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/rootwidget.js\ntype: application/javascript\nmodule-type: startup\n\nSetup the root widget and the core root widget handlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"rootwidget\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.before = [\"story\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Install the modal message mechanism\n\t$tw.modal = new $tw.utils.Modal($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-modal\",function(event) {\n\t\t$tw.modal.display(event.param,{variables: event.paramObject});\n\t});\n\t// Install the notification  mechanism\n\t$tw.notifier = new $tw.utils.Notifier($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-notify\",function(event) {\n\t\t$tw.notifier.display(event.param,{variables: event.paramObject});\n\t});\n\t// Install the copy-to-clipboard  mechanism\n\t$tw.rootWidget.addEventListener(\"tm-copy-to-clipboard\",function(event) {\n\t\t$tw.utils.copyToClipboard(event.param);\n\t});\n\t// Install the scroller\n\t$tw.pageScroller = new $tw.utils.PageScroller();\n\t$tw.rootWidget.addEventListener(\"tm-scroll\",function(event) {\n\t\t$tw.pageScroller.handleEvent(event);\n\t});\n\tvar fullscreen = $tw.utils.getFullScreenApis();\n\tif(fullscreen) {\n\t\t$tw.rootWidget.addEventListener(\"tm-full-screen\",function(event) {\n\t\t\tif(document[fullscreen._fullscreenElement]) {\n\t\t\t\tdocument[fullscreen._exitFullscreen]();\n\t\t\t} else {\n\t\t\t\tdocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t}\n\t\t});\n\t}\n\t// If we're being viewed on a data: URI then give instructions for how to save\n\tif(document.location.protocol === \"data:\") {\n\t\t$tw.rootWidget.dispatchEvent({\n\t\t\ttype: \"tm-modal\",\n\t\t\tparam: \"$:/language/Modals/SaveInstructions\"\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup.js": {
            "title": "$:/core/modules/startup.js",
            "text": "/*\\\ntitle: $:/core/modules/startup.js\ntype: application/javascript\nmodule-type: startup\n\nMiscellaneous startup logic for both the client and server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"startup\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\n// Set to `true` to enable performance instrumentation\nvar PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE = \"$:/config/Performance/Instrumentation\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.startup = function() {\n\tvar modules,n,m,f;\n\t// Minimal browser detection\n\tif($tw.browser) {\n\t\t$tw.browser.isIE = (/msie|trident/i.test(navigator.userAgent));\n\t\t$tw.browser.isFirefox = !!document.mozFullScreenEnabled;\n\t}\n\t// Platform detection\n\t$tw.platform = {};\n\tif($tw.browser) {\n\t\t$tw.platform.isMac = /Mac/.test(navigator.platform);\n\t\t$tw.platform.isWindows = /win/i.test(navigator.platform);\n\t\t$tw.platform.isLinux = /Linux/i.test(navigator.appVersion);\n\t} else {\n\t\tswitch(require(\"os\").platform()) {\n\t\t\tcase \"darwin\":\n\t\t\t\t$tw.platform.isMac = true;\n\t\t\t\tbreak;\n\t\t\tcase \"win32\":\n\t\t\t\t$tw.platform.isWindows = true;\n\t\t\t\tbreak;\n\t\t\tcase \"freebsd\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t\tcase \"linux\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// Initialise version\n\t$tw.version = $tw.utils.extractVersionInfo();\n\t// Set up the performance framework\n\t$tw.perf = new $tw.Performance($tw.wiki.getTiddlerText(PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE,\"no\") === \"yes\");\n\t// Kick off the language manager and switcher\n\t$tw.language = new $tw.Language();\n\t$tw.languageSwitcher = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"language\",\n\t\tcontrollerTitle: \"$:/language\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/languages/en-US\"\n\t\t],\n\t\tonSwitch: function(plugins) {\n\t\t\tif($tw.browser) {\n\t\t\t\tvar pluginTiddler = $tw.wiki.getTiddler(plugins[0]);\n\t\t\t\tif(pluginTiddler) {\n\t\t\t\t\tdocument.documentElement.setAttribute(\"dir\",pluginTiddler.getFieldString(\"text-direction\") || \"auto\");\n\t\t\t\t} else {\n\t\t\t\t\tdocument.documentElement.removeAttribute(\"dir\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Kick off the theme manager\n\t$tw.themeManager = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"theme\",\n\t\tcontrollerTitle: \"$:/theme\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/themes/tiddlywiki/snowwhite\",\n\t\t\t\"$:/themes/tiddlywiki/vanilla\"\n\t\t]\n\t});\n\t// Kick off the keyboard manager\n\t$tw.keyboardManager = new $tw.KeyboardManager();\n\t// Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers\n\t$tw.rootWidget = new widget.widget({\n\t\ttype: \"widget\",\n\t\tchildren: []\n\t},{\n\t\twiki: $tw.wiki,\n\t\tdocument: $tw.browser ? document : $tw.fakeDocument\n\t});\n\t// Execute any startup actions\n\tvar executeStartupTiddlers = function(tag) {\n\t\t$tw.utils.each($tw.wiki.filterTiddlers(\"[all[shadows+tiddlers]tag[\" + tag + \"]!has[draft.of]]\"),function(title) {\n\t\t\t$tw.rootWidget.invokeActionString($tw.wiki.getTiddlerText(title),$tw.rootWidget);\n\t\t});\n\t};\n\texecuteStartupTiddlers(\"$:/tags/StartupAction\");\n\tif($tw.browser) {\n\t\texecuteStartupTiddlers(\"$:/tags/StartupAction/Browser\");\t\t\n\t}\n\tif($tw.node) {\n\t\texecuteStartupTiddlers(\"$:/tags/StartupAction/Node\");\t\t\n\t}\n\t// Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup\n\t$tw.wiki.clearTiddlerEventQueue();\n\t// Find a working syncadaptor\n\t$tw.syncadaptor = undefined;\n\t$tw.modules.forEachModuleOfType(\"syncadaptor\",function(title,module) {\n\t\tif(!$tw.syncadaptor && module.adaptorClass) {\n\t\t\t$tw.syncadaptor = new module.adaptorClass({wiki: $tw.wiki});\n\t\t}\n\t});\n\t// Set up the syncer object if we've got a syncadaptor\n\tif($tw.syncadaptor) {\n\t\t$tw.syncer = new $tw.Syncer({wiki: $tw.wiki, syncadaptor: $tw.syncadaptor});\n\t} \n\t// Setup the saver handler\n\t$tw.saverHandler = new $tw.SaverHandler({wiki: $tw.wiki, dirtyTracking: !$tw.syncadaptor});\n\t// Host-specific startup\n\tif($tw.browser) {\n\t\t// Install the popup manager\n\t\t$tw.popup = new $tw.utils.Popup();\n\t\t// Install the animator\n\t\t$tw.anim = new $tw.utils.Animator();\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/story.js": {
            "title": "$:/core/modules/startup/story.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/story.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"story\";\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar DEFAULT_STORY_TITLE = \"$:/StoryList\";\nvar DEFAULT_HISTORY_TITLE = \"$:/HistoryList\";\n\n// Default tiddlers\nvar DEFAULT_TIDDLERS_TITLE = \"$:/DefaultTiddlers\";\n\n// Config\nvar CONFIG_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/UpdateAddressBar\"; // Can be \"no\", \"permalink\", \"permaview\"\nvar CONFIG_UPDATE_HISTORY = \"$:/config/Navigation/UpdateHistory\"; // Can be \"yes\" or \"no\"\n\nexports.startup = function() {\n\t// Open startup tiddlers\n\topenStartupTiddlers();\n\tif($tw.browser) {\n\t\t// Set up location hash update\n\t\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t\tif($tw.utils.hop(changes,DEFAULT_STORY_TITLE) || $tw.utils.hop(changes,DEFAULT_HISTORY_TITLE)) {\n\t\t\t\tupdateLocationHash({\n\t\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_UPDATE_ADDRESS_BAR,\"permaview\").trim(),\n\t\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim()\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\t// Listen for changes to the browser location hash\n\t\twindow.addEventListener(\"hashchange\",function() {\n\t\t\tvar hash = $tw.utils.getLocationHash();\n\t\t\tif(hash !== $tw.locationHash) {\n\t\t\t\t$tw.locationHash = hash;\n\t\t\t\topenStartupTiddlers({defaultToCurrentStory: true});\n\t\t\t}\n\t\t},false);\n\t\t// Listen for the tm-browser-refresh message\n\t\t$tw.rootWidget.addEventListener(\"tm-browser-refresh\",function(event) {\n\t\t\twindow.location.reload(true);\n\t\t});\n\t\t// Listen for the tm-print message\n\t\t$tw.rootWidget.addEventListener(\"tm-print\",function(event) {\n\t\t\t(event.event.view || window).print();\n\t\t});\n\t\t// Listen for the tm-home message\n\t\t$tw.rootWidget.addEventListener(\"tm-home\",function(event) {\n\t\t\twindow.location.hash = \"\";\n\t\t\tvar storyFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE),\n\t\t\t\tstoryList = $tw.wiki.filterTiddlers(storyFilter);\n\t\t\t//invoke any hooks that might change the default story list\n\t\t\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t\t\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t\t\tif(storyList[0]) {\n\t\t\t\t$tw.wiki.addToHistory(storyList[0]);\t\t\t\t\n\t\t\t}\n\t\t});\n\t\t// Listen for the tm-permalink message\n\t\t$tw.rootWidget.addEventListener(\"tm-permalink\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: \"permalink\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle\n\t\t\t});\n\t\t});\n\t\t// Listen for the tm-permaview message\n\t\t$tw.rootWidget.addEventListener(\"tm-permaview\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: \"permaview\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle\n\t\t\t});\n\t\t});\n\t}\n};\n\n/*\nProcess the location hash to open the specified tiddlers. Options:\ndefaultToCurrentStory: If true, the current story is retained as the default, instead of opening the default tiddlers\n*/\nfunction openStartupTiddlers(options) {\n\toptions = options || {};\n\t// Work out the target tiddler and the story filter. \"null\" means \"unspecified\"\n\tvar target = null,\n\t\tstoryFilter = null;\n\tif($tw.locationHash.length > 1) {\n\t\tvar hash = $tw.locationHash.substr(1),\n\t\t\tsplit = hash.indexOf(\":\");\n\t\tif(split === -1) {\n\t\t\ttarget = decodeURIComponent(hash.trim());\n\t\t} else {\n\t\t\ttarget = decodeURIComponent(hash.substr(0,split).trim());\n\t\t\tstoryFilter = decodeURIComponent(hash.substr(split + 1).trim());\n\t\t}\n\t}\n\t// If the story wasn't specified use the current tiddlers or a blank story\n\tif(storyFilter === null) {\n\t\tif(options.defaultToCurrentStory) {\n\t\t\tvar currStoryList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE);\n\t\t\tstoryFilter = $tw.utils.stringifyList(currStoryList);\n\t\t} else {\n\t\t\tif(target && target !== \"\") {\n\t\t\t\tstoryFilter = \"\";\n\t\t\t} else {\n\t\t\t\tstoryFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE);\n\t\t\t}\n\t\t}\n\t}\n\t// Process the story filter to get the story list\n\tvar storyList = $tw.wiki.filterTiddlers(storyFilter);\n\t// Invoke any hooks that want to change the default story list\n\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t// If the target tiddler isn't included then splice it in at the top\n\tif(target && storyList.indexOf(target) === -1) {\n\t\tstoryList.unshift(target);\n\t}\n\t// Save the story list\n\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t// If a target tiddler was specified add it to the history stack\n\tif(target && target !== \"\") {\n\t\t// The target tiddler doesn't need double square brackets, but we'll silently remove them if they're present\n\t\tif(target.indexOf(\"[[\") === 0 && target.substr(-2) === \"]]\") {\n\t\t\ttarget = target.substr(2,target.length - 4);\n\t\t}\n\t\t$tw.wiki.addToHistory(target);\n\t} else if(storyList.length > 0) {\n\t\t$tw.wiki.addToHistory(storyList[0]);\n\t}\n}\n\n/*\noptions: See below\noptions.updateAddressBar: \"permalink\", \"permaview\" or \"no\" (defaults to \"permaview\")\noptions.updateHistory: \"yes\" or \"no\" (defaults to \"no\")\noptions.targetTiddler: optional title of target tiddler for permalink\n*/\nfunction updateLocationHash(options) {\n\tif(options.updateAddressBar !== \"no\") {\n\t\t// Get the story and the history stack\n\t\tvar storyList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE),\n\t\t\thistoryList = $tw.wiki.getTiddlerData(DEFAULT_HISTORY_TITLE,[]),\n\t\t\ttargetTiddler = \"\";\n\t\tif(options.targetTiddler) {\n\t\t\ttargetTiddler = options.targetTiddler;\n\t\t} else {\n\t\t\t// The target tiddler is the one at the top of the stack\n\t\t\tif(historyList.length > 0) {\n\t\t\t\ttargetTiddler = historyList[historyList.length-1].title;\n\t\t\t}\n\t\t\t// Blank the target tiddler if it isn't present in the story\n\t\t\tif(storyList.indexOf(targetTiddler) === -1) {\n\t\t\t\ttargetTiddler = \"\";\n\t\t\t}\n\t\t}\n\t\t// Assemble the location hash\n\t\tif(options.updateAddressBar === \"permalink\") {\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler);\n\t\t} else {\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList));\n\t\t}\n\t\t// Only change the location hash if we must, thus avoiding unnecessary onhashchange events\n\t\tif($tw.utils.getLocationHash() !== $tw.locationHash) {\n\t\t\tif(options.updateHistory === \"yes\") {\n\t\t\t\t// Assign the location hash so that history is updated\n\t\t\t\twindow.location.hash = $tw.locationHash;\n\t\t\t} else {\n\t\t\t\t// We use replace so that browser history isn't affected\n\t\t\t\twindow.location.replace(window.location.toString().split(\"#\")[0] + $tw.locationHash);\n\t\t\t}\n\t\t}\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/windows.js": {
            "title": "$:/core/modules/startup/windows.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/windows.js\ntype: application/javascript\nmodule-type: startup\n\nSetup root widget handlers for the messages concerned with opening external browser windows\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"windows\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Global to keep track of open windows (hashmap by title)\nvar windows = {};\n\nexports.startup = function() {\n\t// Handle open window message\n\t$tw.rootWidget.addEventListener(\"tm-open-window\",function(event) {\n\t\t// Get the parameters\n\t\tvar refreshHandler,\n\t\t\ttitle = event.param || event.tiddlerTitle,\n\t\t\tparamObject = event.paramObject || {},\n\t\t\ttemplate = paramObject.template || \"$:/core/templates/single.tiddler.window\",\n\t\t\twidth = paramObject.width || \"700\",\n\t\t\theight = paramObject.height || \"600\",\n\t\t\tvariables = $tw.utils.extend({},paramObject,{currentTiddler: title});\n\t\t// Open the window\n\t\tvar srcWindow = window.open(\"\",\"external-\" + title,\"scrollbars,width=\" + width + \",height=\" + height),\n\t\t\tsrcDocument = srcWindow.document;\n\t\twindows[title] = srcWindow;\n\t\t// Check for reopening the same window\n\t\tif(srcWindow.haveInitialisedWindow) {\n\t\t\treturn;\n\t\t}\n\t\t// Initialise the document\n\t\tsrcDocument.write(\"<html><head></head><body class='tc-body tc-single-tiddler-window'></body></html>\");\n\t\tsrcDocument.close();\n\t\tsrcDocument.title = title;\n\t\tsrcWindow.addEventListener(\"beforeunload\",function(event) {\n\t\t\tdelete windows[title];\n\t\t\t$tw.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t},false);\n\t\t// Set up the styles\n\t\tvar styleWidgetNode = $tw.wiki.makeTranscludeWidget(\"$:/core/ui/PageStylesheet\",{\n\t\t\t\tdocument: $tw.fakeDocument,\n\t\t\t\tvariables: variables,\n\t\t\t\timportPageMacros: true}),\n\t\t\tstyleContainer = $tw.fakeDocument.createElement(\"style\");\n\t\tstyleWidgetNode.render(styleContainer,null);\n\t\tvar styleElement = srcDocument.createElement(\"style\");\n\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\tsrcDocument.head.insertBefore(styleElement,srcDocument.head.firstChild);\n\t\t// Render the text of the tiddler\n\t\tvar parser = $tw.wiki.parseTiddler(template),\n\t\t\twidgetNode = $tw.wiki.makeWidget(parser,{document: srcDocument, parentWidget: $tw.rootWidget, variables: variables});\n\t\twidgetNode.render(srcDocument.body,srcDocument.body.firstChild);\n\t\t// Function to handle refreshes\n\t\trefreshHandler = function(changes) {\n\t\t\tif(styleWidgetNode.refresh(changes,styleContainer,null)) {\n\t\t\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\t\t}\n\t\t\twidgetNode.refresh(changes);\n\t\t};\n\t\t$tw.wiki.addEventListener(\"change\",refreshHandler);\n\t\tsrcWindow.haveInitialisedWindow = true;\n\t});\n\t// Close open windows when unloading main window\n\t$tw.addUnloadTask(function() {\n\t\t$tw.utils.each(windows,function(win) {\n\t\t\twin.close();\n\t\t});\n\t});\n\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/story.js": {
            "title": "$:/core/modules/story.js",
            "text": "/*\\\ntitle: $:/core/modules/story.js\ntype: application/javascript\nmodule-type: global\n\nLightweight object for managing interactions with the story and history lists.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nConstruct Story object with options:\nwiki: reference to wiki object to use to resolve tiddler titles\nstoryTitle: title of story list tiddler\nhistoryTitle: title of history list tiddler\n*/\nfunction Story(options) {\n\toptions = options || {};\n\tthis.wiki = options.wiki || $tw.wiki;\n\tthis.storyTitle = options.storyTitle || \"$:/StoryList\";\n\tthis.historyTitle = options.historyTitle || \"$:/HistoryList\";\n};\n\nStory.prototype.navigateTiddler = function(navigateTo,navigateFromTitle,navigateFromClientRect) {\n\tthis.addToStory(navigateTo,navigateFromTitle);\n\tthis.addToHistory(navigateTo,navigateFromClientRect);\n};\n\nStory.prototype.getStoryList = function() {\n\treturn this.wiki.getTiddlerList(this.storyTitle) || [];\n};\n\nStory.prototype.addToStory = function(navigateTo,navigateFromTitle,options) {\n\toptions = options || {};\n\tvar storyList = this.getStoryList();\n\t// See if the tiddler is already there\n\tvar slot = storyList.indexOf(navigateTo);\n\t// Quit if it already exists in the story river\n\tif(slot >= 0) {\n\t\treturn;\n\t}\n\t// First we try to find the position of the story element we navigated from\n\tvar fromIndex = storyList.indexOf(navigateFromTitle);\n\tif(fromIndex >= 0) {\n\t\t// The tiddler is added from inside the river\n\t\t// Determine where to insert the tiddler; Fallback is \"below\"\n\t\tswitch(options.openLinkFromInsideRiver) {\n\t\t\tcase \"top\":\n\t\t\t\tslot = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tslot = storyList.length;\n\t\t\t\tbreak;\n\t\t\tcase \"above\":\n\t\t\t\tslot = fromIndex;\n\t\t\t\tbreak;\n\t\t\tcase \"below\": // Intentional fall-through\n\t\t\tdefault:\n\t\t\t\tslot = fromIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t} else {\n\t\t// The tiddler is opened from outside the river. Determine where to insert the tiddler; default is \"top\"\n\t\tif(options.openLinkFromOutsideRiver === \"bottom\") {\n\t\t\t// Insert at bottom\n\t\t\tslot = storyList.length;\n\t\t} else {\n\t\t\t// Insert at top\n\t\t\tslot = 0;\n\t\t}\n\t}\n\t// Add the tiddler\n\tstoryList.splice(slot,0,navigateTo);\n\t// Save the story\n\tthis.saveStoryList(storyList);\n};\n\nStory.prototype.saveStoryList = function(storyList) {\n\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\t{title: this.storyTitle},\n\t\tstoryTiddler,\n\t\t{list: storyList},\n\t\tthis.wiki.getModificationFields()\n\t));\n};\n\nStory.prototype.addToHistory = function(navigateTo,navigateFromClientRect) {\n\tvar titles = $tw.utils.isArray(navigateTo) ? navigateTo : [navigateTo];\n\t// Add a new record to the top of the history stack\n\tvar historyList = this.wiki.getTiddlerData(this.historyTitle,[]);\n\t$tw.utils.each(titles,function(title) {\n\t\thistoryList.push({title: title, fromPageRect: navigateFromClientRect});\n\t});\n\tthis.wiki.setTiddlerData(this.historyTitle,historyList,{\"current-tiddler\": titles[titles.length-1]});\n};\n\nStory.prototype.storyCloseTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCloseAllTiddlers = function() {\n// TBD\n};\n\nStory.prototype.storyCloseOtherTiddlers = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyEditTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyDeleteTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storySaveTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCancelTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyNewTiddler = function(targetTitle) {\n// TBD\n};\n\nexports.Story = Story;\n\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/storyviews/classic.js": {
            "title": "$:/core/modules/storyviews/classic.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/classic.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ClassicStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nClassicStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Scroll the node into view\n\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\n};\n\nClassicStoryView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Get the current height of the tiddler\n\tvar computedStyle = window.getComputedStyle(targetElement),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t// Reset the margin once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"}\n\t\t]);\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t// Transition to the final position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n};\n\nClassicStoryView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\twidget.removeChildDomNodes();\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Get the current height of the tiddler\n\tvar currWidth = targetElement.offsetWidth,\n\t\tcomputedStyle = window.getComputedStyle(targetElement),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t// Remove the dom nodes of the widget at the end of the transition\n\tsetTimeout(removeElement,duration);\n\t// Animate the closure\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"translateX(0px)\"},\n\t\t{marginBottom:  currMarginBottom + \"px\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t{transform: \"translateX(-\" + currWidth + \"px)\"},\n\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n};\n\nexports.classic = ClassicStoryView;\n\n})();",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/pop.js": {
            "title": "$:/core/modules/storyviews/pop.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/pop.js\ntype: application/javascript\nmodule-type: storyview\n\nAnimates list insertions and removals\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar PopStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nPopStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Scroll the node into view\n\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\n};\n\nPopStoryView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Reset once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"none\"}\n\t\t]);\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(2)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t// Transition to the final position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n};\n\nPopStoryView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\tif(targetElement.parentNode) {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t}\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Remove the element at the end of the transition\n\tsetTimeout(removeElement,duration);\n\t// Animate the closure\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(0.1)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n};\n\nexports.pop = PopStoryView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/zoomin.js": {
            "title": "$:/core/modules/storyviews/zoomin.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/zoomin.js\ntype: application/javascript\nmodule-type: storyview\n\nZooms between individual tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ZoominListView = function(listWidget) {\n\tvar self = this;\n\tthis.listWidget = listWidget;\n\t// Get the index of the tiddler that is at the top of the history\n\tvar history = this.listWidget.wiki.getTiddlerDataCached(this.listWidget.historyTitle,[]),\n\t\ttargetTiddler;\n\tif(history.length > 0) {\n\t\ttargetTiddler = history[history.length-1].title;\n\t}\n\t// Make all the tiddlers position absolute, and hide all but the top (or first) one\n\t$tw.utils.each(this.listWidget.children,function(itemWidget,index) {\n\t\tvar domNode = itemWidget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(domNode instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\tif((targetTiddler && targetTiddler !== itemWidget.parseTreeNode.itemTitle) || (!targetTiddler && index)) {\n\t\t\tdomNode.style.display = \"none\";\n\t\t} else {\n\t\t\tself.currentTiddlerDomNode = domNode;\n\t\t}\n\t\t$tw.utils.addClass(domNode,\"tc-storyview-zoomin-tiddler\");\n\t});\n};\n\nZoominListView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\t\tlistElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the new tiddler be position absolute and visible so that we can measure it\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"0 0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t// Get the position of the source node, or use the centre of the window as the source position\n\tvar sourceBounds = historyInfo.fromPageRect || {\n\t\t\tleft: window.innerWidth/2 - 2,\n\t\t\ttop: window.innerHeight/2 - 2,\n\t\t\twidth: window.innerWidth/8,\n\t\t\theight: window.innerHeight/8\n\t\t};\n\t// Try to find the title node in the target tiddler\n\tvar titleDomNode = findTitleDomNode(listItemWidget) || listItemWidget.findFirstDomNode(),\n\t\tzoomBounds = titleDomNode.getBoundingClientRect();\n\t// Compute the transform for the target tiddler to make the title lie over the source rectange\n\tvar targetBounds = targetElement.getBoundingClientRect(),\n\t\tscale = sourceBounds.width / zoomBounds.width,\n\t\tx = sourceBounds.left - targetBounds.left - (zoomBounds.left - targetBounds.left) * scale,\n\t\ty = sourceBounds.top - targetBounds.top - (zoomBounds.top - targetBounds.top) * scale;\n\t// Transform the target tiddler to its starting position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(targetElement);\n\t// Apply the ending transitions with a timeout to ensure that the previously applied transformations are applied first\n\tvar self = this,\n\t\tprevCurrentTiddler = this.currentTiddlerDomNode;\n\tthis.currentTiddlerDomNode = targetElement;\n\t// Transform the target tiddler to its natural size\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{zIndex: \"500\"},\n\t]);\n\t// Transform the previous tiddler out of the way and then hide it\n\tif(prevCurrentTiddler && prevCurrentTiddler !== targetElement) {\n\t\tscale = zoomBounds.width / sourceBounds.width;\n\t\tx =  zoomBounds.left - targetBounds.left - (sourceBounds.left - targetBounds.left) * scale;\n\t\ty =  zoomBounds.top - targetBounds.top - (sourceBounds.top - targetBounds.top) * scale;\n\t\t$tw.utils.setStyle(prevCurrentTiddler,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transformOrigin: \"0 0\"},\n\t\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"},\n\t\t\t{zIndex: \"0\"}\n\t\t]);\n\t\t// Hide the tiddler when the transition has finished\n\t\tsetTimeout(function() {\n\t\t\tif(self.currentTiddlerDomNode !== prevCurrentTiddler) {\n\t\t\t\tprevCurrentTiddler.style.display = \"none\";\n\t\t\t}\n\t\t},duration);\n\t}\n\t// Scroll the target into view\n//\t$tw.pageScroller.scrollIntoView(targetElement);\n};\n\n/*\nFind the first child DOM node of a widget that has the class \"tc-title\"\n*/\nfunction findTitleDomNode(widget,targetClass) {\n\ttargetClass = targetClass || \"tc-title\";\n\tvar domNode = widget.findFirstDomNode();\n\tif(domNode && domNode.querySelector) {\n\t\treturn domNode.querySelector(\".\" + targetClass);\n\t}\n\treturn null;\n}\n\nZoominListView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the newly inserted node position absolute and hidden\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"none\"}\n\t]);\n};\n\nZoominListView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\twidget.removeChildDomNodes();\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Abandon if hidden\n\tif(targetElement.style.display != \"block\" ) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Set up the tiddler that is being closed\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\t// We'll move back to the previous or next element in the story\n\tvar toWidget = widget.previousSibling();\n\tif(!toWidget) {\n\t\ttoWidget = widget.nextSibling();\n\t}\n\tvar toWidgetDomNode = toWidget && toWidget.findFirstDomNode();\n\t// Set up the tiddler we're moving back in\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.addClass(toWidgetDomNode,\"tc-storyview-zoomin-tiddler\");\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{display: \"block\"},\n\t\t\t{transformOrigin: \"50% 50%\"},\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(10)\"},\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0\"},\n\t\t\t{zIndex: \"500\"}\n\t\t]);\n\t\tthis.currentTiddlerDomNode = toWidgetDomNode;\n\t}\n\t// Animate them both\n\t// Force layout\n\t$tw.utils.forceLayout(this.listWidget.parentDomNode);\n\t// First, the tiddler we're closing\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(0.1)\"},\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"0\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\tsetTimeout(removeElement,duration);\n\t// Now the tiddler we're going back to\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t\t{opacity: \"1\"}\n\t\t]);\n\t}\n\treturn true; // Indicate that we'll delete the DOM node\n};\n\nexports.zoomin = ZoominListView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/syncer.js": {
            "title": "$:/core/modules/syncer.js",
            "text": "/*\\\ntitle: $:/core/modules/syncer.js\ntype: application/javascript\nmodule-type: global\n\nThe syncer tracks changes to the store. If a syncadaptor is used then individual tiddlers are synchronised through it. If there is no syncadaptor then the entire wiki is saved via saver modules.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDefaults\n*/\nSyncer.prototype.titleIsLoggedIn = \"$:/status/IsLoggedIn\";\nSyncer.prototype.titleUserName = \"$:/status/UserName\";\nSyncer.prototype.titleSyncFilter = \"$:/config/SyncFilter\";\nSyncer.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\nSyncer.prototype.taskTimerInterval = 1 * 1000; // Interval for sync timer\nSyncer.prototype.throttleInterval = 1 * 1000; // Defer saving tiddlers if they've changed in the last 1s...\nSyncer.prototype.fallbackInterval = 10 * 1000; // Unless the task is older than 10s\nSyncer.prototype.pollTimerInterval = 60 * 1000; // Interval for polling for changes from the adaptor\n\n/*\nInstantiate the syncer with the following options:\nsyncadaptor: reference to syncadaptor to be used\nwiki: wiki to be synced\n*/\nfunction Syncer(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\tthis.syncadaptor = options.syncadaptor;\n\tthis.disableUI = !!options.disableUI;\n\tthis.titleIsLoggedIn = options.titleIsLoggedIn || this.titleIsLoggedIn;\n\tthis.titleUserName = options.titleUserName || this.titleUserName;\n\tthis.titleSyncFilter = options.titleSyncFilter || this.titleSyncFilter;\n\tthis.titleSavedNotification = options.titleSavedNotification || this.titleSavedNotification;\n\tthis.taskTimerInterval = options.taskTimerInterval || this.taskTimerInterval;\n\tthis.throttleInterval = options.throttleInterval || this.throttleInterval;\n\tthis.fallbackInterval = options.fallbackInterval || this.fallbackInterval;\n\tthis.pollTimerInterval = options.pollTimerInterval || this.pollTimerInterval;\n\tthis.logging = \"logging\" in options ? options.logging : true;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\")  + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\"),{\n\t\t\tcolour: \"cyan\",\n\t\t\tenable: this.logging\n\t\t});\n\t// Compile the dirty tiddler filter\n\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t// Record information for known tiddlers\n\tthis.readTiddlerInfo();\n\t// Tasks are {type: \"load\"/\"save\"/\"delete\", title:, queueTime:, lastModificationTime:}\n\tthis.taskQueue = {}; // Hashmap of tasks yet to be performed\n\tthis.taskInProgress = {}; // Hash of tasks in progress\n\tthis.taskTimerId = null; // Timer for task dispatch\n\tthis.pollTimerId = null; // Timer for polling server\n\t// Listen out for changes to tiddlers\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\tself.syncToServer(changes);\n\t});\n\t// Browser event handlers\n\tif($tw.browser && !this.disableUI) {\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t\t// Listen out for login/logout/refresh events in the browser\n\t\t$tw.rootWidget.addEventListener(\"tm-login\",function() {\n\t\t\tself.handleLoginEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-logout\",function() {\n\t\t\tself.handleLogoutEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-server-refresh\",function() {\n\t\t\tself.handleRefreshEvent();\n\t\t});\n\t}\n\t// Listen out for lazyLoad events\n\tif(!this.disableUI) {\n\t\tthis.wiki.addEventListener(\"lazyLoad\",function(title) {\n\t\t\tself.handleLazyLoadEvent(title);\n\t\t});\t\t\n\t}\n\t// Get the login status\n\tthis.getStatus(function(err,isLoggedIn) {\n\t\t// Do a sync from the server\n\t\tself.syncFromServer();\n\t});\n}\n\n/*\nRead (or re-read) the latest tiddler info from the store\n*/\nSyncer.prototype.readTiddlerInfo = function() {\n\t// Hashmap by title of {revision:,changeCount:,adaptorInfo:}\n\tthis.tiddlerInfo = {};\n\t// Record information for known tiddlers\n\tvar self = this,\n\t\ttiddlers = this.filterFn.call(this.wiki);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tself.tiddlerInfo[title] = {\n\t\t\trevision: tiddler.fields.revision,\n\t\t\tadaptorInfo: self.syncadaptor && self.syncadaptor.getTiddlerInfo(tiddler),\n\t\t\tchangeCount: self.wiki.getChangeCount(title),\n\t\t\thasBeenLazyLoaded: false\n\t\t};\n\t});\n};\n\n/*\nCreate an tiddlerInfo structure if it doesn't already exist\n*/\nSyncer.prototype.createTiddlerInfo = function(title) {\n\tif(!$tw.utils.hop(this.tiddlerInfo,title)) {\n\t\tthis.tiddlerInfo[title] = {\n\t\t\trevision: null,\n\t\t\tadaptorInfo: {},\n\t\t\tchangeCount: -1,\n\t\t\thasBeenLazyLoaded: false\n\t\t};\n\t}\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSyncer.prototype.isDirty = function() {\n\treturn (this.numTasksInQueue() > 0) || (this.numTasksInProgress() > 0);\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSyncer.prototype.updateDirtyStatus = function() {\n\tif($tw.browser && !this.disableUI) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t}\n};\n\n/*\nSave an incoming tiddler in the store, and updates the associated tiddlerInfo\n*/\nSyncer.prototype.storeTiddler = function(tiddlerFields,hasBeenLazyLoaded) {\n\t// Save the tiddler\n\tvar tiddler = new $tw.Tiddler(this.wiki.getTiddler(tiddlerFields.title),tiddlerFields);\n\tthis.wiki.addTiddler(tiddler);\n\t// Save the tiddler revision and changeCount details\n\tthis.tiddlerInfo[tiddlerFields.title] = {\n\t\trevision: tiddlerFields.revision,\n\t\tadaptorInfo: this.syncadaptor.getTiddlerInfo(tiddler),\n\t\tchangeCount: this.wiki.getChangeCount(tiddlerFields.title),\n\t\thasBeenLazyLoaded: hasBeenLazyLoaded !== undefined ? hasBeenLazyLoaded : true\n\t};\n};\n\nSyncer.prototype.getStatus = function(callback) {\n\tvar self = this;\n\t// Check if the adaptor supports getStatus()\n\tif(this.syncadaptor && this.syncadaptor.getStatus) {\n\t\t// Mark us as not logged in\n\t\tthis.wiki.addTiddler({title: this.titleIsLoggedIn,text: \"no\"});\n\t\t// Get login status\n\t\tthis.syncadaptor.getStatus(function(err,isLoggedIn,username) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Set the various status tiddlers\n\t\t\tself.wiki.addTiddler({title: self.titleIsLoggedIn,text: isLoggedIn ? \"yes\" : \"no\"});\n\t\t\tif(isLoggedIn) {\n\t\t\t\tself.wiki.addTiddler({title: self.titleUserName,text: username || \"\"});\n\t\t\t} else {\n\t\t\t\tself.wiki.deleteTiddler(self.titleUserName);\n\t\t\t}\n\t\t\t// Invoke the callback\n\t\t\tif(callback) {\n\t\t\t\tcallback(err,isLoggedIn,username);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tcallback(null,true,\"UNAUTHENTICATED\");\n\t}\n};\n\n/*\nSynchronise from the server by reading the skinny tiddler list and queuing up loads for any tiddlers that we don't already have up to date\n*/\nSyncer.prototype.syncFromServer = function() {\n\tif(this.syncadaptor && this.syncadaptor.getSkinnyTiddlers) {\n\t\tthis.logger.log(\"Retrieving skinny tiddler list\");\n\t\tvar self = this;\n\t\tif(this.pollTimerId) {\n\t\t\tclearTimeout(this.pollTimerId);\n\t\t\tthis.pollTimerId = null;\n\t\t}\n\t\tthis.syncadaptor.getSkinnyTiddlers(function(err,tiddlers) {\n\t\t\t// Trigger the next sync\n\t\t\tself.pollTimerId = setTimeout(function() {\n\t\t\t\tself.pollTimerId = null;\n\t\t\t\tself.syncFromServer.call(self);\n\t\t\t},self.pollTimerInterval);\n\t\t\t// Check for errors\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert($tw.language.getString(\"Error/RetrievingSkinny\") + \":\",err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Process each incoming tiddler\n\t\t\tfor(var t=0; t<tiddlers.length; t++) {\n\t\t\t\t// Get the incoming tiddler fields, and the existing tiddler\n\t\t\t\tvar tiddlerFields = tiddlers[t],\n\t\t\t\t\tincomingRevision = tiddlerFields.revision + \"\",\n\t\t\t\t\ttiddler = self.wiki.getTiddler(tiddlerFields.title),\n\t\t\t\t\ttiddlerInfo = self.tiddlerInfo[tiddlerFields.title],\n\t\t\t\t\tcurrRevision = tiddlerInfo ? tiddlerInfo.revision : null;\n\t\t\t\t// Ignore the incoming tiddler if it's the same as the revision we've already got\n\t\t\t\tif(currRevision !== incomingRevision) {\n\t\t\t\t\t// Do a full load if we've already got a fat version of the tiddler\n\t\t\t\t\tif(tiddler && tiddler.fields.text !== undefined) {\n\t\t\t\t\t\t// Do a full load of this tiddler\n\t\t\t\t\t\tself.enqueueSyncTask({\n\t\t\t\t\t\t\ttype: \"load\",\n\t\t\t\t\t\t\ttitle: tiddlerFields.title\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Load the skinny version of the tiddler\n\t\t\t\t\t\tself.storeTiddler(tiddlerFields,false);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nSynchronise a set of changes to the server\n*/\nSyncer.prototype.syncToServer = function(changes) {\n\tvar self = this,\n\t\tnow = Date.now(),\n\t\tfilteredChanges = this.filterFn.call(this.wiki,function(callback) {\n\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\tcallback(tiddler,title);\n\t\t\t});\n\t\t});\n\t$tw.utils.each(changes,function(change,title,object) {\n\t\t// Process the change if it is a deletion of a tiddler we're already syncing, or is on the filtered change list\n\t\tif((change.deleted && $tw.utils.hop(self.tiddlerInfo,title)) || filteredChanges.indexOf(title) !== -1) {\n\t\t\t// Queue a task to sync this tiddler\n\t\t\tself.enqueueSyncTask({\n\t\t\t\ttype: change.deleted ? \"delete\" : \"save\",\n\t\t\t\ttitle: title\n\t\t\t});\n\t\t}\n\t});\n};\n\n/*\nLazily load a skinny tiddler if we can\n*/\nSyncer.prototype.handleLazyLoadEvent = function(title) {\n\t// Don't lazy load the same tiddler twice\n\tvar info = this.tiddlerInfo[title];\n\tif(!info || !info.hasBeenLazyLoaded) {\n\t\tthis.createTiddlerInfo(title);\n\t\tthis.tiddlerInfo[title].hasBeenLazyLoaded = true;\n\t\t// Queue up a sync task to load this tiddler\n\t\tthis.enqueueSyncTask({\n\t\t\ttype: \"load\",\n\t\t\ttitle: title\n\t\t});\t\t\n\t}\n};\n\n/*\nDispay a password prompt and allow the user to login\n*/\nSyncer.prototype.handleLoginEvent = function() {\n\tvar self = this;\n\tthis.getStatus(function(err,isLoggedIn,username) {\n\t\tif(!isLoggedIn) {\n\t\t\t$tw.passwordPrompt.createPrompt({\n\t\t\t\tserviceName: $tw.language.getString(\"LoginToTiddlySpace\"),\n\t\t\t\tcallback: function(data) {\n\t\t\t\t\tself.login(data.username,data.password,function(err,isLoggedIn) {\n\t\t\t\t\t\tself.syncFromServer();\n\t\t\t\t\t});\n\t\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n};\n\n/*\nAttempt to login to TiddlyWeb.\n\tusername: username\n\tpassword: password\n\tcallback: invoked with arguments (err,isLoggedIn)\n*/\nSyncer.prototype.login = function(username,password,callback) {\n\tthis.logger.log(\"Attempting to login as\",username);\n\tvar self = this;\n\tif(this.syncadaptor.login) {\n\t\tthis.syncadaptor.login(username,password,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.getStatus(function(err,isLoggedIn,username) {\n\t\t\t\tif(callback) {\n\t\t\t\t\tcallback(null,isLoggedIn);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t} else {\n\t\tcallback(null,true);\n\t}\n};\n\n/*\nAttempt to log out of TiddlyWeb\n*/\nSyncer.prototype.handleLogoutEvent = function() {\n\tthis.logger.log(\"Attempting to logout\");\n\tvar self = this;\n\tif(this.syncadaptor.logout) {\n\t\tthis.syncadaptor.logout(function(err) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\tself.getStatus();\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nImmediately refresh from the server\n*/\nSyncer.prototype.handleRefreshEvent = function() {\n\tthis.syncFromServer();\n};\n\n/*\nQueue up a sync task. If there is already a pending task for the tiddler, just update the last modification time\n*/\nSyncer.prototype.enqueueSyncTask = function(task) {\n\tvar self = this,\n\t\tnow = Date.now();\n\t// Set the timestamps on this task\n\ttask.queueTime = now;\n\ttask.lastModificationTime = now;\n\t// Fill in some tiddlerInfo if the tiddler is one we haven't seen before\n\tthis.createTiddlerInfo(task.title);\n\t// Bail if this is a save and the tiddler is already at the changeCount that the server has\n\tif(task.type === \"save\" && this.wiki.getChangeCount(task.title) <= this.tiddlerInfo[task.title].changeCount) {\n\t\treturn;\n\t}\n\t// Check if this tiddler is already in the queue\n\tif($tw.utils.hop(this.taskQueue,task.title)) {\n\t\t// this.logger.log(\"Re-queueing up sync task with type:\",task.type,\"title:\",task.title);\n\t\tvar existingTask = this.taskQueue[task.title];\n\t\t// If so, just update the last modification time\n\t\texistingTask.lastModificationTime = task.lastModificationTime;\n\t\t// If the new task is a save then we upgrade the existing task to a save. Thus a pending load is turned into a save if the tiddler changes locally in the meantime. But a pending save is not modified to become a load\n\t\tif(task.type === \"save\" || task.type === \"delete\") {\n\t\t\texistingTask.type = task.type;\n\t\t}\n\t} else {\n\t\t// this.logger.log(\"Queuing up sync task with type:\",task.type,\"title:\",task.title);\n\t\t// If it is not in the queue, insert it\n\t\tthis.taskQueue[task.title] = task;\n\t\tthis.updateDirtyStatus();\n\t}\n\t// Process the queue\n\t$tw.utils.nextTick(function() {self.processTaskQueue.call(self);});\n};\n\n/*\nReturn the number of tasks in progress\n*/\nSyncer.prototype.numTasksInProgress = function() {\n\treturn $tw.utils.count(this.taskInProgress);\n};\n\n/*\nReturn the number of tasks in the queue\n*/\nSyncer.prototype.numTasksInQueue = function() {\n\treturn $tw.utils.count(this.taskQueue);\n};\n\n/*\nTrigger a timeout if one isn't already outstanding\n*/\nSyncer.prototype.triggerTimeout = function() {\n\tvar self = this;\n\tif(!this.taskTimerId) {\n\t\tthis.taskTimerId = setTimeout(function() {\n\t\t\tself.taskTimerId = null;\n\t\t\tself.processTaskQueue.call(self);\n\t\t},self.taskTimerInterval);\n\t}\n};\n\n/*\nProcess the task queue, performing the next task if appropriate\n*/\nSyncer.prototype.processTaskQueue = function() {\n\tvar self = this;\n\t// Only process a task if the sync adaptor is fully initialised and we're not already performing a task. If we are already performing a task then we'll dispatch the next one when it completes\n\tif((!this.syncadaptor.isReady || this.syncadaptor.isReady()) && this.numTasksInProgress() === 0) {\n\t\t// Choose the next task to perform\n\t\tvar task = this.chooseNextTask();\n\t\t// Perform the task if we had one\n\t\tif(task) {\n\t\t\t// Remove the task from the queue and add it to the in progress list\n\t\t\tdelete this.taskQueue[task.title];\n\t\t\tthis.taskInProgress[task.title] = task;\n\t\t\tthis.updateDirtyStatus();\n\t\t\t// Dispatch the task\n\t\t\tthis.dispatchTask(task,function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\tself.logger.alert(\"Sync error while processing '\" + task.title + \"':\\n\" + err);\n\t\t\t\t}\n\t\t\t\t// Mark that this task is no longer in progress\n\t\t\t\tdelete self.taskInProgress[task.title];\n\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t// Process the next task\n\t\t\t\tself.processTaskQueue.call(self);\n\t\t\t});\n\t\t} else {\n\t\t\t// Make sure we've set a time if there wasn't a task to perform, but we've still got tasks in the queue\n\t\t\tif(this.numTasksInQueue() > 0) {\n\t\t\t\tthis.triggerTimeout();\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nChoose the next applicable task\n*/\nSyncer.prototype.chooseNextTask = function() {\n\tvar self = this,\n\t\tcandidateTask = null,\n\t\tnow = Date.now();\n\t// Select the best candidate task\n\t$tw.utils.each(this.taskQueue,function(task,title) {\n\t\t// Exclude the task if there's one of the same name in progress\n\t\tif($tw.utils.hop(self.taskInProgress,title)) {\n\t\t\treturn;\n\t\t}\n\t\t// Exclude the task if it is a save and the tiddler has been modified recently, but not hit the fallback time\n\t\tif(task.type === \"save\" && (now - task.lastModificationTime) < self.throttleInterval &&\n\t\t\t(now - task.queueTime) < self.fallbackInterval) {\n\t\t\treturn;\n\t\t}\n\t\t// Exclude the task if it is newer than the current best candidate\n\t\tif(candidateTask && candidateTask.queueTime < task.queueTime) {\n\t\t\treturn;\n\t\t}\n\t\t// Now this is our best candidate\n\t\tcandidateTask = task;\n\t});\n\treturn candidateTask;\n};\n\n/*\nDispatch a task and invoke the callback\n*/\nSyncer.prototype.dispatchTask = function(task,callback) {\n\tvar self = this;\n\tif(task.type === \"save\") {\n\t\tvar changeCount = this.wiki.getChangeCount(task.title),\n\t\t\ttiddler = this.wiki.getTiddler(task.title);\n\t\tthis.logger.log(\"Dispatching 'save' task:\",task.title);\n\t\tif(tiddler) {\n\t\t\tthis.syncadaptor.saveTiddler(tiddler,function(err,adaptorInfo,revision) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\t// Adjust the info stored about this tiddler\n\t\t\t\tself.tiddlerInfo[task.title] = {\n\t\t\t\t\tchangeCount: changeCount,\n\t\t\t\t\tadaptorInfo: adaptorInfo,\n\t\t\t\t\trevision: revision\n\t\t\t\t};\n\t\t\t\t// Invoke the callback\n\t\t\t\tcallback(null);\n\t\t\t},{\n\t\t\t\ttiddlerInfo: self.tiddlerInfo[task.title]\n\t\t\t});\n\t\t} else {\n\t\t\tthis.logger.log(\" Not Dispatching 'save' task:\",task.title,\"tiddler does not exist\");\n\t\t\treturn callback(null);\n\t\t}\n\t} else if(task.type === \"load\") {\n\t\t// Load the tiddler\n\t\tthis.logger.log(\"Dispatching 'load' task:\",task.title);\n\t\tthis.syncadaptor.loadTiddler(task.title,function(err,tiddlerFields) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\t// Store the tiddler\n\t\t\tif(tiddlerFields) {\n\t\t\t\tself.storeTiddler(tiddlerFields,true);\n\t\t\t}\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t});\n\t} else if(task.type === \"delete\") {\n\t\t// Delete the tiddler\n\t\tthis.logger.log(\"Dispatching 'delete' task:\",task.title);\n\t\tthis.syncadaptor.deleteTiddler(task.title,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tdelete self.tiddlerInfo[task.title];\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t},{\n\t\t\ttiddlerInfo: self.tiddlerInfo[task.title]\n\t\t});\n\t}\n};\n\nexports.Syncer = Syncer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/tiddler.js": {
            "title": "$:/core/modules/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/tiddler.js\ntype: application/javascript\nmodule-type: tiddlermethod\n\nExtension methods for the $tw.Tiddler object (constructor and methods required at boot time are in boot/boot.js)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.hasTag = function(tag) {\n\treturn this.fields.tags && this.fields.tags.indexOf(tag) !== -1;\n};\n\nexports.isPlugin = function() {\n\treturn this.fields.type === \"application/json\" && this.hasField(\"plugin-type\");\n};\n\nexports.isDraft = function() {\n\treturn this.hasField(\"draft.of\");\n};\n\nexports.getFieldString = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn \"\";\n\t}\n\t// Parse the field with the associated module (if any)\n\tvar fieldModule = $tw.Tiddler.fieldModules[field];\n\tif(fieldModule && fieldModule.stringify) {\n\t\treturn fieldModule.stringify.call(this,value);\n\t} else {\n\t\treturn value.toString();\n\t}\n};\n\n/*\nGet all the fields as a hashmap of strings. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStrings = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [];\n\tvar fields = {};\n\tfor(var field in this.fields) {\n\t\tif($tw.utils.hop(this.fields,field)) {\n\t\t\tif(exclude.indexOf(field) === -1) {\n\t\t\t\tfields[field] = this.getFieldString(field);\n\t\t\t}\n\t\t}\n\t}\n\treturn fields;\n};\n\n/*\nGet all the fields as a name:value block. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStringBlock = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [];\n\tvar fields = [];\n\tfor(var field in this.fields) {\n\t\tif($tw.utils.hop(this.fields,field)) {\n\t\t\tif(exclude.indexOf(field) === -1) {\n\t\t\t\tfields.push(field + \": \" + this.getFieldString(field));\n\t\t\t}\n\t\t}\n\t}\n\treturn fields.join(\"\\n\");\n};\n\n/*\nCompare two tiddlers for equality\ntiddler: the tiddler to compare\nexcludeFields: array of field names to exclude from the comparison\n*/\nexports.isEqual = function(tiddler,excludeFields) {\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\treturn false;\n\t}\n\texcludeFields = excludeFields || [];\n\tvar self = this,\n\t\tdifferences = []; // Fields that have differences\n\t// Add to the differences array\n\tfunction addDifference(fieldName) {\n\t\t// Check for this field being excluded\n\t\tif(excludeFields.indexOf(fieldName) === -1) {\n\t\t\t// Save the field as a difference\n\t\t\t$tw.utils.pushTop(differences,fieldName);\n\t\t}\n\t}\n\t// Returns true if the two values of this field are equal\n\tfunction isFieldValueEqual(fieldName) {\n\t\tvar valueA = self.fields[fieldName],\n\t\t\tvalueB = tiddler.fields[fieldName];\n\t\t// Check for identical string values\n\t\tif(typeof(valueA) === \"string\" && typeof(valueB) === \"string\" && valueA === valueB) {\n\t\t\treturn true;\n\t\t}\n\t\t// Check for identical array values\n\t\tif($tw.utils.isArray(valueA) && $tw.utils.isArray(valueB) && $tw.utils.isArrayEqual(valueA,valueB)) {\n\t\t\treturn true;\n\t\t}\n\t\t// Otherwise the fields must be different\n\t\treturn false;\n\t}\n\t// Compare our fields\n\tfor(var fieldName in this.fields) {\n\t\tif(!isFieldValueEqual(fieldName)) {\n\t\t\taddDifference(fieldName);\n\t\t}\n\t}\n\t// There's a difference for every field in the other tiddler that we don't have\n\tfor(fieldName in tiddler.fields) {\n\t\tif(!(fieldName in this.fields)) {\n\t\t\taddDifference(fieldName);\n\t\t}\n\t}\n\t// Return whether there were any differences\n\treturn differences.length === 0;\n};\n\nexports.getFieldDay = function(field) {\n\tif(this.cache && this.cache.day && $tw.utils.hop(this.cache.day,field) ) {\n\t\treturn this.cache.day[field];\n\t}\n\tvar day = \"\";\n\tif(this.fields[field]) {\n\t\tday = (new Date($tw.utils.parseDate(this.fields[field]))).setHours(0,0,0,0);\n\t}\n\tthis.cache.day = this.cache.day || {};\n\tthis.cache.day[field] = day;\n\treturn day;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlermethod"
        },
        "$:/core/modules/upgraders/plugins.js": {
            "title": "$:/core/modules/upgraders/plugins.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/plugins.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that checks that plugins are newer than any already installed version\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar BLOCKED_PLUGINS = {\n\t\"$:/themes/tiddlywiki/stickytitles\": {\n\t\tversions: [\"*\"]\n\t},\n\t\"$:/plugins/tiddlywiki/fullscreen\": {\n\t\tversions: [\"*\"]\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tupgradeLibrary,\n\t\tgetLibraryTiddler = function(title) {\n\t\t\tif(!upgradeLibrary) {\n\t\t\t\tupgradeLibrary = wiki.getTiddlerData(UPGRADE_LIBRARY_TITLE,{});\n\t\t\t\tupgradeLibrary.tiddlers = upgradeLibrary.tiddlers || {};\n\t\t\t}\n\t\t\treturn upgradeLibrary.tiddlers[title];\n\t\t};\n\n\t// Go through all the incoming tiddlers\n\t$tw.utils.each(titles,function(title) {\n\t\tvar incomingTiddler = tiddlers[title];\n\t\t// Check if we're dealing with a plugin\n\t\tif(incomingTiddler && incomingTiddler[\"plugin-type\"] && incomingTiddler.version) {\n\t\t\t// Upgrade the incoming plugin if it is in the upgrade library\n\t\t\tvar libraryTiddler = getLibraryTiddler(title);\n\t\t\tif(libraryTiddler && libraryTiddler[\"plugin-type\"] && libraryTiddler.version) {\n\t\t\t\ttiddlers[title] = libraryTiddler;\n\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Upgraded\",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Suppress the incoming plugin if it is older than the currently installed one\n\t\t\tvar existingTiddler = wiki.getTiddler(title);\n\t\t\tif(existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t\t\t// Reject the incoming plugin by blanking all its fields\n\t\t\t\tif($tw.utils.checkVersions(existingTiddler.fields.version,incomingTiddler.version)) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Version\",{variables: {incoming: incomingTiddler.version, existing: existingTiddler.fields.version}});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(incomingTiddler && incomingTiddler[\"plugin-type\"]) {\n\t\t\t// Check whether the plugin is on the blocked list\n\t\t\tvar blockInfo = BLOCKED_PLUGINS[title];\n\t\t\tif(blockInfo) {\n\t\t\t\tif(blockInfo.versions.indexOf(\"*\") !== -1 || (incomingTiddler.version && blockInfo.versions.indexOf(incomingTiddler.version) !== -1)) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Incompatible\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/system.js": {
            "title": "$:/core/modules/upgraders/system.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/system.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that suppresses certain system tiddlers that shouldn't be imported\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DONT_IMPORT_LIST = [\"$:/StoryList\",\"$:/HistoryList\"],\n\tDONT_IMPORT_PREFIX_LIST = [\"$:/temp/\",\"$:/state/\"];\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {};\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tif(DONT_IMPORT_LIST.indexOf(title) !== -1) {\n\t\t\ttiddlers[title] = Object.create(null);\n\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Suppressed\");\n\t\t} else {\n\t\t\tfor(var t=0; t<DONT_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = DONT_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/State/Suppressed\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/themetweaks.js": {
            "title": "$:/core/modules/upgraders/themetweaks.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/themetweaks.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that handles the change in theme tweak storage introduced in 5.0.14-beta.\n\nPreviously, theme tweaks were stored in two data tiddlers:\n\n* $:/themes/tiddlywiki/vanilla/metrics\n* $:/themes/tiddlywiki/vanilla/settings\n\nNow, each tweak is stored in its own separate tiddler.\n\nThis upgrader copies any values from the old format to the new. The old data tiddlers are not deleted in case they have been used to store additional indexes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar MAPPINGS = {\n\t\"$:/themes/tiddlywiki/vanilla/metrics\": {\n\t\t\"fontsize\": \"$:/themes/tiddlywiki/vanilla/metrics/fontsize\",\n\t\t\"lineheight\": \"$:/themes/tiddlywiki/vanilla/metrics/lineheight\",\n\t\t\"storyleft\": \"$:/themes/tiddlywiki/vanilla/metrics/storyleft\",\n\t\t\"storytop\": \"$:/themes/tiddlywiki/vanilla/metrics/storytop\",\n\t\t\"storyright\": \"$:/themes/tiddlywiki/vanilla/metrics/storyright\",\n\t\t\"storywidth\": \"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\n\t\t\"tiddlerwidth\": \"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"\n\t},\n\t\"$:/themes/tiddlywiki/vanilla/settings\": {\n\t\t\"fontfamily\": \"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {};\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tvar mapping = MAPPINGS[title];\n\t\tif(mapping) {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlers[title]),\n\t\t\t\ttiddlerData = wiki.getTiddlerDataCached(tiddler,{});\n\t\t\tfor(var index in mapping) {\n\t\t\t\tvar mappedTitle = mapping[index];\n\t\t\t\tif(!tiddlers[mappedTitle] || tiddlers[mappedTitle].title !== mappedTitle) {\n\t\t\t\t\ttiddlers[mappedTitle] = {\n\t\t\t\t\t\ttitle: mappedTitle,\n\t\t\t\t\t\ttext: tiddlerData[index]\n\t\t\t\t\t};\n\t\t\t\t\tmessages[mappedTitle] = $tw.language.getString(\"Import/Upgrader/ThemeTweaks/Created\",{variables: {\n\t\t\t\t\t\tfrom: title + \"##\" + index\n\t\t\t\t\t}});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/utils/crypto.js": {
            "title": "$:/core/modules/utils/crypto.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/crypto.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions related to crypto.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for an encrypted store area in the text of a TiddlyWiki file\n*/\nexports.extractEncryptedStoreArea = function(text) {\n\tvar encryptedStoreAreaStartMarker = \"<pre id=\\\"encryptedStoreArea\\\" type=\\\"text/plain\\\" style=\\\"display:none;\\\">\",\n\t\tencryptedStoreAreaStart = text.indexOf(encryptedStoreAreaStartMarker);\n\tif(encryptedStoreAreaStart !== -1) {\n\t\tvar encryptedStoreAreaEnd = text.indexOf(\"</pre>\",encryptedStoreAreaStart);\n\t\tif(encryptedStoreAreaEnd !== -1) {\n\t\t\treturn $tw.utils.htmlDecode(text.substring(encryptedStoreAreaStart + encryptedStoreAreaStartMarker.length,encryptedStoreAreaEnd-1));\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If the password is not provided then the password in the password store will be used\n*/\nexports.decryptStoreArea = function(encryptedStoreArea,password) {\n\tvar decryptedText = $tw.crypto.decrypt(encryptedStoreArea,password);\n\tif(decryptedText) {\n\t\tvar json = JSON.parse(decryptedText),\n\t\t\ttiddlers = [];\n\t\tfor(var title in json) {\n\t\t\tif(title !== \"$:/isEncrypted\") {\n\t\t\t\ttiddlers.push(json[title]);\n\t\t\t}\n\t\t}\n\t\treturn tiddlers;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If that fails, the user is prompted for a password.\nencryptedStoreArea: text of the TiddlyWiki encrypted store area\ncallback: function(tiddlers) called with the array of decrypted tiddlers\n\nThe following configuration settings are supported:\n\n$tw.config.usePasswordVault: causes any password entered by the user to also be put into the system password vault\n*/\nexports.decryptStoreAreaInteractive = function(encryptedStoreArea,callback,options) {\n\t// Try to decrypt with the current password\n\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea);\n\tif(tiddlers) {\n\t\tcallback(tiddlers);\n\t} else {\n\t\t// Prompt for a new password and keep trying\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: \"Enter a password to decrypt the imported TiddlyWiki\",\n\t\t\tnoUserName: true,\n\t\t\tcanCancel: true,\n\t\t\tsubmitText: \"Decrypt\",\n\t\t\tcallback: function(data) {\n\t\t\t\t// Exit if the user cancelled\n\t\t\t\tif(!data) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\t// Attempt to decrypt the tiddlers\n\t\t\t\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea,data.password);\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tif($tw.config.usePasswordVault) {\n\t\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t\t}\n\t\t\t\t\tcallback(tiddlers);\n\t\t\t\t\t// Exit and remove the password prompt\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\t// We didn't decrypt everything, so continue to prompt for password\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/diff-match-patch/diff_match_patch.js": {
            "text": "(function(){function diff_match_patch(){this.Diff_Timeout=1;this.Diff_EditCost=4;this.Match_Threshold=.5;this.Match_Distance=1E3;this.Patch_DeleteThreshold=.5;this.Patch_Margin=4;this.Match_MaxBits=32}var DIFF_DELETE=-1,DIFF_INSERT=1,DIFF_EQUAL=0;\ndiff_match_patch.prototype.diff_main=function(a,b,c,d){\"undefined\"==typeof d&&(d=0>=this.Diff_Timeout?Number.MAX_VALUE:(new Date).getTime()+1E3*this.Diff_Timeout);if(null==a||null==b)throw Error(\"Null input. (diff_main)\");if(a==b)return a?[[DIFF_EQUAL,a]]:[];\"undefined\"==typeof c&&(c=!0);var e=c,f=this.diff_commonPrefix(a,b);c=a.substring(0,f);a=a.substring(f);b=b.substring(f);f=this.diff_commonSuffix(a,b);var g=a.substring(a.length-f);a=a.substring(0,a.length-f);b=b.substring(0,b.length-f);a=this.diff_compute_(a,\nb,e,d);c&&a.unshift([DIFF_EQUAL,c]);g&&a.push([DIFF_EQUAL,g]);this.diff_cleanupMerge(a);return a};\ndiff_match_patch.prototype.diff_compute_=function(a,b,c,d){if(!a)return[[DIFF_INSERT,b]];if(!b)return[[DIFF_DELETE,a]];var e=a.length>b.length?a:b,f=a.length>b.length?b:a,g=e.indexOf(f);return-1!=g?(c=[[DIFF_INSERT,e.substring(0,g)],[DIFF_EQUAL,f],[DIFF_INSERT,e.substring(g+f.length)]],a.length>b.length&&(c[0][0]=c[2][0]=DIFF_DELETE),c):1==f.length?[[DIFF_DELETE,a],[DIFF_INSERT,b]]:(e=this.diff_halfMatch_(a,b))?(b=e[1],f=e[3],a=e[4],e=this.diff_main(e[0],e[2],c,d),c=this.diff_main(b,f,c,d),e.concat([[DIFF_EQUAL,\na]],c)):c&&100<a.length&&100<b.length?this.diff_lineMode_(a,b,d):this.diff_bisect_(a,b,d)};\ndiff_match_patch.prototype.diff_lineMode_=function(a,b,c){var d=this.diff_linesToChars_(a,b);a=d.chars1;b=d.chars2;d=d.lineArray;a=this.diff_main(a,b,!1,c);this.diff_charsToLines_(a,d);this.diff_cleanupSemantic(a);a.push([DIFF_EQUAL,\"\"]);for(var e=d=b=0,f=\"\",g=\"\";b<a.length;){switch(a[b][0]){case DIFF_INSERT:e++;g+=a[b][1];break;case DIFF_DELETE:d++;f+=a[b][1];break;case DIFF_EQUAL:if(1<=d&&1<=e){a.splice(b-d-e,d+e);b=b-d-e;d=this.diff_main(f,g,!1,c);for(e=d.length-1;0<=e;e--)a.splice(b,0,d[e]);b+=\nd.length}d=e=0;g=f=\"\"}b++}a.pop();return a};\ndiff_match_patch.prototype.diff_bisect_=function(a,b,c){for(var d=a.length,e=b.length,f=Math.ceil((d+e)/2),g=2*f,h=Array(g),l=Array(g),k=0;k<g;k++)h[k]=-1,l[k]=-1;h[f+1]=0;l[f+1]=0;k=d-e;for(var m=0!=k%2,p=0,x=0,w=0,q=0,t=0;t<f&&!((new Date).getTime()>c);t++){for(var v=-t+p;v<=t-x;v+=2){var n=f+v;var r=v==-t||v!=t&&h[n-1]<h[n+1]?h[n+1]:h[n-1]+1;for(var y=r-v;r<d&&y<e&&a.charAt(r)==b.charAt(y);)r++,y++;h[n]=r;if(r>d)x+=2;else if(y>e)p+=2;else if(m&&(n=f+k-v,0<=n&&n<g&&-1!=l[n])){var u=d-l[n];if(r>=\nu)return this.diff_bisectSplit_(a,b,r,y,c)}}for(v=-t+w;v<=t-q;v+=2){n=f+v;u=v==-t||v!=t&&l[n-1]<l[n+1]?l[n+1]:l[n-1]+1;for(r=u-v;u<d&&r<e&&a.charAt(d-u-1)==b.charAt(e-r-1);)u++,r++;l[n]=u;if(u>d)q+=2;else if(r>e)w+=2;else if(!m&&(n=f+k-v,0<=n&&n<g&&-1!=h[n]&&(r=h[n],y=f+r-n,u=d-u,r>=u)))return this.diff_bisectSplit_(a,b,r,y,c)}}return[[DIFF_DELETE,a],[DIFF_INSERT,b]]};\ndiff_match_patch.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d);a=a.substring(c);b=b.substring(d);f=this.diff_main(f,g,!1,e);e=this.diff_main(a,b,!1,e);return f.concat(e)};\ndiff_match_patch.prototype.diff_linesToChars_=function(a,b){function c(a){for(var b=\"\",c=0,f=-1,g=d.length;f<a.length-1;){f=a.indexOf(\"\\n\",c);-1==f&&(f=a.length-1);var h=a.substring(c,f+1);c=f+1;(e.hasOwnProperty?e.hasOwnProperty(h):void 0!==e[h])?b+=String.fromCharCode(e[h]):(b+=String.fromCharCode(g),e[h]=g,d[g++]=h)}return b}var d=[],e={};d[0]=\"\";var f=c(a),g=c(b);return{chars1:f,chars2:g,lineArray:d}};\ndiff_match_patch.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join(\"\")}};diff_match_patch.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));c=Math.min(c,d);if(a==b)return c;d=0;for(var e=1;;){var f=a.substring(c-e);f=b.indexOf(f);if(-1==f)return d;e+=f;if(0==f||a.substring(c-e)==b.substring(0,e))d=e,e++}};\ndiff_match_patch.prototype.diff_halfMatch_=function(a,b){function c(a,b,c){for(var d=a.substring(c,c+Math.floor(a.length/4)),e=-1,g=\"\",h,k,l,m;-1!=(e=b.indexOf(d,e+1));){var p=f.diff_commonPrefix(a.substring(c),b.substring(e)),u=f.diff_commonSuffix(a.substring(0,c),b.substring(0,e));g.length<u+p&&(g=b.substring(e-u,e)+b.substring(e,e+p),h=a.substring(0,c-u),k=a.substring(c+p),l=b.substring(0,e-u),m=b.substring(e+p))}return 2*g.length>=a.length?[h,k,l,m,g]:null}if(0>=this.Diff_Timeout)return null;\nvar d=a.length>b.length?a:b,e=a.length>b.length?b:a;if(4>d.length||2*e.length<d.length)return null;var f=this,g=c(d,e,Math.ceil(d.length/4));d=c(d,e,Math.ceil(d.length/2));if(g||d)g=d?g?g[4].length>d[4].length?g:d:d:g;else return null;if(a.length>b.length){d=g[0];e=g[1];var h=g[2];var l=g[3]}else h=g[0],l=g[1],d=g[2],e=g[3];return[d,e,h,l,g[4]]};\ndiff_match_patch.prototype.diff_cleanupSemantic=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=0,h=0,l=0,k=0;f<a.length;)a[f][0]==DIFF_EQUAL?(c[d++]=f,g=l,h=k,k=l=0,e=a[f][1]):(a[f][0]==DIFF_INSERT?l+=a[f][1].length:k+=a[f][1].length,e&&e.length<=Math.max(g,h)&&e.length<=Math.max(l,k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,d--,f=0<d?c[d-1]:-1,k=l=h=g=0,e=null,b=!0)),f++;b&&this.diff_cleanupMerge(a);this.diff_cleanupSemanticLossless(a);for(f=1;f<a.length;){if(a[f-1][0]==\nDIFF_DELETE&&a[f][0]==DIFF_INSERT){b=a[f-1][1];c=a[f][1];d=this.diff_commonOverlap_(b,c);e=this.diff_commonOverlap_(c,b);if(d>=e){if(d>=b.length/2||d>=c.length/2)a.splice(f,0,[DIFF_EQUAL,c.substring(0,d)]),a[f-1][1]=b.substring(0,b.length-d),a[f+1][1]=c.substring(d),f++}else if(e>=b.length/2||e>=c.length/2)a.splice(f,0,[DIFF_EQUAL,b.substring(0,e)]),a[f-1][0]=DIFF_INSERT,a[f-1][1]=c.substring(0,c.length-e),a[f+1][0]=DIFF_DELETE,a[f+1][1]=b.substring(e),f++;f++}f++}};\ndiff_match_patch.prototype.diff_cleanupSemanticLossless=function(a){function b(a,b){if(!a||!b)return 6;var c=a.charAt(a.length-1),d=b.charAt(0),e=c.match(diff_match_patch.nonAlphaNumericRegex_),f=d.match(diff_match_patch.nonAlphaNumericRegex_),g=e&&c.match(diff_match_patch.whitespaceRegex_),h=f&&d.match(diff_match_patch.whitespaceRegex_);c=g&&c.match(diff_match_patch.linebreakRegex_);d=h&&d.match(diff_match_patch.linebreakRegex_);var k=c&&a.match(diff_match_patch.blanklineEndRegex_),l=d&&b.match(diff_match_patch.blanklineStartRegex_);\nreturn k||l?5:c||d?4:e&&!g&&h?3:g||h?2:e||f?1:0}for(var c=1;c<a.length-1;){if(a[c-1][0]==DIFF_EQUAL&&a[c+1][0]==DIFF_EQUAL){var d=a[c-1][1],e=a[c][1],f=a[c+1][1],g=this.diff_commonSuffix(d,e);if(g){var h=e.substring(e.length-g);d=d.substring(0,d.length-g);e=h+e.substring(0,e.length-g);f=h+f}g=d;h=e;for(var l=f,k=b(d,e)+b(e,f);e.charAt(0)===f.charAt(0);){d+=e.charAt(0);e=e.substring(1)+f.charAt(0);f=f.substring(1);var m=b(d,e)+b(e,f);m>=k&&(k=m,g=d,h=e,l=f)}a[c-1][1]!=g&&(g?a[c-1][1]=g:(a.splice(c-\n1,1),c--),a[c][1]=h,l?a[c+1][1]=l:(a.splice(c+1,1),c--))}c++}};diff_match_patch.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;diff_match_patch.whitespaceRegex_=/\\s/;diff_match_patch.linebreakRegex_=/[\\r\\n]/;diff_match_patch.blanklineEndRegex_=/\\n\\r?\\n$/;diff_match_patch.blanklineStartRegex_=/^\\r?\\n\\r?\\n/;\ndiff_match_patch.prototype.diff_cleanupEfficiency=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=!1,h=!1,l=!1,k=!1;f<a.length;)a[f][0]==DIFF_EQUAL?(a[f][1].length<this.Diff_EditCost&&(l||k)?(c[d++]=f,g=l,h=k,e=a[f][1]):(d=0,e=null),l=k=!1):(a[f][0]==DIFF_DELETE?k=!0:l=!0,e&&(g&&h&&l&&k||e.length<this.Diff_EditCost/2&&3==g+h+l+k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,e=null,g&&h?(l=k=!0,d=0):(d--,f=0<d?c[d-1]:-1,l=k=!1),b=!0)),f++;b&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_cleanupMerge=function(a){a.push([DIFF_EQUAL,\"\"]);for(var b=0,c=0,d=0,e=\"\",f=\"\",g;b<a.length;)switch(a[b][0]){case DIFF_INSERT:d++;f+=a[b][1];b++;break;case DIFF_DELETE:c++;e+=a[b][1];b++;break;case DIFF_EQUAL:1<c+d?(0!==c&&0!==d&&(g=this.diff_commonPrefix(f,e),0!==g&&(0<b-c-d&&a[b-c-d-1][0]==DIFF_EQUAL?a[b-c-d-1][1]+=f.substring(0,g):(a.splice(0,0,[DIFF_EQUAL,f.substring(0,g)]),b++),f=f.substring(g),e=e.substring(g)),g=this.diff_commonSuffix(f,e),0!==g&&(a[b][1]=f.substring(f.length-\ng)+a[b][1],f=f.substring(0,f.length-g),e=e.substring(0,e.length-g))),0===c?a.splice(b-d,c+d,[DIFF_INSERT,f]):0===d?a.splice(b-c,c+d,[DIFF_DELETE,e]):a.splice(b-c-d,c+d,[DIFF_DELETE,e],[DIFF_INSERT,f]),b=b-c-d+(c?1:0)+(d?1:0)+1):0!==b&&a[b-1][0]==DIFF_EQUAL?(a[b-1][1]+=a[b][1],a.splice(b,1)):b++,c=d=0,f=e=\"\"}\"\"===a[a.length-1][1]&&a.pop();c=!1;for(b=1;b<a.length-1;)a[b-1][0]==DIFF_EQUAL&&a[b+1][0]==DIFF_EQUAL&&(a[b][1].substring(a[b][1].length-a[b-1][1].length)==a[b-1][1]?(a[b][1]=a[b-1][1]+a[b][1].substring(0,\na[b][1].length-a[b-1][1].length),a[b+1][1]=a[b-1][1]+a[b+1][1],a.splice(b-1,1),c=!0):a[b][1].substring(0,a[b+1][1].length)==a[b+1][1]&&(a[b-1][1]+=a[b+1][1],a[b][1]=a[b][1].substring(a[b+1][1].length)+a[b+1][1],a.splice(b+1,1),c=!0)),b++;c&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_xIndex=function(a,b){var c=0,d=0,e=0,f=0,g;for(g=0;g<a.length;g++){a[g][0]!==DIFF_INSERT&&(c+=a[g][1].length);a[g][0]!==DIFF_DELETE&&(d+=a[g][1].length);if(c>b)break;e=c;f=d}return a.length!=g&&a[g][0]===DIFF_DELETE?f:f+(b-e)};\ndiff_match_patch.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\\n/g,g=0;g<a.length;g++){var h=a[g][0],l=a[g][1].replace(c,\"&amp;\").replace(d,\"&lt;\").replace(e,\"&gt;\").replace(f,\"&para;<br>\");switch(h){case DIFF_INSERT:b[g]='<ins style=\"background:#e6ffe6;\">'+l+\"</ins>\";break;case DIFF_DELETE:b[g]='<del style=\"background:#ffe6e6;\">'+l+\"</del>\";break;case DIFF_EQUAL:b[g]=\"<span>\"+l+\"</span>\"}}return b.join(\"\")};\ndiff_match_patch.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_INSERT&&(b[c]=a[c][1]);return b.join(\"\")};diff_match_patch.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_DELETE&&(b[c]=a[c][1]);return b.join(\"\")};\ndiff_match_patch.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][1];switch(a[e][0]){case DIFF_INSERT:c+=f.length;break;case DIFF_DELETE:d+=f.length;break;case DIFF_EQUAL:b+=Math.max(c,d),d=c=0}}return b+=Math.max(c,d)};\ndiff_match_patch.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case DIFF_INSERT:b[c]=\"+\"+encodeURI(a[c][1]);break;case DIFF_DELETE:b[c]=\"-\"+a[c][1].length;break;case DIFF_EQUAL:b[c]=\"=\"+a[c][1].length}return b.join(\"\\t\").replace(/%20/g,\" \")};\ndiff_match_patch.prototype.diff_fromDelta=function(a,b){for(var c=[],d=0,e=0,f=b.split(/\\t/g),g=0;g<f.length;g++){var h=f[g].substring(1);switch(f[g].charAt(0)){case \"+\":try{c[d++]=[DIFF_INSERT,decodeURI(h)]}catch(k){throw Error(\"Illegal escape in diff_fromDelta: \"+h);}break;case \"-\":case \"=\":var l=parseInt(h,10);if(isNaN(l)||0>l)throw Error(\"Invalid number in diff_fromDelta: \"+h);h=a.substring(e,e+=l);\"=\"==f[g].charAt(0)?c[d++]=[DIFF_EQUAL,h]:c[d++]=[DIFF_DELETE,h];break;default:if(f[g])throw Error(\"Invalid diff operation in diff_fromDelta: \"+\nf[g]);}}if(e!=a.length)throw Error(\"Delta length (\"+e+\") does not equal source text length (\"+a.length+\").\");return c};diff_match_patch.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error(\"Null input. (match_main)\");c=Math.max(0,Math.min(c,a.length));return a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1};\ndiff_match_patch.prototype.match_bitap_=function(a,b,c){function d(a,d){var e=a/b.length,g=Math.abs(c-d);return f.Match_Distance?e+g/f.Match_Distance:g?1:e}if(b.length>this.Match_MaxBits)throw Error(\"Pattern too long for this browser.\");var e=this.match_alphabet_(b),f=this,g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(d(0,h),g),h=a.lastIndexOf(b,c+b.length),-1!=h&&(g=Math.min(d(0,h),g)));var l=1<<b.length-1;h=-1;for(var k,m,p=b.length+a.length,x,w=0;w<b.length;w++){k=0;for(m=p;k<m;)d(w,\nc+m)<=g?k=m:p=m,m=Math.floor((p-k)/2+k);p=m;k=Math.max(1,c-m+1);var q=Math.min(c+m,a.length)+b.length;m=Array(q+2);for(m[q+1]=(1<<w)-1;q>=k;q--){var t=e[a.charAt(q-1)];m[q]=0===w?(m[q+1]<<1|1)&t:(m[q+1]<<1|1)&t|(x[q+1]|x[q])<<1|1|x[q+1];if(m[q]&l&&(t=d(w,q-1),t<=g))if(g=t,h=q-1,h>c)k=Math.max(1,2*c-h);else break}if(d(w+1,c)>g)break;x=m}return h};\ndiff_match_patch.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b};\ndiff_match_patch.prototype.patch_addContext_=function(a,b){if(0!=b.length){for(var c=b.substring(a.start2,a.start2+a.length1),d=0;b.indexOf(c)!=b.lastIndexOf(c)&&c.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)d+=this.Patch_Margin,c=b.substring(a.start2-d,a.start2+a.length1+d);d+=this.Patch_Margin;(c=b.substring(a.start2-d,a.start2))&&a.diffs.unshift([DIFF_EQUAL,c]);(d=b.substring(a.start2+a.length1,a.start2+a.length1+d))&&a.diffs.push([DIFF_EQUAL,d]);a.start1-=c.length;a.start2-=\nc.length;a.length1+=c.length+d.length;a.length2+=c.length+d.length}};\ndiff_match_patch.prototype.patch_make=function(a,b,c){if(\"string\"==typeof a&&\"string\"==typeof b&&\"undefined\"==typeof c){var d=a;b=this.diff_main(d,b,!0);2<b.length&&(this.diff_cleanupSemantic(b),this.diff_cleanupEfficiency(b))}else if(a&&\"object\"==typeof a&&\"undefined\"==typeof b&&\"undefined\"==typeof c)b=a,d=this.diff_text1(b);else if(\"string\"==typeof a&&b&&\"object\"==typeof b&&\"undefined\"==typeof c)d=a;else if(\"string\"==typeof a&&\"string\"==typeof b&&c&&\"object\"==typeof c)d=a,b=c;else throw Error(\"Unknown call format to patch_make.\");\nif(0===b.length)return[];c=[];a=new diff_match_patch.patch_obj;for(var e=0,f=0,g=0,h=d,l=0;l<b.length;l++){var k=b[l][0],m=b[l][1];e||k===DIFF_EQUAL||(a.start1=f,a.start2=g);switch(k){case DIFF_INSERT:a.diffs[e++]=b[l];a.length2+=m.length;d=d.substring(0,g)+m+d.substring(g);break;case DIFF_DELETE:a.length1+=m.length;a.diffs[e++]=b[l];d=d.substring(0,g)+d.substring(g+m.length);break;case DIFF_EQUAL:m.length<=2*this.Patch_Margin&&e&&b.length!=l+1?(a.diffs[e++]=b[l],a.length1+=m.length,a.length2+=m.length):\nm.length>=2*this.Patch_Margin&&e&&(this.patch_addContext_(a,h),c.push(a),a=new diff_match_patch.patch_obj,e=0,h=d,f=g)}k!==DIFF_INSERT&&(f+=m.length);k!==DIFF_DELETE&&(g+=m.length)}e&&(this.patch_addContext_(a,h),c.push(a));return c};\ndiff_match_patch.prototype.patch_deepCopy=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=new diff_match_patch.patch_obj;e.diffs=[];for(var f=0;f<d.diffs.length;f++)e.diffs[f]=d.diffs[f].slice();e.start1=d.start1;e.start2=d.start2;e.length1=d.length1;e.length2=d.length2;b[c]=e}return b};\ndiff_match_patch.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c;this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g=a[f].start2+d,h=this.diff_text1(a[f].diffs),l=-1;if(h.length>this.Match_MaxBits){var k=this.match_main(b,h.substring(0,this.Match_MaxBits),g);-1!=k&&(l=this.match_main(b,h.substring(h.length-this.Match_MaxBits),g+h.length-this.Match_MaxBits),-1==l||k>=l)&&(k=-1)}else k=this.match_main(b,h,\ng);if(-1==k)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=k-g,g=-1==l?b.substring(k,k+h.length):b.substring(k,l+this.Match_MaxBits),h==g)b=b.substring(0,k)+this.diff_text2(a[f].diffs)+b.substring(k+h.length);else if(g=this.diff_main(h,g,!1),h.length>this.Match_MaxBits&&this.diff_levenshtein(g)/h.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(g);h=0;var m;for(l=0;l<a[f].diffs.length;l++){var p=a[f].diffs[l];p[0]!==DIFF_EQUAL&&(m=this.diff_xIndex(g,h));p[0]===\nDIFF_INSERT?b=b.substring(0,k+m)+p[1]+b.substring(k+m):p[0]===DIFF_DELETE&&(b=b.substring(0,k+m)+b.substring(k+this.diff_xIndex(g,h+p[1].length)));p[0]!==DIFF_DELETE&&(h+=p[1].length)}}}b=b.substring(c.length,b.length-c.length);return[b,e]};\ndiff_match_patch.prototype.patch_addPadding=function(a){for(var b=this.Patch_Margin,c=\"\",d=1;d<=b;d++)c+=String.fromCharCode(d);for(d=0;d<a.length;d++)a[d].start1+=b,a[d].start2+=b;d=a[0];var e=d.diffs;if(0==e.length||e[0][0]!=DIFF_EQUAL)e.unshift([DIFF_EQUAL,c]),d.start1-=b,d.start2-=b,d.length1+=b,d.length2+=b;else if(b>e[0][1].length){var f=b-e[0][1].length;e[0][1]=c.substring(e[0][1].length)+e[0][1];d.start1-=f;d.start2-=f;d.length1+=f;d.length2+=f}d=a[a.length-1];e=d.diffs;0==e.length||e[e.length-\n1][0]!=DIFF_EQUAL?(e.push([DIFF_EQUAL,c]),d.length1+=b,d.length2+=b):b>e[e.length-1][1].length&&(f=b-e[e.length-1][1].length,e[e.length-1][1]+=c.substring(0,f),d.length1+=f,d.length2+=f);return c};\ndiff_match_patch.prototype.patch_splitMax=function(a){for(var b=this.Match_MaxBits,c=0;c<a.length;c++)if(!(a[c].length1<=b)){var d=a[c];a.splice(c--,1);for(var e=d.start1,f=d.start2,g=\"\";0!==d.diffs.length;){var h=new diff_match_patch.patch_obj,l=!0;h.start1=e-g.length;h.start2=f-g.length;\"\"!==g&&(h.length1=h.length2=g.length,h.diffs.push([DIFF_EQUAL,g]));for(;0!==d.diffs.length&&h.length1<b-this.Patch_Margin;){g=d.diffs[0][0];var k=d.diffs[0][1];g===DIFF_INSERT?(h.length2+=k.length,f+=k.length,h.diffs.push(d.diffs.shift()),\nl=!1):g===DIFF_DELETE&&1==h.diffs.length&&h.diffs[0][0]==DIFF_EQUAL&&k.length>2*b?(h.length1+=k.length,e+=k.length,l=!1,h.diffs.push([g,k]),d.diffs.shift()):(k=k.substring(0,b-h.length1-this.Patch_Margin),h.length1+=k.length,e+=k.length,g===DIFF_EQUAL?(h.length2+=k.length,f+=k.length):l=!1,h.diffs.push([g,k]),k==d.diffs[0][1]?d.diffs.shift():d.diffs[0][1]=d.diffs[0][1].substring(k.length))}g=this.diff_text2(h.diffs);g=g.substring(g.length-this.Patch_Margin);k=this.diff_text1(d.diffs).substring(0,\nthis.Patch_Margin);\"\"!==k&&(h.length1+=k.length,h.length2+=k.length,0!==h.diffs.length&&h.diffs[h.diffs.length-1][0]===DIFF_EQUAL?h.diffs[h.diffs.length-1][1]+=k:h.diffs.push([DIFF_EQUAL,k]));l||a.splice(++c,0,h)}}};diff_match_patch.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join(\"\")};\ndiff_match_patch.prototype.patch_fromText=function(a){var b=[];if(!a)return b;a=a.split(\"\\n\");for(var c=0,d=/^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;c<a.length;){var e=a[c].match(d);if(!e)throw Error(\"Invalid patch string: \"+a[c]);var f=new diff_match_patch.patch_obj;b.push(f);f.start1=parseInt(e[1],10);\"\"===e[2]?(f.start1--,f.length1=1):\"0\"==e[2]?f.length1=0:(f.start1--,f.length1=parseInt(e[2],10));f.start2=parseInt(e[3],10);\"\"===e[4]?(f.start2--,f.length2=1):\"0\"==e[4]?f.length2=0:(f.start2--,f.length2=\nparseInt(e[4],10));for(c++;c<a.length;){e=a[c].charAt(0);try{var g=decodeURI(a[c].substring(1))}catch(h){throw Error(\"Illegal escape in patch_fromText: \"+g);}if(\"-\"==e)f.diffs.push([DIFF_DELETE,g]);else if(\"+\"==e)f.diffs.push([DIFF_INSERT,g]);else if(\" \"==e)f.diffs.push([DIFF_EQUAL,g]);else if(\"@\"==e)break;else if(\"\"!==e)throw Error('Invalid patch mode \"'+e+'\" in: '+g);c++}}return b};diff_match_patch.patch_obj=function(){this.diffs=[];this.start2=this.start1=null;this.length2=this.length1=0};\ndiff_match_patch.patch_obj.prototype.toString=function(){for(var a=[\"@@ -\"+(0===this.length1?this.start1+\",0\":1==this.length1?this.start1+1:this.start1+1+\",\"+this.length1)+\" +\"+(0===this.length2?this.start2+\",0\":1==this.length2?this.start2+1:this.start2+1+\",\"+this.length2)+\" @@\\n\"],b,c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case DIFF_INSERT:b=\"+\";break;case DIFF_DELETE:b=\"-\";break;case DIFF_EQUAL:b=\" \"}a[c+1]=b+encodeURI(this.diffs[c][1])+\"\\n\"}return a.join(\"\").replace(/%20/g,\" \")};\nthis.diff_match_patch=diff_match_patch;this.DIFF_DELETE=DIFF_DELETE;this.DIFF_INSERT=DIFF_INSERT;this.DIFF_EQUAL=DIFF_EQUAL;\n}).call(exports);",
            "type": "application/javascript",
            "title": "$:/core/modules/utils/diff-match-patch/diff_match_patch.js",
            "module-type": "library"
        },
        "$:/core/modules/utils/dom/animations/slide.js": {
            "title": "$:/core/modules/utils/dom/animations/slide.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animations/slide.js\ntype: application/javascript\nmodule-type: animation\n\nA simple slide animation that varies the height of the element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction slideOpen(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration();\n\t// Get the current height of the domNode\n\tvar computedStyle = window.getComputedStyle(domNode),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrPaddingBottom = parseInt(computedStyle.paddingBottom,10),\n\t\tcurrPaddingTop = parseInt(computedStyle.paddingTop,10),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Reset the margin once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"none\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t{marginTop: currMarginTop + \"px\"},\n\t\t{paddingBottom: currPaddingBottom + \"px\"},\n\t\t{paddingTop: currPaddingTop + \"px\"},\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n}\n\nfunction slideClosed(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration(),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Clear the properties we've set when the animation is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n}\n\nexports.slide = {\n\topen: slideOpen,\n\tclose: slideClosed\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "animation"
        },
        "$:/core/modules/utils/dom/animator.js": {
            "title": "$:/core/modules/utils/dom/animator.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animator.js\ntype: application/javascript\nmodule-type: utils\n\nOrchestrates animations and transitions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Animator() {\n\t// Get the registered animation modules\n\tthis.animations = {};\n\t$tw.modules.applyMethods(\"animation\",this.animations);\n}\n\nAnimator.prototype.perform = function(type,domNode,options) {\n\toptions = options || {};\n\t// Find an animation that can handle this type\n\tvar chosenAnimation;\n\t$tw.utils.each(this.animations,function(animation,name) {\n\t\tif($tw.utils.hop(animation,type)) {\n\t\t\tchosenAnimation = animation[type];\n\t\t}\n\t});\n\tif(!chosenAnimation) {\n\t\tchosenAnimation = function(domNode,options) {\n\t\t\tif(options.callback) {\n\t\t\t\toptions.callback();\n\t\t\t}\n\t\t};\n\t}\n\t// Call the animation\n\tchosenAnimation(domNode,options);\n};\n\nexports.Animator = Animator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/browser.js": {
            "title": "$:/core/modules/utils/dom/browser.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/browser.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser feature detection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet style properties of an element\n\telement: dom node\n\tstyles: ordered array of {name: value} pairs\n*/\nexports.setStyle = function(element,styles) {\n\tif(element.nodeType === 1) { // Element.ELEMENT_NODE\n\t\tfor(var t=0; t<styles.length; t++) {\n\t\t\tfor(var styleName in styles[t]) {\n\t\t\t\telement.style[$tw.utils.convertStyleNameToPropertyName(styleName)] = styles[t][styleName];\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nConverts a standard CSS property name into the local browser-specific equivalent. For example:\n\t\"background-color\" --> \"backgroundColor\"\n\t\"transition\" --> \"webkitTransition\"\n*/\n\nvar styleNameCache = {}; // We'll cache the style name conversions\n\nexports.convertStyleNameToPropertyName = function(styleName) {\n\t// Return from the cache if we can\n\tif(styleNameCache[styleName]) {\n\t\treturn styleNameCache[styleName];\n\t}\n\t// Convert it by first removing any hyphens\n\tvar propertyName = $tw.utils.unHyphenateCss(styleName);\n\t// Then check if it needs a prefix\n\tif($tw.browser && document.body.style[propertyName] === undefined) {\n\t\tvar prefixes = [\"O\",\"MS\",\"Moz\",\"webkit\"];\n\t\tfor(var t=0; t<prefixes.length; t++) {\n\t\t\tvar prefixedName = prefixes[t] + propertyName.substr(0,1).toUpperCase() + propertyName.substr(1);\n\t\t\tif(document.body.style[prefixedName] !== undefined) {\n\t\t\t\tpropertyName = prefixedName;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\t// Put it in the cache too\n\tstyleNameCache[styleName] = propertyName;\n\treturn propertyName;\n};\n\n/*\nConverts a JS format CSS property name back into the dashed form used in CSS declarations. For example:\n\t\"backgroundColor\" --> \"background-color\"\n\t\"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.convertPropertyNameToStyleName = function(propertyName) {\n\t// Rehyphenate the name\n\tvar styleName = $tw.utils.hyphenateCss(propertyName);\n\t// If there's a webkit prefix, add a dash (other browsers have uppercase prefixes, and so get the dash automatically)\n\tif(styleName.indexOf(\"webkit\") === 0) {\n\t\tstyleName = \"-\" + styleName;\n\t} else if(styleName.indexOf(\"-m-s\") === 0) {\n\t\tstyleName = \"-ms\" + styleName.substr(4);\n\t}\n\treturn styleName;\n};\n\n/*\nRound trip a stylename to a property name and back again. For example:\n\t\"transform\" --> \"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.roundTripPropertyName = function(propertyName) {\n\treturn $tw.utils.convertPropertyNameToStyleName($tw.utils.convertStyleNameToPropertyName(propertyName));\n};\n\n/*\nConverts a standard event name into the local browser specific equivalent. For example:\n\t\"animationEnd\" --> \"webkitAnimationEnd\"\n*/\n\nvar eventNameCache = {}; // We'll cache the conversions\n\nvar eventNameMappings = {\n\t\"transitionEnd\": {\n\t\tcorrespondingCssProperty: \"transition\",\n\t\tmappings: {\n\t\t\ttransition: \"transitionend\",\n\t\t\tOTransition: \"oTransitionEnd\",\n\t\t\tMSTransition: \"msTransitionEnd\",\n\t\t\tMozTransition: \"transitionend\",\n\t\t\twebkitTransition: \"webkitTransitionEnd\"\n\t\t}\n\t},\n\t\"animationEnd\": {\n\t\tcorrespondingCssProperty: \"animation\",\n\t\tmappings: {\n\t\t\tanimation: \"animationend\",\n\t\t\tOAnimation: \"oAnimationEnd\",\n\t\t\tMSAnimation: \"msAnimationEnd\",\n\t\t\tMozAnimation: \"animationend\",\n\t\t\twebkitAnimation: \"webkitAnimationEnd\"\n\t\t}\n\t}\n};\n\nexports.convertEventName = function(eventName) {\n\tif(eventNameCache[eventName]) {\n\t\treturn eventNameCache[eventName];\n\t}\n\tvar newEventName = eventName,\n\t\tmappings = eventNameMappings[eventName];\n\tif(mappings) {\n\t\tvar convertedProperty = $tw.utils.convertStyleNameToPropertyName(mappings.correspondingCssProperty);\n\t\tif(mappings.mappings[convertedProperty]) {\n\t\t\tnewEventName = mappings.mappings[convertedProperty];\n\t\t}\n\t}\n\t// Put it in the cache too\n\teventNameCache[eventName] = newEventName;\n\treturn newEventName;\n};\n\n/*\nReturn the names of the fullscreen APIs\n*/\nexports.getFullScreenApis = function() {\n\tvar d = document,\n\t\tdb = d.body,\n\t\tresult = {\n\t\t\"_requestFullscreen\": db.webkitRequestFullscreen !== undefined ? \"webkitRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.mozRequestFullScreen !== undefined ? \"mozRequestFullScreen\" :\n\t\t\t\t\t\t\tdb.msRequestFullscreen !== undefined ? \"msRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.requestFullscreen !== undefined ? \"requestFullscreen\" : \"\",\n\t\t\"_exitFullscreen\": d.webkitExitFullscreen !== undefined ? \"webkitExitFullscreen\" :\n\t\t\t\t\t\t\td.mozCancelFullScreen !== undefined ? \"mozCancelFullScreen\" :\n\t\t\t\t\t\t\td.msExitFullscreen !== undefined ? \"msExitFullscreen\" :\n\t\t\t\t\t\t\td.exitFullscreen !== undefined ? \"exitFullscreen\" : \"\",\n\t\t\"_fullscreenElement\": d.webkitFullscreenElement !== undefined ? \"webkitFullscreenElement\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozFullScreenElement\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"msFullscreenElement\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenElement\" : \"\",\n\t\t\"_fullscreenChange\": d.webkitFullscreenElement !== undefined ? \"webkitfullscreenchange\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozfullscreenchange\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"MSFullscreenChange\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenchange\" : \"\"\n\t};\n\tif(!result._requestFullscreen || !result._exitFullscreen || !result._fullscreenElement || !result._fullscreenChange) {\n\t\treturn null;\n\t} else {\n\t\treturn result;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/csscolorparser.js": {
            "title": "$:/core/modules/utils/dom/csscolorparser.js",
            "text": "// (c) Dean McNamee <dean@gmail.com>, 2012.\n//\n// https://github.com/deanm/css-color-parser-js\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n// IN THE SOFTWARE.\n\n// http://www.w3.org/TR/css3-color/\nvar kCSSColorTable = {\n  \"transparent\": [0,0,0,0], \"aliceblue\": [240,248,255,1],\n  \"antiquewhite\": [250,235,215,1], \"aqua\": [0,255,255,1],\n  \"aquamarine\": [127,255,212,1], \"azure\": [240,255,255,1],\n  \"beige\": [245,245,220,1], \"bisque\": [255,228,196,1],\n  \"black\": [0,0,0,1], \"blanchedalmond\": [255,235,205,1],\n  \"blue\": [0,0,255,1], \"blueviolet\": [138,43,226,1],\n  \"brown\": [165,42,42,1], \"burlywood\": [222,184,135,1],\n  \"cadetblue\": [95,158,160,1], \"chartreuse\": [127,255,0,1],\n  \"chocolate\": [210,105,30,1], \"coral\": [255,127,80,1],\n  \"cornflowerblue\": [100,149,237,1], \"cornsilk\": [255,248,220,1],\n  \"crimson\": [220,20,60,1], \"cyan\": [0,255,255,1],\n  \"darkblue\": [0,0,139,1], \"darkcyan\": [0,139,139,1],\n  \"darkgoldenrod\": [184,134,11,1], \"darkgray\": [169,169,169,1],\n  \"darkgreen\": [0,100,0,1], \"darkgrey\": [169,169,169,1],\n  \"darkkhaki\": [189,183,107,1], \"darkmagenta\": [139,0,139,1],\n  \"darkolivegreen\": [85,107,47,1], \"darkorange\": [255,140,0,1],\n  \"darkorchid\": [153,50,204,1], \"darkred\": [139,0,0,1],\n  \"darksalmon\": [233,150,122,1], \"darkseagreen\": [143,188,143,1],\n  \"darkslateblue\": [72,61,139,1], \"darkslategray\": [47,79,79,1],\n  \"darkslategrey\": [47,79,79,1], \"darkturquoise\": [0,206,209,1],\n  \"darkviolet\": [148,0,211,1], \"deeppink\": [255,20,147,1],\n  \"deepskyblue\": [0,191,255,1], \"dimgray\": [105,105,105,1],\n  \"dimgrey\": [105,105,105,1], \"dodgerblue\": [30,144,255,1],\n  \"firebrick\": [178,34,34,1], \"floralwhite\": [255,250,240,1],\n  \"forestgreen\": [34,139,34,1], \"fuchsia\": [255,0,255,1],\n  \"gainsboro\": [220,220,220,1], \"ghostwhite\": [248,248,255,1],\n  \"gold\": [255,215,0,1], \"goldenrod\": [218,165,32,1],\n  \"gray\": [128,128,128,1], \"green\": [0,128,0,1],\n  \"greenyellow\": [173,255,47,1], \"grey\": [128,128,128,1],\n  \"honeydew\": [240,255,240,1], \"hotpink\": [255,105,180,1],\n  \"indianred\": [205,92,92,1], \"indigo\": [75,0,130,1],\n  \"ivory\": [255,255,240,1], \"khaki\": [240,230,140,1],\n  \"lavender\": [230,230,250,1], \"lavenderblush\": [255,240,245,1],\n  \"lawngreen\": [124,252,0,1], \"lemonchiffon\": [255,250,205,1],\n  \"lightblue\": [173,216,230,1], \"lightcoral\": [240,128,128,1],\n  \"lightcyan\": [224,255,255,1], \"lightgoldenrodyellow\": [250,250,210,1],\n  \"lightgray\": [211,211,211,1], \"lightgreen\": [144,238,144,1],\n  \"lightgrey\": [211,211,211,1], \"lightpink\": [255,182,193,1],\n  \"lightsalmon\": [255,160,122,1], \"lightseagreen\": [32,178,170,1],\n  \"lightskyblue\": [135,206,250,1], \"lightslategray\": [119,136,153,1],\n  \"lightslategrey\": [119,136,153,1], \"lightsteelblue\": [176,196,222,1],\n  \"lightyellow\": [255,255,224,1], \"lime\": [0,255,0,1],\n  \"limegreen\": [50,205,50,1], \"linen\": [250,240,230,1],\n  \"magenta\": [255,0,255,1], \"maroon\": [128,0,0,1],\n  \"mediumaquamarine\": [102,205,170,1], \"mediumblue\": [0,0,205,1],\n  \"mediumorchid\": [186,85,211,1], \"mediumpurple\": [147,112,219,1],\n  \"mediumseagreen\": [60,179,113,1], \"mediumslateblue\": [123,104,238,1],\n  \"mediumspringgreen\": [0,250,154,1], \"mediumturquoise\": [72,209,204,1],\n  \"mediumvioletred\": [199,21,133,1], \"midnightblue\": [25,25,112,1],\n  \"mintcream\": [245,255,250,1], \"mistyrose\": [255,228,225,1],\n  \"moccasin\": [255,228,181,1], \"navajowhite\": [255,222,173,1],\n  \"navy\": [0,0,128,1], \"oldlace\": [253,245,230,1],\n  \"olive\": [128,128,0,1], \"olivedrab\": [107,142,35,1],\n  \"orange\": [255,165,0,1], \"orangered\": [255,69,0,1],\n  \"orchid\": [218,112,214,1], \"palegoldenrod\": [238,232,170,1],\n  \"palegreen\": [152,251,152,1], \"paleturquoise\": [175,238,238,1],\n  \"palevioletred\": [219,112,147,1], \"papayawhip\": [255,239,213,1],\n  \"peachpuff\": [255,218,185,1], \"peru\": [205,133,63,1],\n  \"pink\": [255,192,203,1], \"plum\": [221,160,221,1],\n  \"powderblue\": [176,224,230,1], \"purple\": [128,0,128,1],\n  \"red\": [255,0,0,1], \"rosybrown\": [188,143,143,1],\n  \"royalblue\": [65,105,225,1], \"saddlebrown\": [139,69,19,1],\n  \"salmon\": [250,128,114,1], \"sandybrown\": [244,164,96,1],\n  \"seagreen\": [46,139,87,1], \"seashell\": [255,245,238,1],\n  \"sienna\": [160,82,45,1], \"silver\": [192,192,192,1],\n  \"skyblue\": [135,206,235,1], \"slateblue\": [106,90,205,1],\n  \"slategray\": [112,128,144,1], \"slategrey\": [112,128,144,1],\n  \"snow\": [255,250,250,1], \"springgreen\": [0,255,127,1],\n  \"steelblue\": [70,130,180,1], \"tan\": [210,180,140,1],\n  \"teal\": [0,128,128,1], \"thistle\": [216,191,216,1],\n  \"tomato\": [255,99,71,1], \"turquoise\": [64,224,208,1],\n  \"violet\": [238,130,238,1], \"wheat\": [245,222,179,1],\n  \"white\": [255,255,255,1], \"whitesmoke\": [245,245,245,1],\n  \"yellow\": [255,255,0,1], \"yellowgreen\": [154,205,50,1]}\n\nfunction clamp_css_byte(i) {  // Clamp to integer 0 .. 255.\n  i = Math.round(i);  // Seems to be what Chrome does (vs truncation).\n  return i < 0 ? 0 : i > 255 ? 255 : i;\n}\n\nfunction clamp_css_float(f) {  // Clamp to float 0.0 .. 1.0.\n  return f < 0 ? 0 : f > 1 ? 1 : f;\n}\n\nfunction parse_css_int(str) {  // int or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_byte(parseFloat(str) / 100 * 255);\n  return clamp_css_byte(parseInt(str));\n}\n\nfunction parse_css_float(str) {  // float or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_float(parseFloat(str) / 100);\n  return clamp_css_float(parseFloat(str));\n}\n\nfunction css_hue_to_rgb(m1, m2, h) {\n  if (h < 0) h += 1;\n  else if (h > 1) h -= 1;\n\n  if (h * 6 < 1) return m1 + (m2 - m1) * h * 6;\n  if (h * 2 < 1) return m2;\n  if (h * 3 < 2) return m1 + (m2 - m1) * (2/3 - h) * 6;\n  return m1;\n}\n\nfunction parseCSSColor(css_str) {\n  // Remove all whitespace, not compliant, but should just be more accepting.\n  var str = css_str.replace(/ /g, '').toLowerCase();\n\n  // Color keywords (and transparent) lookup.\n  if (str in kCSSColorTable) return kCSSColorTable[str].slice();  // dup.\n\n  // #abc and #abc123 syntax.\n  if (str[0] === '#') {\n    if (str.length === 4) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xfff)) return null;  // Covers NaN.\n      return [((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8),\n              (iv & 0xf0) | ((iv & 0xf0) >> 4),\n              (iv & 0xf) | ((iv & 0xf) << 4),\n              1];\n    } else if (str.length === 7) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xffffff)) return null;  // Covers NaN.\n      return [(iv & 0xff0000) >> 16,\n              (iv & 0xff00) >> 8,\n              iv & 0xff,\n              1];\n    }\n\n    return null;\n  }\n\n  var op = str.indexOf('('), ep = str.indexOf(')');\n  if (op !== -1 && ep + 1 === str.length) {\n    var fname = str.substr(0, op);\n    var params = str.substr(op+1, ep-(op+1)).split(',');\n    var alpha = 1;  // To allow case fallthrough.\n    switch (fname) {\n      case 'rgba':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'rgb':\n        if (params.length !== 3) return null;\n        return [parse_css_int(params[0]),\n                parse_css_int(params[1]),\n                parse_css_int(params[2]),\n                alpha];\n      case 'hsla':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'hsl':\n        if (params.length !== 3) return null;\n        var h = (((parseFloat(params[0]) % 360) + 360) % 360) / 360;  // 0 .. 1\n        // NOTE(deanm): According to the CSS spec s/l should only be\n        // percentages, but we don't bother and let float or percentage.\n        var s = parse_css_float(params[1]);\n        var l = parse_css_float(params[2]);\n        var m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n        var m1 = l * 2 - m2;\n        return [clamp_css_byte(css_hue_to_rgb(m1, m2, h+1/3) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h-1/3) * 255),\n                alpha];\n      default:\n        return null;\n    }\n  }\n\n  return null;\n}\n\ntry { exports.parseCSSColor = parseCSSColor } catch(e) { }\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom.js": {
            "title": "$:/core/modules/utils/dom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static DOM-related utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDetermines whether element 'a' contains element 'b'\nCode thanks to John Resig, http://ejohn.org/blog/comparing-document-position/\n*/\nexports.domContains = function(a,b) {\n\treturn a.contains ?\n\t\ta !== b && a.contains(b) :\n\t\t!!(a.compareDocumentPosition(b) & 16);\n};\n\nexports.removeChildren = function(node) {\n\twhile(node.hasChildNodes()) {\n\t\tnode.removeChild(node.firstChild);\n\t}\n};\n\nexports.hasClass = function(el,className) {\n\treturn el && el.className && el.className.toString().split(\" \").indexOf(className) !== -1;\n};\n\nexports.addClass = function(el,className) {\n\tvar c = el.className.split(\" \");\n\tif(c.indexOf(className) === -1) {\n\t\tc.push(className);\n\t}\n\tel.className = c.join(\" \");\n};\n\nexports.removeClass = function(el,className) {\n\tvar c = el.className.split(\" \"),\n\t\tp = c.indexOf(className);\n\tif(p !== -1) {\n\t\tc.splice(p,1);\n\t\tel.className = c.join(\" \");\n\t}\n};\n\nexports.toggleClass = function(el,className,status) {\n\tif(status === undefined) {\n\t\tstatus = !exports.hasClass(el,className);\n\t}\n\tif(status) {\n\t\texports.addClass(el,className);\n\t} else {\n\t\texports.removeClass(el,className);\n\t}\n};\n\n/*\nGet the first parent element that has scrollbars or use the body as fallback.\n*/\nexports.getScrollContainer = function(el) {\n\tvar doc = el.ownerDocument;\n\twhile(el.parentNode) {\t\n\t\tel = el.parentNode;\n\t\tif(el.scrollTop) {\n\t\t\treturn el;\n\t\t}\n\t}\n\treturn doc.body;\n};\n\n/*\nGet the scroll position of the viewport\nReturns:\n\t{\n\t\tx: horizontal scroll position in pixels,\n\t\ty: vertical scroll position in pixels\n\t}\n*/\nexports.getScrollPosition = function() {\n\tif(\"scrollX\" in window) {\n\t\treturn {x: window.scrollX, y: window.scrollY};\n\t} else {\n\t\treturn {x: document.documentElement.scrollLeft, y: document.documentElement.scrollTop};\n\t}\n};\n\n/*\nAdjust the height of a textarea to fit its content, preserving scroll position, and return the height\n*/\nexports.resizeTextAreaToFit = function(domNode,minHeight) {\n\t// Get the scroll container and register the current scroll position\n\tvar container = $tw.utils.getScrollContainer(domNode),\n\t\tscrollTop = container.scrollTop;\n    // Measure the specified minimum height\n\tdomNode.style.height = minHeight;\n\tvar measuredHeight = domNode.offsetHeight || parseInt(minHeight,10);\n\t// Set its height to auto so that it snaps to the correct height\n\tdomNode.style.height = \"auto\";\n\t// Calculate the revised height\n\tvar newHeight = Math.max(domNode.scrollHeight + domNode.offsetHeight - domNode.clientHeight,measuredHeight);\n\t// Only try to change the height if it has changed\n\tif(newHeight !== domNode.offsetHeight) {\n\t\tdomNode.style.height = newHeight + \"px\";\n\t\t// Make sure that the dimensions of the textarea are recalculated\n\t\t$tw.utils.forceLayout(domNode);\n\t\t// Set the container to the position we registered at the beginning\n\t\tcontainer.scrollTop = scrollTop;\n\t}\n\treturn newHeight;\n};\n\n/*\nGets the bounding rectangle of an element in absolute page coordinates\n*/\nexports.getBoundingPageRect = function(element) {\n\tvar scrollPos = $tw.utils.getScrollPosition(),\n\t\tclientRect = element.getBoundingClientRect();\n\treturn {\n\t\tleft: clientRect.left + scrollPos.x,\n\t\twidth: clientRect.width,\n\t\tright: clientRect.right + scrollPos.x,\n\t\ttop: clientRect.top + scrollPos.y,\n\t\theight: clientRect.height,\n\t\tbottom: clientRect.bottom + scrollPos.y\n\t};\n};\n\n/*\nSaves a named password in the browser\n*/\nexports.savePassword = function(name,password) {\n\ttry {\n\t\tif(window.localStorage) {\n\t\t\tlocalStorage.setItem(\"tw5-password-\" + name,password);\n\t\t}\n\t} catch(e) {\n\t}\n};\n\n/*\nRetrieve a named password from the browser\n*/\nexports.getPassword = function(name) {\n\ttry {\n\t\treturn window.localStorage ? localStorage.getItem(\"tw5-password-\" + name) : \"\";\n\t} catch(e) {\n\t\treturn \"\";\n\t}\n};\n\n/*\nForce layout of a dom node and its descendents\n*/\nexports.forceLayout = function(element) {\n\tvar dummy = element.offsetWidth;\n};\n\n/*\nPulse an element for debugging purposes\n*/\nexports.pulseElement = function(element) {\n\t// Event handler to remove the class at the end\n\telement.addEventListener($tw.browser.animationEnd,function handler(event) {\n\t\telement.removeEventListener($tw.browser.animationEnd,handler,false);\n\t\t$tw.utils.removeClass(element,\"pulse\");\n\t},false);\n\t// Apply the pulse class\n\t$tw.utils.removeClass(element,\"pulse\");\n\t$tw.utils.forceLayout(element);\n\t$tw.utils.addClass(element,\"pulse\");\n};\n\n/*\nAttach specified event handlers to a DOM node\ndomNode: where to attach the event handlers\nevents: array of event handlers to be added (see below)\nEach entry in the events array is an object with these properties:\nhandlerFunction: optional event handler function\nhandlerObject: optional event handler object\nhandlerMethod: optionally specifies object handler method name (defaults to `handleEvent`)\n*/\nexports.addEventListeners = function(domNode,events) {\n\t$tw.utils.each(events,function(eventInfo) {\n\t\tvar handler;\n\t\tif(eventInfo.handlerFunction) {\n\t\t\thandler = eventInfo.handlerFunction;\n\t\t} else if(eventInfo.handlerObject) {\n\t\t\tif(eventInfo.handlerMethod) {\n\t\t\t\thandler = function(event) {\n\t\t\t\t\teventInfo.handlerObject[eventInfo.handlerMethod].call(eventInfo.handlerObject,event);\n\t\t\t\t};\t\n\t\t\t} else {\n\t\t\t\thandler = eventInfo.handlerObject;\n\t\t\t}\n\t\t}\n\t\tdomNode.addEventListener(eventInfo.name,handler,false);\n\t});\n};\n\n/*\nGet the computed styles applied to an element as an array of strings of individual CSS properties\n*/\nexports.getComputedStyles = function(domNode) {\n\tvar textAreaStyles = window.getComputedStyle(domNode,null),\n\t\tstyleDefs = [],\n\t\tname;\n\tfor(var t=0; t<textAreaStyles.length; t++) {\n\t\tname = textAreaStyles[t];\n\t\tstyleDefs.push(name + \": \" + textAreaStyles.getPropertyValue(name) + \";\");\n\t}\n\treturn styleDefs;\n};\n\n/*\nApply a set of styles passed as an array of strings of individual CSS properties\n*/\nexports.setStyles = function(domNode,styleDefs) {\n\tdomNode.style.cssText = styleDefs.join(\"\");\n};\n\n/*\nCopy the computed styles from a source element to a destination element\n*/\nexports.copyStyles = function(srcDomNode,dstDomNode) {\n\t$tw.utils.setStyles(dstDomNode,$tw.utils.getComputedStyles(srcDomNode));\n};\n\n/*\nCopy plain text to the clipboard on browsers that support it\n*/\nexports.copyToClipboard = function(text,options) {\n\toptions = options || {};\n\tvar textArea = document.createElement(\"textarea\");\n\ttextArea.style.position = \"fixed\";\n\ttextArea.style.top = 0;\n\ttextArea.style.left = 0;\n\ttextArea.style.fontSize = \"12pt\";\n\ttextArea.style.width = \"2em\";\n\ttextArea.style.height = \"2em\";\n\ttextArea.style.padding = 0;\n\ttextArea.style.border = \"none\";\n\ttextArea.style.outline = \"none\";\n\ttextArea.style.boxShadow = \"none\";\n\ttextArea.style.background = \"transparent\";\n\ttextArea.value = text;\n\tdocument.body.appendChild(textArea);\n\ttextArea.select();\n\ttextArea.setSelectionRange(0,text.length);\n\tvar succeeded = false;\n\ttry {\n\t\tsucceeded = document.execCommand(\"copy\");\n\t} catch (err) {\n\t}\n\tif(!options.doNotNotify) {\n\t\t$tw.notifier.display(succeeded ? \"$:/language/Notifications/CopiedToClipboard/Succeeded\" : \"$:/language/Notifications/CopiedToClipboard/Failed\");\n\t}\n\tdocument.body.removeChild(textArea);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/dragndrop.js": {
            "title": "$:/core/modules/utils/dom/dragndrop.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/dragndrop.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser data transfer utilities, used with the clipboard and drag and drop\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOptions:\n\ndomNode: dom node to make draggable\ndragImageType: \"pill\" or \"dom\"\ndragTiddlerFn: optional function to retrieve the title of tiddler to drag\ndragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag\nwidget: widget to use as the contect for the filter\n*/\nexports.makeDraggable = function(options) {\n\tvar dragImageType = options.dragImageType || \"dom\",\n\t\tdragImage,\n\t\tdomNode = options.domNode;\n\t// Make the dom node draggable (not necessary for anchor tags)\n\tif((domNode.tagName || \"\").toLowerCase() !== \"a\") {\n\t\tdomNode.setAttribute(\"draggable\",\"true\");\t\t\n\t}\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragstart\", handlerFunction: function(event) {\n\t\t\tif(event.dataTransfer === undefined) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// Collect the tiddlers being dragged\n\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \tstartActions = options.startActions;\n\t\t\tif(dragFilter) {\n\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t}\n\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t// Check that we've something to drag\n\t\t\tif(titles.length > 0 && event.target === domNode) {\n\t\t\t\t// Mark the drag in progress\n\t\t\t\t$tw.dragInProgress = domNode;\n\t\t\t\t// Set the dragging class on the element being dragged\n\t\t\t\t$tw.utils.addClass(event.target,\"tc-dragging\");\n\t\t\t\t// Invoke drag-start actions if given\n\t\t\t\tif(startActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(startActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Create the drag image elements\n\t\t\t\tdragImage = options.widget.document.createElement(\"div\");\n\t\t\t\tdragImage.className = \"tc-tiddler-dragger\";\n\t\t\t\tvar inner = options.widget.document.createElement(\"div\");\n\t\t\t\tinner.className = \"tc-tiddler-dragger-inner\";\n\t\t\t\tinner.appendChild(options.widget.document.createTextNode(\n\t\t\t\t\ttitles.length === 1 ? \n\t\t\t\t\t\ttitles[0] :\n\t\t\t\t\t\ttitles.length + \" tiddlers\"\n\t\t\t\t));\n\t\t\t\tdragImage.appendChild(inner);\n\t\t\t\toptions.widget.document.body.appendChild(dragImage);\n\t\t\t\t// Set the data transfer properties\n\t\t\t\tvar dataTransfer = event.dataTransfer;\n\t\t\t\t// Set up the image\n\t\t\t\tdataTransfer.effectAllowed = \"all\";\n\t\t\t\tif(dataTransfer.setDragImage) {\n\t\t\t\t\tif(dragImageType === \"pill\") {\n\t\t\t\t\t\tdataTransfer.setDragImage(dragImage.firstChild,-16,-16);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar r = domNode.getBoundingClientRect();\n\t\t\t\t\t\tdataTransfer.setDragImage(domNode,event.clientX-r.left,event.clientY-r.top);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Set up the data transfer\n\t\t\t\tif(dataTransfer.clearData) {\n\t\t\t\t\tdataTransfer.clearData();\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\tvar jsonData = [];\n\t\t\t\tif(titles.length > 1) {\n\t\t\t\t\ttitles.forEach(function(title) {\n\t\t\t\t\t\tjsonData.push(options.widget.wiki.getTiddlerAsJson(title));\n\t\t\t\t\t});\n\t\t\t\t\tjsonData = \"[\" + jsonData.join(\",\") + \"]\";\n\t\t\t\t} else {\n\t\t\t\t\tjsonData = options.widget.wiki.getTiddlerAsJson(titles[0]);\n\t\t\t\t}\n\t\t\t\t// IE doesn't like these content types\n\t\t\t\tif(!$tw.browser.isIE) {\n\t\t\t\t\tdataTransfer.setData(\"text/vnd.tiddler\",jsonData);\n\t\t\t\t\tdataTransfer.setData(\"text/plain\",titleString);\n\t\t\t\t\tdataTransfer.setData(\"text/x-moz-url\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\t}\n\t\t\t\tdataTransfer.setData(\"URL\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\tdataTransfer.setData(\"Text\",titleString);\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn false;\n\t\t}},\n\t\t{name: \"dragend\", handlerFunction: function(event) {\n\t\t\tif(event.target === domNode) {\n\t\t\t\t// Collect the tiddlers being dragged\n\t\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \t\tendActions = options.endActions;\n\t\t\t\tif(dragFilter) {\n\t\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t\t}\n\t\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t\t$tw.dragInProgress = null;\n\t\t\t\t// Invoke drag-end actions if given\n\t\t\t\tif(endActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(endActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Remove the dragging class on the element being dragged\n\t\t\t\t$tw.utils.removeClass(event.target,\"tc-dragging\");\n\t\t\t\t// Delete the drag image element\n\t\t\t\tif(dragImage) {\n\t\t\t\t\tdragImage.parentNode.removeChild(dragImage);\n\t\t\t\t\tdragImage = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}}\n\t]);\n};\n\nexports.importDataTransfer = function(dataTransfer,fallbackTitle,callback) {\n\t// Try each provided data type in turn\n\tfor(var t=0; t<importDataTypes.length; t++) {\n\t\tif(!$tw.browser.isIE || importDataTypes[t].IECompatible) {\n\t\t\t// Get the data\n\t\t\tvar dataType = importDataTypes[t];\n\t\t\t\tvar data = dataTransfer.getData(dataType.type);\n\t\t\t// Import the tiddlers in the data\n\t\t\tif(data !== \"\" && data !== null) {\n\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\tconsole.log(\"Importing data type '\" + dataType.type + \"', data: '\" + data + \"'\")\n\t\t\t\t}\n\t\t\t\tvar tiddlerFields = dataType.toTiddlerFieldsArray(data,fallbackTitle);\n\t\t\t\tcallback(tiddlerFields);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar importDataTypes = [\n\t{type: \"text/vnd.tiddler\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn parseJSONTiddlers(data,fallbackTitle);\n\t}},\n\t{type: \"URL\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/x-moz-url\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/html\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/plain\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"Text\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/uri-list\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}}\n];\n\nfunction parseJSONTiddlers(json,fallbackTitle) {\n\tvar data = JSON.parse(json);\n\tif(!$tw.utils.isArray(data)) {\n\t\tdata = [data];\n\t}\n\tdata.forEach(function(fields) {\n\t\tfields.title = fields.title || fallbackTitle;\n\t});\n\treturn data;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/http.js": {
            "title": "$:/core/modules/utils/dom/http.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/http.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser HTTP support\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nA quick and dirty HTTP function; to be refactored later. Options are:\n\turl: URL to retrieve\n\ttype: GET, PUT, POST etc\n\tcallback: function invoked with (err,data)\n\treturnProp: string name of the property to return as first argument of callback\n*/\nexports.httpRequest = function(options) {\n\tvar type = options.type || \"GET\",\n\t\theaders = options.headers || {accept: \"application/json\"},\n\t\treturnProp = options.returnProp || \"responseText\",\n\t\trequest = new XMLHttpRequest(),\n\t\tdata = \"\",\n\t\tf,results;\n\t// Massage the data hashmap into a string\n\tif(options.data) {\n\t\tif(typeof options.data === \"string\") { // Already a string\n\t\t\tdata = options.data;\n\t\t} else { // A hashmap of strings\n\t\t\tresults = [];\n\t\t\t$tw.utils.each(options.data,function(dataItem,dataItemTitle) {\n\t\t\t\tresults.push(dataItemTitle + \"=\" + encodeURIComponent(dataItem));\n\t\t\t});\n\t\t\tdata = results.join(\"&\");\n\t\t}\n\t}\n\t// Set up the state change handler\n\trequest.onreadystatechange = function() {\n\t\tif(this.readyState === 4) {\n\t\t\tif(this.status === 200 || this.status === 201 || this.status === 204) {\n\t\t\t\t// Success!\n\t\t\t\toptions.callback(null,this[returnProp],this);\n\t\t\t\treturn;\n\t\t\t}\n\t\t// Something went wrong\n\t\toptions.callback($tw.language.getString(\"Error/XMLHttpRequest\") + \": \" + this.status);\n\t\t}\n\t};\n\t// Make the request\n\trequest.open(type,options.url,true);\n\tif(headers) {\n\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\trequest.setRequestHeader(headerTitle,header);\n\t\t});\n\t}\n\tif(data && !$tw.utils.hop(headers,\"Content-type\")) {\n\t\trequest.setRequestHeader(\"Content-type\",\"application/x-www-form-urlencoded; charset=UTF-8\");\n\t}\n\ttry {\n\t\trequest.send(data);\n\t} catch(e) {\n\t\toptions.callback(e);\n\t}\n\treturn request;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/keyboard.js": {
            "title": "$:/core/modules/utils/dom/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/keyboard.js\ntype: application/javascript\nmodule-type: utils\n\nKeyboard utilities; now deprecated. Instead, use $tw.keyboardManager\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n[\"parseKeyDescriptor\",\"checkKeyDescriptor\"].forEach(function(method) {\n\texports[method] = function() {\n\t\tif($tw.keyboardManager) {\n\t\t\treturn $tw.keyboardManager[method].apply($tw.keyboardManager,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t};\n});\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/modal.js": {
            "title": "$:/core/modules/utils/dom/modal.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/modal.js\ntype: application/javascript\nmodule-type: utils\n\nModal message mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Modal = function(wiki) {\n\tthis.wiki = wiki;\n\tthis.modalCount = 0;\n};\n\n/*\nDisplay a modal dialogue\n\ttitle: Title of tiddler to display\n\toptions: see below\nOptions include:\n\tdownloadLink: Text of a big download link to include\n*/\nModal.prototype.display = function(title,options) {\n\toptions = options || {};\n\tvar self = this,\n\t\trefreshHandler,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\ttiddler = this.wiki.getTiddler(title);\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Create the wrapper divs\n\tvar wrapper = document.createElement(\"div\"),\n\t\tmodalBackdrop = document.createElement(\"div\"),\n\t\tmodalWrapper = document.createElement(\"div\"),\n\t\tmodalHeader = document.createElement(\"div\"),\n\t\theaderTitle = document.createElement(\"h3\"),\n\t\tmodalBody = document.createElement(\"div\"),\n\t\tmodalLink = document.createElement(\"a\"),\n\t\tmodalFooter = document.createElement(\"div\"),\n\t\tmodalFooterHelp = document.createElement(\"span\"),\n\t\tmodalFooterButtons = document.createElement(\"span\");\n\t// Up the modal count and adjust the body class\n\tthis.modalCount++;\n\tthis.adjustPageClass();\n\t// Add classes\n\t$tw.utils.addClass(wrapper,\"tc-modal-wrapper\");\n\t$tw.utils.addClass(modalBackdrop,\"tc-modal-backdrop\");\n\t$tw.utils.addClass(modalWrapper,\"tc-modal\");\n\t$tw.utils.addClass(modalHeader,\"tc-modal-header\");\n\t$tw.utils.addClass(modalBody,\"tc-modal-body\");\n\t$tw.utils.addClass(modalFooter,\"tc-modal-footer\");\n\t// Join them together\n\twrapper.appendChild(modalBackdrop);\n\twrapper.appendChild(modalWrapper);\n\tmodalHeader.appendChild(headerTitle);\n\tmodalWrapper.appendChild(modalHeader);\n\tmodalWrapper.appendChild(modalBody);\n\tmodalFooter.appendChild(modalFooterHelp);\n\tmodalFooter.appendChild(modalFooterButtons);\n\tmodalWrapper.appendChild(modalFooter);\n\t// Render the title of the message\n\tvar headerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"subtitle\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\tattributes: {\n\t\t\t\ttext: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t}}}],\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\theaderWidgetNode.render(headerTitle,null);\n\t// Render the body of the message\n\tvar bodyWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tbodyWidgetNode.render(modalBody,null);\n\t// Setup the link if present\n\tif(options.downloadLink) {\n\t\tmodalLink.href = options.downloadLink;\n\t\tmodalLink.appendChild(document.createTextNode(\"Right-click to save changes\"));\n\t\tmodalBody.appendChild(modalLink);\n\t}\n\t// Render the footer of the message\n\tif(tiddler && tiddler.fields && tiddler.fields.help) {\n\t\tvar link = document.createElement(\"a\");\n\t\tlink.setAttribute(\"href\",tiddler.fields.help);\n\t\tlink.setAttribute(\"target\",\"_blank\");\n\t\tlink.setAttribute(\"rel\",\"noopener noreferrer\");\n\t\tlink.appendChild(document.createTextNode(\"Help\"));\n\t\tmodalFooterHelp.appendChild(link);\n\t\tmodalFooterHelp.style.float = \"left\";\n\t}\n\tvar footerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"footer\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"button\",\n\t\t\tattributes: {\n\t\t\t\tmessage: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tm-close-tiddler\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\tattributes: {\n\t\t\t\t\ttext: {\n\t\t\t\t\t\ttype: \"string\",\n\t\t\t\t\t\tvalue: $tw.language.getString(\"Buttons/Close/Caption\")\n\t\t\t}}}\n\t\t]}],\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tfooterWidgetNode.render(modalFooterButtons,null);\n\t// Set up the refresh handler\n\trefreshHandler = function(changes) {\n\t\theaderWidgetNode.refresh(changes,modalHeader,null);\n\t\tbodyWidgetNode.refresh(changes,modalBody,null);\n\t\tfooterWidgetNode.refresh(changes,modalFooterButtons,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Add the close event handler\n\tvar closeHandler = function(event) {\n\t\t// Remove our refresh handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Decrease the modal count and adjust the body class\n\t\tself.modalCount--;\n\t\tself.adjustPageClass();\n\t\t// Force layout and animate the modal message away\n\t\t$tw.utils.forceLayout(modalBackdrop);\n\t\t$tw.utils.forceLayout(modalWrapper);\n\t\t$tw.utils.setStyle(modalBackdrop,[\n\t\t\t{opacity: \"0\"}\n\t\t]);\n\t\t$tw.utils.setStyle(modalWrapper,[\n\t\t\t{transform: \"translateY(\" + window.innerHeight + \"px)\"}\n\t\t]);\n\t\t// Set up an event for the transition end\n\t\twindow.setTimeout(function() {\n\t\t\tif(wrapper.parentNode) {\n\t\t\t\t// Remove the modal message from the DOM\n\t\t\t\tdocument.body.removeChild(wrapper);\n\t\t\t}\n\t\t},duration);\n\t\t// Don't let anyone else handle the tm-close-tiddler message\n\t\treturn false;\n\t};\n\theaderWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tbodyWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tfooterWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\t// Set the initial styles for the message\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-window.innerHeight) + \"px)\"}\n\t]);\n\t// Put the message into the document\n\tdocument.body.appendChild(wrapper);\n\t// Set up animation for the styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{transition: \"opacity \" + duration + \"ms ease-out\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(modalBackdrop);\n\t$tw.utils.forceLayout(modalWrapper);\n\t// Set final animated styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0.7\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n};\n\nModal.prototype.adjustPageClass = function() {\n\tif($tw.pageContainer) {\n\t\t$tw.utils.toggleClass($tw.pageContainer,\"tc-modal-displayed\",this.modalCount > 0);\n\t}\n};\n\nexports.Modal = Modal;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/notifier.js": {
            "title": "$:/core/modules/utils/dom/notifier.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/notifier.js\ntype: application/javascript\nmodule-type: utils\n\nNotifier mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Notifier = function(wiki) {\n\tthis.wiki = wiki;\n};\n\n/*\nDisplay a notification\n\ttitle: Title of tiddler containing the notification text\n\toptions: see below\nOptions include:\n*/\nNotifier.prototype.display = function(title,options) {\n\toptions = options || {};\n\t// Create the wrapper divs\n\tvar self = this,\n\t\tnotification = document.createElement(\"div\"),\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\trefreshHandler;\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Add classes\n\t$tw.utils.addClass(notification,\"tc-notification\");\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Render the body of the notification\n\tvar widgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true});\n\twidgetNode.render(notification,null);\n\trefreshHandler = function(changes) {\n\t\twidgetNode.refresh(changes,notification,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Set the initial styles for the notification\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"0\"},\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-window.innerHeight) + \"px)\"},\n\t\t{transition: \"opacity \" + duration + \"ms ease-out, \" + $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Add the notification to the DOM\n\tdocument.body.appendChild(notification);\n\t// Force layout\n\t$tw.utils.forceLayout(notification);\n\t// Set final animated styles\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n\t// Set a timer to remove the notification\n\twindow.setTimeout(function() {\n\t\t// Remove our change event handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Force layout and animate the notification away\n\t\t$tw.utils.forceLayout(notification);\n\t\t$tw.utils.setStyle(notification,[\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transform: \"translateX(\" + (notification.offsetWidth) + \"px)\"}\n\t\t]);\n\t\t// Remove the modal message from the DOM once the transition ends\n\t\tsetTimeout(function() {\n\t\t\tif(notification.parentNode) {\n\t\t\t\tdocument.body.removeChild(notification);\n\t\t\t}\n\t\t},duration);\n\t},$tw.config.preferences.notificationDuration);\n};\n\nexports.Notifier = Notifier;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/popup.js": {
            "title": "$:/core/modules/utils/dom/popup.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/popup.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Popup object prototype that manages popups in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreates a Popup object with these options:\n\trootElement: the DOM element to which the popup zapper should be attached\n*/\nvar Popup = function(options) {\n\toptions = options || {};\n\tthis.rootElement = options.rootElement || document.documentElement;\n\tthis.popups = []; // Array of {title:,wiki:,domNode:} objects\n};\n\n/*\nTrigger a popup open or closed. Parameters are in a hashmap:\n\ttitle: title of the tiddler where the popup details are stored\n\tdomNode: dom node to which the popup will be positioned\n\twiki: wiki\n\tforce: if specified, forces the popup state to true or false (instead of toggling it)\n*/\nPopup.prototype.triggerPopup = function(options) {\n\t// Check if this popup is already active\n\tvar index = this.findPopup(options.title);\n\t// Compute the new state\n\tvar state = index === -1;\n\tif(options.force !== undefined) {\n\t\tstate = options.force;\n\t}\n\t// Show or cancel the popup according to the new state\n\tif(state) {\n\t\tthis.show(options);\n\t} else {\n\t\tthis.cancel(index);\n\t}\n};\n\nPopup.prototype.findPopup = function(title) {\n\tvar index = -1;\n\tfor(var t=0; t<this.popups.length; t++) {\n\t\tif(this.popups[t].title === title) {\n\t\t\tindex = t;\n\t\t}\n\t}\n\treturn index;\n};\n\nPopup.prototype.handleEvent = function(event) {\n\tif(event.type === \"click\") {\n\t\t// Find out what was clicked on\n\t\tvar info = this.popupInfo(event.target),\n\t\t\tcancelLevel = info.popupLevel - 1;\n\t\t// Don't remove the level that was clicked on if we clicked on a handle\n\t\tif(info.isHandle) {\n\t\t\tcancelLevel++;\n\t\t}\n\t\t// Cancel\n\t\tthis.cancel(cancelLevel);\n\t}\n};\n\n/*\nFind the popup level containing a DOM node. Returns:\npopupLevel: count of the number of nested popups containing the specified element\nisHandle: true if the specified element is within a popup handle\n*/\nPopup.prototype.popupInfo = function(domNode) {\n\tvar isHandle = false,\n\t\tpopupCount = 0,\n\t\tnode = domNode;\n\t// First check ancestors to see if we're within a popup handle\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup-handle\")) {\n\t\t\tisHandle = true;\n\t\t\tpopupCount++;\n\t\t}\n\t\tif($tw.utils.hasClass(node,\"tc-popup-keep\")) {\n\t\t\tisHandle = true;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\t// Then count the number of ancestor popups\n\tnode = domNode;\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup\")) {\n\t\t\tpopupCount++;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\tvar info = {\n\t\tpopupLevel: popupCount,\n\t\tisHandle: isHandle\n\t};\n\treturn info;\n};\n\n/*\nDisplay a popup by adding it to the stack\n*/\nPopup.prototype.show = function(options) {\n\t// Find out what was clicked on\n\tvar info = this.popupInfo(options.domNode);\n\t// Cancel any higher level popups\n\tthis.cancel(info.popupLevel);\n\t// Store the popup details if not already there\n\tif(this.findPopup(options.title) === -1) {\n\t\tthis.popups.push({\n\t\t\ttitle: options.title,\n\t\t\twiki: options.wiki,\n\t\t\tdomNode: options.domNode\n\t\t});\n\t}\n\t// Set the state tiddler\n\toptions.wiki.setTextReference(options.title,\n\t\t\t\"(\" + options.domNode.offsetLeft + \",\" + options.domNode.offsetTop + \",\" + \n\t\t\t\toptions.domNode.offsetWidth + \",\" + options.domNode.offsetHeight + \")\");\n\t// Add the click handler if we have any popups\n\tif(this.popups.length > 0) {\n\t\tthis.rootElement.addEventListener(\"click\",this,true);\t\t\n\t}\n};\n\n/*\nCancel all popups at or above a specified level or DOM node\nlevel: popup level to cancel (0 cancels all popups)\n*/\nPopup.prototype.cancel = function(level) {\n\tvar numPopups = this.popups.length;\n\tlevel = Math.max(0,Math.min(level,numPopups));\n\tfor(var t=level; t<numPopups; t++) {\n\t\tvar popup = this.popups.pop();\n\t\tif(popup.title) {\n\t\t\tpopup.wiki.deleteTiddler(popup.title);\n\t\t}\n\t}\n\tif(this.popups.length === 0) {\n\t\tthis.rootElement.removeEventListener(\"click\",this,false);\n\t}\n};\n\n/*\nReturns true if the specified title and text identifies an active popup\n*/\nPopup.prototype.readPopupState = function(text) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/;\n\treturn popupLocationRegExp.test(text);\n};\n\nexports.Popup = Popup;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/scroller.js": {
            "title": "$:/core/modules/utils/dom/scroller.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/scroller.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Scroller object prototype that manages scrolling in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nEvent handler for when the `tm-scroll` event hits the document body\n*/\nvar PageScroller = function() {\n\tthis.idRequestFrame = null;\n\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\twindow.webkitRequestAnimationFrame ||\n\t\twindow.mozRequestAnimationFrame ||\n\t\tfunction(callback) {\n\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t};\n\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\twindow.webkitCancelAnimationFrame ||\n\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\twindow.mozCancelAnimationFrame ||\n\t\twindow.mozCancelRequestAnimationFrame ||\n\t\tfunction(id) {\n\t\t\twindow.clearTimeout(id);\n\t\t};\n};\n\nPageScroller.prototype.cancelScroll = function() {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(window,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle an event\n*/\nPageScroller.prototype.handleEvent = function(event) {\n\tif(event.type === \"tm-scroll\") {\n\t\treturn this.scrollIntoView(event.target);\n\t}\n\treturn true;\n};\n\n/*\nHandle a scroll event hitting the page document\n*/\nPageScroller.prototype.scrollIntoView = function(element) {\n\tvar self = this,\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Now get ready to scroll the body\n\tthis.cancelScroll();\n\tthis.startTime = Date.now();\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar getBounds = function() {\n\t\t\tvar clientBounds = element.getBoundingClientRect(),\n\t\t\t\tscrollPosition = $tw.utils.getScrollPosition();\n\t\t\treturn {\n\t\t\t\tleft: clientBounds.left + scrollPosition.x,\n\t\t\t\ttop: clientBounds.top + scrollPosition.y,\n\t\t\t\twidth: clientBounds.width,\n\t\t\t\theight: clientBounds.height\n\t\t\t};\n\t\t},\n\t\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\t\t// targetPos/targetSize - position and size of the target element\n\t\t// currentPos/currentSize - position and size of the current scroll viewport\n\t\t// returns: new position of the scroll viewport\n\t\tgetEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\tvar newPos = targetPos;\n\t\t\t// If we are scrolling within 50 pixels of the top/left then snap to zero\n\t\t\tif(newPos < 50) {\n\t\t\t\tnewPos = 0;\n\t\t\t}\n\t\t\treturn newPos;\n\t\t},\n\t\tdrawFrame = function drawFrame() {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll();\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tvar scrollPosition = $tw.utils.getScrollPosition(),\n\t\t\t\tbounds = getBounds(),\n\t\t\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,window.innerWidth),\n\t\t\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,window.innerHeight);\n\t\t\twindow.scrollTo(scrollPosition.x + (endX - scrollPosition.x) * t,scrollPosition.y + (endY - scrollPosition.y) * t);\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(window,drawFrame);\n\t\t\t}\n\t\t};\n\tdrawFrame();\n};\n\nexports.PageScroller = PageScroller;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/edition-info.js": {
            "title": "$:/core/modules/utils/edition-info.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/edition-info.js\ntype: application/javascript\nmodule-type: utils-node\n\nInformation about the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\nvar editionInfo;\n\nexports.getEditionInfo = function() {\n\tif(!editionInfo) {\n\t\t// Enumerate the edition paths\n\t\tvar editionPaths = $tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar);\n\t\teditionInfo = {};\n\t\tfor(var editionIndex=0; editionIndex<editionPaths.length; editionIndex++) {\n\t\t\tvar editionPath = editionPaths[editionIndex];\n\t\t\t// Enumerate the folders\n\t\t\tvar entries = fs.readdirSync(editionPath);\n\t\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\t\tvar entry = entries[entryIndex];\n\t\t\t\t// Check if directories have a valid tiddlywiki.info\n\t\t\t\tif(!editionInfo[entry] && $tw.utils.isDirectory(path.resolve(editionPath,entry))) {\n\t\t\t\t\tvar info;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tinfo = JSON.parse(fs.readFileSync(path.resolve(editionPath,entry,\"tiddlywiki.info\"),\"utf8\"));\n\t\t\t\t\t} catch(ex) {\n\t\t\t\t\t}\n\t\t\t\t\tif(info) {\n\t\t\t\t\t\teditionInfo[entry] = info;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn editionInfo;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/fakedom.js": {
            "title": "$:/core/modules/utils/fakedom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/fakedom.js\ntype: application/javascript\nmodule-type: global\n\nA barebones implementation of DOM interfaces needed by the rendering mechanism.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Sequence number used to enable us to track objects for testing\nvar sequenceNumber = null;\n\nvar bumpSequenceNumber = function(object) {\n\tif(sequenceNumber !== null) {\n\t\tobject.sequenceNumber = sequenceNumber++;\n\t}\n};\n\nvar TW_TextNode = function(text) {\n\tbumpSequenceNumber(this);\n\tthis.textContent = text + \"\";\n};\n\nObject.defineProperty(TW_TextNode.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn 3;\n\t}\n});\n\nObject.defineProperty(TW_TextNode.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\treturn this.textContent.replace(/(\\r?\\n)/g,\"\");\n\t}\n});\n\nvar TW_Element = function(tag,namespace) {\n\tbumpSequenceNumber(this);\n\tthis.isTiddlyWikiFakeDom = true;\n\tthis.tag = tag;\n\tthis.attributes = {};\n\tthis.isRaw = false;\n\tthis.children = [];\n\tthis.style = {};\n\tthis.namespaceURI = namespace || \"http://www.w3.org/1999/xhtml\";\n};\n\nObject.defineProperty(TW_Element.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn 1;\n\t}\n});\n\nTW_Element.prototype.getAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot getAttribute on a raw TW_Element\";\n\t}\n\treturn this.attributes[name];\n};\n\nTW_Element.prototype.setAttribute = function(name,value) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot setAttribute on a raw TW_Element\";\n\t}\n\tthis.attributes[name] = value + \"\";\n};\n\nTW_Element.prototype.setAttributeNS = function(namespace,name,value) {\n\tthis.setAttribute(name,value);\n};\n\nTW_Element.prototype.removeAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot removeAttribute on a raw TW_Element\";\n\t}\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\tdelete this.attributes[name];\n\t}\n};\n\nTW_Element.prototype.appendChild = function(node) {\n\tthis.children.push(node);\n\tnode.parentNode = this;\n};\n\nTW_Element.prototype.insertBefore = function(node,nextSibling) {\n\tif(nextSibling) {\n\t\tvar p = this.children.indexOf(nextSibling);\n\t\tif(p !== -1) {\n\t\t\tthis.children.splice(p,0,node);\n\t\t\tnode.parentNode = this;\n\t\t} else {\n\t\t\tthis.appendChild(node);\n\t\t}\n\t} else {\n\t\tthis.appendChild(node);\n\t}\n};\n\nTW_Element.prototype.removeChild = function(node) {\n\tvar p = this.children.indexOf(node);\n\tif(p !== -1) {\n\t\tthis.children.splice(p,1);\n\t}\n};\n\nTW_Element.prototype.hasChildNodes = function() {\n\treturn !!this.children.length;\n};\n\nObject.defineProperty(TW_Element.prototype, \"childNodes\", {\n\tget: function() {\n\t\treturn this.children;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"firstChild\", {\n\tget: function() {\n\t\treturn this.children[0];\n\t}\n});\n\nTW_Element.prototype.addEventListener = function(type,listener,useCapture) {\n\t// Do nothing\n};\n\nObject.defineProperty(TW_Element.prototype, \"tagName\", {\n\tget: function() {\n\t\treturn this.tag || \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"className\", {\n\tget: function() {\n\t\treturn this.attributes[\"class\"] || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes[\"class\"] = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"value\", {\n\tget: function() {\n\t\treturn this.attributes.value || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes.value = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"outerHTML\", {\n\tget: function() {\n\t\tvar output = [],attr,a,v;\n\t\toutput.push(\"<\",this.tag);\n\t\tif(this.attributes) {\n\t\t\tattr = [];\n\t\t\tfor(a in this.attributes) {\n\t\t\t\tattr.push(a);\n\t\t\t}\n\t\t\tattr.sort();\n\t\t\tfor(a=0; a<attr.length; a++) {\n\t\t\t\tv = this.attributes[attr[a]];\n\t\t\t\tif(v !== undefined) {\n\t\t\t\t\toutput.push(\" \",attr[a],\"=\\\"\",$tw.utils.htmlEncode(v),\"\\\"\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(this.style) {\n\t\t\tvar style = [];\n\t\t\tfor(var s in this.style) {\n\t\t\t\tstyle.push(s + \":\" + this.style[s] + \";\");\n\t\t\t}\n\t\t\tif(style.length > 0) {\n\t\t\t\toutput.push(\" style=\\\"\",style.join(\"\"),\"\\\"\")\n\t\t\t}\n\t\t}\n\t\toutput.push(\">\");\n\t\tif($tw.config.htmlVoidElements.indexOf(this.tag) === -1) {\n\t\t\toutput.push(this.innerHTML);\n\t\t\toutput.push(\"</\",this.tag,\">\");\n\t\t}\n\t\treturn output.join(\"\");\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"innerHTML\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn this.rawHTML;\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tif(node instanceof TW_Element) {\n\t\t\t\t\tb.push(node.outerHTML);\n\t\t\t\t} else if(node instanceof TW_TextNode) {\n\t\t\t\t\tb.push($tw.utils.htmlEncode(node.textContent));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.isRaw = true;\n\t\tthis.rawHTML = value;\n\t\tthis.rawTextContent = null;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textInnerHTML\", {\n\tset: function(value) {\n\t\tif(this.isRaw) {\n\t\t\tthis.rawTextContent = value;\n\t\t} else {\n\t\t\tthrow \"Cannot set textInnerHTML of a non-raw TW_Element\";\n\t\t}\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\tif(this.rawTextContent === null) {\n\t\t\t\treturn \"\";\n\t\t\t} else {\n\t\t\t\treturn this.rawTextContent;\n\t\t\t}\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.textContent);\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.children = [new TW_TextNode(value)];\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn \"\";\n\t\t} else {\n\t\t\tvar b = [],\n\t\t\t\tisBlock = $tw.config.htmlBlockElements.indexOf(this.tag) !== -1;\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\tif(this.tag === \"li\") {\n\t\t\t\tb.push(\"* \");\n\t\t\t}\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.formattedTextContent);\n\t\t\t});\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\treturn b.join(\"\");\n\t\t}\n\t}\n});\n\nvar document = {\n\tsetSequenceNumber: function(value) {\n\t\tsequenceNumber = value;\n\t},\n\tcreateElementNS: function(namespace,tag) {\n\t\treturn new TW_Element(tag,namespace);\n\t},\n\tcreateElement: function(tag) {\n\t\treturn new TW_Element(tag);\n\t},\n\tcreateTextNode: function(text) {\n\t\treturn new TW_TextNode(text);\n\t},\n\tcompatMode: \"CSS1Compat\", // For KaTeX to know that we're not a browser in quirks mode\n\tisTiddlyWikiFakeDom: true\n};\n\nexports.fakeDocument = document;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/filesystem.js": {
            "title": "$:/core/modules/utils/filesystem.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/filesystem.js\ntype: application/javascript\nmodule-type: utils-node\n\nFile system utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\n/*\nRecursively (and synchronously) copy a directory and all its content\n*/\nexports.copyDirectory = function(srcPath,dstPath) {\n\t// Remove any trailing path separators\n\tsrcPath = $tw.utils.removeTrailingSeparator(srcPath);\n\tdstPath = $tw.utils.removeTrailingSeparator(dstPath);\n\t// Create the destination directory\n\tvar err = $tw.utils.createDirectory(dstPath);\n\tif(err) {\n\t\treturn err;\n\t}\n\t// Function to copy a folder full of files\n\tvar copy = function(srcPath,dstPath) {\n\t\tvar srcStats = fs.lstatSync(srcPath),\n\t\t\tdstExists = fs.existsSync(dstPath);\n\t\tif(srcStats.isFile()) {\n\t\t\t$tw.utils.copyFile(srcPath,dstPath);\n\t\t} else if(srcStats.isDirectory()) {\n\t\t\tvar items = fs.readdirSync(srcPath);\n\t\t\tfor(var t=0; t<items.length; t++) {\n\t\t\t\tvar item = items[t],\n\t\t\t\t\terr = copy(srcPath + path.sep + item,dstPath + path.sep + item);\n\t\t\t\tif(err) {\n\t\t\t\t\treturn err;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tcopy(srcPath,dstPath);\n\treturn null;\n};\n\n/*\nCopy a file\n*/\nvar FILE_BUFFER_LENGTH = 64 * 1024,\n\tfileBuffer;\n\nexports.copyFile = function(srcPath,dstPath) {\n\t// Create buffer if required\n\tif(!fileBuffer) {\n\t\tfileBuffer = new Buffer(FILE_BUFFER_LENGTH);\n\t}\n\t// Create any directories in the destination\n\t$tw.utils.createDirectory(path.dirname(dstPath));\n\t// Copy the file\n\tvar srcFile = fs.openSync(srcPath,\"r\"),\n\t\tdstFile = fs.openSync(dstPath,\"w\"),\n\t\tbytesRead = 1,\n\t\tpos = 0;\n\twhile (bytesRead > 0) {\n\t\tbytesRead = fs.readSync(srcFile,fileBuffer,0,FILE_BUFFER_LENGTH,pos);\n\t\tfs.writeSync(dstFile,fileBuffer,0,bytesRead);\n\t\tpos += bytesRead;\n\t}\n\tfs.closeSync(srcFile);\n\tfs.closeSync(dstFile);\n\treturn null;\n};\n\n/*\nRemove trailing path separator\n*/\nexports.removeTrailingSeparator = function(dirPath) {\n\tvar len = dirPath.length;\n\tif(dirPath.charAt(len-1) === path.sep) {\n\t\tdirPath = dirPath.substr(0,len-1);\n\t}\n\treturn dirPath;\n};\n\n/*\nRecursively create a directory\n*/\nexports.createDirectory = function(dirPath) {\n\tif(dirPath.substr(dirPath.length-1,1) !== path.sep) {\n\t\tdirPath = dirPath + path.sep;\n\t}\n\tvar pos = 1;\n\tpos = dirPath.indexOf(path.sep,pos);\n\twhile(pos !== -1) {\n\t\tvar subDirPath = dirPath.substr(0,pos);\n\t\tif(!$tw.utils.isDirectory(subDirPath)) {\n\t\t\ttry {\n\t\t\t\tfs.mkdirSync(subDirPath);\n\t\t\t} catch(e) {\n\t\t\t\treturn \"Error creating directory '\" + subDirPath + \"'\";\n\t\t\t}\n\t\t}\n\t\tpos = dirPath.indexOf(path.sep,pos + 1);\n\t}\n\treturn null;\n};\n\n/*\nRecursively create directories needed to contain a specified file\n*/\nexports.createFileDirectories = function(filePath) {\n\treturn $tw.utils.createDirectory(path.dirname(filePath));\n};\n\n/*\nRecursively delete a directory\n*/\nexports.deleteDirectory = function(dirPath) {\n\tif(fs.existsSync(dirPath)) {\n\t\tvar entries = fs.readdirSync(dirPath);\n\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\tvar currPath = dirPath + path.sep + entries[entryIndex];\n\t\t\tif(fs.lstatSync(currPath).isDirectory()) {\n\t\t\t\t$tw.utils.deleteDirectory(currPath);\n\t\t\t} else {\n\t\t\t\tfs.unlinkSync(currPath);\n\t\t\t}\n\t\t}\n\tfs.rmdirSync(dirPath);\n\t}\n\treturn null;\n};\n\n/*\nCheck if a path identifies a directory\n*/\nexports.isDirectory = function(dirPath) {\n\treturn fs.existsSync(dirPath) && fs.statSync(dirPath).isDirectory();\n};\n\n/*\nCheck if a path identifies a directory that is empty\n*/\nexports.isDirectoryEmpty = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn false;\n\t}\n\tvar files = fs.readdirSync(dirPath),\n\t\tempty = true;\n\t$tw.utils.each(files,function(file,index) {\n\t\tif(file.charAt(0) !== \".\") {\n\t\t\tempty = false;\n\t\t}\n\t});\n\treturn empty;\n};\n\n/*\nRecursively delete a tree of empty directories\n*/\nexports.deleteEmptyDirs = function(dirpath,callback) {\n\tvar self = this;\n\tfs.readdir(dirpath,function(err,files) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\tif(files.length > 0) {\n\t\t\treturn callback(null);\n\t\t}\n\t\tfs.rmdir(dirpath,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.deleteEmptyDirs(path.dirname(dirpath),callback);\n\t\t});\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/logger.js": {
            "title": "$:/core/modules/utils/logger.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/logger.js\ntype: application/javascript\nmodule-type: utils\n\nA basic logging implementation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ALERT_TAG = \"$:/tags/Alert\";\n\n/*\nMake a new logger\n*/\nfunction Logger(componentName,options) {\n\toptions = options || {};\n\tthis.componentName = componentName || \"\";\n\tthis.colour = options.colour || \"white\";\n\tthis.enable = \"enable\" in options ? options.enable : true;\n}\n\n/*\nLog a message\n*/\nLogger.prototype.log = function(/* args */) {\n\tif(this.enable && console !== undefined && console.log !== undefined) {\n\t\treturn Function.apply.call(console.log, console, [$tw.utils.terminalColour(this.colour),this.componentName + \":\"].concat(Array.prototype.slice.call(arguments,0)).concat($tw.utils.terminalColour()));\n\t}\n};\n\n/*\nAlert a message\n*/\nLogger.prototype.alert = function(/* args */) {\n\tif(this.enable) {\n\t\t// Prepare the text of the alert\n\t\tvar text = Array.prototype.join.call(arguments,\" \");\n\t\t// Create alert tiddlers in the browser\n\t\tif($tw.browser) {\n\t\t\t// Check if there is an existing alert with the same text and the same component\n\t\t\tvar existingAlerts = $tw.wiki.getTiddlersWithTag(ALERT_TAG),\n\t\t\t\talertFields,\n\t\t\t\texistingCount,\n\t\t\t\tself = this;\n\t\t\t$tw.utils.each(existingAlerts,function(title) {\n\t\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\t\tif(tiddler.fields.text === text && tiddler.fields.component === self.componentName && tiddler.fields.modified && (!alertFields || tiddler.fields.modified < alertFields.modified)) {\n\t\t\t\t\t\talertFields = $tw.utils.extend({},tiddler.fields);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(alertFields) {\n\t\t\t\texistingCount = alertFields.count || 1;\n\t\t\t} else {\n\t\t\t\talertFields = {\n\t\t\t\t\ttitle: $tw.wiki.generateNewTitle(\"$:/temp/alerts/alert\",{prefix: \"\"}),\n\t\t\t\t\ttext: text,\n\t\t\t\t\ttags: [ALERT_TAG],\n\t\t\t\t\tcomponent: this.componentName\n\t\t\t\t};\n\t\t\t\texistingCount = 0;\n\t\t\t}\n\t\t\talertFields.modified = new Date();\n\t\t\tif(++existingCount > 1) {\n\t\t\t\talertFields.count = existingCount;\n\t\t\t} else {\n\t\t\t\talertFields.count = undefined;\n\t\t\t}\n\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(alertFields));\n\t\t\t// Log the alert as well\n\t\t\tthis.log.apply(this,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\t// Print an orange message to the console if not in the browser\n\t\t\tconsole.error(\"\\x1b[1;33m\" + text + \"\\x1b[0m\");\n\t\t}\t\t\n\t}\n};\n\nexports.Logger = Logger;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/parsetree.js": {
            "title": "$:/core/modules/utils/parsetree.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parsetree.js\ntype: application/javascript\nmodule-type: utils\n\nParse tree utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.addAttributeToParseTreeNode = function(node,name,value) {\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[name] = {type: \"string\", value: value};\n};\n\nexports.getAttributeValueFromParseTreeNode = function(node,name,defaultValue) {\n\tif(node.attributes && node.attributes[name] && node.attributes[name].value !== undefined) {\n\t\treturn node.attributes[name].value;\n\t}\n\treturn defaultValue;\n};\n\nexports.addClassToParseTreeNode = function(node,classString) {\n\tvar classes = [];\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[\"class\"] = node.attributes[\"class\"] || {type: \"string\", value: \"\"};\n\tif(node.attributes[\"class\"].type === \"string\") {\n\t\tif(node.attributes[\"class\"].value !== \"\") {\n\t\t\tclasses = node.attributes[\"class\"].value.split(\" \");\n\t\t}\n\t\tif(classString !== \"\") {\n\t\t\t$tw.utils.pushTop(classes,classString.split(\" \"));\n\t\t}\n\t\tnode.attributes[\"class\"].value = classes.join(\" \");\n\t}\n};\n\nexports.addStyleToParseTreeNode = function(node,name,value) {\n\t\tnode.attributes = node.attributes || {};\n\t\tnode.attributes.style = node.attributes.style || {type: \"string\", value: \"\"};\n\t\tif(node.attributes.style.type === \"string\") {\n\t\t\tnode.attributes.style.value += name + \":\" + value + \";\";\n\t\t}\n};\n\nexports.findParseTreeNode = function(nodeArray,search) {\n\tfor(var t=0; t<nodeArray.length; t++) {\n\t\tif(nodeArray[t].type === search.type && nodeArray[t].tag === search.tag) {\n\t\t\treturn nodeArray[t];\n\t\t}\n\t}\n\treturn undefined;\n};\n\n/*\nHelper to get the text of a parse tree node or array of nodes\n*/\nexports.getParseTreeText = function getParseTreeText(tree) {\n\tvar output = [];\n\tif($tw.utils.isArray(tree)) {\n\t\t$tw.utils.each(tree,function(node) {\n\t\t\toutput.push(getParseTreeText(node));\n\t\t});\n\t} else {\n\t\tif(tree.type === \"text\") {\n\t\t\toutput.push(tree.text);\n\t\t}\n\t\tif(tree.children) {\n\t\t\treturn getParseTreeText(tree.children);\n\t\t}\n\t}\n\treturn output.join(\"\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/performance.js": {
            "title": "$:/core/modules/utils/performance.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/performance.js\ntype: application/javascript\nmodule-type: global\n\nPerformance measurement.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Performance(enabled) {\n\tthis.enabled = !!enabled;\n\tthis.measures = {}; // Hashmap of current values of measurements\n\tthis.logger = new $tw.utils.Logger(\"performance\");\n}\n\n/*\nWrap performance reporting around a top level function\n*/\nPerformance.prototype.report = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tself.measures = {};\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tself.logger.log(name + \": \" + $tw.utils.timer(startTime).toFixed(2) + \"ms\");\n\t\t\tfor(var m in self.measures) {\n\t\t\t\tself.logger.log(\"+\" + m + \": \" + self.measures[m].toFixed(2) + \"ms\");\n\t\t\t}\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\n/*\nWrap performance measurements around a subfunction\n*/\nPerformance.prototype.measure = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments),\n\t\t\t\tvalue = self.measures[name] || 0;\n\t\t\tself.measures[name] = value + $tw.utils.timer(startTime);\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nexports.Performance = Performance;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/pluginmaker.js": {
            "title": "$:/core/modules/utils/pluginmaker.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/pluginmaker.js\ntype: application/javascript\nmodule-type: utils\n\nA quick and dirty way to pack up plugins within the browser.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRepack a plugin, and then delete any non-shadow payload tiddlers\n*/\nexports.repackPlugin = function(title,additionalTiddlers,excludeTiddlers) {\n\tadditionalTiddlers = additionalTiddlers || [];\n\texcludeTiddlers = excludeTiddlers || [];\n\t// Get the plugin tiddler\n\tvar pluginTiddler = $tw.wiki.getTiddler(title);\n\tif(!pluginTiddler) {\n\t\tthrow \"No such tiddler as \" + title;\n\t}\n\t// Extract the JSON\n\tvar jsonPluginTiddler;\n\ttry {\n\t\tjsonPluginTiddler = JSON.parse(pluginTiddler.fields.text);\n\t} catch(e) {\n\t\tthrow \"Cannot parse plugin tiddler \" + title + \"\\n\" + $tw.language.getString(\"Error/Caption\") + \": \" + e;\n\t}\n\t// Get the list of tiddlers\n\tvar tiddlers = Object.keys(jsonPluginTiddler.tiddlers);\n\t// Add the additional tiddlers\n\t$tw.utils.pushTop(tiddlers,additionalTiddlers);\n\t// Remove any excluded tiddlers\n\tfor(var t=tiddlers.length-1; t>=0; t--) {\n\t\tif(excludeTiddlers.indexOf(tiddlers[t]) !== -1) {\n\t\t\ttiddlers.splice(t,1);\n\t\t}\n\t}\n\t// Pack up the tiddlers into a block of JSON\n\tvar plugins = {};\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\tfields = {};\n\t\t$tw.utils.each(tiddler.fields,function (value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\tplugins[title] = fields;\n\t});\n\t// Retrieve and bump the version number\n\tvar pluginVersion = $tw.utils.parseVersion(pluginTiddler.getFieldString(\"version\") || \"0.0.0\") || {\n\t\t\tmajor: \"0\",\n\t\t\tminor: \"0\",\n\t\t\tpatch: \"0\"\n\t\t};\n\tpluginVersion.patch++;\n\tvar version = pluginVersion.major + \".\" + pluginVersion.minor + \".\" + pluginVersion.patch;\n\tif(pluginVersion.prerelease) {\n\t\tversion += \"-\" + pluginVersion.prerelease;\n\t}\n\tif(pluginVersion.build) {\n\t\tversion += \"+\" + pluginVersion.build;\n\t}\n\t// Save the tiddler\n\t$tw.wiki.addTiddler(new $tw.Tiddler(pluginTiddler,{text: JSON.stringify({tiddlers: plugins},null,4), version: version}));\n\t// Delete any non-shadow constituent tiddlers\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tif($tw.wiki.tiddlerExists(title)) {\n\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t}\n\t});\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t// Return a heartwarming confirmation\n\treturn \"Plugin \" + title + \" successfully saved\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/transliterate.js": {
            "title": "$:/core/modules/utils/transliterate.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/transliterate.js\ntype: application/javascript\nmodule-type: utils\n\nTransliteration static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nTransliterate string to ASCII\n\n(Some pairs taken from http://semplicewebsites.com/removing-accents-javascript)\n*/\nexports.transliterationPairs = {\n\t\"Á\":\"A\",\n\t\"Ă\":\"A\",\n\t\"Ắ\":\"A\",\n\t\"Ặ\":\"A\",\n\t\"Ằ\":\"A\",\n\t\"Ẳ\":\"A\",\n\t\"Ẵ\":\"A\",\n\t\"Ǎ\":\"A\",\n\t\"Â\":\"A\",\n\t\"Ấ\":\"A\",\n\t\"Ậ\":\"A\",\n\t\"Ầ\":\"A\",\n\t\"Ẩ\":\"A\",\n\t\"Ẫ\":\"A\",\n\t\"Ä\":\"A\",\n\t\"Ǟ\":\"A\",\n\t\"Ȧ\":\"A\",\n\t\"Ǡ\":\"A\",\n\t\"Ạ\":\"A\",\n\t\"Ȁ\":\"A\",\n\t\"À\":\"A\",\n\t\"Ả\":\"A\",\n\t\"Ȃ\":\"A\",\n\t\"Ā\":\"A\",\n\t\"Ą\":\"A\",\n\t\"Å\":\"A\",\n\t\"Ǻ\":\"A\",\n\t\"Ḁ\":\"A\",\n\t\"Ⱥ\":\"A\",\n\t\"Ã\":\"A\",\n\t\"Ꜳ\":\"AA\",\n\t\"Æ\":\"AE\",\n\t\"Ǽ\":\"AE\",\n\t\"Ǣ\":\"AE\",\n\t\"Ꜵ\":\"AO\",\n\t\"Ꜷ\":\"AU\",\n\t\"Ꜹ\":\"AV\",\n\t\"Ꜻ\":\"AV\",\n\t\"Ꜽ\":\"AY\",\n\t\"Ḃ\":\"B\",\n\t\"Ḅ\":\"B\",\n\t\"Ɓ\":\"B\",\n\t\"Ḇ\":\"B\",\n\t\"Ƀ\":\"B\",\n\t\"Ƃ\":\"B\",\n\t\"Ć\":\"C\",\n\t\"Č\":\"C\",\n\t\"Ç\":\"C\",\n\t\"Ḉ\":\"C\",\n\t\"Ĉ\":\"C\",\n\t\"Ċ\":\"C\",\n\t\"Ƈ\":\"C\",\n\t\"Ȼ\":\"C\",\n\t\"Ď\":\"D\",\n\t\"Ḑ\":\"D\",\n\t\"Ḓ\":\"D\",\n\t\"Ḋ\":\"D\",\n\t\"Ḍ\":\"D\",\n\t\"Ɗ\":\"D\",\n\t\"Ḏ\":\"D\",\n\t\"Dz\":\"D\",\n\t\"Dž\":\"D\",\n\t\"Đ\":\"D\",\n\t\"Ƌ\":\"D\",\n\t\"DZ\":\"DZ\",\n\t\"DŽ\":\"DZ\",\n\t\"É\":\"E\",\n\t\"Ĕ\":\"E\",\n\t\"Ě\":\"E\",\n\t\"Ȩ\":\"E\",\n\t\"Ḝ\":\"E\",\n\t\"Ê\":\"E\",\n\t\"Ế\":\"E\",\n\t\"Ệ\":\"E\",\n\t\"Ề\":\"E\",\n\t\"Ể\":\"E\",\n\t\"Ễ\":\"E\",\n\t\"Ḙ\":\"E\",\n\t\"Ë\":\"E\",\n\t\"Ė\":\"E\",\n\t\"Ẹ\":\"E\",\n\t\"Ȅ\":\"E\",\n\t\"È\":\"E\",\n\t\"Ẻ\":\"E\",\n\t\"Ȇ\":\"E\",\n\t\"Ē\":\"E\",\n\t\"Ḗ\":\"E\",\n\t\"Ḕ\":\"E\",\n\t\"Ę\":\"E\",\n\t\"Ɇ\":\"E\",\n\t\"Ẽ\":\"E\",\n\t\"Ḛ\":\"E\",\n\t\"Ꝫ\":\"ET\",\n\t\"Ḟ\":\"F\",\n\t\"Ƒ\":\"F\",\n\t\"Ǵ\":\"G\",\n\t\"Ğ\":\"G\",\n\t\"Ǧ\":\"G\",\n\t\"Ģ\":\"G\",\n\t\"Ĝ\":\"G\",\n\t\"Ġ\":\"G\",\n\t\"Ɠ\":\"G\",\n\t\"Ḡ\":\"G\",\n\t\"Ǥ\":\"G\",\n\t\"Ḫ\":\"H\",\n\t\"Ȟ\":\"H\",\n\t\"Ḩ\":\"H\",\n\t\"Ĥ\":\"H\",\n\t\"Ⱨ\":\"H\",\n\t\"Ḧ\":\"H\",\n\t\"Ḣ\":\"H\",\n\t\"Ḥ\":\"H\",\n\t\"Ħ\":\"H\",\n\t\"Í\":\"I\",\n\t\"Ĭ\":\"I\",\n\t\"Ǐ\":\"I\",\n\t\"Î\":\"I\",\n\t\"Ï\":\"I\",\n\t\"Ḯ\":\"I\",\n\t\"İ\":\"I\",\n\t\"Ị\":\"I\",\n\t\"Ȉ\":\"I\",\n\t\"Ì\":\"I\",\n\t\"Ỉ\":\"I\",\n\t\"Ȋ\":\"I\",\n\t\"Ī\":\"I\",\n\t\"Į\":\"I\",\n\t\"Ɨ\":\"I\",\n\t\"Ĩ\":\"I\",\n\t\"Ḭ\":\"I\",\n\t\"Ꝺ\":\"D\",\n\t\"Ꝼ\":\"F\",\n\t\"Ᵹ\":\"G\",\n\t\"Ꞃ\":\"R\",\n\t\"Ꞅ\":\"S\",\n\t\"Ꞇ\":\"T\",\n\t\"Ꝭ\":\"IS\",\n\t\"Ĵ\":\"J\",\n\t\"Ɉ\":\"J\",\n\t\"Ḱ\":\"K\",\n\t\"Ǩ\":\"K\",\n\t\"Ķ\":\"K\",\n\t\"Ⱪ\":\"K\",\n\t\"Ꝃ\":\"K\",\n\t\"Ḳ\":\"K\",\n\t\"Ƙ\":\"K\",\n\t\"Ḵ\":\"K\",\n\t\"Ꝁ\":\"K\",\n\t\"Ꝅ\":\"K\",\n\t\"Ĺ\":\"L\",\n\t\"Ƚ\":\"L\",\n\t\"Ľ\":\"L\",\n\t\"Ļ\":\"L\",\n\t\"Ḽ\":\"L\",\n\t\"Ḷ\":\"L\",\n\t\"Ḹ\":\"L\",\n\t\"Ⱡ\":\"L\",\n\t\"Ꝉ\":\"L\",\n\t\"Ḻ\":\"L\",\n\t\"Ŀ\":\"L\",\n\t\"Ɫ\":\"L\",\n\t\"Lj\":\"L\",\n\t\"Ł\":\"L\",\n\t\"LJ\":\"LJ\",\n\t\"Ḿ\":\"M\",\n\t\"Ṁ\":\"M\",\n\t\"Ṃ\":\"M\",\n\t\"Ɱ\":\"M\",\n\t\"Ń\":\"N\",\n\t\"Ň\":\"N\",\n\t\"Ņ\":\"N\",\n\t\"Ṋ\":\"N\",\n\t\"Ṅ\":\"N\",\n\t\"Ṇ\":\"N\",\n\t\"Ǹ\":\"N\",\n\t\"Ɲ\":\"N\",\n\t\"Ṉ\":\"N\",\n\t\"Ƞ\":\"N\",\n\t\"Nj\":\"N\",\n\t\"Ñ\":\"N\",\n\t\"NJ\":\"NJ\",\n\t\"Ó\":\"O\",\n\t\"Ŏ\":\"O\",\n\t\"Ǒ\":\"O\",\n\t\"Ô\":\"O\",\n\t\"Ố\":\"O\",\n\t\"Ộ\":\"O\",\n\t\"Ồ\":\"O\",\n\t\"Ổ\":\"O\",\n\t\"Ỗ\":\"O\",\n\t\"Ö\":\"O\",\n\t\"Ȫ\":\"O\",\n\t\"Ȯ\":\"O\",\n\t\"Ȱ\":\"O\",\n\t\"Ọ\":\"O\",\n\t\"Ő\":\"O\",\n\t\"Ȍ\":\"O\",\n\t\"Ò\":\"O\",\n\t\"Ỏ\":\"O\",\n\t\"Ơ\":\"O\",\n\t\"Ớ\":\"O\",\n\t\"Ợ\":\"O\",\n\t\"Ờ\":\"O\",\n\t\"Ở\":\"O\",\n\t\"Ỡ\":\"O\",\n\t\"Ȏ\":\"O\",\n\t\"Ꝋ\":\"O\",\n\t\"Ꝍ\":\"O\",\n\t\"Ō\":\"O\",\n\t\"Ṓ\":\"O\",\n\t\"Ṑ\":\"O\",\n\t\"Ɵ\":\"O\",\n\t\"Ǫ\":\"O\",\n\t\"Ǭ\":\"O\",\n\t\"Ø\":\"O\",\n\t\"Ǿ\":\"O\",\n\t\"Õ\":\"O\",\n\t\"Ṍ\":\"O\",\n\t\"Ṏ\":\"O\",\n\t\"Ȭ\":\"O\",\n\t\"Ƣ\":\"OI\",\n\t\"Ꝏ\":\"OO\",\n\t\"Ɛ\":\"E\",\n\t\"Ɔ\":\"O\",\n\t\"Ȣ\":\"OU\",\n\t\"Ṕ\":\"P\",\n\t\"Ṗ\":\"P\",\n\t\"Ꝓ\":\"P\",\n\t\"Ƥ\":\"P\",\n\t\"Ꝕ\":\"P\",\n\t\"Ᵽ\":\"P\",\n\t\"Ꝑ\":\"P\",\n\t\"Ꝙ\":\"Q\",\n\t\"Ꝗ\":\"Q\",\n\t\"Ŕ\":\"R\",\n\t\"Ř\":\"R\",\n\t\"Ŗ\":\"R\",\n\t\"Ṙ\":\"R\",\n\t\"Ṛ\":\"R\",\n\t\"Ṝ\":\"R\",\n\t\"Ȑ\":\"R\",\n\t\"Ȓ\":\"R\",\n\t\"Ṟ\":\"R\",\n\t\"Ɍ\":\"R\",\n\t\"Ɽ\":\"R\",\n\t\"Ꜿ\":\"C\",\n\t\"Ǝ\":\"E\",\n\t\"Ś\":\"S\",\n\t\"Ṥ\":\"S\",\n\t\"Š\":\"S\",\n\t\"Ṧ\":\"S\",\n\t\"Ş\":\"S\",\n\t\"Ŝ\":\"S\",\n\t\"Ș\":\"S\",\n\t\"Ṡ\":\"S\",\n\t\"Ṣ\":\"S\",\n\t\"Ṩ\":\"S\",\n\t\"Ť\":\"T\",\n\t\"Ţ\":\"T\",\n\t\"Ṱ\":\"T\",\n\t\"Ț\":\"T\",\n\t\"Ⱦ\":\"T\",\n\t\"Ṫ\":\"T\",\n\t\"Ṭ\":\"T\",\n\t\"Ƭ\":\"T\",\n\t\"Ṯ\":\"T\",\n\t\"Ʈ\":\"T\",\n\t\"Ŧ\":\"T\",\n\t\"Ɐ\":\"A\",\n\t\"Ꞁ\":\"L\",\n\t\"Ɯ\":\"M\",\n\t\"Ʌ\":\"V\",\n\t\"Ꜩ\":\"TZ\",\n\t\"Ú\":\"U\",\n\t\"Ŭ\":\"U\",\n\t\"Ǔ\":\"U\",\n\t\"Û\":\"U\",\n\t\"Ṷ\":\"U\",\n\t\"Ü\":\"U\",\n\t\"Ǘ\":\"U\",\n\t\"Ǚ\":\"U\",\n\t\"Ǜ\":\"U\",\n\t\"Ǖ\":\"U\",\n\t\"Ṳ\":\"U\",\n\t\"Ụ\":\"U\",\n\t\"Ű\":\"U\",\n\t\"Ȕ\":\"U\",\n\t\"Ù\":\"U\",\n\t\"Ủ\":\"U\",\n\t\"Ư\":\"U\",\n\t\"Ứ\":\"U\",\n\t\"Ự\":\"U\",\n\t\"Ừ\":\"U\",\n\t\"Ử\":\"U\",\n\t\"Ữ\":\"U\",\n\t\"Ȗ\":\"U\",\n\t\"Ū\":\"U\",\n\t\"Ṻ\":\"U\",\n\t\"Ų\":\"U\",\n\t\"Ů\":\"U\",\n\t\"Ũ\":\"U\",\n\t\"Ṹ\":\"U\",\n\t\"Ṵ\":\"U\",\n\t\"Ꝟ\":\"V\",\n\t\"Ṿ\":\"V\",\n\t\"Ʋ\":\"V\",\n\t\"Ṽ\":\"V\",\n\t\"Ꝡ\":\"VY\",\n\t\"Ẃ\":\"W\",\n\t\"Ŵ\":\"W\",\n\t\"Ẅ\":\"W\",\n\t\"Ẇ\":\"W\",\n\t\"Ẉ\":\"W\",\n\t\"Ẁ\":\"W\",\n\t\"Ⱳ\":\"W\",\n\t\"Ẍ\":\"X\",\n\t\"Ẋ\":\"X\",\n\t\"Ý\":\"Y\",\n\t\"Ŷ\":\"Y\",\n\t\"Ÿ\":\"Y\",\n\t\"Ẏ\":\"Y\",\n\t\"Ỵ\":\"Y\",\n\t\"Ỳ\":\"Y\",\n\t\"Ƴ\":\"Y\",\n\t\"Ỷ\":\"Y\",\n\t\"Ỿ\":\"Y\",\n\t\"Ȳ\":\"Y\",\n\t\"Ɏ\":\"Y\",\n\t\"Ỹ\":\"Y\",\n\t\"Ź\":\"Z\",\n\t\"Ž\":\"Z\",\n\t\"Ẑ\":\"Z\",\n\t\"Ⱬ\":\"Z\",\n\t\"Ż\":\"Z\",\n\t\"Ẓ\":\"Z\",\n\t\"Ȥ\":\"Z\",\n\t\"Ẕ\":\"Z\",\n\t\"Ƶ\":\"Z\",\n\t\"IJ\":\"IJ\",\n\t\"Œ\":\"OE\",\n\t\"ᴀ\":\"A\",\n\t\"ᴁ\":\"AE\",\n\t\"ʙ\":\"B\",\n\t\"ᴃ\":\"B\",\n\t\"ᴄ\":\"C\",\n\t\"ᴅ\":\"D\",\n\t\"ᴇ\":\"E\",\n\t\"ꜰ\":\"F\",\n\t\"ɢ\":\"G\",\n\t\"ʛ\":\"G\",\n\t\"ʜ\":\"H\",\n\t\"ɪ\":\"I\",\n\t\"ʁ\":\"R\",\n\t\"ᴊ\":\"J\",\n\t\"ᴋ\":\"K\",\n\t\"ʟ\":\"L\",\n\t\"ᴌ\":\"L\",\n\t\"ᴍ\":\"M\",\n\t\"ɴ\":\"N\",\n\t\"ᴏ\":\"O\",\n\t\"ɶ\":\"OE\",\n\t\"ᴐ\":\"O\",\n\t\"ᴕ\":\"OU\",\n\t\"ᴘ\":\"P\",\n\t\"ʀ\":\"R\",\n\t\"ᴎ\":\"N\",\n\t\"ᴙ\":\"R\",\n\t\"ꜱ\":\"S\",\n\t\"ᴛ\":\"T\",\n\t\"ⱻ\":\"E\",\n\t\"ᴚ\":\"R\",\n\t\"ᴜ\":\"U\",\n\t\"ᴠ\":\"V\",\n\t\"ᴡ\":\"W\",\n\t\"ʏ\":\"Y\",\n\t\"ᴢ\":\"Z\",\n\t\"á\":\"a\",\n\t\"ă\":\"a\",\n\t\"ắ\":\"a\",\n\t\"ặ\":\"a\",\n\t\"ằ\":\"a\",\n\t\"ẳ\":\"a\",\n\t\"ẵ\":\"a\",\n\t\"ǎ\":\"a\",\n\t\"â\":\"a\",\n\t\"ấ\":\"a\",\n\t\"ậ\":\"a\",\n\t\"ầ\":\"a\",\n\t\"ẩ\":\"a\",\n\t\"ẫ\":\"a\",\n\t\"ä\":\"a\",\n\t\"ǟ\":\"a\",\n\t\"ȧ\":\"a\",\n\t\"ǡ\":\"a\",\n\t\"ạ\":\"a\",\n\t\"ȁ\":\"a\",\n\t\"à\":\"a\",\n\t\"ả\":\"a\",\n\t\"ȃ\":\"a\",\n\t\"ā\":\"a\",\n\t\"ą\":\"a\",\n\t\"ᶏ\":\"a\",\n\t\"ẚ\":\"a\",\n\t\"å\":\"a\",\n\t\"ǻ\":\"a\",\n\t\"ḁ\":\"a\",\n\t\"ⱥ\":\"a\",\n\t\"ã\":\"a\",\n\t\"ꜳ\":\"aa\",\n\t\"æ\":\"ae\",\n\t\"ǽ\":\"ae\",\n\t\"ǣ\":\"ae\",\n\t\"ꜵ\":\"ao\",\n\t\"ꜷ\":\"au\",\n\t\"ꜹ\":\"av\",\n\t\"ꜻ\":\"av\",\n\t\"ꜽ\":\"ay\",\n\t\"ḃ\":\"b\",\n\t\"ḅ\":\"b\",\n\t\"ɓ\":\"b\",\n\t\"ḇ\":\"b\",\n\t\"ᵬ\":\"b\",\n\t\"ᶀ\":\"b\",\n\t\"ƀ\":\"b\",\n\t\"ƃ\":\"b\",\n\t\"ɵ\":\"o\",\n\t\"ć\":\"c\",\n\t\"č\":\"c\",\n\t\"ç\":\"c\",\n\t\"ḉ\":\"c\",\n\t\"ĉ\":\"c\",\n\t\"ɕ\":\"c\",\n\t\"ċ\":\"c\",\n\t\"ƈ\":\"c\",\n\t\"ȼ\":\"c\",\n\t\"ď\":\"d\",\n\t\"ḑ\":\"d\",\n\t\"ḓ\":\"d\",\n\t\"ȡ\":\"d\",\n\t\"ḋ\":\"d\",\n\t\"ḍ\":\"d\",\n\t\"ɗ\":\"d\",\n\t\"ᶑ\":\"d\",\n\t\"ḏ\":\"d\",\n\t\"ᵭ\":\"d\",\n\t\"ᶁ\":\"d\",\n\t\"đ\":\"d\",\n\t\"ɖ\":\"d\",\n\t\"ƌ\":\"d\",\n\t\"ı\":\"i\",\n\t\"ȷ\":\"j\",\n\t\"ɟ\":\"j\",\n\t\"ʄ\":\"j\",\n\t\"dz\":\"dz\",\n\t\"dž\":\"dz\",\n\t\"é\":\"e\",\n\t\"ĕ\":\"e\",\n\t\"ě\":\"e\",\n\t\"ȩ\":\"e\",\n\t\"ḝ\":\"e\",\n\t\"ê\":\"e\",\n\t\"ế\":\"e\",\n\t\"ệ\":\"e\",\n\t\"ề\":\"e\",\n\t\"ể\":\"e\",\n\t\"ễ\":\"e\",\n\t\"ḙ\":\"e\",\n\t\"ë\":\"e\",\n\t\"ė\":\"e\",\n\t\"ẹ\":\"e\",\n\t\"ȅ\":\"e\",\n\t\"è\":\"e\",\n\t\"ẻ\":\"e\",\n\t\"ȇ\":\"e\",\n\t\"ē\":\"e\",\n\t\"ḗ\":\"e\",\n\t\"ḕ\":\"e\",\n\t\"ⱸ\":\"e\",\n\t\"ę\":\"e\",\n\t\"ᶒ\":\"e\",\n\t\"ɇ\":\"e\",\n\t\"ẽ\":\"e\",\n\t\"ḛ\":\"e\",\n\t\"ꝫ\":\"et\",\n\t\"ḟ\":\"f\",\n\t\"ƒ\":\"f\",\n\t\"ᵮ\":\"f\",\n\t\"ᶂ\":\"f\",\n\t\"ǵ\":\"g\",\n\t\"ğ\":\"g\",\n\t\"ǧ\":\"g\",\n\t\"ģ\":\"g\",\n\t\"ĝ\":\"g\",\n\t\"ġ\":\"g\",\n\t\"ɠ\":\"g\",\n\t\"ḡ\":\"g\",\n\t\"ᶃ\":\"g\",\n\t\"ǥ\":\"g\",\n\t\"ḫ\":\"h\",\n\t\"ȟ\":\"h\",\n\t\"ḩ\":\"h\",\n\t\"ĥ\":\"h\",\n\t\"ⱨ\":\"h\",\n\t\"ḧ\":\"h\",\n\t\"ḣ\":\"h\",\n\t\"ḥ\":\"h\",\n\t\"ɦ\":\"h\",\n\t\"ẖ\":\"h\",\n\t\"ħ\":\"h\",\n\t\"ƕ\":\"hv\",\n\t\"í\":\"i\",\n\t\"ĭ\":\"i\",\n\t\"ǐ\":\"i\",\n\t\"î\":\"i\",\n\t\"ï\":\"i\",\n\t\"ḯ\":\"i\",\n\t\"ị\":\"i\",\n\t\"ȉ\":\"i\",\n\t\"ì\":\"i\",\n\t\"ỉ\":\"i\",\n\t\"ȋ\":\"i\",\n\t\"ī\":\"i\",\n\t\"į\":\"i\",\n\t\"ᶖ\":\"i\",\n\t\"ɨ\":\"i\",\n\t\"ĩ\":\"i\",\n\t\"ḭ\":\"i\",\n\t\"ꝺ\":\"d\",\n\t\"ꝼ\":\"f\",\n\t\"ᵹ\":\"g\",\n\t\"ꞃ\":\"r\",\n\t\"ꞅ\":\"s\",\n\t\"ꞇ\":\"t\",\n\t\"ꝭ\":\"is\",\n\t\"ǰ\":\"j\",\n\t\"ĵ\":\"j\",\n\t\"ʝ\":\"j\",\n\t\"ɉ\":\"j\",\n\t\"ḱ\":\"k\",\n\t\"ǩ\":\"k\",\n\t\"ķ\":\"k\",\n\t\"ⱪ\":\"k\",\n\t\"ꝃ\":\"k\",\n\t\"ḳ\":\"k\",\n\t\"ƙ\":\"k\",\n\t\"ḵ\":\"k\",\n\t\"ᶄ\":\"k\",\n\t\"ꝁ\":\"k\",\n\t\"ꝅ\":\"k\",\n\t\"ĺ\":\"l\",\n\t\"ƚ\":\"l\",\n\t\"ɬ\":\"l\",\n\t\"ľ\":\"l\",\n\t\"ļ\":\"l\",\n\t\"ḽ\":\"l\",\n\t\"ȴ\":\"l\",\n\t\"ḷ\":\"l\",\n\t\"ḹ\":\"l\",\n\t\"ⱡ\":\"l\",\n\t\"ꝉ\":\"l\",\n\t\"ḻ\":\"l\",\n\t\"ŀ\":\"l\",\n\t\"ɫ\":\"l\",\n\t\"ᶅ\":\"l\",\n\t\"ɭ\":\"l\",\n\t\"ł\":\"l\",\n\t\"lj\":\"lj\",\n\t\"ſ\":\"s\",\n\t\"ẜ\":\"s\",\n\t\"ẛ\":\"s\",\n\t\"ẝ\":\"s\",\n\t\"ḿ\":\"m\",\n\t\"ṁ\":\"m\",\n\t\"ṃ\":\"m\",\n\t\"ɱ\":\"m\",\n\t\"ᵯ\":\"m\",\n\t\"ᶆ\":\"m\",\n\t\"ń\":\"n\",\n\t\"ň\":\"n\",\n\t\"ņ\":\"n\",\n\t\"ṋ\":\"n\",\n\t\"ȵ\":\"n\",\n\t\"ṅ\":\"n\",\n\t\"ṇ\":\"n\",\n\t\"ǹ\":\"n\",\n\t\"ɲ\":\"n\",\n\t\"ṉ\":\"n\",\n\t\"ƞ\":\"n\",\n\t\"ᵰ\":\"n\",\n\t\"ᶇ\":\"n\",\n\t\"ɳ\":\"n\",\n\t\"ñ\":\"n\",\n\t\"nj\":\"nj\",\n\t\"ó\":\"o\",\n\t\"ŏ\":\"o\",\n\t\"ǒ\":\"o\",\n\t\"ô\":\"o\",\n\t\"ố\":\"o\",\n\t\"ộ\":\"o\",\n\t\"ồ\":\"o\",\n\t\"ổ\":\"o\",\n\t\"ỗ\":\"o\",\n\t\"ö\":\"o\",\n\t\"ȫ\":\"o\",\n\t\"ȯ\":\"o\",\n\t\"ȱ\":\"o\",\n\t\"ọ\":\"o\",\n\t\"ő\":\"o\",\n\t\"ȍ\":\"o\",\n\t\"ò\":\"o\",\n\t\"ỏ\":\"o\",\n\t\"ơ\":\"o\",\n\t\"ớ\":\"o\",\n\t\"ợ\":\"o\",\n\t\"ờ\":\"o\",\n\t\"ở\":\"o\",\n\t\"ỡ\":\"o\",\n\t\"ȏ\":\"o\",\n\t\"ꝋ\":\"o\",\n\t\"ꝍ\":\"o\",\n\t\"ⱺ\":\"o\",\n\t\"ō\":\"o\",\n\t\"ṓ\":\"o\",\n\t\"ṑ\":\"o\",\n\t\"ǫ\":\"o\",\n\t\"ǭ\":\"o\",\n\t\"ø\":\"o\",\n\t\"ǿ\":\"o\",\n\t\"õ\":\"o\",\n\t\"ṍ\":\"o\",\n\t\"ṏ\":\"o\",\n\t\"ȭ\":\"o\",\n\t\"ƣ\":\"oi\",\n\t\"ꝏ\":\"oo\",\n\t\"ɛ\":\"e\",\n\t\"ᶓ\":\"e\",\n\t\"ɔ\":\"o\",\n\t\"ᶗ\":\"o\",\n\t\"ȣ\":\"ou\",\n\t\"ṕ\":\"p\",\n\t\"ṗ\":\"p\",\n\t\"ꝓ\":\"p\",\n\t\"ƥ\":\"p\",\n\t\"ᵱ\":\"p\",\n\t\"ᶈ\":\"p\",\n\t\"ꝕ\":\"p\",\n\t\"ᵽ\":\"p\",\n\t\"ꝑ\":\"p\",\n\t\"ꝙ\":\"q\",\n\t\"ʠ\":\"q\",\n\t\"ɋ\":\"q\",\n\t\"ꝗ\":\"q\",\n\t\"ŕ\":\"r\",\n\t\"ř\":\"r\",\n\t\"ŗ\":\"r\",\n\t\"ṙ\":\"r\",\n\t\"ṛ\":\"r\",\n\t\"ṝ\":\"r\",\n\t\"ȑ\":\"r\",\n\t\"ɾ\":\"r\",\n\t\"ᵳ\":\"r\",\n\t\"ȓ\":\"r\",\n\t\"ṟ\":\"r\",\n\t\"ɼ\":\"r\",\n\t\"ᵲ\":\"r\",\n\t\"ᶉ\":\"r\",\n\t\"ɍ\":\"r\",\n\t\"ɽ\":\"r\",\n\t\"ↄ\":\"c\",\n\t\"ꜿ\":\"c\",\n\t\"ɘ\":\"e\",\n\t\"ɿ\":\"r\",\n\t\"ś\":\"s\",\n\t\"ṥ\":\"s\",\n\t\"š\":\"s\",\n\t\"ṧ\":\"s\",\n\t\"ş\":\"s\",\n\t\"ŝ\":\"s\",\n\t\"ș\":\"s\",\n\t\"ṡ\":\"s\",\n\t\"ṣ\":\"s\",\n\t\"ṩ\":\"s\",\n\t\"ʂ\":\"s\",\n\t\"ᵴ\":\"s\",\n\t\"ᶊ\":\"s\",\n\t\"ȿ\":\"s\",\n\t\"ɡ\":\"g\",\n\t\"ᴑ\":\"o\",\n\t\"ᴓ\":\"o\",\n\t\"ᴝ\":\"u\",\n\t\"ť\":\"t\",\n\t\"ţ\":\"t\",\n\t\"ṱ\":\"t\",\n\t\"ț\":\"t\",\n\t\"ȶ\":\"t\",\n\t\"ẗ\":\"t\",\n\t\"ⱦ\":\"t\",\n\t\"ṫ\":\"t\",\n\t\"ṭ\":\"t\",\n\t\"ƭ\":\"t\",\n\t\"ṯ\":\"t\",\n\t\"ᵵ\":\"t\",\n\t\"ƫ\":\"t\",\n\t\"ʈ\":\"t\",\n\t\"ŧ\":\"t\",\n\t\"ᵺ\":\"th\",\n\t\"ɐ\":\"a\",\n\t\"ᴂ\":\"ae\",\n\t\"ǝ\":\"e\",\n\t\"ᵷ\":\"g\",\n\t\"ɥ\":\"h\",\n\t\"ʮ\":\"h\",\n\t\"ʯ\":\"h\",\n\t\"ᴉ\":\"i\",\n\t\"ʞ\":\"k\",\n\t\"ꞁ\":\"l\",\n\t\"ɯ\":\"m\",\n\t\"ɰ\":\"m\",\n\t\"ᴔ\":\"oe\",\n\t\"ɹ\":\"r\",\n\t\"ɻ\":\"r\",\n\t\"ɺ\":\"r\",\n\t\"ⱹ\":\"r\",\n\t\"ʇ\":\"t\",\n\t\"ʌ\":\"v\",\n\t\"ʍ\":\"w\",\n\t\"ʎ\":\"y\",\n\t\"ꜩ\":\"tz\",\n\t\"ú\":\"u\",\n\t\"ŭ\":\"u\",\n\t\"ǔ\":\"u\",\n\t\"û\":\"u\",\n\t\"ṷ\":\"u\",\n\t\"ü\":\"u\",\n\t\"ǘ\":\"u\",\n\t\"ǚ\":\"u\",\n\t\"ǜ\":\"u\",\n\t\"ǖ\":\"u\",\n\t\"ṳ\":\"u\",\n\t\"ụ\":\"u\",\n\t\"ű\":\"u\",\n\t\"ȕ\":\"u\",\n\t\"ù\":\"u\",\n\t\"ủ\":\"u\",\n\t\"ư\":\"u\",\n\t\"ứ\":\"u\",\n\t\"ự\":\"u\",\n\t\"ừ\":\"u\",\n\t\"ử\":\"u\",\n\t\"ữ\":\"u\",\n\t\"ȗ\":\"u\",\n\t\"ū\":\"u\",\n\t\"ṻ\":\"u\",\n\t\"ų\":\"u\",\n\t\"ᶙ\":\"u\",\n\t\"ů\":\"u\",\n\t\"ũ\":\"u\",\n\t\"ṹ\":\"u\",\n\t\"ṵ\":\"u\",\n\t\"ᵫ\":\"ue\",\n\t\"ꝸ\":\"um\",\n\t\"ⱴ\":\"v\",\n\t\"ꝟ\":\"v\",\n\t\"ṿ\":\"v\",\n\t\"ʋ\":\"v\",\n\t\"ᶌ\":\"v\",\n\t\"ⱱ\":\"v\",\n\t\"ṽ\":\"v\",\n\t\"ꝡ\":\"vy\",\n\t\"ẃ\":\"w\",\n\t\"ŵ\":\"w\",\n\t\"ẅ\":\"w\",\n\t\"ẇ\":\"w\",\n\t\"ẉ\":\"w\",\n\t\"ẁ\":\"w\",\n\t\"ⱳ\":\"w\",\n\t\"ẘ\":\"w\",\n\t\"ẍ\":\"x\",\n\t\"ẋ\":\"x\",\n\t\"ᶍ\":\"x\",\n\t\"ý\":\"y\",\n\t\"ŷ\":\"y\",\n\t\"ÿ\":\"y\",\n\t\"ẏ\":\"y\",\n\t\"ỵ\":\"y\",\n\t\"ỳ\":\"y\",\n\t\"ƴ\":\"y\",\n\t\"ỷ\":\"y\",\n\t\"ỿ\":\"y\",\n\t\"ȳ\":\"y\",\n\t\"ẙ\":\"y\",\n\t\"ɏ\":\"y\",\n\t\"ỹ\":\"y\",\n\t\"ź\":\"z\",\n\t\"ž\":\"z\",\n\t\"ẑ\":\"z\",\n\t\"ʑ\":\"z\",\n\t\"ⱬ\":\"z\",\n\t\"ż\":\"z\",\n\t\"ẓ\":\"z\",\n\t\"ȥ\":\"z\",\n\t\"ẕ\":\"z\",\n\t\"ᵶ\":\"z\",\n\t\"ᶎ\":\"z\",\n\t\"ʐ\":\"z\",\n\t\"ƶ\":\"z\",\n\t\"ɀ\":\"z\",\n\t\"ff\":\"ff\",\n\t\"ffi\":\"ffi\",\n\t\"ffl\":\"ffl\",\n\t\"fi\":\"fi\",\n\t\"fl\":\"fl\",\n\t\"ij\":\"ij\",\n\t\"œ\":\"oe\",\n\t\"st\":\"st\",\n\t\"ₐ\":\"a\",\n\t\"ₑ\":\"e\",\n\t\"ᵢ\":\"i\",\n\t\"ⱼ\":\"j\",\n\t\"ₒ\":\"o\",\n\t\"ᵣ\":\"r\",\n\t\"ᵤ\":\"u\",\n\t\"ᵥ\":\"v\",\n\t\"ₓ\":\"x\",\n\t\"Ё\":\"YO\",\n\t\"Й\":\"I\",\n\t\"Ц\":\"TS\",\n\t\"У\":\"U\",\n\t\"К\":\"K\",\n\t\"Е\":\"E\",\n\t\"Н\":\"N\",\n\t\"Г\":\"G\",\n\t\"Ш\":\"SH\",\n\t\"Щ\":\"SCH\",\n\t\"З\":\"Z\",\n\t\"Х\":\"H\",\n\t\"Ъ\":\"'\",\n\t\"ё\":\"yo\",\n\t\"й\":\"i\",\n\t\"ц\":\"ts\",\n\t\"у\":\"u\",\n\t\"к\":\"k\",\n\t\"е\":\"e\",\n\t\"н\":\"n\",\n\t\"г\":\"g\",\n\t\"ш\":\"sh\",\n\t\"щ\":\"sch\",\n\t\"з\":\"z\",\n\t\"х\":\"h\",\n\t\"ъ\":\"'\",\n\t\"Ф\":\"F\",\n\t\"Ы\":\"I\",\n\t\"В\":\"V\",\n\t\"А\":\"a\",\n\t\"П\":\"P\",\n\t\"Р\":\"R\",\n\t\"О\":\"O\",\n\t\"Л\":\"L\",\n\t\"Д\":\"D\",\n\t\"Ж\":\"ZH\",\n\t\"Э\":\"E\",\n\t\"ф\":\"f\",\n\t\"ы\":\"i\",\n\t\"в\":\"v\",\n\t\"а\":\"a\",\n\t\"п\":\"p\",\n\t\"р\":\"r\",\n\t\"о\":\"o\",\n\t\"л\":\"l\",\n\t\"д\":\"d\",\n\t\"ж\":\"zh\",\n\t\"э\":\"e\",\n\t\"Я\":\"Ya\",\n\t\"Ч\":\"CH\",\n\t\"С\":\"S\",\n\t\"М\":\"M\",\n\t\"И\":\"I\",\n\t\"Т\":\"T\",\n\t\"Ь\":\"'\",\n\t\"Б\":\"B\",\n\t\"Ю\":\"YU\",\n\t\"я\":\"ya\",\n\t\"ч\":\"ch\",\n\t\"с\":\"s\",\n\t\"м\":\"m\",\n\t\"и\":\"i\",\n\t\"т\":\"t\",\n\t\"ь\":\"'\",\n\t\"б\":\"b\",\n\t\"ю\":\"yu\"\n};\n\nexports.transliterate = function(str) {\n\treturn str.replace(/[^A-Za-z0-9\\[\\] ]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || ch\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/utils.js": {
            "title": "$:/core/modules/utils/utils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/utils.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDisplay a message, in colour if we're on a terminal\n*/\nexports.log = function(text,colour) {\n\tconsole.log($tw.node ? exports.terminalColour(colour) + text + exports.terminalColour() : text);\n};\n\nexports.terminalColour = function(colour) {\n\tif(!$tw.browser && $tw.node && process.stdout.isTTY) {\n\t\tif(colour) {\n\t\t\tvar code = exports.terminalColourLookup[colour];\n\t\t\tif(code) {\n\t\t\t\treturn \"\\x1b[\" + code + \"m\";\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"\\x1b[0m\"; // Cancel colour\n\t\t}\n\t}\n\treturn \"\";\n};\n\nexports.terminalColourLookup = {\n\t\"black\": \"0;30\",\n\t\"red\": \"0;31\",\n\t\"green\": \"0;32\",\n\t\"brown/orange\": \"0;33\",\n\t\"blue\": \"0;34\",\n\t\"purple\": \"0;35\",\n\t\"cyan\": \"0;36\",\n\t\"light gray\": \"0;37\"\n};\n\n/*\nDisplay a warning, in colour if we're on a terminal\n*/\nexports.warning = function(text) {\n\texports.log(text,\"brown/orange\");\n};\n\n/*\nReturn the integer represented by the str (string).\nReturn the dflt (default) parameter if str is not a base-10 number.\n*/\nexports.getInt = function(str,deflt) {\n\tvar i = parseInt(str,10);\n\treturn isNaN(i) ? deflt : i;\n}\n\n/*\nRepeatedly replaces a substring within a string. Like String.prototype.replace, but without any of the default special handling of $ sequences in the replace string\n*/\nexports.replaceString = function(text,search,replace) {\n\treturn text.replace(search,function() {\n\t\treturn replace;\n\t});\n};\n\n/*\nRepeats a string\n*/\nexports.repeat = function(str,count) {\n\tvar result = \"\";\n\tfor(var t=0;t<count;t++) {\n\t\tresult += str;\n\t}\n\treturn result;\n};\n\n/*\nTrim whitespace from the start and end of a string\nThanks to Steven Levithan, http://blog.stevenlevithan.com/archives/faster-trim-javascript\n*/\nexports.trim = function(str) {\n\tif(typeof str === \"string\") {\n\t\treturn str.replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n\t} else {\n\t\treturn str;\n\t}\n};\n\n/*\nFind the line break preceding a given position in a string\nReturns position immediately after that line break, or the start of the string\n*/\nexports.findPrecedingLineBreak = function(text,pos) {\n\tvar result = text.lastIndexOf(\"\\n\",pos - 1);\n\tif(result === -1) {\n\t\tresult = 0;\n\t} else {\n\t\tresult++;\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nFind the line break following a given position in a string\n*/\nexports.findFollowingLineBreak = function(text,pos) {\n\t// Cut to just past the following line break, or to the end of the text\n\tvar result = text.indexOf(\"\\n\",pos);\n\tif(result === -1) {\n\t\tresult = text.length;\n\t} else {\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nReturn the number of keys in an object\n*/\nexports.count = function(object) {\n\treturn Object.keys(object || {}).length;\n};\n\n/*\nCheck if an array is equal by value and by reference.\n*/\nexports.isArrayEqual = function(array1,array2) {\n\tif(array1 === array2) {\n\t\treturn true;\n\t}\n\tarray1 = array1 || [];\n\tarray2 = array2 || [];\n\tif(array1.length !== array2.length) {\n\t\treturn false;\n\t}\n\treturn array1.every(function(value,index) {\n\t\treturn value === array2[index];\n\t});\n};\n\n/*\nPush entries onto an array, removing them first if they already exist in the array\n\tarray: array to modify (assumed to be free of duplicates)\n\tvalue: a single value to push or an array of values to push\n*/\nexports.pushTop = function(array,value) {\n\tvar t,p;\n\tif($tw.utils.isArray(value)) {\n\t\t// Remove any array entries that are duplicated in the new values\n\t\tif(value.length !== 0) {\n\t\t\tif(array.length !== 0) {\n\t\t\t\tif(value.length < array.length) {\n\t\t\t\t\tfor(t=0; t<value.length; t++) {\n\t\t\t\t\t\tp = array.indexOf(value[t]);\n\t\t\t\t\t\tif(p !== -1) {\n\t\t\t\t\t\t\tarray.splice(p,1);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfor(t=array.length-1; t>=0; t--) {\n\t\t\t\t\t\tp = value.indexOf(array[t]);\n\t\t\t\t\t\tif(p !== -1) {\n\t\t\t\t\t\t\tarray.splice(t,1);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Push the values on top of the main array\n\t\t\tarray.push.apply(array,value);\n\t\t}\n\t} else {\n\t\tp = array.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tarray.splice(p,1);\n\t\t}\n\t\tarray.push(value);\n\t}\n\treturn array;\n};\n\n/*\nRemove entries from an array\n\tarray: array to modify\n\tvalue: a single value to remove, or an array of values to remove\n*/\nexports.removeArrayEntries = function(array,value) {\n\tvar t,p;\n\tif($tw.utils.isArray(value)) {\n\t\tfor(t=0; t<value.length; t++) {\n\t\t\tp = array.indexOf(value[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tarray.splice(p,1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tp = array.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tarray.splice(p,1);\n\t\t}\n\t}\n};\n\n/*\nCheck whether any members of a hashmap are present in another hashmap\n*/\nexports.checkDependencies = function(dependencies,changes) {\n\tvar hit = false;\n\t$tw.utils.each(changes,function(change,title) {\n\t\tif($tw.utils.hop(dependencies,title)) {\n\t\t\thit = true;\n\t\t}\n\t});\n\treturn hit;\n};\n\nexports.extend = function(object /* [, src] */) {\n\t$tw.utils.each(Array.prototype.slice.call(arguments, 1), function(source) {\n\t\tif(source) {\n\t\t\tfor(var property in source) {\n\t\t\t\tobject[property] = source[property];\n\t\t\t}\n\t\t}\n\t});\n\treturn object;\n};\n\nexports.deepCopy = function(object) {\n\tvar result,t;\n\tif($tw.utils.isArray(object)) {\n\t\t// Copy arrays\n\t\tresult = object.slice(0);\n\t} else if(typeof object === \"object\") {\n\t\tresult = {};\n\t\tfor(t in object) {\n\t\t\tif(object[t] !== undefined) {\n\t\t\t\tresult[t] = $tw.utils.deepCopy(object[t]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tresult = object;\n\t}\n\treturn result;\n};\n\nexports.extendDeepCopy = function(object,extendedProperties) {\n\tvar result = $tw.utils.deepCopy(object),t;\n\tfor(t in extendedProperties) {\n\t\tif(extendedProperties[t] !== undefined) {\n\t\t\tresult[t] = $tw.utils.deepCopy(extendedProperties[t]);\n\t\t}\n\t}\n\treturn result;\n};\n\nexports.deepFreeze = function deepFreeze(object) {\n\tvar property, key;\n\tif(object) {\n\t\tObject.freeze(object);\n\t\tfor(key in object) {\n\t\t\tproperty = object[key];\n\t\t\tif($tw.utils.hop(object,key) && (typeof property === \"object\") && !Object.isFrozen(property)) {\n\t\t\t\tdeepFreeze(property);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexports.slowInSlowOut = function(t) {\n\treturn (1 - ((Math.cos(t * Math.PI) + 1) / 2));\n};\n\nexports.formatDateString = function(date,template) {\n\tvar result = \"\",\n\t\tt = template,\n\t\tmatches = [\n\t\t\t[/^0hh12/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getHours12(date));\n\t\t\t}],\n\t\t\t[/^wYYYY/, function() {\n\t\t\t\treturn $tw.utils.getYearForWeekNo(date);\n\t\t\t}],\n\t\t\t[/^hh12/, function() {\n\t\t\t\treturn $tw.utils.getHours12(date);\n\t\t\t}],\n\t\t\t[/^DDth/, function() {\n\t\t\t\treturn date.getDate() + $tw.utils.getDaySuffix(date);\n\t\t\t}],\n\t\t\t[/^YYYY/, function() {\n\t\t\t\treturn date.getFullYear();\n\t\t\t}],\n\t\t\t[/^0hh/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getHours());\n\t\t\t}],\n\t\t\t[/^0mm/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMinutes());\n\t\t\t}],\n\t\t\t[/^0ss/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getSeconds());\n\t\t\t}],\n\t\t\t[/^0XXX/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMilliseconds());\n\t\t\t}],\n\t\t\t[/^0DD/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getDate());\n\t\t\t}],\n\t\t\t[/^0MM/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMonth()+1);\n\t\t\t}],\n\t\t\t[/^0WW/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getWeek(date));\n\t\t\t}],\n\t\t\t[/^ddd/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^mmm/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^DDD/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^MMM/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^TZD/, function() {\n\t\t\t\tvar tz = date.getTimezoneOffset(),\n\t\t\t\tatz = Math.abs(tz);\n\t\t\t\treturn (tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60);\n\t\t\t}],\n\t\t\t[/^wYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date) - 2000);\n\t\t\t}],\n\t\t\t[/^[ap]m/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toLowerCase();\n\t\t\t}],\n\t\t\t[/^hh/, function() {\n\t\t\t\treturn date.getHours();\n\t\t\t}],\n\t\t\t[/^mm/, function() {\n\t\t\t\treturn date.getMinutes();\n\t\t\t}],\n\t\t\t[/^ss/, function() {\n\t\t\t\treturn date.getSeconds();\n\t\t\t}],\n\t\t\t[/^XXX/, function() {\n\t\t\t\treturn date.getMilliseconds();\n\t\t\t}],\n\t\t\t[/^[AP]M/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toUpperCase();\n\t\t\t}],\n\t\t\t[/^DD/, function() {\n\t\t\t\treturn date.getDate();\n\t\t\t}],\n\t\t\t[/^MM/, function() {\n\t\t\t\treturn date.getMonth() + 1;\n\t\t\t}],\n\t\t\t[/^WW/, function() {\n\t\t\t\treturn $tw.utils.getWeek(date);\n\t\t\t}],\n\t\t\t[/^YY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear() - 2000);\n\t\t\t}]\n\t\t];\n\t// If the user wants everything in UTC, shift the datestamp\n\t// Optimize for format string that essentially means\n\t// 'return raw UTC (tiddlywiki style) date string.'\n\tif(t.indexOf(\"[UTC]\") == 0 ) {\n\t\tif(t == \"[UTC]YYYY0MM0DD0hh0mm0ssXXX\")\n\t\t\treturn $tw.utils.stringifyDate(new Date());\n\t\tvar offset = date.getTimezoneOffset() ; // in minutes\n\t\tdate = new Date(date.getTime()+offset*60*1000) ;\n\t\tt = t.substr(5) ;\n\t}\n\twhile(t.length){\n\t\tvar matchString = \"\";\n\t\t$tw.utils.each(matches, function(m) {\n\t\t\tvar match = m[0].exec(t);\n\t\t\tif(match) {\n\t\t\t\tmatchString = m[1].call();\n\t\t\t\tt = t.substr(match[0].length);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif(matchString) {\n\t\t\tresult += matchString;\n\t\t} else {\n\t\t\tresult += t.charAt(0);\n\t\t\tt = t.substr(1);\n\t\t}\n\t}\n\tresult = result.replace(/\\\\(.)/g,\"$1\");\n\treturn result;\n};\n\nexports.getAmPm = function(date) {\n\treturn $tw.language.getString(\"Date/Period/\" + (date.getHours() >= 12 ? \"pm\" : \"am\"));\n};\n\nexports.getDaySuffix = function(date) {\n\treturn $tw.language.getString(\"Date/DaySuffix/\" + date.getDate());\n};\n\nexports.getWeek = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week to calculate weekNo\n\tvar x = new Date(dt.getFullYear(),0,1);\n\tvar n = Math.floor((dt.getTime() - x.getTime()) / 86400000);\n\treturn Math.floor(n / 7) + 1;\n};\n\nexports.getYearForWeekNo = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week\n\treturn dt.getFullYear();\n};\n\nexports.getHours12 = function(date) {\n\tvar h = date.getHours();\n\treturn h > 12 ? h-12 : ( h > 0 ? h : 12 );\n};\n\n/*\nConvert a date delta in milliseconds into a string representation of \"23 seconds ago\", \"27 minutes ago\" etc.\n\tdelta: delta in milliseconds\nReturns an object with these members:\n\tdescription: string describing the delta period\n\tupdatePeriod: time in millisecond until the string will be inaccurate\n*/\nexports.getRelativeDate = function(delta) {\n\tvar futurep = false;\n\tif(delta < 0) {\n\t\tdelta = -1 * delta;\n\t\tfuturep = true;\n\t}\n\tvar units = [\n\t\t{name: \"Years\",   duration:      365 * 24 * 60 * 60 * 1000},\n\t\t{name: \"Months\",  duration: (365/12) * 24 * 60 * 60 * 1000},\n\t\t{name: \"Days\",    duration:            24 * 60 * 60 * 1000},\n\t\t{name: \"Hours\",   duration:                 60 * 60 * 1000},\n\t\t{name: \"Minutes\", duration:                      60 * 1000},\n\t\t{name: \"Seconds\", duration:                           1000}\n\t];\n\tfor(var t=0; t<units.length; t++) {\n\t\tvar result = Math.floor(delta / units[t].duration);\n\t\tif(result >= 2) {\n\t\t\treturn {\n\t\t\t\tdelta: delta,\n\t\t\t\tdescription: $tw.language.getString(\n\t\t\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/\" + units[t].name,\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{period: result.toString()}\n\t\t\t\t\t}\n\t\t\t\t),\n\t\t\t\tupdatePeriod: units[t].duration\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tdelta: delta,\n\t\tdescription: $tw.language.getString(\n\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/Second\",\n\t\t\t{variables:\n\t\t\t\t{period: \"1\"}\n\t\t\t}\n\t\t),\n\t\tupdatePeriod: 1000\n\t};\n};\n\n// Convert & to \"&amp;\", < to \"&lt;\", > to \"&gt;\", \" to \"&quot;\"\nexports.htmlEncode = function(s) {\n\tif(s) {\n\t\treturn s.toString().replace(/&/mg,\"&amp;\").replace(/</mg,\"&lt;\").replace(/>/mg,\"&gt;\").replace(/\\\"/mg,\"&quot;\");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n// Converts all HTML entities to their character equivalents\nexports.entityDecode = function(s) {\n\tvar converter = String.fromCodePoint || String.fromCharCode,\n\t\te = s.substr(1,s.length-2); // Strip the & and the ;\n\tif(e.charAt(0) === \"#\") {\n\t\tif(e.charAt(1) === \"x\" || e.charAt(1) === \"X\") {\n\t\t\treturn converter(parseInt(e.substr(2),16));\n\t\t} else {\n\t\t\treturn converter(parseInt(e.substr(1),10));\n\t\t}\n\t} else {\n\t\tvar c = $tw.config.htmlEntities[e];\n\t\tif(c) {\n\t\t\treturn converter(c);\n\t\t} else {\n\t\t\treturn s; // Couldn't convert it as an entity, just return it raw\n\t\t}\n\t}\n};\n\nexports.unescapeLineBreaks = function(s) {\n\treturn s.replace(/\\\\n/mg,\"\\n\").replace(/\\\\b/mg,\" \").replace(/\\\\s/mg,\"\\\\\").replace(/\\r/mg,\"\");\n};\n\n/*\n * Returns an escape sequence for given character. Uses \\x for characters <=\n * 0xFF to save space, \\u for the rest.\n *\n * The code needs to be in sync with th code template in the compilation\n * function for \"action\" nodes.\n */\n// Copied from peg.js, thanks to David Majda\nexports.escape = function(ch) {\n\tvar charCode = ch.charCodeAt(0);\n\tif(charCode <= 0xFF) {\n\t\treturn '\\\\x' + $tw.utils.pad(charCode.toString(16).toUpperCase());\n\t} else {\n\t\treturn '\\\\u' + $tw.utils.pad(charCode.toString(16).toUpperCase(),4);\n\t}\n};\n\n// Turns a string into a legal JavaScript string\n// Copied from peg.js, thanks to David Majda\nexports.stringify = function(s) {\n\t/*\n\t* ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a string\n\t* literal except for the closing quote character, backslash, carriage return,\n\t* line separator, paragraph separator, and line feed. Any character may\n\t* appear in the form of an escape sequence.\n\t*\n\t* For portability, we also escape all non-ASCII characters.\n\t*/\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/'/g, \"\\\\'\")              // single quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(/[\\x00-\\x1f\\x80-\\uFFFF]/g, exports.escape); // non-ASCII characters\n};\n\n// Turns a string into a legal JSON string\n// Derived from peg.js, thanks to David Majda\nexports.jsonStringify = function(s) {\n\t// See http://www.json.org/\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(/\\x08/g, '\\\\b')           // backspace\n\t\t.replace(/\\x0c/g, '\\\\f')           // formfeed\n\t\t.replace(/\\t/g, '\\\\t')             // tab\n\t\t.replace(/[\\x00-\\x1f\\x80-\\uFFFF]/g,function(s) {\n\t\t\treturn '\\\\u' + $tw.utils.pad(s.charCodeAt(0).toString(16).toUpperCase(),4);\n\t\t}); // non-ASCII characters\n};\n\n/*\nEscape the RegExp special characters with a preceding backslash\n*/\nexports.escapeRegExp = function(s) {\n    return s.replace(/[\\-\\/\\\\\\^\\$\\*\\+\\?\\.\\(\\)\\|\\[\\]\\{\\}]/g, '\\\\$&');\n};\n\n// Checks whether a link target is external, i.e. not a tiddler title\nexports.isLinkExternal = function(to) {\n\tvar externalRegExp = /^(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/i;\n\treturn externalRegExp.test(to);\n};\n\nexports.nextTick = function(fn) {\n/*global window: false */\n\tif(typeof process === \"undefined\") {\n\t\t// Apparently it would be faster to use postMessage - http://dbaron.org/log/20100309-faster-timeouts\n\t\twindow.setTimeout(fn,4);\n\t} else {\n\t\tprocess.nextTick(fn);\n\t}\n};\n\n/*\nConvert a hyphenated CSS property name into a camel case one\n*/\nexports.unHyphenateCss = function(propName) {\n\treturn propName.replace(/-([a-z])/gi, function(match0,match1) {\n\t\treturn match1.toUpperCase();\n\t});\n};\n\n/*\nConvert a camelcase CSS property name into a dashed one (\"backgroundColor\" --> \"background-color\")\n*/\nexports.hyphenateCss = function(propName) {\n\treturn propName.replace(/([A-Z])/g, function(match0,match1) {\n\t\treturn \"-\" + match1.toLowerCase();\n\t});\n};\n\n/*\nParse a text reference of one of these forms:\n* title\n* !!field\n* title!!field\n* title##index\n* etc\nReturns an object with the following fields, all optional:\n* title: tiddler title\n* field: tiddler field name\n* index: JSON property index\n*/\nexports.parseTextReference = function(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /(?:(.*?)!!(.+))|(?:(.*?)##(.+))|(.*)/mg,\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match && reTextRef.lastIndex === textRef.length) {\n\t\t// Return the parts\n\t\tif(match[1]) {\n\t\t\tresult.title = match[1];\n\t\t}\n\t\tif(match[2]) {\n\t\t\tresult.field = match[2];\n\t\t}\n\t\tif(match[3]) {\n\t\t\tresult.title = match[3];\n\t\t}\n\t\tif(match[4]) {\n\t\t\tresult.index = match[4];\n\t\t}\n\t\tif(match[5]) {\n\t\t\tresult.title = match[5];\n\t\t}\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/*\nChecks whether a string is a valid fieldname\n*/\nexports.isValidFieldName = function(name) {\n\tif(!name || typeof name !== \"string\") {\n\t\treturn false;\n\t}\n\tname = name.toLowerCase().trim();\n\tvar fieldValidatorRegEx = /^[a-z0-9\\-\\._]+$/mg;\n\treturn fieldValidatorRegEx.test(name);\n};\n\n/*\nExtract the version number from the meta tag or from the boot file\n*/\n\n// Browser version\nexports.extractVersionInfo = function() {\n\tif($tw.packageInfo) {\n\t\treturn $tw.packageInfo.version;\n\t} else {\n\t\tvar metatags = document.getElementsByTagName(\"meta\");\n\t\tfor(var t=0; t<metatags.length; t++) {\n\t\t\tvar m = metatags[t];\n\t\t\tif(m.name === \"tiddlywiki-version\") {\n\t\t\t\treturn m.content;\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the animation duration in ms\n*/\nexports.getAnimationDuration = function() {\n\treturn parseInt($tw.wiki.getTiddlerText(\"$:/config/AnimationDuration\",\"400\"),10);\n};\n\n/*\nHash a string to a number\nDerived from http://stackoverflow.com/a/15710692\n*/\nexports.hashString = function(str) {\n\treturn str.split(\"\").reduce(function(a,b) {\n\t\ta = ((a << 5) - a) + b.charCodeAt(0);\n\t\treturn a & a;\n\t},0);\n};\n\n/*\nDecode a base64 string\n*/\nexports.base64Decode = function(string64) {\n\tif($tw.browser) {\n\t\t// TODO\n\t\tthrow \"$tw.utils.base64Decode() doesn't work in the browser\";\n\t} else {\n\t\treturn (new Buffer(string64,\"base64\")).toString();\n\t}\n};\n\n/*\nConvert a hashmap into a tiddler dictionary format sequence of name:value pairs\n*/\nexports.makeTiddlerDictionary = function(data) {\n\tvar output = [];\n\tfor(var name in data) {\n\t\toutput.push(name + \": \" + data[name]);\n\t}\n\treturn output.join(\"\\n\");\n};\n\n/*\nHigh resolution microsecond timer for profiling\n*/\nexports.timer = function(base) {\n\tvar m;\n\tif($tw.node) {\n\t\tvar r = process.hrtime();\n\t\tm =  r[0] * 1e3 + (r[1] / 1e6);\n\t} else if(window.performance) {\n\t\tm = performance.now();\n\t} else {\n\t\tm = Date.now();\n\t}\n\tif(typeof base !== \"undefined\") {\n\t\tm = m - base;\n\t}\n\treturn m;\n};\n\n/*\nConvert text and content type to a data URI\n*/\nexports.makeDataUri = function(text,type) {\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar typeInfo = $tw.config.contentTypeInfo[type] || $tw.config.contentTypeInfo[\"text/plain\"],\n\t\tisBase64 = typeInfo.encoding === \"base64\",\n\t\tparts = [];\n\tparts.push(\"data:\");\n\tparts.push(type);\n\tparts.push(isBase64 ? \";base64\" : \"\");\n\tparts.push(\",\");\n\tparts.push(isBase64 ? text : encodeURIComponent(text));\n\treturn parts.join(\"\");\n};\n\n/*\nUseful for finding out the fully escaped CSS selector equivalent to a given tag. For example:\n\n$tw.utils.tagToCssSelector(\"$:/tags/Stylesheet\") --> tc-tagged-\\%24\\%3A\\%2Ftags\\%2FStylesheet\n*/\nexports.tagToCssSelector = function(tagName) {\n\treturn \"tc-tagged-\" + encodeURIComponent(tagName).replace(/[!\"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^`{\\|}~,]/mg,function(c) {\n\t\treturn \"\\\\\" + c;\n\t});\n};\n\n/*\nIE does not have sign function\n*/\nexports.sign = Math.sign || function(x) {\n\tx = +x; // convert to a number\n\tif (x === 0 || isNaN(x)) {\n\t\treturn x;\n\t}\n\treturn x > 0 ? 1 : -1;\n};\n\n/*\nIE does not have an endsWith function\n*/\nexports.strEndsWith = function(str,ending,position) {\n\tif(str.endsWith) {\n\t\treturn str.endsWith(ending,position);\n\t} else {\n\t\tif (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > str.length) {\n\t\t\tposition = str.length;\n\t\t}\n\t\tposition -= ending.length;\n\t\tvar lastIndex = str.indexOf(ending, position);\n\t\treturn lastIndex !== -1 && lastIndex === position;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/widgets/action-createtiddler.js": {
            "title": "$:/core/modules/widgets/action-createtiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-createtiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to create a new tiddler with a unique name and specified fields.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CreateTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCreateTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCreateTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nCreateTiddlerWidget.prototype.execute = function() {\n\tthis.actionBaseTitle = this.getAttribute(\"$basetitle\");\n\tthis.actionSaveTitle = this.getAttribute(\"$savetitle\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nCreateTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nCreateTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar title = this.wiki.generateNewTitle(this.actionBaseTitle),\n\t\tfields = {},\n\t\tcreationFields,\n\t\tmodificationFields;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tfields[name] = attribute;\n\t\t}\n\t});\n\tif(this.actionTimestamp) {\n\t\tcreationFields = this.wiki.getCreationFields();\n\t\tmodificationFields = this.wiki.getModificationFields();\n\t}\n\tvar tiddler = this.wiki.addTiddler(new $tw.Tiddler(creationFields,fields,modificationFields,{title: title}));\n\tif(this.actionSaveTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveTitle,title,this.getVariable(\"currentTiddler\"));\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-createtiddler\"] = CreateTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletefield.js": {
            "title": "$:/core/modules/widgets/action-deletefield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletefield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete fields of a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\ttiddler = this.wiki.getTiddler(self.actionTiddler),\n\t\tremoveFields = {},\n\t\thasChanged = false;\n\tif(this.actionField) {\n\t\tremoveFields[this.actionField] = undefined;\n\t\tif(this.actionField in tiddler.fields) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(tiddler) {\n\t\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\t\tif(name.charAt(0) !== \"$\" && name !== \"title\") {\n\t\t\t\tremoveFields[name] = undefined;\n\t\t\t\thasChanged = true;\n\t\t\t}\n\t\t});\n\t\tif(hasChanged) {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,removeFields,this.wiki.getModificationFields()));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletefield\"] = DeleteFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletetiddler.js": {
            "title": "$:/core/modules/widgets/action-deletetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletetiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteTiddlerWidget.prototype.execute = function() {\n\tthis.actionFilter = this.getAttribute(\"$filter\");\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$filter\"] || changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar tiddlers = [];\n\tif(this.actionFilter) {\n\t\ttiddlers = this.wiki.filterTiddlers(this.actionFilter,this);\n\t}\n\tif(this.actionTiddler) {\n\t\ttiddlers.push(this.actionTiddler);\n\t}\n\tfor(var t=0; t<tiddlers.length; t++) {\n\t\tthis.wiki.deleteTiddler(tiddlers[t]);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletetiddler\"] = DeleteTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-listops.js": {
            "title": "$:/core/modules/widgets/action-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-listops.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to apply list operations to any tiddler field (defaults to the 'list' field of the current tiddler)\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar ActionListopsWidget = function(parseTreeNode, options) {\n\tthis.initialise(parseTreeNode, options);\n};\n/**\n * Inherit from the base widget class\n */\nActionListopsWidget.prototype = new Widget();\n/**\n * Render this widget into the DOM\n */\nActionListopsWidget.prototype.render = function(parent, nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n/**\n * Compute the internal state of the widget\n */\nActionListopsWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.target = this.getAttribute(\"$tiddler\", this.getVariable(\n\t\t\"currentTiddler\"));\n\tthis.filter = this.getAttribute(\"$filter\");\n\tthis.subfilter = this.getAttribute(\"$subfilter\");\n\tthis.listField = this.getAttribute(\"$field\", \"list\");\n\tthis.listIndex = this.getAttribute(\"$index\");\n\tthis.filtertags = this.getAttribute(\"$tags\");\n};\n/**\n * \tRefresh the widget by ensuring our attributes are up to date\n */\nActionListopsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.$tiddler || changedAttributes.$filter ||\n\t\tchangedAttributes.$subfilter || changedAttributes.$field ||\n\t\tchangedAttributes.$index || changedAttributes.$tags) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n/**\n * \tInvoke the action associated with this widget\n */\nActionListopsWidget.prototype.invokeAction = function(triggeringWidget,\n\tevent) {\n\t//Apply the specified filters to the lists\n\tvar field = this.listField,\n\t\tindex,\n\t\ttype = \"!!\",\n\t\tlist = this.listField;\n\tif(this.listIndex) {\n\t\tfield = undefined;\n\t\tindex = this.listIndex;\n\t\ttype = \"##\";\n\t\tlist = this.listIndex;\n\t}\n\tif(this.filter) {\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(this.filter, this)));\n\t}\n\tif(this.subfilter) {\n\t\tvar subfilter = \"[list[\" + this.target + type + list + \"]] \" + this.subfilter;\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(subfilter, this)));\n\t}\n\tif(this.filtertags) {\n\t\tvar tiddler = this.wiki.getTiddler(this.target),\n\t\t\toldtags = tiddler ? (tiddler.fields.tags || []).slice(0) : [],\n\t\t\ttagfilter = \"[list[\" + this.target + \"!!tags]] \" + this.filtertags,\n\t\t\tnewtags = this.wiki.filterTiddlers(tagfilter,this);\n\t\tif($tw.utils.stringifyList(oldtags.sort()) !== $tw.utils.stringifyList(newtags.sort())) {\n\t\t\tthis.wiki.setText(this.target,\"tags\",undefined,$tw.utils.stringifyList(newtags));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-listops\"] = ActionListopsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-navigate.js": {
            "title": "$:/core/modules/widgets/action-navigate.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-navigate.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to navigate to a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigateWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigateWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigateWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigateWidget.prototype.execute = function() {\n\tthis.actionTo = this.getAttribute(\"$to\");\n\tthis.actionScroll = this.getAttribute(\"$scroll\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nNavigateWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$to\"] || changedAttributes[\"$scroll\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nNavigateWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar bounds = triggeringWidget && triggeringWidget.getBoundingClientRect && triggeringWidget.getBoundingClientRect(),\n\t\tsuppressNavigation = event.metaKey || event.ctrlKey || (event.button === 1);\n\tif(this.actionScroll === \"yes\") {\n\t\tsuppressNavigation = false;\n\t} else if(this.actionScroll === \"no\") {\n\t\tsuppressNavigation = true;\n\t}\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.actionTo === undefined ? this.getVariable(\"currentTiddler\") : this.actionTo,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: triggeringWidget,\n\t\tnavigateFromClientRect: bounds && { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: suppressNavigation\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-navigate\"] = NavigateWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-sendmessage.js": {
            "title": "$:/core/modules/widgets/action-sendmessage.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-sendmessage.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to send a message\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SendMessageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSendMessageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSendMessageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSendMessageWidget.prototype.execute = function() {\n\tthis.actionMessage = this.getAttribute(\"$message\");\n\tthis.actionParam = this.getAttribute(\"$param\");\n\tthis.actionName = this.getAttribute(\"$name\");\n\tthis.actionValue = this.getAttribute(\"$value\",\"\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSendMessageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSendMessageWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Get the string parameter\n\tvar param = this.actionParam;\n\t// Assemble the attributes as a hashmap\n\tvar paramObject = Object.create(null);\n\tvar count = 0;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparamObject[name] = attribute;\n\t\t\tcount++;\n\t\t}\n\t});\n\t// Add name/value pair if present\n\tif(this.actionName) {\n\t\tparamObject[this.actionName] = this.actionValue;\n\t}\n\t// Dispatch the message\n\tthis.dispatchEvent({\n\t\ttype: this.actionMessage,\n\t\tparam: param,\n\t\tparamObject: paramObject,\n\t\ttiddlerTitle: this.getVariable(\"currentTiddler\"),\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tevent: event\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-sendmessage\"] = SendMessageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-setfield.js": {
            "title": "$:/core/modules/widgets/action-setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-setfield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to set a single field or index on a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n\tthis.actionIndex = this.getAttribute(\"$index\");\n\tthis.actionValue = this.getAttribute(\"$value\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSetFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"] || changedAttributes[\"$field\"] || changedAttributes[\"$index\"] || changedAttributes[\"$value\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSetFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\toptions = {};\n\toptions.suppressTimestamp = !this.actionTimestamp;\n\tif((typeof this.actionField == \"string\") || (typeof this.actionIndex == \"string\")  || (typeof this.actionValue == \"string\")) {\n\t\tthis.wiki.setText(this.actionTiddler,this.actionField,this.actionIndex,this.actionValue,options);\n\t}\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tself.wiki.setText(self.actionTiddler,name,undefined,attribute,options);\n\t\t}\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-setfield\"] = SetFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/browse.js": {
            "title": "$:/core/modules/widgets/browse.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/browse.js\ntype: application/javascript\nmodule-type: widget\n\nBrowse widget for browsing for files to import\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar BrowseWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nBrowseWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nBrowseWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"file\");\n\tif(this.browseMultiple) {\n\t\tdomNode.setAttribute(\"multiple\",\"multiple\");\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\t// Nw.js supports \"nwsaveas\" to force a \"save as\" dialogue that allows a new or existing file to be selected\n\tif(this.nwsaveas) {\n\t\tdomNode.setAttribute(\"nwsaveas\",this.nwsaveas);\n\t}\n\t// Nw.js supports \"webkitdirectory\" and \"nwdirectory\" to allow a directory to be selected\n\tif(this.webkitdirectory) {\n\t\tdomNode.setAttribute(\"webkitdirectory\",this.webkitdirectory);\n\t}\n\tif(this.nwdirectory) {\n\t\tdomNode.setAttribute(\"nwdirectory\",this.nwdirectory);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"change\",function (event) {\n\t\tif(self.message) {\n\t\t\tself.dispatchEvent({type: self.message, param: self.param, files: event.target.files});\n\t\t} else {\n\t\t\tself.wiki.readFiles(event.target.files,{\n\t\t\t\tcallback: function(tiddlerFieldsArray) {\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t\t\t},\n\t\t\t\tdeserializer: self.deserializer\n\t\t\t});\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nBrowseWidget.prototype.execute = function() {\n\tthis.browseMultiple = this.getAttribute(\"multiple\");\n\tthis.deserializer = this.getAttribute(\"deserializer\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.nwsaveas = this.getAttribute(\"nwsaveas\");\n\tthis.webkitdirectory = this.getAttribute(\"webkitdirectory\");\n\tthis.nwdirectory = this.getAttribute(\"nwdirectory\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nBrowseWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.browse = BrowseWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/button.js": {
            "title": "$:/core/modules/widgets/button.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/button.js\ntype: application/javascript\nmodule-type: widget\n\nButton widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ButtonWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nButtonWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nButtonWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar tag = \"button\";\n\tif(this.buttonTag && $tw.config.htmlUnsafeElements.indexOf(this.buttonTag) === -1) {\n\t\ttag = this.buttonTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = this[\"class\"].split(\" \") || [],\n\t\tisPoppedUp = this.popup && this.isPoppedUp();\n\tif(this.selectedClass) {\n\t\tif(this.set && this.setTo && this.isSelected()) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t\tif(isPoppedUp) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t}\n\tif(isPoppedUp) {\n\t\t$tw.utils.pushTop(classes,\"tc-popup-handle\");\n\t}\n\tdomNode.className = classes.join(\" \");\n\t// Assign other attributes\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"click\",function (event) {\n\t\tvar handled = false;\n\t\tif(self.invokeActions(self,event)) {\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.to) {\n\t\t\tself.navigateTo(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.message) {\n\t\t\tself.dispatchMessage(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.popup) {\n\t\t\tself.triggerPopup(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.set) {\n\t\t\tself.setTiddler();\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.actions) {\n\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t}\n\t\tif(handled) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t}\n\t\treturn handled;\n\t},false);\n\t// Make it draggable if required\n\tif(this.dragTiddler || this.dragFilter) {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.dragTiddler;},\n\t\t\tdragFilterFn: function() {return self.dragFilter;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nWe don't allow actions to propagate because we trigger actions ourselves\n*/\nButtonWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nButtonWidget.prototype.getBoundingClientRect = function() {\n\treturn this.domNodes[0].getBoundingClientRect();\n};\n\nButtonWidget.prototype.isSelected = function() {\n    return this.wiki.getTextReference(this.set,this.defaultSetValue,this.getVariable(\"currentTiddler\")) === this.setTo;\n};\n\nButtonWidget.prototype.isPoppedUp = function() {\n\tvar tiddler = this.wiki.getTiddler(this.popup);\n\tvar result = tiddler && tiddler.fields.text ? $tw.popup.readPopupState(tiddler.fields.text) : false;\n\treturn result;\n};\n\nButtonWidget.prototype.navigateTo = function(event) {\n\tvar bounds = this.getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tevent: event\n\t});\n};\n\nButtonWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\"), event: event});\n};\n\nButtonWidget.prototype.triggerPopup = function(event) {\n\t$tw.popup.triggerPopup({\n\t\tdomNode: this.domNodes[0],\n\t\ttitle: this.popup,\n\t\twiki: this.wiki\n\t});\n};\n\nButtonWidget.prototype.setTiddler = function() {\n\tthis.wiki.setTextReference(this.set,this.setTo,this.getVariable(\"currentTiddler\"));\n};\n\n/*\nCompute the internal state of the widget\n*/\nButtonWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.to = this.getAttribute(\"to\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.set = this.getAttribute(\"set\");\n\tthis.setTo = this.getAttribute(\"setTo\");\n\tthis.popup = this.getAttribute(\"popup\");\n\tthis.hover = this.getAttribute(\"hover\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.style = this.getAttribute(\"style\");\n\tthis.selectedClass = this.getAttribute(\"selectedClass\");\n\tthis.defaultSetValue = this.getAttribute(\"default\",\"\");\n\tthis.buttonTag = this.getAttribute(\"tag\");\n\tthis.dragTiddler = this.getAttribute(\"dragTiddler\");\n\tthis.dragFilter = this.getAttribute(\"dragFilter\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nButtonWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedAttributes.message || changedAttributes.param || changedAttributes.set || changedAttributes.setTo || changedAttributes.popup || changedAttributes.hover || changedAttributes[\"class\"] || changedAttributes.selectedClass || changedAttributes.style || changedAttributes.dragFilter || changedAttributes.dragTiddler || (this.set && changedTiddlers[this.set]) || (this.popup && changedTiddlers[this.popup])) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.button = ButtonWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/checkbox.js": {
            "title": "$:/core/modules/widgets/checkbox.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/checkbox.js\ntype: application/javascript\nmodule-type: widget\n\nCheckbox widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CheckboxWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCheckboxWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCheckboxWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",this.checkboxClass);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"checkbox\");\n\tif(this.getValue()) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nCheckboxWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.checkboxTitle);\n\tif(tiddler) {\n\t\tif(this.checkboxTag) {\n\t\t\tif(this.checkboxInvertTag) {\n\t\t\t\treturn !tiddler.hasTag(this.checkboxTag);\n\t\t\t} else {\n\t\t\t\treturn tiddler.hasTag(this.checkboxTag);\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tvar value;\n\t\t\tif($tw.utils.hop(tiddler.fields,this.checkboxField)) {\n\t\t\t\tvalue = tiddler.fields[this.checkboxField] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.checkboxDefault || \"\";\n\t\t\t}\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxIndex) {\n\t\t\tvar value = this.wiki.extractTiddlerDataItem(tiddler,this.checkboxIndex,this.checkboxDefault || \"\");\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif(this.checkboxTag) {\n\t\t\treturn false;\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tif(this.checkboxDefault === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(this.checkboxDefault === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nCheckboxWidget.prototype.handleChangeEvent = function(event) {\n\tvar checked = this.inputDomNode.checked,\n\t\ttiddler = this.wiki.getTiddler(this.checkboxTitle),\n\t\tfallbackFields = {text: \"\"},\n\t\tnewFields = {title: this.checkboxTitle},\n\t\thasChanged = false,\n\t\ttagCheck = false,\n\t\thasTag = tiddler && tiddler.hasTag(this.checkboxTag),\n\t\tvalue = checked ? this.checkboxChecked : this.checkboxUnchecked;\n\tif(this.checkboxTag && this.checkboxInvertTag === \"yes\") {\n\t\ttagCheck = hasTag === checked;\n\t} else {\n\t\ttagCheck = hasTag !== checked;\n\t}\n\t// Set the tag if specified\n\tif(this.checkboxTag && (!tiddler || tagCheck)) {\n\t\tnewFields.tags = tiddler ? (tiddler.fields.tags || []).slice(0) : [];\n\t\tvar pos = newFields.tags.indexOf(this.checkboxTag);\n\t\tif(pos !== -1) {\n\t\t\tnewFields.tags.splice(pos,1);\n\t\t}\n\t\tif(this.checkboxInvertTag === \"yes\" && !checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t} else if(this.checkboxInvertTag !== \"yes\" && checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t}\n\t\thasChanged = true;\n\t}\n\t// Set the field if specified\n\tif(this.checkboxField) {\n\t\tif(!tiddler || tiddler.fields[this.checkboxField] !== value) {\n\t\t\tnewFields[this.checkboxField] = value;\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\t// Set the index if specified\n\tif(this.checkboxIndex) {\n\t\tvar indexValue = this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxIndex);\n\t\tif(!tiddler || indexValue !== value) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(hasChanged) {\n\t\tif(this.checkboxIndex) {\n\t\t\tthis.wiki.setText(this.checkboxTitle,\"\",this.checkboxIndex,value);\n\t\t} else {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),fallbackFields,tiddler,newFields,this.wiki.getModificationFields()));\n\t\t}\n\t}\n\t// Trigger actions\n\tif(this.checkboxActions) {\n\t\tthis.invokeActionString(this.checkboxActions,this,event);\n\t}\n\tif(this.checkboxUncheckActions && !checked) {\n\t\tthis.invokeActionString(this.checkboxUncheckActions,this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCheckboxWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.checkboxActions = this.getAttribute(\"actions\");\n\tthis.checkboxUncheckActions = this.getAttribute(\"uncheckactions\");\n\tthis.checkboxTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.checkboxTag = this.getAttribute(\"tag\");\n\tthis.checkboxField = this.getAttribute(\"field\");\n\tthis.checkboxIndex = this.getAttribute(\"index\");\n\tthis.checkboxChecked = this.getAttribute(\"checked\");\n\tthis.checkboxUnchecked = this.getAttribute(\"unchecked\");\n\tthis.checkboxDefault = this.getAttribute(\"default\");\n\tthis.checkboxClass = this.getAttribute(\"class\",\"\");\n\tthis.checkboxInvertTag = this.getAttribute(\"invertTag\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCheckboxWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.tag || changedAttributes.invertTag || changedAttributes.field || changedAttributes.index || changedAttributes.checked || changedAttributes.unchecked || changedAttributes[\"default\"] || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.checkboxTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue();\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.checkbox = CheckboxWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/codeblock.js": {
            "title": "$:/core/modules/widgets/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/codeblock.js\ntype: application/javascript\nmodule-type: widget\n\nCode block node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CodeBlockWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCodeBlockWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCodeBlockWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar codeNode = this.document.createElement(\"code\"),\n\t\tdomNode = this.document.createElement(\"pre\");\n\tcodeNode.appendChild(this.document.createTextNode(this.getAttribute(\"code\")));\n\tdomNode.appendChild(codeNode);\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n\tif(this.postRender) {\n\t\tthis.postRender();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCodeBlockWidget.prototype.execute = function() {\n\tthis.language = this.getAttribute(\"language\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCodeBlockWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.codeblock = CodeBlockWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/count.js": {
            "title": "$:/core/modules/widgets/count.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/count.js\ntype: application/javascript\nmodule-type: widget\n\nCount widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CountWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCountWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCountWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.currentCount);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nCountWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Execute the filter\n\tif(this.filter) {\n\t\tthis.currentCount = this.wiki.filterTiddlers(this.filter,this).length;\n\t} else {\n\t\tthis.currentCount = undefined;\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCountWidget.prototype.refresh = function(changedTiddlers) {\n\t// Re-execute the filter to get the count\n\tthis.computeAttributes();\n\tvar oldCount = this.currentCount;\n\tthis.execute();\n\tif(this.currentCount !== oldCount) {\n\t\t// Regenerate and rerender the widget and replace the existing DOM node\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n\n};\n\nexports.count = CountWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/diff-text.js": {
            "title": "$:/core/modules/widgets/diff-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/diff-text.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display a diff between two texts\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget,\n\tdmp = require(\"$:/core/modules/utils/diff-match-patch/diff_match_patch.js\");\n\nvar DiffTextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDiffTextWidget.prototype = new Widget();\n\nDiffTextWidget.prototype.invisibleCharacters = {\n\t\"\\n\": \"↩︎\\n\",\n\t\"\\r\": \"⇠\",\n\t\"\\t\": \"⇥\\t\"\n};\n\n/*\nRender this widget into the DOM\n*/\nDiffTextWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create the diff\n\tvar dmpObject = new dmp.diff_match_patch(),\n\t\tdiffs = dmpObject.diff_main(this.getAttribute(\"source\"),this.getAttribute(\"dest\"));\n\t// Apply required cleanup\n\tswitch(this.getAttribute(\"cleanup\",\"semantic\")) {\n\t\tcase \"none\":\n\t\t\t// No cleanup\n\t\t\tbreak;\n\t\tcase \"efficiency\":\n\t\t\tdmpObject.diff_cleanupEfficiency(diffs);\n\t\t\tbreak;\n\t\tdefault: // case \"semantic\"\n\t\t\tdmpObject.diff_cleanupSemantic(diffs);\n\t\t\tbreak;\n\t}\n\t// Create the elements\n\tvar domContainer = this.document.createElement(\"div\"), \n\t\tdomDiff = this.createDiffDom(diffs);\n\tparent.insertBefore(domContainer,nextSibling);\n\t// Set variables\n\tthis.setVariable(\"diff-count\",diffs.reduce(function(acc,diff) {\n\t\tif(diff[0] !== dmp.DIFF_EQUAL) {\n\t\t\tacc++;\n\t\t}\n\t\treturn acc;\n\t},0).toString());\n\t// Render child widgets\n\tthis.renderChildren(domContainer,null);\n\t// Render the diff\n\tdomContainer.appendChild(domDiff);\n\t// Save our container\n\tthis.domNodes.push(domContainer);\n};\n\n/*\nCreate DOM elements representing a list of diffs\n*/\nDiffTextWidget.prototype.createDiffDom = function(diffs) {\n\tvar self = this;\n\t// Create the element and assign the attributes\n\tvar domPre = this.document.createElement(\"pre\"),\n\t\tdomCode = this.document.createElement(\"code\");\n\t$tw.utils.each(diffs,function(diff) {\n\t\tvar tag = diff[0] === dmp.DIFF_INSERT ? \"ins\" : (diff[0] === dmp.DIFF_DELETE ? \"del\" : \"span\"),\n\t\t\tclassName = diff[0] === dmp.DIFF_INSERT ? \"tc-diff-insert\" : (diff[0] === dmp.DIFF_DELETE ? \"tc-diff-delete\" : \"tc-diff-equal\"),\n\t\t\tdom = self.document.createElement(tag),\n\t\t\ttext = diff[1],\n\t\t\tcurrPos = 0,\n\t\t\tre = /([\\x00-\\x1F])/mg,\n\t\t\tmatch = re.exec(text),\n\t\t\tspan,\n\t\t\tprintable;\n\t\tdom.className = className;\n\t\twhile(match) {\n\t\t\tif(currPos < match.index) {\n\t\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos,match.index)));\n\t\t\t}\n\t\t\tspan = self.document.createElement(\"span\");\n\t\t\tspan.className = \"tc-diff-invisible\";\n\t\t\tprintable = self.invisibleCharacters[match[0]] || (\"[0x\" + match[0].charCodeAt(0).toString(16) + \"]\");\n\t\t\tspan.appendChild(self.document.createTextNode(printable));\n\t\t\tdom.appendChild(span);\n\t\t\tcurrPos = match.index + match[0].length;\n\t\t\tmatch = re.exec(text);\n\t\t}\n\t\tif(currPos < text.length) {\n\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos)));\n\t\t}\n\t\tdomCode.appendChild(dom);\n\t});\n\tdomPre.appendChild(domCode);\n\treturn domPre;\n};\n\n/*\nCompute the internal state of the widget\n*/\nDiffTextWidget.prototype.execute = function() {\n\t// Make child widgets\n\tvar parseTreeNodes;\n\tif(this.parseTreeNode && this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\tparseTreeNodes = this.parseTreeNode.children;\n\t} else {\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: \"$:/language/Diffs/CountMessage\"}\n\t\t\t}\n\t\t}];\n\t}\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDiffTextWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.dest || changedAttributes.cleanup) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports[\"diff-text\"] = DiffTextWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/draggable.js": {
            "title": "$:/core/modules/widgets/draggable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/draggable.js\ntype: application/javascript\nmodule-type: widget\n\nDraggable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DraggableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDraggableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDraggableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Sanitise the specified tag\n\tvar tag = this.draggableTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"div\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [\"tc-draggable\"];\n\tif(this.draggableClasses) {\n\t\tclasses.push(this.draggableClasses);\n\t}\n\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t// Add event handlers\n\t$tw.utils.makeDraggable({\n\t\tdomNode: domNode,\n\t\tdragTiddlerFn: function() {return self.getAttribute(\"tiddler\");},\n\t\tdragFilterFn: function() {return self.getAttribute(\"filter\");},\n\t\tstartActions: self.startActions,\n\t\tendActions: self.endActions,\n\t\twidget: this\n\t});\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nDraggableWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.draggableTag = this.getAttribute(\"tag\",\"div\");\n\tthis.draggableClasses = this.getAttribute(\"class\");\n\tthis.startActions = this.getAttribute(\"startactions\");\n\tthis.endActions = this.getAttribute(\"endactions\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDraggableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedTiddlers.tag || changedTiddlers[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.draggable = DraggableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/droppable.js": {
            "title": "$:/core/modules/widgets/droppable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/droppable.js\ntype: application/javascript\nmodule-type: widget\n\nDroppable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DroppableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDroppableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDroppableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.droppableTag && $tw.config.htmlUnsafeElements.indexOf(this.droppableTag) === -1) {\n\t\ttag = this.droppableTag;\n\t}\n\t// Create element and assign classes\n\tvar domNode = this.document.createElement(tag),\n\t\tclasses = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-droppable\");\n\tdomNode.className = classes.join(\" \");\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"}\n\t]);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDroppableWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDroppableWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally. The hacky second condition is to resolve a problem with Firefox whereby there is an erroneous dragenter event if the node being dragged is within the dropzone\n\tif(this.currentlyEntered.length === 0 || (this.currentlyEntered.length === 1 && this.currentlyEntered[0] === $tw.dragInProgress)) {\n\t\tthis.currentlyEntered = [];\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDroppableWidget.prototype.handleDragEnterEvent  = function(event) {\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\t// Set the drop effect\n\tevent.dataTransfer.dropEffect = this.droppableEffect;\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this;\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\tvar dataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Try to import the various data types we understand\n\t$tw.utils.importDataTransfer(dataTransfer,null,function(fieldsArray) {\n\t\tfieldsArray.forEach(function(fields) {\n\t\t\tself.performActions(fields.title || fields.text,event);\n\t\t});\n\t});\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.performActions = function(title,event) {\n\tif(this.droppableActions) {\n\t\tvar modifierKey = event.ctrlKey && ! event.shiftKey ? \"ctrl\" : event.shiftKey && !event.ctrlKey ? \"shift\" : \n\t\t\t\tevent.ctrlKey && event.shiftKey ? \"ctrl-shift\" : \"normal\" ;\n\t\tthis.invokeActionString(this.droppableActions,this,event,{actionTiddler: title, modifier: modifierKey});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDroppableWidget.prototype.execute = function() {\n\tthis.droppableActions = this.getAttribute(\"actions\");\n\tthis.droppableEffect = this.getAttribute(\"effect\",\"copy\");\n\tthis.droppableTag = this.getAttribute(\"tag\");\n\tthis.droppableClass = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDroppableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"] || changedAttributes.tag) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.droppable = DroppableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/dropzone.js": {
            "title": "$:/core/modules/widgets/dropzone.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/dropzone.js\ntype: application/javascript\nmodule-type: widget\n\nDropzone widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DropZoneWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDropZoneWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDropZoneWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"div\");\n\tdomNode.className = \"tc-dropzone\";\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"},\n\t\t{name: \"paste\", handlerObject: this, handlerMethod: \"handlePasteEvent\"}\n\t]);\n\tdomNode.addEventListener(\"click\",function (event) {\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDropZoneWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally\n\tif(this.currentlyEntered.length === 0) {\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDropZoneWidget.prototype.handleDragEnterEvent  = function(event) {\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\tevent.dataTransfer.dropEffect = \"copy\"; // Explicitly show this is a copy\n};\n\nDropZoneWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n};\n\nDropZoneWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t};\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tvar self = this,\n\t\tdataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Import any files in the drop\n\tvar numFiles = 0;\n\tif(dataTransfer.files) {\n\t\tnumFiles = this.wiki.readFiles(dataTransfer.files,{\n\t\t\tcallback: readFileCallback,\n\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t});\n\t}\n\t// Try to import the various data types we understand\n\tif(numFiles === 0) {\n\t\t$tw.utils.importDataTransfer(dataTransfer,this.wiki.generateNewTitle(\"Untitled\"),readFileCallback);\n\t}\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handlePasteEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t};\n\t// Let the browser handle it if we're in a textarea or input box\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) == -1) {\n\t\tvar self = this,\n\t\t\titems = event.clipboardData.items;\n\t\t// Enumerate the clipboard items\n\t\tfor(var t = 0; t<items.length; t++) {\n\t\t\tvar item = items[t];\n\t\t\tif(item.kind === \"file\") {\n\t\t\t\t// Import any files\n\t\t\t\tthis.wiki.readFile(item.getAsFile(),{\n\t\t\t\t\tcallback: readFileCallback,\n\t\t\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t\t\t});\n\t\t\t} else if(item.kind === \"string\") {\n\t\t\t\t// Create tiddlers from string items\n\t\t\t\tvar type = item.type;\n\t\t\t\titem.getAsString(function(str) {\n\t\t\t\t\tvar tiddlerFields = {\n\t\t\t\t\t\ttitle: self.wiki.generateNewTitle(\"Untitled\"),\n\t\t\t\t\t\ttext: str,\n\t\t\t\t\t\ttype: type\n\t\t\t\t\t};\n\t\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\t\tconsole.log(\"Importing string '\" + str + \"', type: '\" + type + \"'\");\n\t\t\t\t\t}\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify([tiddlerFields])});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t// Tell the browser that we've handled the paste\n\t\tevent.stopPropagation();\n\t\tevent.preventDefault();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDropZoneWidget.prototype.execute = function() {\n\tthis.dropzoneDeserializer = this.getAttribute(\"deserializer\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDropZoneWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.dropzone = DropZoneWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-binary.js": {
            "title": "$:/core/modules/widgets/edit-binary.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-binary.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-binary widget; placeholder for editing binary tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBinaryWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBinaryWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBinaryWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBinaryWidget.prototype.execute = function() {\n\t// Construct the child widgets\n\tthis.makeChildWidgets([{\n\t\ttype: \"transclude\",\n\t\tattributes: {\n\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t}\n\t}]);\n};\n\n/*\nRefresh by refreshing our child widget\n*/\nEditBinaryWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"edit-binary\"] = EditBinaryWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-bitmap.js": {
            "title": "$:/core/modules/widgets/edit-bitmap.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-bitmap.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-bitmap widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Default image sizes\nvar DEFAULT_IMAGE_WIDTH = 600,\n\tDEFAULT_IMAGE_HEIGHT = 370;\n\n// Configuration tiddlers\nvar LINE_WIDTH_TITLE = \"$:/config/BitmapEditor/LineWidth\",\n\tLINE_COLOUR_TITLE = \"$:/config/BitmapEditor/Colour\",\n\tLINE_OPACITY_TITLE = \"$:/config/BitmapEditor/Opacity\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBitmapWidget = function(parseTreeNode,options) {\n\t// Initialise the editor operations if they've not been done already\n\tif(!this.editorOperations) {\n\t\tEditBitmapWidget.prototype.editorOperations = {};\n\t\t$tw.modules.applyMethods(\"bitmapeditoroperation\",this.editorOperations);\n\t}\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBitmapWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBitmapWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create the wrapper for the toolbar and render its content\n\tthis.toolbarNode = this.document.createElement(\"div\");\n\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\tparent.insertBefore(this.toolbarNode,nextSibling);\n\tthis.domNodes.push(this.toolbarNode);\n\t// Create the on-screen canvas\n\tthis.canvasDomNode = $tw.utils.domMaker(\"canvas\",{\n\t\tdocument: this.document,\n\t\t\"class\":\"tc-edit-bitmapeditor\",\n\t\teventListeners: [{\n\t\t\tname: \"touchstart\", handlerObject: this, handlerMethod: \"handleTouchStartEvent\"\n\t\t},{\n\t\t\tname: \"touchmove\", handlerObject: this, handlerMethod: \"handleTouchMoveEvent\"\n\t\t},{\n\t\t\tname: \"touchend\", handlerObject: this, handlerMethod: \"handleTouchEndEvent\"\n\t\t},{\n\t\t\tname: \"mousedown\", handlerObject: this, handlerMethod: \"handleMouseDownEvent\"\n\t\t},{\n\t\t\tname: \"mousemove\", handlerObject: this, handlerMethod: \"handleMouseMoveEvent\"\n\t\t},{\n\t\t\tname: \"mouseup\", handlerObject: this, handlerMethod: \"handleMouseUpEvent\"\n\t\t}]\n\t});\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Render toolbar child widgets\n\tthis.renderChildren(this.toolbarNode,null);\n\t// // Insert the elements into the DOM\n\tparent.insertBefore(this.canvasDomNode,nextSibling);\n\tthis.domNodes.push(this.canvasDomNode);\n\t// Load the image into the canvas\n\tif($tw.browser) {\n\t\tthis.loadCanvas();\n\t}\n\t// Add widget message listeners\n\tthis.addEventListeners([\n\t\t{type: \"tm-edit-bitmap-operation\", handler: \"handleEditBitmapOperationMessage\"}\n\t]);\n};\n\n/*\nHandle an edit bitmap operation message from the toolbar\n*/\nEditBitmapWidget.prototype.handleEditBitmapOperationMessage = function(event) {\n\t// Invoke the handler\n\tvar handler = this.editorOperations[event.param];\n\tif(handler) {\n\t\thandler.call(this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBitmapWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nJust refresh the toolbar\n*/\nEditBitmapWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nSet the bitmap size variables and refresh the toolbar\n*/\nEditBitmapWidget.prototype.refreshToolbar = function() {\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Refresh each of our child widgets\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\tchildWidget.refreshSelf();\n\t});\n};\n\nEditBitmapWidget.prototype.loadCanvas = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle),\n\t\tcurrImage = new Image();\n\t// Set up event handlers for loading the image\n\tvar self = this;\n\tcurrImage.onload = function() {\n\t\t// Copy the image to the on-screen canvas\n\t\tself.initCanvas(self.canvasDomNode,currImage.width,currImage.height,currImage);\n\t\t// And also copy the current bitmap to the off-screen canvas\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,currImage.width,currImage.height,currImage);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\tcurrImage.onerror = function() {\n\t\t// Set the on-screen canvas size and clear it\n\t\tself.initCanvas(self.canvasDomNode,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the off-screen canvas size and clear it\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\t// Get the current bitmap into an image object\n\tcurrImage.src = \"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text;\n};\n\nEditBitmapWidget.prototype.initCanvas = function(canvas,width,height,image) {\n\tcanvas.width = width;\n\tcanvas.height = height;\n\tvar ctx = canvas.getContext(\"2d\");\n\tif(image) {\n\t\tctx.drawImage(image,0,0);\n\t} else {\n\t\tctx.fillStyle = \"#fff\";\n\t\tctx.fillRect(0,0,canvas.width,canvas.height);\n\t}\n};\n\n/*\n** Change the size of the canvas, preserving the current image\n*/\nEditBitmapWidget.prototype.changeCanvasSize = function(newWidth,newHeight) {\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\");\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\n/*\n** Rotate the canvas left by 90 degrees\n*/\nEditBitmapWidget.prototype.rotateCanvasLeft = function() {\n\t// Get the current size of the image\n\tvar origWidth = this.currCanvas.width,\n\t\torigHeight = this.currCanvas.height;\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\"),\n\t\tnewWidth = origHeight,\n\t\tnewHeight = origWidth;\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.save();\n\tctx.translate(newWidth / 2,newHeight / 2);\n\tctx.rotate(-Math.PI / 2);\n\tctx.drawImage(this.currCanvas,-origWidth / 2,-origHeight / 2);\n\tctx.restore();\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\nEditBitmapWidget.prototype.handleTouchStartEvent = function(event) {\n\tthis.brushDown = true;\n\tthis.strokeStart(event.touches[0].clientX,event.touches[0].clientY);\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.touches[0].clientX,event.touches[0].clientY);\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchEndEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.strokeStart(event.clientX,event.clientY);\n\tthis.brushDown = true;\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.clientX,event.clientY);\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.handleMouseUpEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.adjustCoordinates = function(x,y) {\n\tvar canvasRect = this.canvasDomNode.getBoundingClientRect(),\n\t\tscale = this.canvasDomNode.width/canvasRect.width;\n\treturn {x: (x - canvasRect.left) * scale, y: (y - canvasRect.top) * scale};\n};\n\nEditBitmapWidget.prototype.strokeStart = function(x,y) {\n\t// Start off a new stroke\n\tthis.stroke = [this.adjustCoordinates(x,y)];\n};\n\nEditBitmapWidget.prototype.strokeMove = function(x,y) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\"),\n\t\tt;\n\t// Add the new position to the end of the stroke\n\tthis.stroke.push(this.adjustCoordinates(x,y));\n\t// Redraw the previous image\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Render the stroke\n\tctx.globalAlpha = parseFloat(this.wiki.getTiddlerText(LINE_OPACITY_TITLE,\"1.0\"));\n\tctx.strokeStyle = this.wiki.getTiddlerText(LINE_COLOUR_TITLE,\"#ff0\");\n\tctx.lineWidth = parseFloat(this.wiki.getTiddlerText(LINE_WIDTH_TITLE,\"3\"));\n\tctx.lineCap = \"round\";\n\tctx.lineJoin = \"round\";\n\tctx.beginPath();\n\tctx.moveTo(this.stroke[0].x,this.stroke[0].y);\n\tfor(t=1; t<this.stroke.length-1; t++) {\n\t\tvar s1 = this.stroke[t],\n\t\t\ts2 = this.stroke[t-1],\n\t\t\ttx = (s1.x + s2.x)/2,\n\t\t\tty = (s1.y + s2.y)/2;\n\t\tctx.quadraticCurveTo(s2.x,s2.y,tx,ty);\n\t}\n\tctx.stroke();\n};\n\nEditBitmapWidget.prototype.strokeEnd = function() {\n\t// Copy the bitmap to the off-screen canvas\n\tvar ctx = this.currCanvas.getContext(\"2d\");\n\tctx.drawImage(this.canvasDomNode,0,0);\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\nEditBitmapWidget.prototype.saveChanges = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\tif(tiddler) {\n\t\t// data URIs look like \"data:<type>;base64,<text>\"\n\t\tvar dataURL = this.canvasDomNode.toDataURL(tiddler.fields.type),\n\t\t\tposColon = dataURL.indexOf(\":\"),\n\t\t\tposSemiColon = dataURL.indexOf(\";\"),\n\t\t\tposComma = dataURL.indexOf(\",\"),\n\t\t\ttype = dataURL.substring(posColon+1,posSemiColon),\n\t\t\ttext = dataURL.substring(posComma+1);\n\t\tvar update = {type: type, text: text};\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getModificationFields(),tiddler,update,this.wiki.getCreationFields()));\n\t}\n};\n\nexports[\"edit-bitmap\"] = EditBitmapWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-shortcut.js": {
            "title": "$:/core/modules/widgets/edit-shortcut.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-shortcut.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display an editable keyboard shortcut\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditShortcutWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditShortcutWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditShortcutWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.inputNode = this.document.createElement(\"input\");\n\t// Assign classes\n\tif(this.shortcutClass) {\n\t\tthis.inputNode.className = this.shortcutClass;\t\t\n\t}\n\t// Assign other attributes\n\tif(this.shortcutStyle) {\n\t\tthis.inputNode.setAttribute(\"style\",this.shortcutStyle);\n\t}\n\tif(this.shortcutTooltip) {\n\t\tthis.inputNode.setAttribute(\"title\",this.shortcutTooltip);\n\t}\n\tif(this.shortcutPlaceholder) {\n\t\tthis.inputNode.setAttribute(\"placeholder\",this.shortcutPlaceholder);\n\t}\n\tif(this.shortcutAriaLabel) {\n\t\tthis.inputNode.setAttribute(\"aria-label\",this.shortcutAriaLabel);\n\t}\n\t// Assign the current shortcut\n\tthis.updateInputNode();\n\t// Add event handlers\n\t$tw.utils.addEventListeners(this.inputNode,[\n\t\t{name: \"keydown\", handlerObject: this, handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Link into the DOM\n\tparent.insertBefore(this.inputNode,nextSibling);\n\tthis.domNodes.push(this.inputNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditShortcutWidget.prototype.execute = function() {\n\tthis.shortcutTiddler = this.getAttribute(\"tiddler\");\n\tthis.shortcutField = this.getAttribute(\"field\");\n\tthis.shortcutIndex = this.getAttribute(\"index\");\n\tthis.shortcutPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.shortcutDefault = this.getAttribute(\"default\",\"\");\n\tthis.shortcutClass = this.getAttribute(\"class\");\n\tthis.shortcutStyle = this.getAttribute(\"style\");\n\tthis.shortcutTooltip = this.getAttribute(\"tooltip\");\n\tthis.shortcutAriaLabel = this.getAttribute(\"aria-label\");\n};\n\n/*\nUpdate the value of the input node\n*/\nEditShortcutWidget.prototype.updateInputNode = function() {\n\tif(this.shortcutField) {\n\t\tvar tiddler = this.wiki.getTiddler(this.shortcutTiddler);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,this.shortcutField)) {\n\t\t\tthis.inputNode.value = tiddler.getFieldString(this.shortcutField);\n\t\t} else {\n\t\t\tthis.inputNode.value = this.shortcutDefault;\n\t\t}\n\t} else if(this.shortcutIndex) {\n\t\tthis.inputNode.value = this.wiki.extractTiddlerDataItem(this.shortcutTiddler,this.shortcutIndex,this.shortcutDefault);\n\t} else {\n\t\tthis.inputNode.value = this.wiki.getTiddlerText(this.shortcutTiddler,this.shortcutDefault);\n\t}\n};\n\n/*\nHandle a dom \"keydown\" event\n*/\nEditShortcutWidget.prototype.handleKeydownEvent = function(event) {\n\t// Ignore shift, ctrl, meta, alt\n\tif(event.keyCode && $tw.keyboardManager.getModifierKeys().indexOf(event.keyCode) === -1) {\n\t\t// Get the shortcut text representation\n\t\tvar value = $tw.keyboardManager.getPrintableShortcuts([{\n\t\t\tctrlKey: event.ctrlKey,\n\t\t\tshiftKey: event.shiftKey,\n\t\t\taltKey: event.altKey,\n\t\t\tmetaKey: event.metaKey,\n\t\t\tkeyCode: event.keyCode\n\t\t}]);\n\t\tif(value.length > 0) {\n\t\t\tthis.wiki.setText(this.shortcutTiddler,this.shortcutField,this.shortcutIndex,value[0]);\n\t\t}\n\t\t// Ignore the keydown if it was already handled\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn true;\t\t\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget needed re-rendering\n*/\nEditShortcutWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.placeholder || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.style || changedAttributes.tooltip || changedAttributes[\"aria-label\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedTiddlers[this.shortcutTiddler]) {\n\t\tthis.updateInputNode();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports[\"edit-shortcut\"] = EditShortcutWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-text.js": {
            "title": "$:/core/modules/widgets/edit-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-text.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tFramedEngine = require(\"$:/core/modules/editor/engines/framed.js\").FramedEngine,\n\tSimpleEngine = require(\"$:/core/modules/editor/engines/simple.js\").SimpleEngine;\n\nexports[\"edit-text\"] = editTextWidgetFactory(FramedEngine,SimpleEngine);\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit.js": {
            "title": "$:/core/modules/widgets/edit.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit.js\ntype: application/javascript\nmodule-type: widget\n\nEdit widget is a meta-widget chooses the appropriate actual editting widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n// Mappings from content type to editor type are stored in tiddlers with this prefix\nvar EDITOR_MAPPING_PREFIX = \"$:/config/EditorTypeMappings/\";\n\n/*\nCompute the internal state of the widget\n*/\nEditWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.editField = this.getAttribute(\"field\",\"text\");\n\tthis.editIndex = this.getAttribute(\"index\");\n\tthis.editClass = this.getAttribute(\"class\");\n\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\t// Choose the appropriate edit widget\n\tthis.editorType = this.getEditorType();\n\t// Make the child widgets\n\tthis.makeChildWidgets([{\n\t\ttype: \"edit-\" + this.editorType,\n\t\tattributes: {\n\t\t\ttiddler: {type: \"string\", value: this.editTitle},\n\t\t\tfield: {type: \"string\", value: this.editField},\n\t\t\tindex: {type: \"string\", value: this.editIndex},\n\t\t\t\"class\": {type: \"string\", value: this.editClass},\n\t\t\t\"placeholder\": {type: \"string\", value: this.editPlaceholder}\n\t\t},\n\t\tchildren: this.parseTreeNode.children\n\t}]);\n};\n\nEditWidget.prototype.getEditorType = function() {\n\t// Get the content type of the thing we're editing\n\tvar type;\n\tif(this.editField === \"text\") {\n\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\tif(tiddler) {\n\t\t\ttype = tiddler.fields.type;\n\t\t}\n\t}\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar editorType = this.wiki.getTiddlerText(EDITOR_MAPPING_PREFIX + type);\n\tif(!editorType) {\n\t\tvar typeInfo = $tw.config.contentTypeInfo[type];\n\t\tif(typeInfo && typeInfo.encoding === \"base64\") {\n\t\t\teditorType = \"binary\";\n\t\t} else {\n\t\t\teditorType = \"text\";\n\t\t}\n\t}\n\treturn editorType;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEditWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh if an attribute has changed, or the type associated with the target tiddler has changed\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || (changedTiddlers[this.editTitle] && this.getEditorType() !== this.editorType)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.edit = EditWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/element.js": {
            "title": "$:/core/modules/widgets/element.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/element.js\ntype: application/javascript\nmodule-type: widget\n\nElement widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ElementWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nElementWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nElementWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Neuter blacklisted elements\n\tvar tag = this.parseTreeNode.tag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"safe-\" + tag;\n\t}\n\tvar domNode = this.document.createElementNS(this.namespace,tag);\n\tthis.assignAttributes(domNode,{excludeEventAttributes: true});\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nElementWidget.prototype.execute = function() {\n\t// Select the namespace for the tag\n\tvar tagNamespaces = {\n\t\t\tsvg: \"http://www.w3.org/2000/svg\",\n\t\t\tmath: \"http://www.w3.org/1998/Math/MathML\",\n\t\t\tbody: \"http://www.w3.org/1999/xhtml\"\n\t\t};\n\tthis.namespace = tagNamespaces[this.parseTreeNode.tag];\n\tif(this.namespace) {\n\t\tthis.setVariable(\"namespace\",this.namespace);\n\t} else {\n\t\tthis.namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"});\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nElementWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\thasChangedAttributes = $tw.utils.count(changedAttributes) > 0;\n\tif(hasChangedAttributes) {\n\t\t// Update our attributes\n\t\tthis.assignAttributes(this.domNodes[0],{excludeEventAttributes: true});\n\t}\n\treturn this.refreshChildren(changedTiddlers) || hasChangedAttributes;\n};\n\nexports.element = ElementWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/encrypt.js": {
            "title": "$:/core/modules/widgets/encrypt.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/encrypt.js\ntype: application/javascript\nmodule-type: widget\n\nEncrypt widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EncryptWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEncryptWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEncryptWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.encryptedText);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEncryptWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\",\"[!is[system]]\");\n\t// Encrypt the filtered tiddlers\n\tvar tiddlers = this.wiki.filterTiddlers(this.filter),\n\t\tjson = {},\n\t\tself = this;\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title),\n\t\t\tjsonTiddler = {};\n\t\tfor(var f in tiddler.fields) {\n\t\t\tjsonTiddler[f] = tiddler.getFieldString(f);\n\t\t}\n\t\tjson[title] = jsonTiddler;\n\t});\n\tthis.encryptedText = $tw.utils.htmlEncode($tw.crypto.encrypt(JSON.stringify(json)));\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEncryptWidget.prototype.refresh = function(changedTiddlers) {\n\t// We don't need to worry about refreshing because the encrypt widget isn't for interactive use\n\treturn false;\n};\n\nexports.encrypt = EncryptWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/entity.js": {
            "title": "$:/core/modules/widgets/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/entity.js\ntype: application/javascript\nmodule-type: widget\n\nHTML entity widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EntityWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEntityWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEntityWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar entityString = this.getAttribute(\"entity\",this.parseTreeNode.entity || \"\"),\n\t\ttextNode = this.document.createTextNode($tw.utils.entityDecode(entityString));\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEntityWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEntityWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.entity) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.entity = EntityWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fieldmangler.js": {
            "title": "$:/core/modules/widgets/fieldmangler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fieldmangler.js\ntype: application/javascript\nmodule-type: widget\n\nField mangler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-remove-field\", handler: \"handleRemoveFieldEvent\"},\n\t\t{type: \"tm-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"tm-remove-tag\", handler: \"handleRemoveTagEvent\"},\n\t\t{type: \"tm-add-tag\", handler: \"handleAddTagEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldManglerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldManglerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldManglerWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.mangleTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldManglerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nFieldManglerWidget.prototype.handleRemoveFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tdeletion = {};\n\tdeletion[event.param] = undefined;\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,deletion));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\taddition = this.wiki.getModificationFields(),\n\t\thadInvalidFieldName = false,\n\t\taddField = function(name,value) {\n\t\t\tvar trimmedName = name.toLowerCase().trim();\n\t\t\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\t\t\tif(!hadInvalidFieldName) {\n\t\t\t\t\talert($tw.language.getString(\n\t\t\t\t\t\t\"InvalidFieldName\",\n\t\t\t\t\t\t{variables:\n\t\t\t\t\t\t\t{fieldName: trimmedName}\n\t\t\t\t\t\t}\n\t\t\t\t\t));\n\t\t\t\t\thadInvalidFieldName = true;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif(!value && tiddler) {\n\t\t\t\t\tvalue = tiddler.fields[trimmedName];\n\t\t\t\t}\n\t\t\t\taddition[trimmedName] = value || \"\";\n\t\t\t}\n\t\t\treturn;\n\t\t};\n\taddition.title = this.mangleTitle;\n\tif(typeof event.param === \"string\") {\n\t\taddField(event.param,\"\");\n\t}\n\tif(typeof event.paramObject === \"object\") {\n\t\tfor(var name in event.paramObject) {\n\t\t\taddField(name,event.paramObject[name]);\n\t\t}\n\t}\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,addition));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleRemoveTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && tiddler.fields.tags) {\n\t\tvar p = tiddler.fields.tags.indexOf(event.param);\n\t\tif(p !== -1) {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\tmodification.tags.splice(p,1);\n\t\t\tif(modification.tags.length === 0) {\n\t\t\t\tmodification.tags = undefined;\n\t\t\t}\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\n\t\t}\n\t}\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && typeof event.param === \"string\") {\n\t\tvar tag = event.param.trim();\n\t\tif(tag !== \"\") {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\t$tw.utils.pushTop(modification.tags,tag);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\t\t\t\n\t\t}\n\t} else if(typeof event.param === \"string\" && event.param.trim() !== \"\" && this.mangleTitle.trim() !== \"\") {\n\t\tvar tag = [];\n\t\ttag.push(event.param.trim());\n\t\tthis.wiki.addTiddler(new $tw.Tiddler({title: this.mangleTitle, tags: tag},modification));\n\t}\n\treturn true;\n};\n\nexports.fieldmangler = FieldManglerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fields.js": {
            "title": "$:/core/modules/widgets/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fields.js\ntype: application/javascript\nmodule-type: widget\n\nFields widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldsWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldsWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldsWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.template = this.getAttribute(\"template\");\n\tthis.exclude = this.getAttribute(\"exclude\");\n\tthis.stripTitlePrefix = this.getAttribute(\"stripTitlePrefix\",\"no\") === \"yes\";\n\t// Get the value to display\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\t// Get the exclusion list\n\tvar exclude;\n\tif(this.exclude) {\n\t\texclude = this.exclude.split(\" \");\n\t} else {\n\t\texclude = [\"text\"]; \n\t}\n\t// Compose the template\n\tvar text = [];\n\tif(this.template && tiddler) {\n\t\tvar fields = [];\n\t\tfor(var fieldName in tiddler.fields) {\n\t\t\tif(exclude.indexOf(fieldName) === -1) {\n\t\t\t\tfields.push(fieldName);\n\t\t\t}\n\t\t}\n\t\tfields.sort();\n\t\tfor(var f=0; f<fields.length; f++) {\n\t\t\tfieldName = fields[f];\n\t\t\tif(exclude.indexOf(fieldName) === -1) {\n\t\t\t\tvar row = this.template,\n\t\t\t\t\tvalue = tiddler.getFieldString(fieldName);\n\t\t\t\tif(this.stripTitlePrefix && fieldName === \"title\") {\n\t\t\t\t\tvar reStrip = /^\\{[^\\}]+\\}(.+)/mg,\n\t\t\t\t\t\treMatch = reStrip.exec(value);\n\t\t\t\t\tif(reMatch) {\n\t\t\t\t\t\tvalue = reMatch[1];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\trow = $tw.utils.replaceString(row,\"$name$\",fieldName);\n\t\t\t\trow = $tw.utils.replaceString(row,\"$value$\",value);\n\t\t\t\trow = $tw.utils.replaceString(row,\"$encoded_value$\",$tw.utils.htmlEncode(value));\n\t\t\t\ttext.push(row);\n\t\t\t}\n\t\t}\n\t}\n\tthis.text = text.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.template || changedAttributes.exclude || changedAttributes.stripTitlePrefix || changedTiddlers[this.tiddlerTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.fields = FieldsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/image.js": {
            "title": "$:/core/modules/widgets/image.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/image.js\ntype: application/javascript\nmodule-type: widget\n\nThe image widget displays an image referenced with an external URI or with a local tiddler title.\n\n```\n<$image src=\"TiddlerTitle\" width=\"320\" height=\"400\" class=\"classnames\">\n```\n\nThe image source can be the title of an existing tiddler or the URL of an external image.\n\nExternal images always generate an HTML `<img>` tag.\n\nTiddlers that have a _canonical_uri field generate an HTML `<img>` tag with the src attribute containing the URI.\n\nTiddlers that contain image data generate an HTML `<img>` tag with the src attribute containing a base64 representation of the image.\n\nTiddlers that contain wikitext could be rendered to a DIV of the usual size of a tiddler, and then transformed to the size requested.\n\nThe width and height attributes are interpreted as a number of pixels, and do not need to include the \"px\" suffix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\t// Determine what type of image it is\n\tvar tag = \"img\", src = \"\",\n\t\ttiddler = this.wiki.getTiddler(this.imageSource);\n\tif(!tiddler) {\n\t\t// The source isn't the title of a tiddler, so we'll assume it's a URL\n\t\tsrc = this.getVariable(\"tv-get-export-image-link\",{params: [{name: \"src\",value: this.imageSource}],defaultValue: this.imageSource});\n\t} else {\n\t\t// Check if it is an image tiddler\n\t\tif(this.wiki.isImageTiddler(this.imageSource)) {\n\t\t\tvar type = tiddler.fields.type,\n\t\t\t\ttext = tiddler.fields.text,\n\t\t\t\t_canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t// If the tiddler has body text then it doesn't need to be lazily loaded\n\t\t\tif(text) {\n\t\t\t\t// Render the appropriate element for the image type\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = \"data:application/pdf;base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = \"data:image/svg+xml,\" + encodeURIComponent(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = \"data:\" + type + \";base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if(_canonical_uri) {\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\t\n\t\t\t} else {\n\t\t\t\t// Just trigger loading of the tiddler\n\t\t\t\tthis.wiki.getTiddlerText(this.imageSource);\n\t\t\t}\n\t\t}\n\t}\n\t// Create the element and assign the attributes\n\tvar domNode = this.document.createElement(tag);\n\tdomNode.setAttribute(\"src\",src);\n\tif(this.imageClass) {\n\t\tdomNode.setAttribute(\"class\",this.imageClass);\t\t\n\t}\n\tif(this.imageWidth) {\n\t\tdomNode.setAttribute(\"width\",this.imageWidth);\n\t}\n\tif(this.imageHeight) {\n\t\tdomNode.setAttribute(\"height\",this.imageHeight);\n\t}\n\tif(this.imageTooltip) {\n\t\tdomNode.setAttribute(\"title\",this.imageTooltip);\t\t\n\t}\n\tif(this.imageAlt) {\n\t\tdomNode.setAttribute(\"alt\",this.imageAlt);\t\t\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImageWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.imageSource = this.getAttribute(\"source\");\n\tthis.imageWidth = this.getAttribute(\"width\");\n\tthis.imageHeight = this.getAttribute(\"height\");\n\tthis.imageClass = this.getAttribute(\"class\");\n\tthis.imageTooltip = this.getAttribute(\"tooltip\");\n\tthis.imageAlt = this.getAttribute(\"alt\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.width || changedAttributes.height || changedAttributes[\"class\"] || changedAttributes.tooltip || changedTiddlers[this.imageSource]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\t\n\t}\n};\n\nexports.image = ImageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/importvariables.js": {
            "title": "$:/core/modules/widgets/importvariables.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/importvariables.js\ntype: application/javascript\nmodule-type: widget\n\nImport variable definitions from other tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImportVariablesWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImportVariablesWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImportVariablesWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImportVariablesWidget.prototype.execute = function(tiddlerList) {\n\tvar self = this;\n\t// Get our parameters\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Compute the filter\n\tthis.tiddlerList = tiddlerList || this.wiki.filterTiddlers(this.filter,this);\n\t// Accumulate the <$set> widgets from each tiddler\n\tvar widgetStackStart,widgetStackEnd;\n\tfunction addWidgetNode(widgetNode) {\n\t\tif(widgetNode) {\n\t\t\tif(!widgetStackStart && !widgetStackEnd) {\n\t\t\t\twidgetStackStart = widgetNode;\n\t\t\t\twidgetStackEnd = widgetNode;\n\t\t\t} else {\n\t\t\t\twidgetStackEnd.children = [widgetNode];\n\t\t\t\twidgetStackEnd = widgetNode;\n\t\t\t}\n\t\t}\n\t}\n\t$tw.utils.each(this.tiddlerList,function(title) {\n\t\tvar parser = self.wiki.parseTiddler(title);\n\t\tif(parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile(parseTreeNode && parseTreeNode.type === \"set\") {\n\t\t\t\taddWidgetNode({\n\t\t\t\t\ttype: \"set\",\n\t\t\t\t\tattributes: parseTreeNode.attributes,\n\t\t\t\t\tparams: parseTreeNode.params\n\t\t\t\t});\n\t\t\t\tparseTreeNode = parseTreeNode.children[0];\n\t\t\t}\n\t\t} \n\t});\n\t// Add our own children to the end of the pile\n\tvar parseTreeNodes;\n\tif(widgetStackStart && widgetStackEnd) {\n\t\tparseTreeNodes = [widgetStackStart];\n\t\twidgetStackEnd.children = this.parseTreeNode.children;\n\t} else {\n\t\tparseTreeNodes = this.parseTreeNode.children;\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImportVariablesWidget.prototype.refresh = function(changedTiddlers) {\n\t// Recompute our attributes and the filter list\n\tvar changedAttributes = this.computeAttributes(),\n\t\ttiddlerList = this.wiki.filterTiddlers(this.getAttribute(\"filter\"),this);\n\t// Refresh if the filter has changed, or the list of tiddlers has changed, or any of the tiddlers in the list has changed\n\tfunction haveListedTiddlersChanged() {\n\t\tvar changed = false;\n\t\ttiddlerList.forEach(function(title) {\n\t\t\tif(changedTiddlers[title]) {\n\t\t\t\tchanged = true;\n\t\t\t}\n\t\t});\n\t\treturn changed;\n\t}\n\tif(changedAttributes.filter || !$tw.utils.isArrayEqual(this.tiddlerList,tiddlerList) || haveListedTiddlersChanged()) {\n\t\t// Compute the filter\n\t\tthis.removeChildDomNodes();\n\t\tthis.execute(tiddlerList);\n\t\tthis.renderChildren(this.parentDomNode,this.findNextSiblingDomNode());\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.importvariables = ImportVariablesWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/keyboard.js": {
            "title": "$:/core/modules/widgets/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/keyboard.js\ntype: application/javascript\nmodule-type: widget\n\nKeyboard shortcut widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar KeyboardWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nKeyboardWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nKeyboardWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.tag && $tw.config.htmlUnsafeElements.indexOf(this.tag) === -1) {\n\t\ttag = this.tag;\n\t}\n\t// Create element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-keyboard\");\n\tdomNode.className = classes.join(\" \");\n\t// Add a keyboard event handler\n\tdomNode.addEventListener(\"keydown\",function (event) {\n\t\tif($tw.keyboardManager.checkKeyDescriptors(event,self.keyInfoArray)) {\n\t\t\tself.invokeActions(self,event);\n\t\t\tif(self.actions) {\n\t\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t\t}\n\t\t\tself.dispatchMessage(event);\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nKeyboardWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\")});\n};\n\n/*\nCompute the internal state of the widget\n*/\nKeyboardWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.key = this.getAttribute(\"key\");\n\tthis.tag = this.getAttribute(\"tag\");\n\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\tthis[\"class\"] = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nKeyboardWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.message || changedAttributes.param || changedAttributes.key || changedAttributes[\"class\"] || changedAttributes.tag) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.keyboard = KeyboardWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/link.js": {
            "title": "$:/core/modules/widgets/link.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/link.js\ntype: application/javascript\nmodule-type: widget\n\nLink widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar MISSING_LINK_CONFIG_TITLE = \"$:/config/MissingLinks\";\n\nvar LinkWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the value of the tv-wikilinks configuration macro\n\tvar wikiLinksMacro = this.getVariable(\"tv-wikilinks\"),\n\t\tuseWikiLinks = wikiLinksMacro ? (wikiLinksMacro.trim() !== \"no\") : true,\n\t\tmissingLinksEnabled = !(this.hideMissingLinks && this.isMissing && !this.isShadow);\n\t// Render the link if required\n\tif(useWikiLinks && missingLinksEnabled) {\n\t\tthis.renderLink(parent,nextSibling);\n\t} else {\n\t\t// Just insert the link text\n\t\tvar domNode = this.document.createElement(\"span\");\n\t\tparent.insertBefore(domNode,nextSibling);\n\t\tthis.renderChildren(domNode,null);\n\t\tthis.domNodes.push(domNode);\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.renderLink = function(parent,nextSibling) {\n\tvar self = this;\n\t// Sanitise the specified tag\n\tvar tag = this.linkTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"a\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [];\n\tif(this.overrideClasses === undefined) {\n\t\tclasses.push(\"tc-tiddlylink\");\n\t\tif(this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-shadow\");\n\t\t}\n\t\tif(this.isMissing && !this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-missing\");\n\t\t} else {\n\t\t\tif(!this.isMissing) {\n\t\t\t\tclasses.push(\"tc-tiddlylink-resolves\");\n\t\t\t}\n\t\t}\n\t\tif(this.linkClasses) {\n\t\t\tclasses.push(this.linkClasses);\t\t\t\n\t\t}\n\t} else if(this.overrideClasses !== \"\") {\n\t\tclasses.push(this.overrideClasses)\n\t}\n\tif(classes.length > 0) {\n\t\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t}\n\t// Set an href\n\tvar wikilinkTransformFilter = this.getVariable(\"tv-filter-export-link\"),\n\t\twikiLinkText;\n\tif(wikilinkTransformFilter) {\n\t\t// Use the filter to construct the href\n\t\twikiLinkText = this.wiki.filterTiddlers(wikilinkTransformFilter,this,function(iterator) {\n\t\t\titerator(self.wiki.getTiddler(self.to),self.to)\n\t\t})[0];\n\t} else {\n\t\t// Expand the tv-wikilink-template variable to construct the href\n\t\tvar wikiLinkTemplateMacro = this.getVariable(\"tv-wikilink-template\"),\n\t\t\twikiLinkTemplate = wikiLinkTemplateMacro ? wikiLinkTemplateMacro.trim() : \"#$uri_encoded$\";\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkTemplate,\"$uri_encoded$\",encodeURIComponent(this.to));\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkText,\"$uri_doubleencoded$\",encodeURIComponent(encodeURIComponent(this.to)));\n\t}\n\t// Override with the value of tv-get-export-link if defined\n\twikiLinkText = this.getVariable(\"tv-get-export-link\",{params: [{name: \"to\",value: this.to}],defaultValue: wikiLinkText});\n\tif(tag === \"a\") {\n\t\tdomNode.setAttribute(\"href\",wikiLinkText);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\t// Set the tooltip\n\t// HACK: Performance issues with re-parsing the tooltip prevent us defaulting the tooltip to \"<$transclude field='tooltip'><$transclude field='title'/></$transclude>\"\n\tvar tooltipWikiText = this.tooltip || this.getVariable(\"tv-wikilink-tooltip\");\n\tif(tooltipWikiText) {\n\t\tvar tooltipText = this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",tooltipWikiText,{\n\t\t\t\tparseAsInline: true,\n\t\t\t\tvariables: {\n\t\t\t\t\tcurrentTiddler: this.to\n\t\t\t\t},\n\t\t\t\tparentWidget: this\n\t\t\t});\n\t\tdomNode.setAttribute(\"title\",tooltipText);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"click\", handlerObject: this, handlerMethod: \"handleClickEvent\"},\n\t]);\n\t// Make the link draggable if required\n\tif(this.draggable === \"yes\") {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.to;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nLinkWidget.prototype.handleClickEvent = function(event) {\n\t// Send the click on its way as a navigate event\n\tvar bounds = this.domNodes[0].getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tmetaKey: event.metaKey,\n\t\tctrlKey: event.ctrlKey,\n\t\taltKey: event.altKey,\n\t\tshiftKey: event.shiftKey\n\t});\n\tif(this.domNodes[0].hasAttribute(\"href\")) {\n\t\tevent.preventDefault();\n\t}\n\tevent.stopPropagation();\n\treturn false;\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.to = this.getAttribute(\"to\",this.getVariable(\"currentTiddler\"));\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.linkClasses = this.getAttribute(\"class\");\n\tthis.overrideClasses = this.getAttribute(\"overrideClass\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.draggable = this.getAttribute(\"draggable\",\"yes\");\n\tthis.linkTag = this.getAttribute(\"tag\",\"a\");\n\t// Determine the link characteristics\n\tthis.isMissing = !this.wiki.tiddlerExists(this.to);\n\tthis.isShadow = this.wiki.isShadowTiddler(this.to);\n\tthis.hideMissingLinks = ($tw.wiki.getTiddlerText(MISSING_LINK_CONFIG_TITLE,\"yes\") === \"no\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedTiddlers[this.to] || changedAttributes[\"aria-label\"] || changedAttributes.tooltip || changedTiddlers[MISSING_LINK_CONFIG_TITLE]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.link = LinkWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/linkcatcher.js": {
            "title": "$:/core/modules/widgets/linkcatcher.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/linkcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nLinkcatcher widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkCatcherWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkCatcherWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkCatcherWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkCatcherWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.catchTo = this.getAttribute(\"to\");\n\tthis.catchMessage = this.getAttribute(\"message\");\n\tthis.catchSet = this.getAttribute(\"set\");\n\tthis.catchSetTo = this.getAttribute(\"setTo\");\n\tthis.catchActions = this.getAttribute(\"actions\");\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n\t// When executing actions we avoid trapping navigate events, so that we don't trigger ourselves recursively\n\tthis.executingActions = false;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkCatcherWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedAttributes.message || changedAttributes.set || changedAttributes.setTo) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\n/*\nHandle a tm-navigate event\n*/\nLinkCatcherWidget.prototype.handleNavigateEvent = function(event) {\n\tif(!this.executingActions) {\n\t\t// Execute the actions\n\t\tif(this.catchTo) {\n\t\t\tthis.wiki.setTextReference(this.catchTo,event.navigateTo,this.getVariable(\"currentTiddler\"));\n\t\t}\n\t\tif(this.catchMessage && this.parentWidget) {\n\t\t\tthis.parentWidget.dispatchEvent({\n\t\t\t\ttype: this.catchMessage,\n\t\t\t\tparam: event.navigateTo,\n\t\t\t\tnavigateTo: event.navigateTo\n\t\t\t});\n\t\t}\n\t\tif(this.catchSet) {\n\t\t\tvar tiddler = this.wiki.getTiddler(this.catchSet);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,{title: this.catchSet, text: this.catchSetTo}));\n\t\t}\n\t\tif(this.catchActions) {\n\t\t\tthis.executingActions = true;\n\t\t\tthis.invokeActionString(this.catchActions,this,event,{navigateTo: event.navigateTo});\n\t\t\tthis.executingActions = false;\n\t\t}\n\t} else {\n\t\t// This is a navigate event generated by the actions of this linkcatcher, so we don't trap it again, but just pass it to the parent\n\t\tthis.parentWidget.dispatchEvent({\n\t\t\ttype: \"tm-navigate\",\n\t\t\tparam: event.navigateTo,\n\t\t\tnavigateTo: event.navigateTo\n\t\t});\n\t}\n\treturn false;\n};\n\nexports.linkcatcher = LinkCatcherWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/list.js": {
            "title": "$:/core/modules/widgets/list.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/list.js\ntype: application/javascript\nmodule-type: widget\n\nList and list item widgets\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\n/*\nThe list widget creates list element sub-widgets that reach back into the list widget for their configuration\n*/\n\nvar ListWidget = function(parseTreeNode,options) {\n\t// Initialise the storyviews if they've not been done already\n\tif(!this.storyViews) {\n\t\tListWidget.prototype.storyViews = {};\n\t\t$tw.modules.applyMethods(\"storyview\",this.storyViews);\n\t}\n\t// Main initialisation inherited from widget.js\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\t// Construct the storyview\n\tvar StoryView = this.storyViews[this.storyViewName];\n\tif(this.storyViewName && !StoryView) {\n\t\tStoryView = this.storyViews[\"classic\"];\n\t}\n\tif(StoryView && !this.document.isTiddlyWikiFakeDom) {\n\t\tthis.storyview = new StoryView(this);\n\t} else {\n\t\tthis.storyview = null;\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nListWidget.prototype.execute = function() {\n\t// Get our attributes\n\tthis.template = this.getAttribute(\"template\");\n\tthis.editTemplate = this.getAttribute(\"editTemplate\");\n\tthis.variableName = this.getAttribute(\"variable\",\"currentTiddler\");\n\tthis.storyViewName = this.getAttribute(\"storyview\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\t// Compose the list elements\n\tthis.list = this.getTiddlerList();\n\tvar members = [],\n\t\tself = this;\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\tmembers = this.getEmptyMessage();\n\t} else {\n\t\t$tw.utils.each(this.list,function(title,index) {\n\t\t\tmembers.push(self.makeItemTemplate(title));\n\t\t});\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(members);\n\t// Clear the last history\n\tthis.history = [];\n};\n\nListWidget.prototype.getTiddlerList = function() {\n\tvar defaultFilter = \"[!is[system]sort[title]]\";\n\treturn this.wiki.filterTiddlers(this.getAttribute(\"filter\",defaultFilter),this);\n};\n\nListWidget.prototype.getEmptyMessage = function() {\n\tvar emptyMessage = this.getAttribute(\"emptyMessage\",\"\"),\n\t\tparser = this.wiki.parseText(\"text/vnd.tiddlywiki\",emptyMessage,{parseAsInline: true});\n\tif(parser) {\n\t\treturn parser.tree;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n/*\nCompose the template for a list item\n*/\nListWidget.prototype.makeItemTemplate = function(title) {\n\t// Check if the tiddler is a draft\n\tvar tiddler = this.wiki.getTiddler(title),\n\t\tisDraft = tiddler && tiddler.hasField(\"draft.of\"),\n\t\ttemplate = this.template,\n\t\ttemplateTree;\n\tif(isDraft && this.editTemplate) {\n\t\ttemplate = this.editTemplate;\n\t}\n\t// Compose the transclusion of the template\n\tif(template) {\n\t\ttemplateTree = [{type: \"transclude\", attributes: {tiddler: {type: \"string\", value: template}}}];\n\t} else {\n\t\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\t\ttemplateTree = this.parseTreeNode.children;\n\t\t} else {\n\t\t\t// Default template is a link to the title\n\t\t\ttemplateTree = [{type: \"element\", tag: this.parseTreeNode.isBlock ? \"div\" : \"span\", children: [{type: \"link\", attributes: {to: {type: \"string\", value: title}}, children: [\n\t\t\t\t\t{type: \"text\", text: title}\n\t\t\t]}]}];\n\t\t}\n\t}\n\t// Return the list item\n\treturn {type: \"listitem\", itemTitle: title, variableName: this.variableName, children: templateTree};\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tresult;\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshStart) {\n\t\tthis.storyview.refreshStart(changedTiddlers,changedAttributes);\n\t}\n\t// Completely refresh if any of our attributes have changed\n\tif(changedAttributes.filter || changedAttributes.template || changedAttributes.editTemplate || changedAttributes.emptyMessage || changedAttributes.storyview || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\tresult = true;\n\t} else {\n\t\t// Handle any changes to the list\n\t\tresult = this.handleListChanges(changedTiddlers);\n\t\t// Handle any changes to the history stack\n\t\tif(this.historyTitle && changedTiddlers[this.historyTitle]) {\n\t\t\tthis.handleHistoryChanges();\n\t\t}\n\t}\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshEnd) {\n\t\tthis.storyview.refreshEnd(changedTiddlers,changedAttributes);\n\t}\n\treturn result;\n};\n\n/*\nHandle any changes to the history list\n*/\nListWidget.prototype.handleHistoryChanges = function() {\n\t// Get the history data\n\tvar newHistory = this.wiki.getTiddlerDataCached(this.historyTitle,[]);\n\t// Ignore any entries of the history that match the previous history\n\tvar entry = 0;\n\twhile(entry < newHistory.length && entry < this.history.length && newHistory[entry].title === this.history[entry].title) {\n\t\tentry++;\n\t}\n\t// Navigate forwards to each of the new tiddlers\n\twhile(entry < newHistory.length) {\n\t\tif(this.storyview && this.storyview.navigateTo) {\n\t\t\tthis.storyview.navigateTo(newHistory[entry]);\n\t\t}\n\t\tentry++;\n\t}\n\t// Update the history\n\tthis.history = newHistory;\n};\n\n/*\nProcess any changes to the list\n*/\nListWidget.prototype.handleListChanges = function(changedTiddlers) {\n\t// Get the new list\n\tvar prevList = this.list;\n\tthis.list = this.getTiddlerList();\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\t// Check if it was empty before\n\t\tif(prevList.length === 0) {\n\t\t\t// If so, just refresh the empty message\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\t// Replace the previous content with the empty message\n\t\t\tfor(t=this.children.length-1; t>=0; t--) {\n\t\t\t\tthis.removeListItem(t);\n\t\t\t}\n\t\t\tvar nextSibling = this.findNextSiblingDomNode();\n\t\t\tthis.makeChildWidgets(this.getEmptyMessage());\n\t\t\tthis.renderChildren(this.parentDomNode,nextSibling);\n\t\t\treturn true;\n\t\t}\n\t} else {\n\t\t// If the list was empty then we need to remove the empty message\n\t\tif(prevList.length === 0) {\n\t\t\tthis.removeChildDomNodes();\n\t\t\tthis.children = [];\n\t\t}\n\t\t// Cycle through the list, inserting and removing list items as needed\n\t\tvar hasRefreshed = false;\n\t\tfor(var t=0; t<this.list.length; t++) {\n\t\t\tvar index = this.findListItem(t,this.list[t]);\n\t\t\tif(index === undefined) {\n\t\t\t\t// The list item must be inserted\n\t\t\t\tthis.insertListItem(t,this.list[t]);\n\t\t\t\thasRefreshed = true;\n\t\t\t} else {\n\t\t\t\t// There are intervening list items that must be removed\n\t\t\t\tfor(var n=index-1; n>=t; n--) {\n\t\t\t\t\tthis.removeListItem(n);\n\t\t\t\t\thasRefreshed = true;\n\t\t\t\t}\n\t\t\t\t// Refresh the item we're reusing\n\t\t\t\tvar refreshed = this.children[t].refresh(changedTiddlers);\n\t\t\t\thasRefreshed = hasRefreshed || refreshed;\n\t\t\t}\n\t\t}\n\t\t// Remove any left over items\n\t\tfor(t=this.children.length-1; t>=this.list.length; t--) {\n\t\t\tthis.removeListItem(t);\n\t\t\thasRefreshed = true;\n\t\t}\n\t\treturn hasRefreshed;\n\t}\n};\n\n/*\nFind the list item with a given title, starting from a specified position\n*/\nListWidget.prototype.findListItem = function(startIndex,title) {\n\twhile(startIndex < this.children.length) {\n\t\tif(this.children[startIndex].parseTreeNode.itemTitle === title) {\n\t\t\treturn startIndex;\n\t\t}\n\t\tstartIndex++;\n\t}\n\treturn undefined;\n};\n\n/*\nInsert a new list item at the specified index\n*/\nListWidget.prototype.insertListItem = function(index,title) {\n\t// Create, insert and render the new child widgets\n\tvar widget = this.makeChildWidget(this.makeItemTemplate(title));\n\twidget.parentDomNode = this.parentDomNode; // Hack to enable findNextSiblingDomNode() to work\n\tthis.children.splice(index,0,widget);\n\tvar nextSibling = widget.findNextSiblingDomNode();\n\twidget.render(this.parentDomNode,nextSibling);\n\t// Animate the insertion if required\n\tif(this.storyview && this.storyview.insert) {\n\t\tthis.storyview.insert(widget);\n\t}\n\treturn true;\n};\n\n/*\nRemove the specified list item\n*/\nListWidget.prototype.removeListItem = function(index) {\n\tvar widget = this.children[index];\n\t// Animate the removal if required\n\tif(this.storyview && this.storyview.remove) {\n\t\tthis.storyview.remove(widget);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n\t// Remove the child widget\n\tthis.children.splice(index,1);\n};\n\nexports.list = ListWidget;\n\nvar ListItemWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListItemWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListItemWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nListItemWidget.prototype.execute = function() {\n\t// Set the current list item title\n\tthis.setVariable(this.parseTreeNode.variableName,this.parseTreeNode.itemTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListItemWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.listitem = ListItemWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/macrocall.js": {
            "title": "$:/core/modules/widgets/macrocall.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/macrocall.js\ntype: application/javascript\nmodule-type: widget\n\nMacrocall widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar MacroCallWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nMacroCallWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nMacroCallWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nMacroCallWidget.prototype.execute = function() {\n\t// Get the parse type if specified\n\tthis.parseType = this.getAttribute(\"$type\",\"text/vnd.tiddlywiki\");\n\tthis.renderOutput = this.getAttribute(\"$output\",\"text/html\");\n\t// Merge together the parameters specified in the parse tree with the specified attributes\n\tvar params = this.parseTreeNode.params ? this.parseTreeNode.params.slice(0) : [];\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparams.push({name: name, value: attribute});\t\t\t\n\t\t}\n\t});\n\t// Get the macro value\n\tvar macroName = this.parseTreeNode.name || this.getAttribute(\"$name\"),\n\t\tvariableInfo = this.getVariableInfo(macroName,{params: params}),\n\t\ttext = variableInfo.text,\n\t\tparseTreeNodes;\n\t// Are we rendering to HTML?\n\tif(this.renderOutput === \"text/html\") {\n\t\t// If so we'll return the parsed macro\n\t\tvar parser = this.wiki.parseText(this.parseType,text,\n\t\t\t\t\t\t\t{parseAsInline: !this.parseTreeNode.isBlock});\n\t\tparseTreeNodes = parser ? parser.tree : [];\n\t\t// Wrap the parse tree in a vars widget assigning the parameters to variables named \"__paramname__\"\n\t\tvar attributes = {};\n\t\t$tw.utils.each(variableInfo.params,function(param) {\n\t\t\tvar name = \"__\" + param.name + \"__\";\n\t\t\tattributes[name] = {\n\t\t\t\tname: name,\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: param.value\n\t\t\t};\n\t\t});\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"vars\",\n\t\t\tattributes: attributes,\n\t\t\tchildren: parseTreeNodes\n\t\t}];\n\t} else {\n\t\t// Otherwise, we'll render the text\n\t\tvar plainText = this.wiki.renderText(\"text/plain\",this.parseType,text,{parentWidget: this});\n\t\tparseTreeNodes = [{type: \"text\", text: plainText}];\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nMacroCallWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\t// Rerender ourselves\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.macrocall = MacroCallWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/navigator.js": {
            "title": "$:/core/modules/widgets/navigator.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/navigator.js\ntype: application/javascript\nmodule-type: widget\n\nNavigator widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar IMPORT_TITLE = \"$:/Import\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigatorWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"},\n\t\t{type: \"tm-edit-tiddler\", handler: \"handleEditTiddlerEvent\"},\n\t\t{type: \"tm-delete-tiddler\", handler: \"handleDeleteTiddlerEvent\"},\n\t\t{type: \"tm-save-tiddler\", handler: \"handleSaveTiddlerEvent\"},\n\t\t{type: \"tm-cancel-tiddler\", handler: \"handleCancelTiddlerEvent\"},\n\t\t{type: \"tm-close-tiddler\", handler: \"handleCloseTiddlerEvent\"},\n\t\t{type: \"tm-close-all-tiddlers\", handler: \"handleCloseAllTiddlersEvent\"},\n\t\t{type: \"tm-close-other-tiddlers\", handler: \"handleCloseOtherTiddlersEvent\"},\n\t\t{type: \"tm-new-tiddler\", handler: \"handleNewTiddlerEvent\"},\n\t\t{type: \"tm-import-tiddlers\", handler: \"handleImportTiddlersEvent\"},\n\t\t{type: \"tm-perform-import\", handler: \"handlePerformImportEvent\"},\n\t\t{type: \"tm-fold-tiddler\", handler: \"handleFoldTiddlerEvent\"},\n\t\t{type: \"tm-fold-other-tiddlers\", handler: \"handleFoldOtherTiddlersEvent\"},\n\t\t{type: \"tm-fold-all-tiddlers\", handler: \"handleFoldAllTiddlersEvent\"},\n\t\t{type: \"tm-unfold-all-tiddlers\", handler: \"handleUnfoldAllTiddlersEvent\"},\n\t\t{type: \"tm-rename-tiddler\", handler: \"handleRenameTiddlerEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigatorWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigatorWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigatorWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.storyTitle = this.getAttribute(\"story\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\tthis.setVariable(\"tv-story-list\",this.storyTitle);\n\tthis.setVariable(\"tv-history-list\",this.historyTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nNavigatorWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.story || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nNavigatorWidget.prototype.getStoryList = function() {\n\treturn this.storyTitle ? this.wiki.getTiddlerList(this.storyTitle) : null;\n};\n\nNavigatorWidget.prototype.saveStoryList = function(storyList) {\n\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\t{title: this.storyTitle},\n\t\tstoryTiddler,\n\t\t{list: storyList}\n\t));\n};\n\nNavigatorWidget.prototype.removeTitleFromStory = function(storyList,title) {\n\tvar p = storyList.indexOf(title);\n\twhile(p !== -1) {\n\t\tstoryList.splice(p,1);\n\t\tp = storyList.indexOf(title);\n\t}\n};\n\nNavigatorWidget.prototype.replaceFirstTitleInStory = function(storyList,oldTitle,newTitle) {\n\tvar pos = storyList.indexOf(oldTitle);\n\tif(pos !== -1) {\n\t\tstoryList[pos] = newTitle;\n\t\tdo {\n\t\t\tpos = storyList.indexOf(oldTitle,pos + 1);\n\t\t\tif(pos !== -1) {\n\t\t\t\tstoryList.splice(pos,1);\n\t\t\t}\n\t\t} while(pos !== -1);\n\t} else {\n\t\tstoryList.splice(0,0,newTitle);\n\t}\n};\n\nNavigatorWidget.prototype.addToStory = function(title,fromTitle) {\n\tvar storyList = this.getStoryList();\n\t// Quit if we cannot get hold of the story list\n\tif(!storyList) {\n\t\treturn;\n\t}\n\t// See if the tiddler is already there\n\tvar slot = storyList.indexOf(title);\n\t// Quit if it already exists in the story river\n\tif(slot >= 0) {\n\t\treturn;\n\t}\n\t// First we try to find the position of the story element we navigated from\n\tvar fromIndex = storyList.indexOf(fromTitle);\n\tif(fromIndex >= 0) {\n\t\t// The tiddler is added from inside the river\n\t\t// Determine where to insert the tiddler; Fallback is \"below\"\n\t\tswitch(this.getAttribute(\"openLinkFromInsideRiver\",\"below\")) {\n\t\t\tcase \"top\":\n\t\t\t\tslot = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tslot = storyList.length;\n\t\t\t\tbreak;\n\t\t\tcase \"above\":\n\t\t\t\tslot = fromIndex;\n\t\t\t\tbreak;\n\t\t\tcase \"below\": // Intentional fall-through\n\t\t\tdefault:\n\t\t\t\tslot = fromIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t} else {\n\t\t// The tiddler is opened from outside the river. Determine where to insert the tiddler; default is \"top\"\n\t\tif(this.getAttribute(\"openLinkFromOutsideRiver\",\"top\") === \"bottom\") {\n\t\t\t// Insert at bottom\n\t\t\tslot = storyList.length;\n\t\t} else {\n\t\t\t// Insert at top\n\t\t\tslot = 0;\n\t\t}\n\t}\n\t// Add the tiddler\n\tstoryList.splice(slot,0,title);\n\t// Save the story\n\tthis.saveStoryList(storyList);\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\n*/\nNavigatorWidget.prototype.addToHistory = function(title,fromPageRect) {\n\tthis.wiki.addToHistory(title,fromPageRect,this.historyTitle);\n};\n\n/*\nHandle a tm-navigate event\n*/\nNavigatorWidget.prototype.handleNavigateEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-navigating\",event);\n\tif(event.navigateTo) {\n\t\tthis.addToStory(event.navigateTo,event.navigateFromTitle);\n\t\tif(!event.navigateSuppressNavigation) {\n\t\t\tthis.addToHistory(event.navigateTo,event.navigateFromClientRect);\n\t\t}\n\t}\n\treturn false;\n};\n\n// Close a specified tiddler\nNavigatorWidget.prototype.handleCloseTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\tstoryList = this.getStoryList();\n\t// Look for tiddlers with this title to close\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\treturn false;\n};\n\n// Close all tiddlers\nNavigatorWidget.prototype.handleCloseAllTiddlersEvent = function(event) {\n\tthis.saveStoryList([]);\n\treturn false;\n};\n\n// Close other tiddlers\nNavigatorWidget.prototype.handleCloseOtherTiddlersEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle;\n\tthis.saveStoryList([title]);\n\treturn false;\n};\n\n// Place a tiddler in edit mode\nNavigatorWidget.prototype.handleEditTiddlerEvent = function(event) {\n\tvar editTiddler = $tw.hooks.invokeHook(\"th-editing-tiddler\",event);\n\tif(!editTiddler) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tfunction isUnmodifiedShadow(title) {\n\t\treturn self.wiki.isShadowTiddler(title) && !self.wiki.tiddlerExists(title);\n\t}\n\tfunction confirmEditShadow(title) {\n\t\treturn confirm($tw.language.getString(\n\t\t\t\"ConfirmEditShadowTiddler\",\n\t\t\t{variables:\n\t\t\t\t{title: title}\n\t\t\t}\n\t\t));\n\t}\n\tvar title = event.param || event.tiddlerTitle;\n\tif(isUnmodifiedShadow(title) && !confirmEditShadow(title)) {\n\t\treturn false;\n\t}\n\t// Replace the specified tiddler with a draft in edit mode\n\tvar draftTiddler = this.makeDraftTiddler(title);\n\t// Update the story and history if required\n\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\tvar draftTitle = draftTiddler.fields.title,\n\t\t\tstoryList = this.getStoryList();\n\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\tthis.saveStoryList(storyList);\n\t\treturn false;\n\t}\n};\n\n// Delete a tiddler\nNavigatorWidget.prototype.handleDeleteTiddlerEvent = function(event) {\n\t// Get the tiddler we're deleting\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList(),\n\t\toriginalTitle = tiddler ? tiddler.fields[\"draft.of\"] : \"\",\n\t\toriginalTiddler = originalTitle ? this.wiki.getTiddler(originalTitle) : undefined,\n\t\tconfirmationTitle;\n\tif(!tiddler) {\n\t\treturn false;\n\t}\n\t// Check if the tiddler we're deleting is in draft mode\n\tif(originalTitle) {\n\t\t// If so, we'll prompt for confirmation referencing the original tiddler\n\t\tconfirmationTitle = originalTitle;\n\t} else {\n\t\t// If not a draft, then prompt for confirmation referencing the specified tiddler\n\t\tconfirmationTitle = title;\n\t}\n\t// Seek confirmation\n\tif((this.wiki.getTiddler(originalTitle) || (tiddler.fields.text || \"\") !== \"\") && !confirm($tw.language.getString(\n\t\t\t\t\"ConfirmDeleteTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: confirmationTitle}\n\t\t\t\t}\n\t\t\t))) {\n\t\treturn false;\n\t}\n\t// Delete the original tiddler\n\tif(originalTitle) {\n\t\tif(originalTiddler) {\n\t\t\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",originalTiddler);\n\t\t}\n\t\tthis.wiki.deleteTiddler(originalTitle);\n\t\tthis.removeTitleFromStory(storyList,originalTitle);\n\t}\n\t// Invoke the hook function and delete this tiddler\n\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",tiddler);\n\tthis.wiki.deleteTiddler(title);\n\t// Remove the closed tiddler from the story\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\treturn false;\n};\n\n/*\nCreate/reuse the draft tiddler for a given title\n*/\nNavigatorWidget.prototype.makeDraftTiddler = function(targetTitle) {\n\t// See if there is already a draft tiddler for this tiddler\n\tvar draftTitle = this.wiki.findDraft(targetTitle);\n\tif(draftTitle) {\n\t\treturn this.wiki.getTiddler(draftTitle);\n\t}\n\t// Get the current value of the tiddler we're editing\n\tvar tiddler = this.wiki.getTiddler(targetTitle);\n\t// Save the initial value of the draft tiddler\n\tdraftTitle = this.generateDraftTitle(targetTitle);\n\tvar draftTiddler = new $tw.Tiddler(\n\t\t\ttiddler,\n\t\t\t{\n\t\t\t\ttitle: draftTitle,\n\t\t\t\t\"draft.title\": targetTitle,\n\t\t\t\t\"draft.of\": targetTitle\n\t\t\t},\n\t\t\tthis.wiki.getModificationFields()\n\t\t);\n\tthis.wiki.addTiddler(draftTiddler);\n\treturn draftTiddler;\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nNavigatorWidget.prototype.generateDraftTitle = function(title) {\n\tvar c = 0,\n\t\tdraftTitle;\n\tdo {\n\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\";\n\t\tc++;\n\t} while(this.wiki.tiddlerExists(draftTitle));\n\treturn draftTitle;\n};\n\n// Take a tiddler out of edit mode, saving the changes\nNavigatorWidget.prototype.handleSaveTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList();\n\t// Replace the original tiddler with the draft\n\tif(tiddler) {\n\t\tvar draftTitle = (tiddler.fields[\"draft.title\"] || \"\").trim(),\n\t\t\tdraftOf = (tiddler.fields[\"draft.of\"] || \"\").trim();\n\t\tif(draftTitle) {\n\t\t\tvar isRename = draftOf !== draftTitle,\n\t\t\t\tisConfirmed = true;\n\t\t\tif(isRename && this.wiki.tiddlerExists(draftTitle)) {\n\t\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\t\"ConfirmOverwriteTiddler\",\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{title: draftTitle}\n\t\t\t\t\t}\n\t\t\t\t));\n\t\t\t}\n\t\t\tif(isConfirmed) {\n\t\t\t\t// Create the new tiddler and pass it through the th-saving-tiddler hook\n\t\t\t\tvar newTiddler = new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\ttitle: draftTitle,\n\t\t\t\t\t\"draft.title\": undefined,\n\t\t\t\t\t\"draft.of\": undefined\n\t\t\t\t},this.wiki.getModificationFields());\n\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-saving-tiddler\",newTiddler);\n\t\t\t\tthis.wiki.addTiddler(newTiddler);\n\t\t\t\t// If enabled, relink references to renamed tiddler\n\t\t\t\tvar shouldRelink = this.getAttribute(\"relinkOnRename\",\"no\").toLowerCase().trim() === \"yes\";\n\t\t\t\tif(isRename && shouldRelink && this.wiki.tiddlerExists(draftOf)) {\nconsole.log(\"Relinking '\" + draftOf + \"' to '\" + draftTitle + \"'\");\n\t\t\t\t\tthis.wiki.relinkTiddler(draftOf,draftTitle);\n\t\t\t\t}\n\t\t\t\t// Remove the draft tiddler\n\t\t\t\tthis.wiki.deleteTiddler(title);\n\t\t\t\t// Remove the original tiddler if we're renaming it\n\t\t\t\tif(isRename) {\n\t\t\t\t\tthis.wiki.deleteTiddler(draftOf);\n\t\t\t\t}\n\t\t\t\t// #2381 always remove new title & old\n\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\tthis.removeTitleFromStory(storyList,draftOf);\n\t\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\t\t// Replace the draft in the story with the original\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\t\t\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\t\t\t\tif(draftTitle !== this.storyTitle) {\n\t\t\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Trigger an autosave\n\t\t\t\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Take a tiddler out of edit mode without saving the changes\nNavigatorWidget.prototype.handleCancelTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-cancelling-tiddler\", event);\n\t// Flip the specified tiddler from draft back to the original\n\tvar draftTitle = event.param || event.tiddlerTitle,\n\t\tdraftTiddler = this.wiki.getTiddler(draftTitle),\n\t\toriginalTitle = draftTiddler && draftTiddler.fields[\"draft.of\"];\n\tif(draftTiddler && originalTitle) {\n\t\t// Ask for confirmation if the tiddler text has changed\n\t\tvar isConfirmed = true,\n\t\t\toriginalTiddler = this.wiki.getTiddler(originalTitle),\n\t\t\tstoryList = this.getStoryList();\n\t\tif(this.wiki.isDraftModified(draftTitle)) {\n\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\"ConfirmCancelTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: draftTitle}\n\t\t\t\t}\n\t\t\t));\n\t\t}\n\t\t// Remove the draft tiddler\n\t\tif(isConfirmed) {\n\t\t\tthis.wiki.deleteTiddler(draftTitle);\n\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\tif(originalTiddler) {\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,draftTitle,originalTitle);\n\t\t\t\t\tthis.addToHistory(originalTitle,event.navigateFromClientRect);\n\t\t\t\t} else {\n\t\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\t}\n\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Create a new draft tiddler\n// event.param can either be the title of a template tiddler, or a hashmap of fields.\n//\n// The title of the newly created tiddler follows these rules:\n// * If a hashmap was used and a title field was specified, use that title\n// * If a hashmap was used without a title field, use a default title, if necessary making it unique with a numeric suffix\n// * If a template tiddler was used, use the title of the template, if necessary making it unique with a numeric suffix\n//\n// If a draft of the target tiddler already exists then it is reused\nNavigatorWidget.prototype.handleNewTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-new-tiddler\", event);\n\t// Get the story details\n\tvar storyList = this.getStoryList(),\n\t\ttemplateTiddler, additionalFields, title, draftTitle, existingTiddler;\n\t// Get the template tiddler (if any)\n\tif(typeof event.param === \"string\") {\n\t\t// Get the template tiddler\n\t\ttemplateTiddler = this.wiki.getTiddler(event.param);\n\t\t// Generate a new title\n\t\ttitle = this.wiki.generateNewTitle(event.param || $tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t}\n\t// Get the specified additional fields\n\tif(typeof event.paramObject === \"object\") {\n\t\tadditionalFields = event.paramObject;\n\t}\n\tif(typeof event.param === \"object\") { // Backwards compatibility with 5.1.3\n\t\tadditionalFields = event.param;\n\t}\n\tif(additionalFields && additionalFields.title) {\n\t\ttitle = additionalFields.title;\n\t}\n\t// Make a copy of the additional fields excluding any blank ones\n\tvar filteredAdditionalFields = $tw.utils.extend({},additionalFields);\n\tObject.keys(filteredAdditionalFields).forEach(function(fieldName) {\n\t\tif(filteredAdditionalFields[fieldName] === \"\") {\n\t\t\tdelete filteredAdditionalFields[fieldName];\n\t\t}\n\t});\n\t// Generate a title if we don't have one\n\ttitle = title || this.wiki.generateNewTitle($tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t// Find any existing draft for this tiddler\n\tdraftTitle = this.wiki.findDraft(title);\n\t// Pull in any existing tiddler\n\tif(draftTitle) {\n\t\texistingTiddler = this.wiki.getTiddler(draftTitle);\n\t} else {\n\t\tdraftTitle = this.generateDraftTitle(title);\n\t\texistingTiddler = this.wiki.getTiddler(title);\n\t}\n\t// Merge the tags\n\tvar mergedTags = [];\n\tif(existingTiddler && existingTiddler.fields.tags) {\n\t\t$tw.utils.pushTop(mergedTags,existingTiddler.fields.tags);\n\t}\n\tif(additionalFields && additionalFields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,$tw.utils.parseStringArray(additionalFields.tags));\n\t}\n\tif(templateTiddler && templateTiddler.fields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,templateTiddler.fields.tags);\n\t}\n\t// Save the draft tiddler\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\ttext: \"\",\n\t\t\t\"draft.title\": title\n\t\t},\n\t\ttemplateTiddler,\n\t\tadditionalFields,\n\t\texistingTiddler,\n\t\tfilteredAdditionalFields,\n\t\tthis.wiki.getCreationFields(),\n\t\t{\n\t\t\ttitle: draftTitle,\n\t\t\t\"draft.of\": title,\n\t\t\ttags: mergedTags\n\t\t},this.wiki.getModificationFields());\n\tthis.wiki.addTiddler(draftTiddler);\n\t// Update the story to insert the new draft at the top and remove any existing tiddler\n\tif(storyList.indexOf(draftTitle) === -1) {\n\t\tvar slot = storyList.indexOf(event.navigateFromTitle);\n\t\tstoryList.splice(slot + 1,0,draftTitle);\n\t}\n\tif(storyList.indexOf(title) !== -1) {\n\t\tstoryList.splice(storyList.indexOf(title),1);\n\t}\n\tthis.saveStoryList(storyList);\n\t// Add a new record to the top of the history stack\n\tthis.addToHistory(draftTitle);\n\treturn false;\n};\n\n// Import JSON tiddlers into a pending import tiddler\nNavigatorWidget.prototype.handleImportTiddlersEvent = function(event) {\n\t// Get the tiddlers\n\tvar tiddlers = [];\n\ttry {\n\t\ttiddlers = JSON.parse(event.param);\n\t} catch(e) {\n\t}\n\t// Get the current $:/Import tiddler\n\tvar importTiddler = this.wiki.getTiddler(IMPORT_TITLE),\n\t\timportData = this.wiki.getTiddlerData(IMPORT_TITLE,{}),\n\t\tnewFields = new Object({\n\t\t\ttitle: IMPORT_TITLE,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"import\",\n\t\t\t\"status\": \"pending\"\n\t\t}),\n\t\tincomingTiddlers = [];\n\t// Process each tiddler\n\timportData.tiddlers = importData.tiddlers || {};\n\t$tw.utils.each(tiddlers,function(tiddlerFields) {\n\t\ttiddlerFields.title = $tw.utils.trim(tiddlerFields.title);\n\t\tvar title = tiddlerFields.title;\n\t\tif(title) {\n\t\t\tincomingTiddlers.push(title);\n\t\t\timportData.tiddlers[title] = tiddlerFields;\n\t\t}\n\t});\n\t// Give the active upgrader modules a chance to process the incoming tiddlers\n\tvar messages = this.wiki.invokeUpgraders(incomingTiddlers,importData.tiddlers);\n\t$tw.utils.each(messages,function(message,title) {\n\t\tnewFields[\"message-\" + title] = message;\n\t});\n\t// Deselect any suppressed tiddlers\n\t$tw.utils.each(importData.tiddlers,function(tiddler,title) {\n\t\tif($tw.utils.count(tiddler) === 0) {\n\t\t\tnewFields[\"selection-\" + title] = \"unchecked\";\n\t\t}\n\t});\n\t// Save the $:/Import tiddler\n\tnewFields.text = JSON.stringify(importData,null,$tw.config.preferences.jsonSpaces);\n\tthis.wiki.addTiddler(new $tw.Tiddler(importTiddler,newFields));\n\t// Update the story and history details\n\tif(this.getVariable(\"tv-auto-open-on-import\") !== \"no\") {\n\t\tvar storyList = this.getStoryList(),\n\t\t\thistory = [];\n\t\t// Add it to the story\n\t\tif(storyList.indexOf(IMPORT_TITLE) === -1) {\n\t\t\tstoryList.unshift(IMPORT_TITLE);\n\t\t}\n\t\t// And to history\n\t\thistory.push(IMPORT_TITLE);\n\t\t// Save the updated story and history\n\t\tthis.saveStoryList(storyList);\n\t\tthis.addToHistory(history);\n\t}\n\treturn false;\n};\n\n//\nNavigatorWidget.prototype.handlePerformImportEvent = function(event) {\n\tvar self = this,\n\t\timportTiddler = this.wiki.getTiddler(event.param),\n\t\timportData = this.wiki.getTiddlerDataCached(event.param,{tiddlers: {}}),\n\t\timportReport = [];\n\t// Add the tiddlers to the store\n\timportReport.push($tw.language.getString(\"Import/Imported/Hint\") + \"\\n\");\n\t$tw.utils.each(importData.tiddlers,function(tiddlerFields) {\n\t\tvar title = tiddlerFields.title;\n\t\tif(title && importTiddler && importTiddler.fields[\"selection-\" + title] !== \"unchecked\") {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\t\t\ttiddler = $tw.hooks.invokeHook(\"th-importing-tiddler\",tiddler);\n\t\t\tself.wiki.addTiddler(tiddler);\n\t\t\timportReport.push(\"# [[\" + tiddlerFields.title + \"]]\");\n\t\t}\n\t});\n\t// Replace the $:/Import tiddler with an import report\n\tthis.wiki.addTiddler(new $tw.Tiddler({\n\t\ttitle: event.param,\n\t\ttext: importReport.join(\"\\n\"),\n\t\t\"status\": \"complete\"\n\t}));\n\t// Navigate to the $:/Import tiddler\n\tthis.addToHistory([event.param]);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n};\n\nNavigatorWidget.prototype.handleFoldTiddlerEvent = function(event) {\n\tvar paramObject = event.paramObject || {};\n\tif(paramObject.foldedState) {\n\t\tvar foldedState = this.wiki.getTiddlerText(paramObject.foldedState,\"show\") === \"show\" ? \"hide\" : \"show\";\n\t\tthis.wiki.setText(paramObject.foldedState,\"text\",null,foldedState);\n\t}\n};\n\nNavigatorWidget.prototype.handleFoldOtherTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,event.param === title ? \"show\" : \"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleFoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleUnfoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"show\");\n\t});\n};\n\nNavigatorWidget.prototype.handleRenameTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-renaming-tiddler\", event);\n\tvar paramObject = event.paramObject || {},\n\t\tfrom = paramObject.from || event.tiddlerTitle,\n\t\tto = paramObject.to;\n\t$tw.wiki.renameTiddler(from,to);\n};\n\nexports.navigator = NavigatorWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/password.js": {
            "title": "$:/core/modules/widgets/password.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/password.js\ntype: application/javascript\nmodule-type: widget\n\nPassword widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar PasswordWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nPasswordWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nPasswordWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the current password\n\tvar password = $tw.browser ? $tw.utils.getPassword(this.passwordName) || \"\" : \"\";\n\t// Create our element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"password\");\n\tdomNode.setAttribute(\"value\",password);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nPasswordWidget.prototype.handleChangeEvent = function(event) {\n\tvar password = this.domNodes[0].value;\n\treturn $tw.utils.savePassword(this.passwordName,password);\n};\n\n/*\nCompute the internal state of the widget\n*/\nPasswordWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.passwordName = this.getAttribute(\"name\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nPasswordWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.password = PasswordWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/radio.js": {
            "title": "$:/core/modules/widgets/radio.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/radio.js\ntype: application/javascript\nmodule-type: widget\n\nSet a field or index at a given tiddler via radio buttons\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RadioWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRadioWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRadioWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tvar isChecked = this.getValue() === this.radioValue;\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",\n   \t\t\"tc-radio \" + this.radioClass + (isChecked ? \" tc-radio-selected\" : \"\")\n  \t);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"radio\");\n\tif(isChecked) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nRadioWidget.prototype.getValue = function() {\n\tvar value,\n\t\ttiddler = this.wiki.getTiddler(this.radioTitle);\n\tif (this.radioIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.radioTitle,this.radioIndex);\n\t} else {\n\t\tvalue = tiddler && tiddler.getFieldString(this.radioField);\n\t}\n\treturn value;\n};\n\nRadioWidget.prototype.setValue = function() {\n\tif(this.radioIndex) {\n\t\tthis.wiki.setText(this.radioTitle,\"\",this.radioIndex,this.radioValue);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.radioTitle),\n\t\t\taddition = {};\n\t\taddition[this.radioField] = this.radioValue;\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),{title: this.radioTitle},tiddler,addition,this.wiki.getModificationFields()));\n\t}\n};\n\nRadioWidget.prototype.handleChangeEvent = function(event) {\n\tif(this.inputDomNode.checked) {\n\t\tthis.setValue();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRadioWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.radioTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.radioField = this.getAttribute(\"field\",\"text\");\n\tthis.radioIndex = this.getAttribute(\"index\");\n\tthis.radioValue = this.getAttribute(\"value\");\n\tthis.radioClass = this.getAttribute(\"class\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRadioWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.radioTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue() === this.radioValue;\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.radio = RadioWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/range.js": {
            "title": "$:/core/modules/widgets/range.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/range.js\ntype: application/javascript\nmodule-type: widget\n\nRange widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RangeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRangeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRangeWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"range\");\n\tthis.inputDomNode.setAttribute(\"class\",this.elementClass);\n\tif(this.minValue){\n\t\tthis.inputDomNode.setAttribute(\"min\", this.minValue);\n\t}\n\tif(this.maxValue){\n\t\tthis.inputDomNode.setAttribute(\"max\", this.maxValue);\n\t}\n\tif(this.increment){\n\t\tthis.inputDomNode.setAttribute(\"step\", this.increment);\n\t}\n\tthis.inputDomNode.value = this.getValue();\n\n\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.inputDomNode,nextSibling);\n\tthis.domNodes.push(this.inputDomNode);\n};\n\nRangeWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle),\n\t\tvalue   = this.defaultValue;\n\tif(tiddler) {\n\t\tif($tw.utils.hop(tiddler.fields,this.tiddlerField)) {\n\t\t\tvalue = tiddler.fields[this.tiddlerField] || \"\";\n\t\t} else {\n\t\t\tvalue = this.defaultValue || \"\";\n\t\t}\n\t}\n\treturn value;\n};\n\nRangeWidget.prototype.handleChangeEvent = function(event) {\n\tthis.wiki.setText(this.tiddlerTitle ,this.tiddlerField, null,this.inputDomNode.value);\n};\n\n/*\nCompute the internal state of the widget\n*/\nRangeWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.tiddlerField = this.getAttribute(\"field\");\n\tthis.minValue = this.getAttribute(\"min\");\n\tthis.maxValue = this.getAttribute(\"max\");\n\tthis.increment = this.getAttribute(\"increment\");\n\tthis.defaultValue = this.getAttribute(\"default\");\n\tthis.elementClass = this.getAttribute(\"class\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRangeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes['min'] || changedAttributes['max'] || changedAttributes['increment'] || changedAttributes[\"default\"] || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.tiddlerTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue();\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.range = RangeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/raw.js": {
            "title": "$:/core/modules/widgets/raw.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/raw.js\ntype: application/javascript\nmodule-type: widget\n\nRaw widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RawWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRawWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRawWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar div = this.document.createElement(\"div\");\n\tdiv.innerHTML=this.parseTreeNode.html;\n\tparent.insertBefore(div,nextSibling);\n\tthis.domNodes.push(div);\t\n};\n\n/*\nCompute the internal state of the widget\n*/\nRawWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRawWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.raw = RawWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/reveal.js": {
            "title": "$:/core/modules/widgets/reveal.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/reveal.js\ntype: application/javascript\nmodule-type: widget\n\nReveal widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RevealWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRevealWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRevealWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.revealTag && $tw.config.htmlUnsafeElements.indexOf(this.revealTag) === -1) {\n\t\ttag = this.revealTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\tvar classes = this[\"class\"].split(\" \") || [];\n\tclasses.push(\"tc-reveal\");\n\tdomNode.className = classes.join(\" \");\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\t}\n\tif(!this.isOpen) {\n\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t}\n\tthis.domNodes.push(domNode);\n};\n\nRevealWidget.prototype.positionPopup = function(domNode) {\n\tdomNode.style.position = \"absolute\";\n\tdomNode.style.zIndex = \"1000\";\n\tswitch(this.position) {\n\t\tcase \"left\":\n\t\t\tdomNode.style.left = (this.popup.left - domNode.offsetWidth) + \"px\";\n\t\t\tdomNode.style.top = this.popup.top + \"px\";\n\t\t\tbreak;\n\t\tcase \"above\":\n\t\t\tdomNode.style.left = this.popup.left + \"px\";\n\t\t\tdomNode.style.top = (this.popup.top - domNode.offsetHeight) + \"px\";\n\t\t\tbreak;\n\t\tcase \"aboveright\":\n\t\t\tdomNode.style.left = (this.popup.left + this.popup.width) + \"px\";\n\t\t\tdomNode.style.top = (this.popup.top + this.popup.height - domNode.offsetHeight) + \"px\";\n\t\t\tbreak;\n\t\tcase \"right\":\n\t\t\tdomNode.style.left = (this.popup.left + this.popup.width) + \"px\";\n\t\t\tdomNode.style.top = this.popup.top + \"px\";\n\t\t\tbreak;\n\t\tcase \"belowleft\":\n\t\t\tdomNode.style.left = (this.popup.left + this.popup.width - domNode.offsetWidth) + \"px\";\n\t\t\tdomNode.style.top = (this.popup.top + this.popup.height) + \"px\";\n\t\t\tbreak;\n\t\tdefault: // Below\n\t\t\tdomNode.style.left = this.popup.left + \"px\";\n\t\t\tdomNode.style.top = (this.popup.top + this.popup.height) + \"px\";\n\t\t\tbreak;\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRevealWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.state = this.getAttribute(\"state\");\n\tthis.revealTag = this.getAttribute(\"tag\");\n\tthis.type = this.getAttribute(\"type\");\n\tthis.text = this.getAttribute(\"text\");\n\tthis.position = this.getAttribute(\"position\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis.style = this.getAttribute(\"style\",\"\");\n\tthis[\"default\"] = this.getAttribute(\"default\",\"\");\n\tthis.animate = this.getAttribute(\"animate\",\"no\");\n\tthis.retain = this.getAttribute(\"retain\",\"no\");\n\tthis.openAnimation = this.animate === \"no\" ? undefined : \"open\";\n\tthis.closeAnimation = this.animate === \"no\" ? undefined : \"close\";\n\t// Compute the title of the state tiddler and read it\n\tthis.stateTitle = this.state;\n\tthis.readState();\n\t// Construct the child widgets\n\tvar childNodes = this.isOpen ? this.parseTreeNode.children : [];\n\tthis.hasChildNodes = this.isOpen;\n\tthis.makeChildWidgets(childNodes);\n};\n\n/*\nRead the state tiddler\n*/\nRevealWidget.prototype.readState = function() {\n\t// Read the information from the state tiddler\n\tvar state = this.stateTitle ? this.wiki.getTextReference(this.stateTitle,this[\"default\"],this.getVariable(\"currentTiddler\")) : this[\"default\"];\n\tswitch(this.type) {\n\t\tcase \"popup\":\n\t\t\tthis.readPopupState(state);\n\t\t\tbreak;\n\t\tcase \"match\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) == 0);\n\t\t\tbreak;\n\t\tcase \"nomatch\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) == 0);\n\t\t\tbreak;\n\t\tcase \"lt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t\tcase \"gt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"lteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"gteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t}\n};\n\nRevealWidget.prototype.compareStateText = function(state) {\n\treturn state.localeCompare(this.text,undefined,{numeric: true,sensitivity: \"case\"});\n};\n\nRevealWidget.prototype.readPopupState = function(state) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(state);\n\t// Check if the state matches the location regexp\n\tif(match) {\n\t\t// If so, we're open\n\t\tthis.isOpen = true;\n\t\t// Get the location\n\t\tthis.popup = {\n\t\t\tleft: parseFloat(match[1]),\n\t\t\ttop: parseFloat(match[2]),\n\t\t\twidth: parseFloat(match[3]),\n\t\t\theight: parseFloat(match[4])\n\t\t};\n\t} else {\n\t\t// If not, we're closed\n\t\tthis.isOpen = false;\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRevealWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.state || changedAttributes.type || changedAttributes.text || changedAttributes.position || changedAttributes[\"default\"] || changedAttributes.animate) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false,\n\t\t\tcurrentlyOpen = this.isOpen;\n\t\tthis.readState();\n\t\tif(this.isOpen !== currentlyOpen) {\n\t\t\tif(this.retain === \"yes\") {\n\t\t\t\tthis.updateState();\n\t\t\t} else {\n\t\t\t\tthis.refreshSelf();\n\t\t\t\trefreshed = true;\n\t\t\t}\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\n/*\nCalled by refresh() to dynamically show or hide the content\n*/\nRevealWidget.prototype.updateState = function() {\n\t// Read the current state\n\tthis.readState();\n\t// Construct the child nodes if needed\n\tvar domNode = this.domNodes[0];\n\tif(this.isOpen && !this.hasChildNodes) {\n\t\tthis.hasChildNodes = true;\n\t\tthis.makeChildWidgets(this.parseTreeNode.children);\n\t\tthis.renderChildren(domNode,null);\n\t}\n\t// Animate our DOM node\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\n\t}\n\tif(this.isOpen) {\n\t\tdomNode.removeAttribute(\"hidden\");\n        $tw.anim.perform(this.openAnimation,domNode);\n\t} else {\n\t\t$tw.anim.perform(this.closeAnimation,domNode,{callback: function() {\n\t\t\tdomNode.setAttribute(\"hidden\",\"true\");\n        }});\n\t}\n};\n\nexports.reveal = RevealWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/scrollable.js": {
            "title": "$:/core/modules/widgets/scrollable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/scrollable.js\ntype: application/javascript\nmodule-type: widget\n\nScrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ScrollableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.scaleFactor = 1;\n\tthis.addEventListeners([\n\t\t{type: \"tm-scroll\", handler: \"handleScrollEvent\"}\n\t]);\n\tif($tw.browser) {\n\t\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\t\twindow.webkitRequestAnimationFrame ||\n\t\t\twindow.mozRequestAnimationFrame ||\n\t\t\tfunction(callback) {\n\t\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t\t};\n\t\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\t\twindow.webkitCancelAnimationFrame ||\n\t\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\t\twindow.mozCancelAnimationFrame ||\n\t\t\twindow.mozCancelRequestAnimationFrame ||\n\t\t\tfunction(id) {\n\t\t\t\twindow.clearTimeout(id);\n\t\t\t};\n\t}\n};\n\n/*\nInherit from the base widget class\n*/\nScrollableWidget.prototype = new Widget();\n\nScrollableWidget.prototype.cancelScroll = function() {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(window,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle a scroll event\n*/\nScrollableWidget.prototype.handleScrollEvent = function(event) {\n\t// Pass the scroll event through if our offsetsize is larger than our scrollsize\n\tif(this.outerDomNode.scrollWidth <= this.outerDomNode.offsetWidth && this.outerDomNode.scrollHeight <= this.outerDomNode.offsetHeight && this.fallthrough === \"yes\") {\n\t\treturn true;\n\t}\n\tthis.scrollIntoView(event.target);\n\treturn false; // Handled event\n};\n\n/*\nScroll an element into view\n*/\nScrollableWidget.prototype.scrollIntoView = function(element) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tthis.cancelScroll();\n\tthis.startTime = Date.now();\n\tvar scrollPosition = {\n\t\tx: this.outerDomNode.scrollLeft,\n\t\ty: this.outerDomNode.scrollTop\n\t};\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar scrollableBounds = this.outerDomNode.getBoundingClientRect(),\n\t\tclientTargetBounds = element.getBoundingClientRect(),\n\t\tbounds = {\n\t\t\tleft: clientTargetBounds.left + scrollPosition.x - scrollableBounds.left,\n\t\t\ttop: clientTargetBounds.top + scrollPosition.y - scrollableBounds.top,\n\t\t\twidth: clientTargetBounds.width,\n\t\t\theight: clientTargetBounds.height\n\t\t};\n\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\tvar getEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\t// If the target is already visible then stay where we are\n\t\t\tif(targetPos >= currentPos && (targetPos + targetSize) <= (currentPos + currentSize)) {\n\t\t\t\treturn currentPos;\n\t\t\t// If the target is above/left of the current view, then scroll to its top/left\n\t\t\t} else if(targetPos <= currentPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// If the target is smaller than the window and the scroll position is too far up, then scroll till the target is at the bottom of the window\n\t\t\t} else if(targetSize < currentSize && currentPos < (targetPos + targetSize - currentSize)) {\n\t\t\t\treturn targetPos + targetSize - currentSize;\n\t\t\t// If the target is big, then just scroll to the top\n\t\t\t} else if(currentPos < targetPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// Otherwise, stay where we are\n\t\t\t} else {\n\t\t\t\treturn currentPos;\n\t\t\t}\n\t\t},\n\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,this.outerDomNode.offsetWidth),\n\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,this.outerDomNode.offsetHeight);\n\t// Only scroll if necessary\n\tif(endX !== scrollPosition.x || endY !== scrollPosition.y) {\n\t\tvar self = this,\n\t\t\tdrawFrame;\n\t\tdrawFrame = function () {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll();\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tself.outerDomNode.scrollLeft = scrollPosition.x + (endX - scrollPosition.x) * t;\n\t\t\tself.outerDomNode.scrollTop = scrollPosition.y + (endY - scrollPosition.y) * t;\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(window,drawFrame);\n\t\t\t}\n\t\t};\n\t\tdrawFrame();\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nScrollableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create elements\n\tthis.outerDomNode = this.document.createElement(\"div\");\n\t$tw.utils.setStyle(this.outerDomNode,[\n\t\t{overflowY: \"auto\"},\n\t\t{overflowX: \"auto\"},\n\t\t{webkitOverflowScrolling: \"touch\"}\n\t]);\n\tthis.innerDomNode = this.document.createElement(\"div\");\n\tthis.outerDomNode.appendChild(this.innerDomNode);\n\t// Assign classes\n\tthis.outerDomNode.className = this[\"class\"] || \"\";\n\t// Insert element\n\tparent.insertBefore(this.outerDomNode,nextSibling);\n\tthis.renderChildren(this.innerDomNode,null);\n\tthis.domNodes.push(this.outerDomNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nScrollableWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.fallthrough = this.getAttribute(\"fallthrough\",\"yes\");\n\tthis[\"class\"] = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nScrollableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.scrollable = ScrollableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/select.js": {
            "title": "$:/core/modules/widgets/select.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/select.js\ntype: application/javascript\nmodule-type: widget\n\nSelect widget:\n\n```\n<$select tiddler=\"MyTiddler\" field=\"text\">\n<$list filter=\"[tag[chapter]]\">\n<option value=<<currentTiddler>>>\n<$view field=\"description\"/>\n</option>\n</$list>\n</$select>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SelectWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSelectWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSelectWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\tthis.setSelectValue();\n\t$tw.utils.addEventListeners(this.getSelectDomNode(),[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n};\n\n/*\nHandle a change event\n*/\nSelectWidget.prototype.handleChangeEvent = function(event) {\n\t// Get the new value and assign it to the tiddler\n\tif(this.selectMultiple == false) {\n\t\tvar value = this.getSelectDomNode().value;\n\t} else {\n\t\tvar value = this.getSelectValues()\n\t\t\t\tvalue = $tw.utils.stringifyList(value);\n\t}\n\tthis.wiki.setText(this.selectTitle,this.selectField,this.selectIndex,value);\n\t// Trigger actions\n\tif(this.selectActions) {\n\t\tthis.invokeActionString(this.selectActions,this,event);\n\t}\n};\n\n/*\nIf necessary, set the value of the select element to the current value\n*/\nSelectWidget.prototype.setSelectValue = function() {\n\tvar value = this.selectDefault;\n\t// Get the value\n\tif(this.selectIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.selectTitle,this.selectIndex,value);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.selectTitle);\n\t\tif(tiddler) {\n\t\t\tif(this.selectField === \"text\") {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.selectTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.selectField)) {\n\t\t\t\t\tvalue = tiddler.getFieldString(this.selectField);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.selectField === \"title\") {\n\t\t\t\tvalue = this.selectTitle;\n\t\t\t}\n\t\t}\n\t}\n\t// Assign it to the select element if it's different than the current value\n\tif (this.selectMultiple) {\n\t\tvalue = value === undefined ? \"\" : value;\n\t\tvar select = this.getSelectDomNode();\n\t\tvar values = Array.isArray(value) ? value : $tw.utils.parseStringArray(value);\n\t\tfor(var i=0; i < select.children.length; i++){\n\t\t\tif(values.indexOf(select.children[i].value) != -1) {\n\t\t\t\tselect.children[i].selected = true;\n\t\t\t}\n\t\t}\n\t\t\n\t} else {\n\t\tvar domNode = this.getSelectDomNode();\n\t\tif(domNode.value !== value) {\n\t\t\tdomNode.value = value;\n\t\t}\n\t}\n};\n\n/*\nGet the DOM node of the select element\n*/\nSelectWidget.prototype.getSelectDomNode = function() {\n\treturn this.children[0].domNodes[0];\n};\n\n// Return an array of the selected opion values\n// select is an HTML select element\nSelectWidget.prototype.getSelectValues = function() {\n\tvar select, result, options, opt;\n\tselect = this.getSelectDomNode();\n\tresult = [];\n\toptions = select && select.options;\n\tfor (var i=0; i<options.length; i++) {\n\t\topt = options[i];\n\t\tif (opt.selected) {\n\t\t\tresult.push(opt.value || opt.text);\n\t\t}\n\t}\n\treturn result;\n}\n\n/*\nCompute the internal state of the widget\n*/\nSelectWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.selectActions = this.getAttribute(\"actions\");\n\tthis.selectTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.selectField = this.getAttribute(\"field\",\"text\");\n\tthis.selectIndex = this.getAttribute(\"index\");\n\tthis.selectClass = this.getAttribute(\"class\");\n\tthis.selectDefault = this.getAttribute(\"default\");\n\tthis.selectMultiple = this.getAttribute(\"multiple\", false);\n\tthis.selectSize = this.getAttribute(\"size\");\n\t// Make the child widgets\n\tvar selectNode = {\n\t\ttype: \"element\",\n\t\ttag: \"select\",\n\t\tchildren: this.parseTreeNode.children\n\t};\n\tif(this.selectClass) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"class\",this.selectClass);\n\t}\n\tif(this.selectMultiple) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"multiple\",\"multiple\");\n\t}\n\tif(this.selectSize) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"size\",this.selectSize);\n\t}\n\tthis.makeChildWidgets([selectNode]);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSelectWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// If we're using a different tiddler/field/index then completely refresh ourselves\n\tif(changedAttributes.selectTitle || changedAttributes.selectField || changedAttributes.selectIndex) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t// If the target tiddler value has changed, just update setting and refresh the children\n\t} else {\n\t\tvar childrenRefreshed = this.refreshChildren(changedTiddlers);\n\t\tif(changedTiddlers[this.selectTitle] || childrenRefreshed) {\n\t\t\tthis.setSelectValue();\n\t\t} \n\t\treturn childrenRefreshed;\n\t}\n};\n\nexports.select = SelectWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/set.js": {
            "title": "$:/core/modules/widgets/set.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/set.js\ntype: application/javascript\nmodule-type: widget\n\nSet variable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.setName = this.getAttribute(\"name\",\"currentTiddler\");\n\tthis.setFilter = this.getAttribute(\"filter\");\n\tthis.setSelect = this.getAttribute(\"select\");\n\tthis.setTiddler = this.getAttribute(\"tiddler\");\n\tthis.setSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.setField = this.getAttribute(\"field\");\n\tthis.setIndex = this.getAttribute(\"index\");\n\tthis.setValue = this.getAttribute(\"value\");\n\tthis.setEmptyValue = this.getAttribute(\"emptyValue\");\n\t// Set context variable\n\tthis.setVariable(this.setName,this.getValue(),this.parseTreeNode.params);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nGet the value to be assigned\n*/\nSetWidget.prototype.getValue = function() {\n\tvar value = this.setValue;\n\tif(this.setTiddler) {\n\t\tvar tiddler;\n\t\tif(this.setSubTiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.setTiddler,this.setSubTiddler);\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.setTiddler);\t\t\t\n\t\t}\n\t\tif(!tiddler) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t} else if(this.setField) {\n\t\t\tvalue = tiddler.getFieldString(this.setField) || this.setEmptyValue;\n\t\t} else if(this.setIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.setTiddler,this.setIndex,this.setEmptyValue);\n\t\t} else {\n\t\t\tvalue = tiddler.fields.text || this.setEmptyValue ;\n\t\t}\n\t} else if(this.setFilter) {\n\t\tvar results = this.wiki.filterTiddlers(this.setFilter,this);\n\t\tif(this.setValue == null) {\n\t\t\tvar select;\n\t\t\tif(this.setSelect) {\n\t\t\t\tselect = parseInt(this.setSelect,10);\n\t\t\t}\n\t\t\tif(select !== undefined) {\n\t\t\t\tvalue = results[select] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = $tw.utils.stringifyList(results);\t\t\t\n\t\t\t}\n\t\t}\n\t\tif(results.length === 0 && this.setEmptyValue !== undefined) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t}\n\t} else if(!value && this.setEmptyValue) {\n\t\tvalue = this.setEmptyValue;\n\t}\n\treturn value || \"\";\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSetWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.filter || changedAttributes.select || changedAttributes.tiddler || (this.setTiddler && changedTiddlers[this.setTiddler]) || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes.emptyValue ||\n\t   (this.setFilter && this.getValue() != this.variables[this.setName].value)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.setvariable = SetWidget;\nexports.set = SetWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/text.js": {
            "title": "$:/core/modules/widgets/text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/text.js\ntype: application/javascript\nmodule-type: widget\n\nText node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\ttext = text.replace(/\\r/mg,\"\");\n\tvar textNode = this.document.createTextNode(text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTextNodeWidget.prototype.execute = function() {\n\t// Nothing to do for a text node\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.text = TextNodeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/tiddler.js": {
            "title": "$:/core/modules/widgets/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/tiddler.js\ntype: application/javascript\nmodule-type: widget\n\nTiddler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTiddlerWidget.prototype.execute = function() {\n\tthis.tiddlerState = this.computeTiddlerState();\n\tthis.setVariable(\"currentTiddler\",this.tiddlerState.currentTiddler);\n\tthis.setVariable(\"missingTiddlerClass\",this.tiddlerState.missingTiddlerClass);\n\tthis.setVariable(\"shadowTiddlerClass\",this.tiddlerState.shadowTiddlerClass);\n\tthis.setVariable(\"systemTiddlerClass\",this.tiddlerState.systemTiddlerClass);\n\tthis.setVariable(\"tiddlerTagClasses\",this.tiddlerState.tiddlerTagClasses);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nCompute the tiddler state flags\n*/\nTiddlerWidget.prototype.computeTiddlerState = function() {\n\t// Get our parameters\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Compute the state\n\tvar state = {\n\t\tcurrentTiddler: this.tiddlerTitle || \"\",\n\t\tmissingTiddlerClass: (this.wiki.tiddlerExists(this.tiddlerTitle) || this.wiki.isShadowTiddler(this.tiddlerTitle)) ? \"tc-tiddler-exists\" : \"tc-tiddler-missing\",\n\t\tshadowTiddlerClass: this.wiki.isShadowTiddler(this.tiddlerTitle) ? \"tc-tiddler-shadow\" : \"\",\n\t\tsystemTiddlerClass: this.wiki.isSystemTiddler(this.tiddlerTitle) ? \"tc-tiddler-system\" : \"\",\n\t\ttiddlerTagClasses: this.getTagClasses()\n\t};\n\t// Compute a simple hash to make it easier to detect changes\n\tstate.hash = state.currentTiddler + state.missingTiddlerClass + state.shadowTiddlerClass + state.systemTiddlerClass + state.tiddlerTagClasses;\n\treturn state;\n};\n\n/*\nCreate a string of CSS classes derived from the tags of the current tiddler\n*/\nTiddlerWidget.prototype.getTagClasses = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\tif(tiddler) {\n\t\tvar tags = [];\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\ttags.push(\"tc-tagged-\" + encodeURIComponent(tag));\n\t\t});\n\t\treturn tags.join(\" \");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tnewTiddlerState = this.computeTiddlerState();\n\tif(changedAttributes.tiddler || newTiddlerState.hash !== this.tiddlerState.hash) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.tiddler = TiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/transclude.js": {
            "title": "$:/core/modules/widgets/transclude.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/transclude.js\ntype: application/javascript\nmodule-type: widget\n\nTransclude widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TranscludeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTranscludeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTranscludeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTranscludeWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.transcludeTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.transcludeSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.transcludeField = this.getAttribute(\"field\");\n\tthis.transcludeIndex = this.getAttribute(\"index\");\n\tthis.transcludeMode = this.getAttribute(\"mode\");\n\t// Parse the text reference\n\tvar parseAsInline = !this.parseTreeNode.isBlock;\n\tif(this.transcludeMode === \"inline\") {\n\t\tparseAsInline = true;\n\t} else if(this.transcludeMode === \"block\") {\n\t\tparseAsInline = false;\n\t}\n\tvar parser = this.wiki.parseTextReference(\n\t\t\t\t\t\tthis.transcludeTitle,\n\t\t\t\t\t\tthis.transcludeField,\n\t\t\t\t\t\tthis.transcludeIndex,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tparseAsInline: parseAsInline,\n\t\t\t\t\t\t\tsubTiddler: this.transcludeSubTiddler\n\t\t\t\t\t\t}),\n\t\tparseTreeNodes = parser ? parser.tree : this.parseTreeNode.children;\n\t// Set context variables for recursion detection\n\tvar recursionMarker = this.makeRecursionMarker();\n\tthis.setVariable(\"transclusion\",recursionMarker);\n\t// Check for recursion\n\tif(parser) {\n\t\tif(this.parentWidget && this.parentWidget.hasVariable(\"transclusion\",recursionMarker)) {\n\t\t\tparseTreeNodes = [{type: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-error\"}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: $tw.language.getString(\"Error/RecursiveTransclusion\")}\n\t\t\t]}];\n\t\t}\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nCompose a string comprising the title, field and/or index to identify this transclusion for recursion detection\n*/\nTranscludeWidget.prototype.makeRecursionMarker = function() {\n\tvar output = [];\n\toutput.push(\"{\");\n\toutput.push(this.getVariable(\"currentTiddler\",{defaultValue: \"\"}));\n\toutput.push(\"|\");\n\toutput.push(this.transcludeTitle || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeField || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeIndex || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeSubTiddler || \"\");\n\toutput.push(\"}\");\n\treturn output.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTranscludeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedTiddlers[this.transcludeTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.transclude = TranscludeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/vars.js": {
            "title": "$:/core/modules/widgets/vars.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/vars.js\ntype: application/javascript\nmodule-type: widget\n\nThis widget allows multiple variables to be set in one go:\n\n```\n\\define helloworld() Hello world!\n<$vars greeting=\"Hi\" me={{!!title}} sentence=<<helloworld>>>\n  <<greeting>>! I am <<me>> and I say: <<sentence>>\n</$vars>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar VarsWidget = function(parseTreeNode,options) {\n\t// Call the constructor\n\tWidget.call(this);\n\t// Initialise\t\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nVarsWidget.prototype = Object.create(Widget.prototype);\n\n/*\nRender this widget into the DOM\n*/\nVarsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nVarsWidget.prototype.execute = function() {\n\t// Parse variables\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(val,key) {\n\t\tif(key.charAt(0) !== \"$\") {\n\t\t\tself.setVariable(key,val);\n\t\t}\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nVarsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"vars\"] = VarsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/view.js": {
            "title": "$:/core/modules/widgets/view.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/view.js\ntype: application/javascript\nmodule-type: widget\n\nView widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ViewWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nViewWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nViewWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.text) {\n\t\tvar textNode = this.document.createTextNode(this.text);\n\t\tparent.insertBefore(textNode,nextSibling);\n\t\tthis.domNodes.push(textNode);\n\t} else {\n\t\tthis.makeChildWidgets();\n\t\tthis.renderChildren(parent,nextSibling);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nViewWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.viewTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.viewSubtiddler = this.getAttribute(\"subtiddler\");\n\tthis.viewField = this.getAttribute(\"field\",\"text\");\n\tthis.viewIndex = this.getAttribute(\"index\");\n\tthis.viewFormat = this.getAttribute(\"format\",\"text\");\n\tthis.viewTemplate = this.getAttribute(\"template\",\"\");\n\tthis.viewMode = this.getAttribute(\"mode\",\"block\");\n\tswitch(this.viewFormat) {\n\t\tcase \"htmlwikified\":\n\t\t\tthis.text = this.getValueAsHtmlWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"plainwikified\":\n\t\t\tthis.text = this.getValueAsPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencodedplainwikified\":\n\t\t\tthis.text = this.getValueAsHtmlEncodedPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencoded\":\n\t\t\tthis.text = this.getValueAsHtmlEncoded();\n\t\t\tbreak;\n\t\tcase \"urlencoded\":\n\t\t\tthis.text = this.getValueAsUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"doubleurlencoded\":\n\t\t\tthis.text = this.getValueAsDoubleUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"date\":\n\t\t\tthis.text = this.getValueAsDate(this.viewTemplate);\n\t\t\tbreak;\n\t\tcase \"relativedate\":\n\t\t\tthis.text = this.getValueAsRelativeDate();\n\t\t\tbreak;\n\t\tcase \"stripcomments\":\n\t\t\tthis.text = this.getValueAsStrippedComments();\n\t\t\tbreak;\n\t\tcase \"jsencoded\":\n\t\t\tthis.text = this.getValueAsJsEncoded();\n\t\t\tbreak;\n\t\tdefault: // \"text\"\n\t\t\tthis.text = this.getValueAsText();\n\t\t\tbreak;\n\t}\n};\n\n/*\nThe various formatter functions are baked into this widget for the moment. Eventually they will be replaced by macro functions\n*/\n\n/*\nRetrieve the value of the widget. Options are:\nasString: Optionally return the value as a string\n*/\nViewWidget.prototype.getValue = function(options) {\n\toptions = options || {};\n\tvar value = options.asString ? \"\" : undefined;\n\tif(this.viewIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.viewTitle,this.viewIndex);\n\t} else {\n\t\tvar tiddler;\n\t\tif(this.viewSubtiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.viewTitle,this.viewSubtiddler);\t\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.viewTitle);\n\t\t}\n\t\tif(tiddler) {\n\t\t\tif(this.viewField === \"text\" && !this.viewSubtiddler) {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.viewTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.viewField)) {\n\t\t\t\t\tif(options.asString) {\n\t\t\t\t\t\tvalue = tiddler.getFieldString(this.viewField);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalue = tiddler.fields[this.viewField];\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.viewField === \"title\") {\n\t\t\t\tvalue = this.viewTitle;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nViewWidget.prototype.getValueAsText = function() {\n\treturn this.getValue({asString: true});\n};\n\nViewWidget.prototype.getValueAsHtmlWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/html\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsPlainWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsHtmlEncodedPlainWikified = function(mode) {\n\treturn $tw.utils.htmlEncode(this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t}));\n};\n\nViewWidget.prototype.getValueAsHtmlEncoded = function() {\n\treturn $tw.utils.htmlEncode(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsUrlEncoded = function() {\n\treturn encodeURIComponent(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsDoubleUrlEncoded = function() {\n\treturn encodeURIComponent(encodeURIComponent(this.getValueAsText()));\n};\n\nViewWidget.prototype.getValueAsDate = function(format) {\n\tformat = format || \"YYYY MM DD 0hh:0mm\";\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.formatDateString(value,format);\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsRelativeDate = function(format) {\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsStrippedComments = function() {\n\tvar lines = this.getValueAsText().split(\"\\n\"),\n\t\tout = [];\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar text = lines[line];\n\t\tif(!/^\\s*\\/\\/#/.test(text)) {\n\t\t\tout.push(text);\n\t\t}\n\t}\n\treturn out.join(\"\\n\");\n};\n\nViewWidget.prototype.getValueAsJsEncoded = function() {\n\treturn $tw.utils.stringify(this.getValueAsText());\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nViewWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.template || changedAttributes.format || changedTiddlers[this.viewTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.view = ViewWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/widget.js": {
            "title": "$:/core/modules/widgets/widget.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/widget.js\ntype: application/javascript\nmodule-type: widget\n\nWidget base class\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate a widget object for a parse tree node\n\tparseTreeNode: reference to the parse tree node to be rendered\n\toptions: see below\nOptions include:\n\twiki: mandatory reference to wiki associated with this render tree\n\tparentWidget: optional reference to a parent renderer node for the context chain\n\tdocument: optional document object to use instead of global document\n*/\nvar Widget = function(parseTreeNode,options) {\n\tif(arguments.length > 0) {\n\t\tthis.initialise(parseTreeNode,options);\n\t}\n};\n\n/*\nInitialise widget properties. These steps are pulled out of the constructor so that we can reuse them in subclasses\n*/\nWidget.prototype.initialise = function(parseTreeNode,options) {\n\toptions = options || {};\n\t// Save widget info\n\tthis.parseTreeNode = parseTreeNode;\n\tthis.wiki = options.wiki;\n\tthis.parentWidget = options.parentWidget;\n\tthis.variablesConstructor = function() {};\n\tthis.variablesConstructor.prototype = this.parentWidget ? this.parentWidget.variables : {};\n\tthis.variables = new this.variablesConstructor();\n\tthis.document = options.document;\n\tthis.attributes = {};\n\tthis.children = [];\n\tthis.domNodes = [];\n\tthis.eventListeners = {};\n\t// Hashmap of the widget classes\n\tif(!this.widgetClasses) {\n\t\tWidget.prototype.widgetClasses = $tw.modules.applyMethods(\"widget\");\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWidget.prototype.execute = function() {\n\tthis.makeChildWidgets();\n};\n\n/*\nSet the value of a context variable\nname: name of the variable\nvalue: value of the variable\nparams: array of {name:, default:} for each parameter\n*/\nWidget.prototype.setVariable = function(name,value,params) {\n\tthis.variables[name] = {value: value, params: params};\n};\n\n/*\nGet the prevailing value of a context variable\nname: name of variable\noptions: see below\nOptions include\nparams: array of {name:, value:} for each parameter\ndefaultValue: default value if the variable is not defined\n\nReturns an object with the following fields:\n\nparams: array of {name:,value:} of parameters passed to wikitext variables\ntext: text of variable, with parameters properly substituted\n*/\nWidget.prototype.getVariableInfo = function(name,options) {\n\toptions = options || {};\n\tvar actualParams = options.params || [],\n\t\tparentWidget = this.parentWidget;\n\t// Check for the variable defined in the parent widget (or an ancestor in the prototype chain)\n\tif(parentWidget && name in parentWidget.variables) {\n\t\tvar variable = parentWidget.variables[name],\n\t\t\tvalue = variable.value,\n\t\t\tparams = this.resolveVariableParameters(variable.params,actualParams);\n\t\t// Substitute any parameters specified in the definition\n\t\t$tw.utils.each(params,function(param) {\n\t\t\tvalue = $tw.utils.replaceString(value,new RegExp(\"\\\\$\" + $tw.utils.escapeRegExp(param.name) + \"\\\\$\",\"mg\"),param.value);\n\t\t});\n\t\tvalue = this.substituteVariableReferences(value);\n\t\treturn {\n\t\t\ttext: value,\n\t\t\tparams: params\n\t\t};\n\t}\n\t// If the variable doesn't exist in the parent widget then look for a macro module\n\treturn {\n\t\ttext: this.evaluateMacroModule(name,actualParams,options.defaultValue)\n\t};\n};\n\n/*\nSimplified version of getVariableInfo() that just returns the text\n*/\nWidget.prototype.getVariable = function(name,options) {\n\treturn this.getVariableInfo(name,options).text;\n};\n\nWidget.prototype.resolveVariableParameters = function(formalParams,actualParams) {\n\tformalParams = formalParams || [];\n\tactualParams = actualParams || [];\n\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\tparamInfo, paramValue,\n\t\tresults = [];\n\t// Step through each of the parameters in the macro definition\n\tfor(var p=0; p<formalParams.length; p++) {\n\t\t// Check if we've got a macro call parameter with the same name\n\t\tparamInfo = formalParams[p];\n\t\tparamValue = undefined;\n\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t}\n\t\t}\n\t\t// If not, use the next available anonymous macro call parameter\n\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\tnextAnonParameter++;\n\t\t}\n\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t}\n\t\t// If we've still not got a value, use the default, if any\n\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t// Store the parameter name and value\n\t\tresults.push({name: paramInfo.name, value: paramValue});\n\t}\n\treturn results;\n};\n\nWidget.prototype.substituteVariableReferences = function(text) {\n\tvar self = this;\n\treturn (text || \"\").replace(/\\$\\(([^\\)\\$]+)\\)\\$/g,function(match,p1,offset,string) {\n\t\treturn self.getVariable(p1,{defaultValue: \"\"});\n\t});\n};\n\nWidget.prototype.evaluateMacroModule = function(name,actualParams,defaultValue) {\n\tif($tw.utils.hop($tw.macros,name)) {\n\t\tvar macro = $tw.macros[name],\n\t\t\targs = [];\n\t\tif(macro.params.length > 0) {\n\t\t\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\t\t\tparamInfo, paramValue;\n\t\t\t// Step through each of the parameters in the macro definition\n\t\t\tfor(var p=0; p<macro.params.length; p++) {\n\t\t\t\t// Check if we've got a macro call parameter with the same name\n\t\t\t\tparamInfo = macro.params[p];\n\t\t\t\tparamValue = undefined;\n\t\t\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If not, use the next available anonymous macro call parameter\n\t\t\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\t\t\tnextAnonParameter++;\n\t\t\t\t}\n\t\t\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t\t\t}\n\t\t\t\t// If we've still not got a value, use the default, if any\n\t\t\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t\t\t// Save the parameter\n\t\t\t\targs.push(paramValue);\n\t\t\t}\n\t\t}\n\t\telse for(var i=0; i<actualParams.length; ++i) {\n\t\t\targs.push(actualParams[i].value);\n\t\t}\n\t\treturn (macro.run.apply(this,args) || \"\").toString();\n\t} else {\n\t\treturn defaultValue;\n\t}\n};\n\n/*\nCheck whether a given context variable value exists in the parent chain\n*/\nWidget.prototype.hasVariable = function(name,value) {\n\tvar node = this;\n\twhile(node) {\n\t\tif($tw.utils.hop(node.variables,name) && node.variables[name].value === value) {\n\t\t\treturn true;\n\t\t}\n\t\tnode = node.parentWidget;\n\t}\n\treturn false;\n};\n\n/*\nConstruct a qualifying string based on a hash of concatenating the values of a given variable in the parent chain\n*/\nWidget.prototype.getStateQualifier = function(name) {\n\tthis.qualifiers = this.qualifiers || Object.create(null);\n\tname = name || \"transclusion\";\n\tif(this.qualifiers[name]) {\n\t\treturn this.qualifiers[name];\n\t} else {\n\t\tvar output = [],\n\t\t\tnode = this;\n\t\twhile(node && node.parentWidget) {\n\t\t\tif($tw.utils.hop(node.parentWidget.variables,name)) {\n\t\t\t\toutput.push(node.getVariable(name));\n\t\t\t}\n\t\t\tnode = node.parentWidget;\n\t\t}\n\t\tvar value = $tw.utils.hashString(output.join(\"\"));\n\t\tthis.qualifiers[name] = value;\n\t\treturn value;\n\t}\n};\n\n/*\nCompute the current values of the attributes of the widget. Returns a hashmap of the names of the attributes that have changed\n*/\nWidget.prototype.computeAttributes = function() {\n\tvar changedAttributes = {},\n\t\tself = this,\n\t\tvalue;\n\t$tw.utils.each(this.parseTreeNode.attributes,function(attribute,name) {\n\t\tif(attribute.type === \"filtered\") {\n\t\t\tvalue = self.wiki.filterTiddlers(attribute.filter,self)[0] || \"\";\n\t\t} else if(attribute.type === \"indirect\") {\n\t\t\tvalue = self.wiki.getTextReference(attribute.textReference,\"\",self.getVariable(\"currentTiddler\"));\n\t\t} else if(attribute.type === \"macro\") {\n\t\t\tvalue = self.getVariable(attribute.value.name,{params: attribute.value.params});\n\t\t} else { // String attribute\n\t\t\tvalue = attribute.value;\n\t\t}\n\t\t// Check whether the attribute has changed\n\t\tif(self.attributes[name] !== value) {\n\t\t\tself.attributes[name] = value;\n\t\t\tchangedAttributes[name] = true;\n\t\t}\n\t});\n\treturn changedAttributes;\n};\n\n/*\nCheck for the presence of an attribute\n*/\nWidget.prototype.hasAttribute = function(name) {\n\treturn $tw.utils.hop(this.attributes,name);\n};\n\n/*\nGet the value of an attribute\n*/\nWidget.prototype.getAttribute = function(name,defaultText) {\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\treturn this.attributes[name];\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nAssign the computed attributes of the widget to a domNode\noptions include:\nexcludeEventAttributes: ignores attributes whose name begins with \"on\"\n*/\nWidget.prototype.assignAttributes = function(domNode,options) {\n\toptions = options || {};\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\t// Check exclusions\n\t\tif(options.excludeEventAttributes && a.substr(0,2) === \"on\") {\n\t\t\tv = undefined;\n\t\t}\n\t\tif(v !== undefined) {\n\t\t\tvar b = a.split(\":\");\n\t\t\t// Setting certain attributes can cause a DOM error (eg xmlns on the svg element)\n\t\t\ttry {\n\t\t\t\tif (b.length == 2 && b[0] == \"xlink\"){\n\t\t\t\t\tdomNode.setAttributeNS(\"http://www.w3.org/1999/xlink\",b[1],v);\n\t\t\t\t} else {\n\t\t\t\t\tdomNode.setAttributeNS(null,a,v);\n\t\t\t\t}\n\t\t\t} catch(e) {\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nMake child widgets correspondng to specified parseTreeNodes\n*/\nWidget.prototype.makeChildWidgets = function(parseTreeNodes) {\n\tthis.children = [];\n\tvar self = this;\n\t$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {\n\t\tself.children.push(self.makeChildWidget(childNode));\n\t});\n};\n\n/*\nConstruct the widget object for a parse tree node\n*/\nWidget.prototype.makeChildWidget = function(parseTreeNode) {\n\tvar WidgetClass = this.widgetClasses[parseTreeNode.type];\n\tif(!WidgetClass) {\n\t\tWidgetClass = this.widgetClasses.text;\n\t\tparseTreeNode = {type: \"text\", text: \"Undefined widget '\" + parseTreeNode.type + \"'\"};\n\t}\n\treturn new WidgetClass(parseTreeNode,{\n\t\twiki: this.wiki,\n\t\tvariables: {},\n\t\tparentWidget: this,\n\t\tdocument: this.document\n\t});\n};\n\n/*\nGet the next sibling of this widget\n*/\nWidget.prototype.nextSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index < this.parentWidget.children.length-1) {\n\t\t\treturn this.parentWidget.children[index+1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the previous sibling of this widget\n*/\nWidget.prototype.previousSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index > 0) {\n\t\t\treturn this.parentWidget.children[index-1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRender the children of this widget into the DOM\n*/\nWidget.prototype.renderChildren = function(parent,nextSibling) {\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\tchildWidget.render(parent,nextSibling);\n\t});\n};\n\n/*\nAdd a list of event listeners from an array [{type:,handler:},...]\n*/\nWidget.prototype.addEventListeners = function(listeners) {\n\tvar self = this;\n\t$tw.utils.each(listeners,function(listenerInfo) {\n\t\tself.addEventListener(listenerInfo.type,listenerInfo.handler);\n\t});\n};\n\n/*\nAdd an event listener\n*/\nWidget.prototype.addEventListener = function(type,handler) {\n\tvar self = this;\n\tif(typeof handler === \"string\") { // The handler is a method name on this widget\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn self[handler].call(self,event);\n\t\t};\n\t} else { // The handler is a function\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn handler.call(self,event);\n\t\t};\n\t}\n};\n\n/*\nDispatch an event to a widget. If the widget doesn't handle the event then it is also dispatched to the parent widget\n*/\nWidget.prototype.dispatchEvent = function(event) {\n\t// Dispatch the event if this widget handles it\n\tvar listener = this.eventListeners[event.type];\n\tif(listener) {\n\t\t// Don't propagate the event if the listener returned false\n\t\tif(!listener(event)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Dispatch the event to the parent widget\n\tif(this.parentWidget) {\n\t\treturn this.parentWidget.dispatchEvent(event);\n\t}\n\treturn true;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nRebuild a previously rendered widget\n*/\nWidget.prototype.refreshSelf = function() {\n\tvar nextSibling = this.findNextSiblingDomNode();\n\tthis.removeChildDomNodes();\n\tthis.render(this.parentDomNode,nextSibling);\n};\n\n/*\nRefresh all the children of a widget\n*/\nWidget.prototype.refreshChildren = function(changedTiddlers) {\n\tvar self = this,\n\t\trefreshed = false;\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\trefreshed = childWidget.refresh(changedTiddlers) || refreshed;\n\t});\n\treturn refreshed;\n};\n\n/*\nFind the next sibling in the DOM to this widget. This is done by scanning the widget tree through all next siblings and their descendents that share the same parent DOM node\n*/\nWidget.prototype.findNextSiblingDomNode = function(startIndex) {\n\t// Refer to this widget by its index within its parents children\n\tvar parent = this.parentWidget,\n\t\tindex = startIndex !== undefined ? startIndex : parent.children.indexOf(this);\nif(index === -1) {\n\tthrow \"node not found in parents children\";\n}\n\t// Look for a DOM node in the later siblings\n\twhile(++index < parent.children.length) {\n\t\tvar domNode = parent.children[index].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\t// Go back and look for later siblings of our parent if it has the same parent dom node\n\tvar grandParent = parent.parentWidget;\n\tif(grandParent && parent.parentDomNode === this.parentDomNode) {\n\t\tindex = grandParent.children.indexOf(parent);\n\t\tif(index !== -1) {\n\t\t\treturn parent.findNextSiblingDomNode(index);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nFind the first DOM node generated by a widget or its children\n*/\nWidget.prototype.findFirstDomNode = function() {\n\t// Return the first dom node of this widget, if we've got one\n\tif(this.domNodes.length > 0) {\n\t\treturn this.domNodes[0];\n\t}\n\t// Otherwise, recursively call our children\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar domNode = this.children[t].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRemove any DOM nodes created by this widget or its children\n*/\nWidget.prototype.removeChildDomNodes = function() {\n\t// If this widget has directly created DOM nodes, delete them and exit. This assumes that any child widgets are contained within the created DOM nodes, which would normally be the case\n\tif(this.domNodes.length > 0) {\n\t\t$tw.utils.each(this.domNodes,function(domNode) {\n\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t});\n\t\tthis.domNodes = [];\n\t} else {\n\t\t// Otherwise, ask the child widgets to delete their DOM nodes\n\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\tchildWidget.removeChildDomNodes();\n\t\t});\n\t}\n};\n\n/*\nInvoke the action widgets that are descendents of the current widget.\n*/\nWidget.prototype.invokeActions = function(triggeringWidget,event) {\n\tvar handled = false;\n\t// For each child widget\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar child = this.children[t];\n\t\t// Invoke the child if it is an action widget\n\t\tif(child.invokeAction) {\n\t\t\tchild.refreshSelf();\n\t\t\tif(child.invokeAction(triggeringWidget,event)) {\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t}\n\t\t// Propagate through through the child if it permits it\n\t\tif(child.allowActionPropagation() && child.invokeActions(triggeringWidget,event)) {\n\t\t\thandled = true;\n\t\t}\n\t}\n\treturn handled;\n};\n\n/*\nInvoke the action widgets defined in a string\n*/\nWidget.prototype.invokeActionString = function(actions,triggeringWidget,event,variables) {\n\tactions = actions || \"\";\n\tvar parser = this.wiki.parseText(\"text/vnd.tiddlywiki\",actions,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document\n\t\t}),\n\t\twidgetNode = this.wiki.makeWidget(parser,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document,\n\t\t\tvariables: variables\n\t\t});\n\tvar container = this.document.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn widgetNode.invokeActions(this,event);\n};\n\nWidget.prototype.allowActionPropagation = function() {\n\treturn true;\n};\n\nexports.widget = Widget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/wikify.js": {
            "title": "$:/core/modules/widgets/wikify.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/wikify.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to wikify text into a variable\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar WikifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nWikifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nWikifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWikifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.wikifyName = this.getAttribute(\"name\");\n\tthis.wikifyText = this.getAttribute(\"text\");\n\tthis.wikifyType = this.getAttribute(\"type\");\n\tthis.wikifyMode = this.getAttribute(\"mode\",\"block\");\n\tthis.wikifyOutput = this.getAttribute(\"output\",\"text\");\n\t// Create the parse tree\n\tthis.wikifyParser = this.wiki.parseText(this.wikifyType,this.wikifyText,{\n\t\t\tparseAsInline: this.wikifyMode === \"inline\"\n\t\t});\n\t// Create the widget tree \n\tthis.wikifyWidgetNode = this.wiki.makeWidget(this.wikifyParser,{\n\t\t\tdocument: $tw.fakeDocument,\n\t\t\tparentWidget: this\n\t\t});\n\t// Render the widget tree to the container\n\tthis.wikifyContainer = $tw.fakeDocument.createElement(\"div\");\n\tthis.wikifyWidgetNode.render(this.wikifyContainer,null);\n\tthis.wikifyResult = this.getResult();\n\t// Set context variable\n\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nReturn the result string\n*/\nWikifyWidget.prototype.getResult = function() {\n\tvar result;\n\tswitch(this.wikifyOutput) {\n\t\tcase \"text\":\n\t\t\tresult = this.wikifyContainer.textContent;\n\t\t\tbreak;\n\t\tcase \"formattedtext\":\n\t\t\tresult = this.wikifyContainer.formattedTextContent;\n\t\t\tbreak;\n\t\tcase \"html\":\n\t\t\tresult = this.wikifyContainer.innerHTML;\n\t\t\tbreak;\n\t\tcase \"parsetree\":\n\t\t\tresult = JSON.stringify(this.wikifyParser.tree,0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t\tcase \"widgettree\":\n\t\t\tresult = JSON.stringify(this.getWidgetTree(),0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t}\n\treturn result;\n};\n\n/*\nReturn a string of the widget tree\n*/\nWikifyWidget.prototype.getWidgetTree = function() {\n\tvar copyNode = function(widgetNode,resultNode) {\n\t\t\tvar type = widgetNode.parseTreeNode.type;\n\t\t\tresultNode.type = type;\n\t\t\tswitch(type) {\n\t\t\t\tcase \"element\":\n\t\t\t\t\tresultNode.tag = widgetNode.parseTreeNode.tag;\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"text\":\n\t\t\t\t\tresultNode.text = widgetNode.parseTreeNode.text;\n\t\t\t\t\tbreak;\t\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.attributes || {}).length > 0) {\n\t\t\t\tresultNode.attributes = {};\n\t\t\t\t$tw.utils.each(widgetNode.attributes,function(attr,attrName) {\n\t\t\t\t\tresultNode.attributes[attrName] = widgetNode.getAttribute(attrName);\n\t\t\t\t});\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.children || {}).length > 0) {\n\t\t\t\tresultNode.children = [];\n\t\t\t\t$tw.utils.each(widgetNode.children,function(widgetChildNode) {\n\t\t\t\t\tvar node = {};\n\t\t\t\t\tresultNode.children.push(node);\n\t\t\t\t\tcopyNode(widgetChildNode,node);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresults = {};\n\tcopyNode(this.wikifyWidgetNode,results);\n\treturn results;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWikifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh ourselves entirely if any of our attributes have changed\n\tif(changedAttributes.name || changedAttributes.text || changedAttributes.type || changedAttributes.mode || changedAttributes.output) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\t// Refresh the widget tree\n\t\tif(this.wikifyWidgetNode.refresh(changedTiddlers)) {\n\t\t\t// Check if there was any change\n\t\t\tvar result = this.getResult();\n\t\t\tif(result !== this.wikifyResult) {\n\t\t\t\t// If so, save the change\n\t\t\t\tthis.wikifyResult = result;\n\t\t\t\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t\t\t\t// Refresh each of our child widgets\n\t\t\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\t\t\tchildWidget.refreshSelf();\n\t\t\t\t});\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\t// Just refresh the children\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.wikify = WikifyWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/wiki-bulkops.js": {
            "title": "$:/core/modules/wiki-bulkops.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki-bulkops.js\ntype: application/javascript\nmodule-type: wikimethod\n\nBulk tiddler operations such as rename.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRename a tiddler, and relink any tags or lists that reference it.\n*/\nfunction renameTiddler(fromTitle,toTitle,options) {\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\t// Rename the tiddler itself\n\t\tvar oldTiddler = this.getTiddler(fromTitle),\n\t\t\tnewTiddler = new $tw.Tiddler(oldTiddler,{title: toTitle},this.getModificationFields());\n\t\tnewTiddler = $tw.hooks.invokeHook(\"th-renaming-tiddler\",newTiddler,oldTiddler);\n\t\tthis.addTiddler(newTiddler);\n\t\tthis.deleteTiddler(fromTitle);\n\t\t// Rename any tags or lists that reference it\n\t\tthis.relinkTiddler(fromTitle,toTitle,options)\n\t}\n}\n\n/*\nRelink any tags or lists that reference a given tiddler\n*/\nfunction relinkTiddler(fromTitle,toTitle,options) {\n\tvar self = this;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\tthis.each(function(tiddler,title) {\n\t\t\tvar type = tiddler.fields.type || \"\";\n\t\t\t// Don't touch plugins or JavaScript modules\n\t\t\tif(!tiddler.fields[\"plugin-type\"] && type !== \"application/javascript\") {\n\t\t\t\tvar tags = (tiddler.fields.tags || []).slice(0),\n\t\t\t\t\tlist = (tiddler.fields.list || []).slice(0),\n\t\t\t\t\tisModified = false;\n\t\t\t\tif(!options.dontRenameInTags) {\n\t\t\t\t\t// Rename tags\n\t\t\t\t\t$tw.utils.each(tags,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming tag '\" + tags[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\ttags[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(!options.dontRenameInLists) {\n\t\t\t\t\t// Rename lists\n\t\t\t\t\t$tw.utils.each(list,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming list item '\" + list[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\tlist[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(isModified) {\n\t\t\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,{tags: tags, list: list},self.getModificationFields())\n\t\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\t\t\tself.addTiddler(newTiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\nexports.renameTiddler = renameTiddler;\nexports.relinkTiddler = relinkTiddler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/wiki.js": {
            "title": "$:/core/modules/wiki.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki.js\ntype: application/javascript\nmodule-type: wikimethod\n\nExtension methods for the $tw.Wiki object\n\nAdds the following properties to the wiki object:\n\n* `eventListeners` is a hashmap by type of arrays of listener functions\n* `changedTiddlers` is a hashmap describing changes to named tiddlers since wiki change events were last dispatched. Each entry is a hashmap containing two fields:\n\tmodified: true/false\n\tdeleted: true/false\n* `changeCount` is a hashmap by tiddler title containing a numerical index that starts at zero and is incremented each time a tiddler is created changed or deleted\n* `caches` is a hashmap by tiddler title containing a further hashmap of named cache objects. Caches are automatically cleared when a tiddler is modified or deleted\n* `globalCache` is a hashmap by cache name of cache objects that are cleared whenever any tiddler change occurs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar USER_NAME_TITLE = \"$:/status/UserName\",\n\tTIMESTAMP_DISABLE_TITLE = \"$:/config/TimestampDisable\";\n\n/*\nGet the value of a text reference. Text references can have any of these forms:\n\t<tiddlertitle>\n\t<tiddlertitle>!!<fieldname>\n\t!!<fieldname> - specifies a field of the current tiddlers\n\t<tiddlertitle>##<index>\n*/\nexports.getTextReference = function(textRef,defaultText,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tif(tr.field) {\n\t\tvar tiddler = this.getTiddler(title);\n\t\tif(tr.field === \"title\") { // Special case so we can return the title of a non-existent tiddler\n\t\t\treturn title;\n\t\t} else if(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\treturn tiddler.getFieldString(tr.field);\n\t\t} else {\n\t\t\treturn defaultText;\n\t\t}\n\t} else if(tr.index) {\n\t\treturn this.extractTiddlerDataItem(title,tr.index,defaultText);\n\t} else {\n\t\treturn this.getTiddlerText(title,defaultText);\n\t}\n};\n\nexports.setTextReference = function(textRef,value,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tthis.setText(title,tr.field,tr.index,value);\n};\n\nexports.setText = function(title,field,index,value,options) {\n\toptions = options || {};\n\tvar creationFields = options.suppressTimestamp ? {} : this.getCreationFields(),\n\t\tmodificationFields = options.suppressTimestamp ? {} : this.getModificationFields();\n\t// Check if it is a reference to a tiddler field\n\tif(index) {\n\t\tvar data = this.getTiddlerData(title,Object.create(null));\n\t\tif(value !== undefined) {\n\t\t\tdata[index] = value;\n\t\t} else {\n\t\t\tdelete data[index];\n\t\t}\n\t\tthis.setTiddlerData(title,data,modificationFields);\n\t} else {\n\t\tvar tiddler = this.getTiddler(title),\n\t\t\tfields = {title: title};\n\t\tfields[field || \"text\"] = value;\n\t\tthis.addTiddler(new $tw.Tiddler(creationFields,tiddler,fields,modificationFields));\n\t}\n};\n\nexports.deleteTextReference = function(textRef,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle,tiddler,fields;\n\t// Check if it is a reference to a tiddler\n\tif(tr.title && !tr.field) {\n\t\tthis.deleteTiddler(tr.title);\n\t// Else check for a field reference\n\t} else if(tr.field) {\n\t\ttitle = tr.title || currTiddlerTitle;\n\t\ttiddler = this.getTiddler(title);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\tfields = Object.create(null);\n\t\t\tfields[tr.field] = undefined;\n\t\t\tthis.addTiddler(new $tw.Tiddler(tiddler,fields,this.getModificationFields()));\n\t\t}\n\t}\n};\n\nexports.addEventListener = function(type,listener) {\n\tthis.eventListeners = this.eventListeners || {};\n\tthis.eventListeners[type] = this.eventListeners[type]  || [];\n\tthis.eventListeners[type].push(listener);\t\n};\n\nexports.removeEventListener = function(type,listener) {\n\tvar listeners = this.eventListeners[type];\n\tif(listeners) {\n\t\tvar p = listeners.indexOf(listener);\n\t\tif(p !== -1) {\n\t\t\tlisteners.splice(p,1);\n\t\t}\n\t}\n};\n\nexports.dispatchEvent = function(type /*, args */) {\n\tvar args = Array.prototype.slice.call(arguments,1),\n\t\tlisteners = this.eventListeners[type];\n\tif(listeners) {\n\t\tfor(var p=0; p<listeners.length; p++) {\n\t\t\tvar listener = listeners[p];\n\t\t\tlistener.apply(listener,args);\n\t\t}\n\t}\n};\n\n/*\nCauses a tiddler to be marked as changed, incrementing the change count, and triggers event handlers.\nThis method should be called after the changes it describes have been made to the wiki.tiddlers[] array.\n\ttitle: Title of tiddler\n\tisDeleted: defaults to false (meaning the tiddler has been created or modified),\n\t\ttrue if the tiddler has been deleted\n*/\nexports.enqueueTiddlerEvent = function(title,isDeleted) {\n\t// Record the touch in the list of changed tiddlers\n\tthis.changedTiddlers = this.changedTiddlers || Object.create(null);\n\tthis.changedTiddlers[title] = this.changedTiddlers[title] || Object.create(null);\n\tthis.changedTiddlers[title][isDeleted ? \"deleted\" : \"modified\"] = true;\n\t// Increment the change count\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\tthis.changeCount[title]++;\n\t} else {\n\t\tthis.changeCount[title] = 1;\n\t}\n\t// Trigger events\n\tthis.eventListeners = this.eventListeners || {};\n\tif(!this.eventsTriggered) {\n\t\tvar self = this;\n\t\t$tw.utils.nextTick(function() {\n\t\t\tvar changes = self.changedTiddlers;\n\t\t\tself.changedTiddlers = Object.create(null);\n\t\t\tself.eventsTriggered = false;\n\t\t\tif($tw.utils.count(changes) > 0) {\n\t\t\t\tself.dispatchEvent(\"change\",changes);\n\t\t\t}\n\t\t});\n\t\tthis.eventsTriggered = true;\n\t}\n};\n\nexports.getSizeOfTiddlerEventQueue = function() {\n\treturn $tw.utils.count(this.changedTiddlers);\n};\n\nexports.clearTiddlerEventQueue = function() {\n\tthis.changedTiddlers = Object.create(null);\n\tthis.changeCount = Object.create(null);\n};\n\nexports.getChangeCount = function(title) {\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\treturn this.changeCount[title];\n\t} else {\n\t\treturn 0;\n\t}\n};\n\n/*\nGenerate an unused title from the specified base\n*/\nexports.generateNewTitle = function(baseTitle,options) {\n\toptions = options || {};\n\tvar c = 0,\n\t\ttitle = baseTitle;\n\twhile(this.tiddlerExists(title) || this.isShadowTiddler(title) || this.findDraft(title)) {\n\t\ttitle = baseTitle + \n\t\t\t(options.prefix || \" \") + \n\t\t\t(++c);\n\t}\n\treturn title;\n};\n\nexports.isSystemTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/\") === 0;\n};\n\nexports.isTemporaryTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/temp/\") === 0;\n};\n\nexports.isImageTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.flags.indexOf(\"image\") !== -1;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLike addTiddler() except it will silently reject any plugin tiddlers that are older than the currently loaded version. Returns true if the tiddler was imported\n*/\nexports.importTiddler = function(tiddler) {\n\tvar existingTiddler = this.getTiddler(tiddler.fields.title);\n\t// Check if we're dealing with a plugin\n\tif(tiddler && tiddler.hasField(\"plugin-type\") && tiddler.hasField(\"version\") && existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t// Reject the incoming plugin if it is older\n\t\tif(!$tw.utils.checkVersions(tiddler.fields.version,existingTiddler.fields.version)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Fall through to adding the tiddler\n\tthis.addTiddler(tiddler);\n\treturn true;\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is created\n*/\nexports.getCreationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = {\n\t\t\t\tcreated: new Date()\n\t\t\t},\n\t\t\tcreator = this.getTiddlerText(USER_NAME_TITLE);\n\t\tif(creator) {\n\t\t\tfields.creator = creator;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is modified\n*/\nexports.getModificationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = Object.create(null),\n\t\t\tmodifier = this.getTiddlerText(USER_NAME_TITLE);\n\t\tfields.modified = new Date();\n\t\tif(modifier) {\n\t\t\tfields.modifier = modifier;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a sorted array of tiddler titles.  Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.getTiddlers = function(options) {\n\toptions = options || Object.create(null);\n\tvar self = this,\n\t\tsortField = options.sortField || \"title\",\n\t\ttiddlers = [], t, titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tif(options.includeSystem || !self.isSystemTiddler(title)) {\n\t\t\tif(!options.excludeTag || !tiddler.hasTag(options.excludeTag)) {\n\t\t\t\ttiddlers.push(tiddler);\n\t\t\t}\n\t\t}\n\t});\n\ttiddlers.sort(function(a,b) {\n\t\tvar aa = a.fields[sortField].toLowerCase() || \"\",\n\t\t\tbb = b.fields[sortField].toLowerCase() || \"\";\n\t\tif(aa < bb) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(aa > bb) {\n\t\t\t\treturn 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n\tfor(t=0; t<tiddlers.length; t++) {\n\t\ttitles.push(tiddlers[t].fields.title);\n\t}\n\treturn titles;\n};\n\nexports.countTiddlers = function(excludeTag) {\n\tvar tiddlers = this.getTiddlers({excludeTag: excludeTag});\n\treturn $tw.utils.count(tiddlers);\n};\n\n/*\nReturns a function iterator(callback) that iterates through the specified titles, and invokes the callback with callback(tiddler,title)\n*/\nexports.makeTiddlerIterator = function(titles) {\n\tvar self = this;\n\tif(!$tw.utils.isArray(titles)) {\n\t\ttitles = Object.keys(titles);\n\t} else {\n\t\ttitles = titles.slice(0);\n\t}\n\treturn function(callback) {\n\t\ttitles.forEach(function(title) {\n\t\t\tcallback(self.getTiddler(title),title);\n\t\t});\n\t};\n};\n\n/*\nSort an array of tiddler titles by a specified field\n\ttitles: array of titles (sorted in place)\n\tsortField: name of field to sort by\n\tisDescending: true if the sort should be descending\n\tisCaseSensitive: true if the sort should consider upper and lower case letters to be different\n*/\nexports.sortTiddlers = function(titles,sortField,isDescending,isCaseSensitive,isNumeric,isAlphaNumeric) {\n\tvar self = this;\n\ttitles.sort(function(a,b) {\n\t\tvar x,y,\n\t\t\tcompareNumbers = function(x,y) {\n\t\t\t\tvar result = \n\t\t\t\t\tisNaN(x) && !isNaN(y) ? (isDescending ? -1 : 1) :\n\t\t\t\t\t!isNaN(x) && isNaN(y) ? (isDescending ? 1 : -1) :\n\t\t\t\t\t\t\t\t\t\t\t(isDescending ? y - x :  x - y);\n\t\t\t\treturn result;\n\t\t\t};\n\t\tif(sortField !== \"title\") {\n\t\t\tvar tiddlerA = self.getTiddler(a),\n\t\t\t\ttiddlerB = self.getTiddler(b);\n\t\t\tif(tiddlerA) {\n\t\t\t\ta = tiddlerA.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\ta = \"\";\n\t\t\t}\n\t\t\tif(tiddlerB) {\n\t\t\t\tb = tiddlerB.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\tb = \"\";\n\t\t\t}\n\t\t}\n\t\tx = Number(a);\n\t\ty = Number(b);\n\t\tif(isNumeric && (!isNaN(x) || !isNaN(y))) {\n\t\t\treturn compareNumbers(x,y);\n\t\t} else if(isAlphaNumeric) {\n\t\t\treturn isDescending ? b.localeCompare(a,undefined,{numeric: true,sensitivity: \"base\"}) : a.localeCompare(b,undefined,{numeric: true,sensitivity: \"base\"});\n\t\t} else if($tw.utils.isDate(a) && $tw.utils.isDate(b)) {\n\t\t\treturn isDescending ? b - a : a - b;\n\t\t} else {\n\t\t\ta = String(a);\n\t\t\tb = String(b);\n\t\t\tif(!isCaseSensitive) {\n\t\t\t\ta = a.toLowerCase();\n\t\t\t\tb = b.toLowerCase();\n\t\t\t}\n\t\t\treturn isDescending ? b.localeCompare(a) : a.localeCompare(b);\n\t\t}\n\t});\n};\n\n/*\nFor every tiddler invoke a callback(title,tiddler) with `this` set to the wiki object. Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.forEachTiddler = function(/* [options,]callback */) {\n\tvar arg = 0,\n\t\toptions = arguments.length >= 2 ? arguments[arg++] : {},\n\t\tcallback = arguments[arg++],\n\t\ttitles = this.getTiddlers(options),\n\t\tt, tiddler;\n\tfor(t=0; t<titles.length; t++) {\n\t\ttiddler = this.getTiddler(titles[t]);\n\t\tif(tiddler) {\n\t\t\tcallback.call(this,tiddler.fields.title,tiddler);\n\t\t}\n\t}\n};\n\n/*\nReturn an array of tiddler titles that are directly linked from the specified tiddler\n*/\nexports.getTiddlerLinks = function(title) {\n\tvar self = this;\n\t// We'll cache the links so they only get computed if the tiddler changes\n\treturn this.getCacheForTiddler(title,\"links\",function() {\n\t\t// Parse the tiddler\n\t\tvar parser = self.parseTiddler(title);\n\t\t// Count up the links\n\t\tvar links = [],\n\t\t\tcheckParseTree = function(parseTree) {\n\t\t\t\tfor(var t=0; t<parseTree.length; t++) {\n\t\t\t\t\tvar parseTreeNode = parseTree[t];\n\t\t\t\t\tif(parseTreeNode.type === \"link\" && parseTreeNode.attributes.to && parseTreeNode.attributes.to.type === \"string\") {\n\t\t\t\t\t\tvar value = parseTreeNode.attributes.to.value;\n\t\t\t\t\t\tif(links.indexOf(value) === -1) {\n\t\t\t\t\t\t\tlinks.push(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif(parseTreeNode.children) {\n\t\t\t\t\t\tcheckParseTree(parseTreeNode.children);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\tif(parser) {\n\t\t\tcheckParseTree(parser.tree);\n\t\t}\n\t\treturn links;\n\t});\n};\n\n/*\nReturn an array of tiddler titles that link to the specified tiddler\n*/\nexports.getTiddlerBacklinks = function(targetTitle) {\n\tvar self = this,\n\t\tbacklinks = [];\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\tif(links.indexOf(targetTitle) !== -1) {\n\t\t\tbacklinks.push(title);\n\t\t}\n\t});\n\treturn backlinks;\n};\n\n/*\nReturn a hashmap of tiddler titles that are referenced but not defined. Each value is the number of times the missing tiddler is referenced\n*/\nexports.getMissingTitles = function() {\n\tvar self = this,\n\t\tmissing = [];\n// We should cache the missing tiddler list, even if we recreate it every time any tiddler is modified\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tif((!self.tiddlerExists(link) && !self.isShadowTiddler(link)) && missing.indexOf(link) === -1) {\n\t\t\t\tmissing.push(link);\n\t\t\t}\n\t\t});\n\t});\n\treturn missing;\n};\n\nexports.getOrphanTitles = function() {\n\tvar self = this,\n\t\torphans = this.getTiddlers();\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tvar p = orphans.indexOf(link);\n\t\t\tif(p !== -1) {\n\t\t\t\torphans.splice(p,1);\n\t\t\t}\n\t\t});\n\t});\n\treturn orphans; // Todo\n};\n\n/*\nRetrieves a list of the tiddler titles that are tagged with a given tag\n*/\nexports.getTiddlersWithTag = function(tag) {\n\tvar self = this;\n\treturn this.getGlobalCache(\"taglist-\" + tag,function() {\n\t\tvar tagmap = self.getTagMap();\n\t\treturn self.sortByList(tagmap[tag],tag);\n\t});\n};\n\n/*\nGet a hashmap by tag of arrays of tiddler titles\n*/\nexports.getTagMap = function() {\n\tvar self = this;\n\treturn this.getGlobalCache(\"tagmap\",function() {\n\t\tvar tags = Object.create(null),\n\t\t\tstoreTags = function(tagArray,title) {\n\t\t\t\tif(tagArray) {\n\t\t\t\t\tfor(var index=0; index<tagArray.length; index++) {\n\t\t\t\t\t\tvar tag = tagArray[index];\n\t\t\t\t\t\tif($tw.utils.hop(tags,tag)) {\n\t\t\t\t\t\t\ttags[tag].push(title);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttags[tag] = [title];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\ttitle, tiddler;\n\t\t// Collect up all the tags\n\t\tself.eachShadow(function(tiddler,title) {\n\t\t\tif(!self.tiddlerExists(title)) {\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t\t}\n\t\t});\n\t\tself.each(function(tiddler,title) {\n\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t});\n\t\treturn tags;\n\t});\n};\n\n/*\nLookup a given tiddler and return a list of all the tiddlers that include it in the specified list field\n*/\nexports.findListingsOfTiddler = function(targetTitle,fieldName) {\n\tfieldName = fieldName || \"list\";\n\tvar titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tvar list = $tw.utils.parseStringArray(tiddler.fields[fieldName]);\n\t\tif(list && list.indexOf(targetTitle) !== -1) {\n\t\t\ttitles.push(title);\n\t\t}\n\t});\n\treturn titles;\n};\n\n/*\nSorts an array of tiddler titles according to an ordered list\n*/\nexports.sortByList = function(array,listTitle) {\n\tvar list = this.getTiddlerList(listTitle);\n\tif(!array || array.length === 0) {\n\t\treturn [];\n\t} else {\n\t\tvar titles = [], t, title;\n\t\t// First place any entries that are present in the list\n\t\tfor(t=0; t<list.length; t++) {\n\t\t\ttitle = list[t];\n\t\t\tif(array.indexOf(title) !== -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Then place any remaining entries\n\t\tfor(t=0; t<array.length; t++) {\n\t\t\ttitle = array[t];\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Finally obey the list-before and list-after fields of each tiddler in turn\n\t\tvar sortedTitles = titles.slice(0);\n\t\tfor(t=0; t<sortedTitles.length; t++) {\n\t\t\ttitle = sortedTitles[t];\n\t\t\tvar currPos = titles.indexOf(title),\n\t\t\t\tnewPos = -1,\n\t\t\t\ttiddler = this.getTiddler(title);\n\t\t\tif(tiddler) {\n\t\t\t\tvar beforeTitle = tiddler.fields[\"list-before\"],\n\t\t\t\t\tafterTitle = tiddler.fields[\"list-after\"];\n\t\t\t\tif(beforeTitle === \"\") {\n\t\t\t\t\tnewPos = 0;\n\t\t\t\t} else if(afterTitle === \"\") {\n\t\t\t\t\tnewPos = titles.length;\n\t\t\t\t} else if(beforeTitle) {\n\t\t\t\t\tnewPos = titles.indexOf(beforeTitle);\n\t\t\t\t} else if(afterTitle) {\n\t\t\t\t\tnewPos = titles.indexOf(afterTitle);\n\t\t\t\t\tif(newPos >= 0) {\n\t\t\t\t\t\t++newPos;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(newPos === -1) {\n\t\t\t\t\tnewPos = currPos;\n\t\t\t\t}\n\t\t\t\tif(newPos !== currPos) {\n\t\t\t\t\ttitles.splice(currPos,1);\n\t\t\t\t\tif(newPos >= currPos) {\n\t\t\t\t\t\tnewPos--;\n\t\t\t\t\t}\n\t\t\t\t\ttitles.splice(newPos,0,title);\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t\treturn titles;\n\t}\n};\n\nexports.getSubTiddler = function(title,subTiddlerTitle) {\n\tvar bundleInfo = this.getPluginInfo(title) || this.getTiddlerDataCached(title);\n\tif(bundleInfo && bundleInfo.tiddlers) {\n\t\tvar subTiddler = bundleInfo.tiddlers[subTiddlerTitle];\n\t\tif(subTiddler) {\n\t\t\treturn new $tw.Tiddler(subTiddler);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRetrieve a tiddler as a JSON string of the fields\n*/\nexports.getTiddlerAsJson = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\tvar fields = Object.create(null);\n\t\t$tw.utils.each(tiddler.fields,function(value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\treturn JSON.stringify(fields);\n\t} else {\n\t\treturn JSON.stringify({title: title});\n\t}\n};\n\n/*\nGet the content of a tiddler as a JavaScript object. How this is done depends on the type of the tiddler:\n\napplication/json: the tiddler JSON is parsed into an object\napplication/x-tiddler-dictionary: the tiddler is parsed as sequence of name:value pairs\n\nOther types currently just return null.\n\ntitleOrTiddler: string tiddler title or a tiddler object\ndefaultData: default data to be returned if the tiddler is missing or doesn't contain data\n\nNote that the same value is returned for repeated calls for the same tiddler data. The value is frozen to prevent modification; otherwise modifications would be visible to all callers\n*/\nexports.getTiddlerDataCached = function(titleOrTiddler,defaultData) {\n\tvar self = this,\n\t\ttiddler = titleOrTiddler;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler) {\n\t\treturn this.getCacheForTiddler(tiddler.fields.title,\"data\",function() {\n\t\t\t// Return the frozen value\n\t\t\tvar value = self.getTiddlerData(tiddler.fields.title,undefined);\n\t\t\t$tw.utils.deepFreeze(value);\n\t\t\treturn value;\n\t\t}) || defaultData;\n\t} else {\n\t\treturn defaultData;\n\t}\n};\n\n/*\nAlternative, uncached version of getTiddlerDataCached(). The return value can be mutated freely and reused\n*/\nexports.getTiddlerData = function(titleOrTiddler,defaultData) {\n\tvar tiddler = titleOrTiddler,\n\t\tdata;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler && tiddler.fields.text) {\n\t\tswitch(tiddler.fields.type) {\n\t\t\tcase \"application/json\":\n\t\t\t\t// JSON tiddler\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse(tiddler.fields.text);\n\t\t\t\t} catch(ex) {\n\t\t\t\t\treturn defaultData;\n\t\t\t\t}\n\t\t\t\treturn data;\n\t\t\tcase \"application/x-tiddler-dictionary\":\n\t\t\t\treturn $tw.utils.parseFields(tiddler.fields.text);\n\t\t}\n\t}\n\treturn defaultData;\n};\n\n/*\nExtract an indexed field from within a data tiddler\n*/\nexports.extractTiddlerDataItem = function(titleOrTiddler,index,defaultText) {\n\tvar data = this.getTiddlerDataCached(titleOrTiddler,Object.create(null)),\n\t\ttext;\n\tif(data && $tw.utils.hop(data,index)) {\n\t\ttext = data[index];\n\t}\n\tif(typeof text === \"string\" || typeof text === \"number\") {\n\t\treturn text.toString();\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nSet a tiddlers content to a JavaScript object. Currently this is done by setting the tiddler's type to \"application/json\" and setting the text to the JSON text of the data.\ntitle: title of tiddler\ndata: object that can be serialised to JSON\nfields: optional hashmap of additional tiddler fields to be set\n*/\nexports.setTiddlerData = function(title,data,fields) {\n\tvar existingTiddler = this.getTiddler(title),\n\t\tnewFields = {\n\t\t\ttitle: title\n\t};\n\tif(existingTiddler && existingTiddler.fields.type === \"application/x-tiddler-dictionary\") {\n\t\tnewFields.text = $tw.utils.makeTiddlerDictionary(data);\n\t} else {\n\t\tnewFields.type = \"application/json\";\n\t\tnewFields.text = JSON.stringify(data,null,$tw.config.preferences.jsonSpaces);\n\t}\n\tthis.addTiddler(new $tw.Tiddler(this.getCreationFields(),existingTiddler,fields,newFields,this.getModificationFields()));\n};\n\n/*\nReturn the content of a tiddler as an array containing each line\n*/\nexports.getTiddlerList = function(title,field,index) {\n\tif(index) {\n\t\treturn $tw.utils.parseStringArray(this.extractTiddlerDataItem(title,index,\"\"));\n\t}\n\tfield = field || \"list\";\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\treturn ($tw.utils.parseStringArray(tiddler.fields[field]) || []).slice(0);\n\t}\n\treturn [];\n};\n\n// Return a named global cache object. Global cache objects are cleared whenever a tiddler change occurs\nexports.getGlobalCache = function(cacheName,initializer) {\n\tthis.globalCache = this.globalCache || Object.create(null);\n\tif($tw.utils.hop(this.globalCache,cacheName)) {\n\t\treturn this.globalCache[cacheName];\n\t} else {\n\t\tthis.globalCache[cacheName] = initializer();\n\t\treturn this.globalCache[cacheName];\n\t}\n};\n\nexports.clearGlobalCache = function() {\n\tthis.globalCache = Object.create(null);\n};\n\n// Return the named cache object for a tiddler. If the cache doesn't exist then the initializer function is invoked to create it\nexports.getCacheForTiddler = function(title,cacheName,initializer) {\n\tthis.caches = this.caches || Object.create(null);\n\tvar caches = this.caches[title];\n\tif(caches && caches[cacheName]) {\n\t\treturn caches[cacheName];\n\t} else {\n\t\tif(!caches) {\n\t\t\tcaches = Object.create(null);\n\t\t\tthis.caches[title] = caches;\n\t\t}\n\t\tcaches[cacheName] = initializer();\n\t\treturn caches[cacheName];\n\t}\n};\n\n// Clear all caches associated with a particular tiddler, or, if the title is null, clear all the caches for all the tiddlers\nexports.clearCache = function(title) {\n\tif(title) {\n\t\tthis.caches = this.caches || Object.create(null);\n\t\tif($tw.utils.hop(this.caches,title)) {\n\t\t\tdelete this.caches[title];\n\t\t}\n\t} else {\n\t\tthis.caches = Object.create(null);\n\t}\n};\n\nexports.initParsers = function(moduleType) {\n\t// Install the parser modules\n\t$tw.Wiki.parsers = {};\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(\"parser\",function(title,module) {\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\t$tw.Wiki.parsers[f] = module[f]; // Store the parser class\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nParse a block of text of a specified MIME type\n\ttype: content type of text to be parsed\n\ttext: text\n\toptions: see below\nOptions include:\n\tparseAsInline: if true, the text of the tiddler will be parsed as an inline run\n\t_canonical_uri: optional string of the canonical URI of this content\n*/\nexports.parseText = function(type,text,options) {\n\ttext = text || \"\";\n\toptions = options || {};\n\t// Select a parser\n\tvar Parser = $tw.Wiki.parsers[type];\n\tif(!Parser && $tw.utils.getFileExtensionInfo(type)) {\n\t\tParser = $tw.Wiki.parsers[$tw.utils.getFileExtensionInfo(type).type];\n\t}\n\tif(!Parser) {\n\t\tParser = $tw.Wiki.parsers[options.defaultType || \"text/vnd.tiddlywiki\"];\n\t}\n\tif(!Parser) {\n\t\treturn null;\n\t}\n\t// Return the parser instance\n\treturn new Parser(type,text,{\n\t\tparseAsInline: options.parseAsInline,\n\t\twiki: this,\n\t\t_canonical_uri: options._canonical_uri\n\t});\n};\n\n/*\nParse a tiddler according to its MIME type\n*/\nexports.parseTiddler = function(title,options) {\n\toptions = $tw.utils.extend({},options);\n\tvar cacheType = options.parseAsInline ? \"inlineParseTree\" : \"blockParseTree\",\n\t\ttiddler = this.getTiddler(title),\n\t\tself = this;\n\treturn tiddler ? this.getCacheForTiddler(title,cacheType,function() {\n\t\t\tif(tiddler.hasField(\"_canonical_uri\")) {\n\t\t\t\toptions._canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t}\n\t\t\treturn self.parseText(tiddler.fields.type,tiddler.fields.text,options);\n\t\t}) : null;\n};\n\nexports.parseTextReference = function(title,field,index,options) {\n\tvar tiddler,text;\n\tif(options.subTiddler) {\n\t\ttiddler = this.getSubTiddler(title,options.subTiddler);\n\t} else {\n\t\ttiddler = this.getTiddler(title);\n\t\tif(field === \"text\" || (!field && !index)) {\n\t\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\t\treturn this.parseTiddler(title,options);\n\t\t}\n\t}\n\tif(field === \"text\" || (!field && !index)) {\n\t\tif(tiddler && tiddler.fields) {\n\t\t\treturn this.parseText(tiddler.fields.type || \"text/vnd.tiddlywiki\",tiddler.fields.text,options);\t\t\t\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} else if(field) {\n\t\tif(field === \"title\") {\n\t\t\ttext = title;\n\t\t} else {\n\t\t\tif(!tiddler || !tiddler.hasField(field)) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\ttext = tiddler.fields[field];\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text.toString(),options);\n\t} else if(index) {\n\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\ttext = this.extractTiddlerDataItem(tiddler,index,undefined);\n\t\tif(text === undefined) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text,options);\n\t}\n};\n\n/*\nMake a widget tree for a parse tree\nparser: parser object\noptions: see below\nOptions include:\ndocument: optional document to use\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.makeWidget = function(parser,options) {\n\toptions = options || {};\n\tvar widgetNode = {\n\t\t\ttype: \"widget\",\n\t\t\tchildren: []\n\t\t},\n\t\tcurrWidgetNode = widgetNode;\n\t// Create set variable widgets for each variable\n\t$tw.utils.each(options.variables,function(value,name) {\n\t\tvar setVariableWidget = {\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: name},\n\t\t\t\tvalue: {type: \"string\", value: value}\n\t\t\t},\n\t\t\tchildren: []\n\t\t};\n\t\tcurrWidgetNode.children = [setVariableWidget];\n\t\tcurrWidgetNode = setVariableWidget;\n\t});\n\t// Add in the supplied parse tree nodes\n\tcurrWidgetNode.children = parser ? parser.tree : [];\n\t// Create the widget\n\treturn new widget.widget(widgetNode,{\n\t\twiki: this,\n\t\tdocument: options.document || $tw.fakeDocument,\n\t\tparentWidget: options.parentWidget\n\t});\n};\n\n/*\nMake a widget tree for transclusion\ntitle: target tiddler title\noptions: as for wiki.makeWidget() plus:\noptions.field: optional field to transclude (defaults to \"text\")\noptions.mode: transclusion mode \"inline\" or \"block\"\noptions.children: optional array of children for the transclude widget\noptions.importVariables: optional importvariables filter string for macros to be included\noptions.importPageMacros: optional boolean; if true, equivalent to passing \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\" to options.importVariables\n*/\nexports.makeTranscludeWidget = function(title,options) {\n\toptions = options || {};\n\tvar parseTreeDiv = {tree: [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"div\",\n\t\t\tchildren: []}]},\n\t\tparseTreeImportVariables = {\n\t\t\ttype: \"importvariables\",\n\t\t\tattributes: {\n\t\t\t\tfilter: {\n\t\t\t\t\tname: \"filter\",\n\t\t\t\t\ttype: \"string\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: false,\n\t\t\tchildren: []},\n\t\tparseTreeTransclude = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {\n\t\t\t\t\tname: \"tiddler\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title}},\n\t\t\tisBlock: !options.parseAsInline};\n\tif(options.importVariables || options.importPageMacros) {\n\t\tif(options.importVariables) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = options.importVariables;\n\t\t} else if(options.importPageMacros) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\t\t}\n\t\tparseTreeDiv.tree[0].children.push(parseTreeImportVariables);\n\t\tparseTreeImportVariables.children.push(parseTreeTransclude);\n\t} else {\n\t\tparseTreeDiv.tree[0].children.push(parseTreeTransclude);\n\t}\n\tif(options.field) {\n\t\tparseTreeTransclude.attributes.field = {type: \"string\", value: options.field};\n\t}\n\tif(options.mode) {\n\t\tparseTreeTransclude.attributes.mode = {type: \"string\", value: options.mode};\n\t}\n\tif(options.children) {\n\t\tparseTreeTransclude.children = options.children;\n\t}\n\treturn $tw.wiki.makeWidget(parseTreeDiv,options);\n};\n\n/*\nParse text in a specified format and render it into another format\n\toutputType: content type for the output\n\ttextType: content type of the input text\n\ttext: input text\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderText = function(outputType,textType,text,options) {\n\toptions = options || {};\n\tvar parser = this.parseText(textType,text,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : container.textContent;\n};\n\n/*\nParse text from a tiddler and render it into another format\n\toutputType: content type for the output\n\ttitle: title of the tiddler to be rendered\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderTiddler = function(outputType,title,options) {\n\toptions = options || {};\n\tvar parser = this.parseTiddler(title,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : (outputType === \"text/plain-formatted\" ? container.formattedTextContent : container.textContent);\n};\n\n/*\nReturn an array of tiddler titles that match a search string\n\ttext: The text string to search for\n\toptions: see below\nOptions available:\n\tsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\n\texclude: An array of tiddler titles to exclude from the search\n\tinvert: If true returns tiddlers that do not contain the specified string\n\tcaseSensitive: If true forces a case sensitive search\n\tliteral: If true, searches for literal string, rather than separate search terms\n\tfield: If specified, restricts the search to the specified field\n*/\nexports.search = function(text,options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tt,\n\t\tinvert = !!options.invert;\n\t// Convert the search string into a regexp for each term\n\tvar terms, searchTermsRegExps,\n\t\tflags = options.caseSensitive ? \"\" : \"i\";\n\tif(options.literal) {\n\t\tif(text.length === 0) {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + $tw.utils.escapeRegExp(text) + \")\",flags)];\n\t\t}\n\t} else {\n\t\tterms = text.split(/ +/);\n\t\tif(terms.length === 1 && terms[0] === \"\") {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [];\n\t\t\tfor(t=0; t<terms.length; t++) {\n\t\t\t\tsearchTermsRegExps.push(new RegExp(\"(\" + $tw.utils.escapeRegExp(terms[t]) + \")\",flags));\n\t\t\t}\n\t\t}\n\t}\n\t// Function to check a given tiddler for the search term\n\tvar searchTiddler = function(title) {\n\t\tif(!searchTermsRegExps) {\n\t\t\treturn true;\n\t\t}\n\t\tvar tiddler = self.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\ttiddler = new $tw.Tiddler({title: title, text: \"\", type: \"text/vnd.tiddlywiki\"});\n\t\t}\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type] || $tw.config.contentTypeInfo[\"text/vnd.tiddlywiki\"],\n\t\t\tmatch;\n\t\tfor(var t=0; t<searchTermsRegExps.length; t++) {\n\t\t\tmatch = false;\n\t\t\tif(options.field) {\n\t\t\t\tmatch = searchTermsRegExps[t].test(tiddler.getFieldString(options.field));\n\t\t\t} else {\n\t\t\t\t// Search title, tags and body\n\t\t\t\tif(contentTypeInfo.encoding === \"utf8\") {\n\t\t\t\t\tmatch = match || searchTermsRegExps[t].test(tiddler.fields.text);\n\t\t\t\t}\n\t\t\t\tvar tags = tiddler.fields.tags ? tiddler.fields.tags.join(\"\\0\") : \"\";\n\t\t\t\tmatch = match || searchTermsRegExps[t].test(tags) || searchTermsRegExps[t].test(tiddler.fields.title);\n\t\t\t}\n\t\t\tif(!match) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t};\n\t// Loop through all the tiddlers doing the search\n\tvar results = [],\n\t\tsource = options.source || this.each;\n\tsource(function(tiddler,title) {\n\t\tif(searchTiddler(title) !== options.invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\t// Remove any of the results we have to exclude\n\tif(options.exclude) {\n\t\tfor(t=0; t<options.exclude.length; t++) {\n\t\t\tvar p = results.indexOf(options.exclude[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tresults.splice(p,1);\n\t\t\t}\n\t\t}\n\t}\n\treturn results;\n};\n\n/*\nTrigger a load for a tiddler if it is skinny. Returns the text, or undefined if the tiddler is missing, null if the tiddler is being lazily loaded.\n*/\nexports.getTiddlerText = function(title,defaultText) {\n\tvar tiddler = this.getTiddler(title);\n\t// Return undefined if the tiddler isn't found\n\tif(!tiddler) {\n\t\treturn defaultText;\n\t}\n\tif(tiddler.fields.text !== undefined) {\n\t\t// Just return the text if we've got it\n\t\treturn tiddler.fields.text;\n\t} else {\n\t\t// Tell any listeners about the need to lazily load this tiddler\n\t\tthis.dispatchEvent(\"lazyLoad\",title);\n\t\t// Indicate that the text is being loaded\n\t\treturn null;\n\t}\n};\n\n/*\nCheck whether the text of a tiddler matches a given value. By default, the comparison is case insensitive, and any spaces at either end of the tiddler text is trimmed\n*/\nexports.checkTiddlerText = function(title,targetText,options) {\n\toptions = options || {};\n\tvar text = this.getTiddlerText(title,\"\");\n\tif(!options.noTrim) {\n\t\ttext = text.trim();\n\t}\n\tif(!options.caseSensitive) {\n\t\ttext = text.toLowerCase();\n\t\ttargetText = targetText.toLowerCase();\n\t}\n\treturn text === targetText;\n}\n\n/*\nRead an array of browser File objects, invoking callback(tiddlerFieldsArray) once they're all read\n*/\nexports.readFiles = function(files,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\tvar result = [],\n\t\toutstanding = files.length,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tresult.push.apply(result,tiddlerFieldsArray);\n\t\t\tif(--outstanding === 0) {\n\t\t\t\tcallback(result);\n\t\t\t}\n\t\t};\n\tfor(var f=0; f<files.length; f++) {\n\t\tthis.readFile(files[f],Object.assign({},options,{callback: readFileCallback}));\n\t}\n\treturn files.length;\n};\n\n/*\nRead a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFile = function(file,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\t// Get the type, falling back to the filename extension\n\tvar self = this,\n\t\ttype = file.type;\n\tif(type === \"\" || !type) {\n\t\tvar dotPos = file.name.lastIndexOf(\".\");\n\t\tif(dotPos !== -1) {\n\t\t\tvar fileExtensionInfo = $tw.utils.getFileExtensionInfo(file.name.substr(dotPos));\n\t\t\tif(fileExtensionInfo) {\n\t\t\t\ttype = fileExtensionInfo.type;\n\t\t\t}\n\t\t}\n\t}\n\t// Figure out if we're reading a binary file\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[type],\n\t\tisBinary = contentTypeInfo ? contentTypeInfo.encoding === \"base64\" : false;\n\t// Log some debugging information\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Importing file '\" + file.name + \"', type: '\" + type + \"', isBinary: \" + isBinary);\n\t}\n\t// Give the hook a chance to process the drag\n\tif($tw.hooks.invokeHook(\"th-importing-file\",{\n\t\tfile: file,\n\t\ttype: type,\n\t\tisBinary: isBinary,\n\t\tcallback: callback\n\t}) !== true) {\n\t\tthis.readFileContent(file,type,isBinary,options.deserializer,callback);\n\t}\n};\n\n/*\nLower level utility to read the content of a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFileContent = function(file,type,isBinary,deserializer,callback) {\n\tvar self = this;\n\t// Create the FileReader\n\tvar reader = new FileReader();\n\t// Onload\n\treader.onload = function(event) {\n\t\tvar text = event.target.result,\n\t\t\ttiddlerFields = {title: file.name || \"Untitled\", type: type};\n\t\tif(isBinary) {\n\t\t\tvar commaPos = text.indexOf(\",\");\n\t\t\tif(commaPos !== -1) {\n\t\t\t\ttext = text.substr(commaPos + 1);\n\t\t\t}\n\t\t}\n\t\t// Check whether this is an encrypted TiddlyWiki file\n\t\tvar encryptedJson = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedJson) {\n\t\t\t// If so, attempt to decrypt it with the current password\n\t\t\t$tw.utils.decryptStoreAreaInteractive(encryptedJson,function(tiddlers) {\n\t\t\t\tcallback(tiddlers);\n\t\t\t});\n\t\t} else {\n\t\t\t// Otherwise, just try to deserialise any tiddlers in the file\n\t\t\tcallback(self.deserializeTiddlers(type,text,tiddlerFields,{deserializer: deserializer}));\n\t\t}\n\t};\n\t// Kick off the read\n\tif(isBinary) {\n\t\treader.readAsDataURL(file);\n\t} else {\n\t\treader.readAsText(file);\n\t}\n};\n\n/*\nFind any existing draft of a specified tiddler\n*/\nexports.findDraft = function(targetTitle) {\n\tvar draftTitle = undefined;\n\tthis.forEachTiddler({includeSystem: true},function(title,tiddler) {\n\t\tif(tiddler.fields[\"draft.title\"] && tiddler.fields[\"draft.of\"] === targetTitle) {\n\t\t\tdraftTitle = title;\n\t\t}\n\t});\n\treturn draftTitle;\n}\n\n/*\nCheck whether the specified draft tiddler has been modified.\nIf the original tiddler doesn't exist, create  a vanilla tiddler variable,\nto check if additional fields have been added.\n*/\nexports.isDraftModified = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(!tiddler.isDraft()) {\n\t\treturn false;\n\t}\n\tvar ignoredFields = [\"created\", \"modified\", \"title\", \"draft.title\", \"draft.of\"],\n\t\torigTiddler = this.getTiddler(tiddler.fields[\"draft.of\"]) || new $tw.Tiddler({text:\"\", tags:[]}),\n\t\ttitleModified = tiddler.fields[\"draft.title\"] !== tiddler.fields[\"draft.of\"];\n\treturn titleModified || !tiddler.isEqual(origTiddler,ignoredFields);\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\nhistoryTitle: title of history tiddler (defaults to $:/HistoryList)\n*/\nexports.addToHistory = function(title,fromPageRect,historyTitle) {\n\tvar story = new $tw.Story({wiki: this, historyTitle: historyTitle});\n\tstory.addToHistory(title,fromPageRect);\n};\n\n/*\nInvoke the available upgrader modules\ntitles: array of tiddler titles to be processed\ntiddlers: hashmap by title of tiddler fields of pending import tiddlers. These can be modified by the upgraders. An entry with no fields indicates a tiddler that was pending import has been suppressed. When entries are added to the pending import the tiddlers hashmap may have entries that are not present in the titles array\nReturns a hashmap of messages keyed by tiddler title.\n*/\nexports.invokeUpgraders = function(titles,tiddlers) {\n\t// Collect up the available upgrader modules\n\tvar self = this;\n\tif(!this.upgraderModules) {\n\t\tthis.upgraderModules = [];\n\t\t$tw.modules.forEachModuleOfType(\"upgrader\",function(title,module) {\n\t\t\tif(module.upgrade) {\n\t\t\t\tself.upgraderModules.push(module);\n\t\t\t}\n\t\t});\n\t}\n\t// Invoke each upgrader in turn\n\tvar messages = {};\n\tfor(var t=0; t<this.upgraderModules.length; t++) {\n\t\tvar upgrader = this.upgraderModules[t],\n\t\t\tupgraderMessages = upgrader.upgrade(this,titles,tiddlers);\n\t\t$tw.utils.extend(messages,upgraderMessages);\n\t}\n\treturn messages;\n};\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/palettes/Blanca": {
            "title": "$:/palettes/Blanca",
            "name": "Blanca",
            "description": "A clean white palette to let you focus",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #66cccc\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ffffff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #7897f3\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ccc\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #ffffff\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #7897f3\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #eeeeee\ntab-border-selected: #cccccc\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffeedd\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: #eee\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #ff9900\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Blue": {
            "title": "$:/palettes/Blue",
            "name": "Blue",
            "description": "A blue theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333353\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ddddff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #5959c0\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: #ccccdd\ntab-border-selected: #ccccdd\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #eeeeff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #666666\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #ffffff\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #ffffff\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #5959c0\ntoolbar-new-button: #5eb95e\ntoolbar-options-button: rgb(128, 88, 165)\ntoolbar-save-button: #0e90d2\ntoolbar-info-button: #0e90d2\ntoolbar-edit-button: rgb(243, 123, 29)\ntoolbar-close-button: #dd514c\ntoolbar-delete-button: #dd514c\ntoolbar-cancel-button: rgb(243, 123, 29)\ntoolbar-done-button: #5eb95e\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Muted": {
            "title": "$:/palettes/Muted",
            "name": "Muted",
            "description": "Bright tiddlers on a muted background",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #6f6f70\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #29a6ee\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #c2c1c2\nsidebar-foreground-shadow: rgba(255,255,255,0)\nsidebar-foreground: #d3d2d4\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #6f6f70\nsidebar-tab-background: #666667\nsidebar-tab-border-selected: #999\nsidebar-tab-border: #515151\nsidebar-tab-divider: #999\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #999\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #d1d0d2\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #d5ad34\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastLight": {
            "title": "$:/palettes/ContrastLight",
            "name": "Contrast (Light)",
            "description": "High contrast and unambiguous (light version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #000\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #000\ntag-foreground: #fff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastDark": {
            "title": "$:/palettes/ContrastDark",
            "name": "Contrast (Dark)",
            "description": "High contrast and unambiguous (dark version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #000\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #fff\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #fff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/DarkPhotos": {
            "title": "$:/palettes/DarkPhotos",
            "created": "20150402111612188",
            "description": "Good with dark photo backgrounds",
            "modified": "20150402112344080",
            "name": "DarkPhotos",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: \nbutton-foreground: \nbutton-border: \ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #ddd\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #336438\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #ccf\nsidebar-controls-foreground: #fff\nsidebar-foreground-shadow: rgba(0,0,0, 0.5)\nsidebar-foreground: #fff\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #eee\nsidebar-tab-background-selected: rgba(255,255,255, 0.8)\nsidebar-tab-background: rgba(255,255,255, 0.4)\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: rgba(255,255,255, 0.2)\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #aaf\nsidebar-tiddler-link-foreground: #ddf\nsite-title-foreground: #fff\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Rocker": {
            "title": "$:/palettes/Rocker",
            "name": "Rocker",
            "description": "A dark theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #000\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #cc0000\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.0)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #000\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #ffbb99\nsidebar-tiddler-link-foreground: #cc0000\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffbb99\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #cc0000\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/SolarFlare": {
            "title": "$:/palettes/SolarFlare",
            "name": "Solar Flare",
            "description": "Warm, relaxing earth colours",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": ": Background Tones\n\nbase03: #002b36\nbase02: #073642\n\n: Content Tones\n\nbase01: #586e75\nbase00: #657b83\nbase0: #839496\nbase1: #93a1a1\n\n: Background Tones\n\nbase2: #eee8d5\nbase3: #fdf6e3\n\n: Accent Colors\n\nyellow: #b58900\norange: #cb4b16\nred: #dc322f\nmagenta: #d33682\nviolet: #6c71c4\nblue: #268bd2\ncyan: #2aa198\ngreen: #859900\n\n: Additional Tones (RA)\n\nbase10: #c0c4bb\nviolet-muted: #7c81b0\nblue-muted: #4e7baa\n\nyellow-hot: #ffcc44\norange-hot: #eb6d20\nred-hot: #ff2222\nblue-hot: #2298ee\ngreen-hot: #98ee22\n\n: Palette\n\n: Do not use colour macro for background and foreground\nbackground: #fdf6e3\n    download-foreground: <<colour background>>\n    dragger-foreground: <<colour background>>\n    dropdown-background: <<colour background>>\n    modal-background: <<colour background>>\n    sidebar-foreground-shadow: <<colour background>>\n    tiddler-background: <<colour background>>\n    tiddler-border: <<colour background>>\n    tiddler-link-background: <<colour background>>\n    tab-background-selected: <<colour background>>\n        dropdown-tab-background-selected: <<colour tab-background-selected>>\nforeground: #657b83\n    dragger-background: <<colour foreground>>\n    tab-foreground: <<colour foreground>>\n        tab-foreground-selected: <<colour tab-foreground>>\n            sidebar-tab-foreground-selected: <<colour tab-foreground-selected>>\n        sidebar-tab-foreground: <<colour tab-foreground>>\n    sidebar-button-foreground: <<colour foreground>>\n    sidebar-controls-foreground: <<colour foreground>>\n    sidebar-foreground: <<colour foreground>>\n: base03\n: base02\n: base01\n    alert-muted-foreground: <<colour base01>>\n: base00\n    code-foreground: <<colour base00>>\n    message-foreground: <<colour base00>>\n    tag-foreground: <<colour base00>>\n: base0\n    sidebar-tiddler-link-foreground: <<colour base0>>\n: base1\n    muted-foreground: <<colour base1>>\n        blockquote-bar: <<colour muted-foreground>>\n        dropdown-border: <<colour muted-foreground>>\n        sidebar-muted-foreground: <<colour muted-foreground>>\n        tiddler-title-foreground: <<colour muted-foreground>>\n            site-title-foreground: <<colour tiddler-title-foreground>>\n: base2\n    modal-footer-background: <<colour base2>>\n    page-background: <<colour base2>>\n        modal-backdrop: <<colour page-background>>\n        notification-background: <<colour page-background>>\n        code-background: <<colour page-background>>\n            code-border: <<colour code-background>>\n        pre-background: <<colour page-background>>\n            pre-border: <<colour pre-background>>\n        sidebar-tab-background-selected: <<colour page-background>>\n    table-header-background: <<colour base2>>\n    tag-background: <<colour base2>>\n    tiddler-editor-background: <<colour base2>>\n    tiddler-info-background: <<colour base2>>\n    tiddler-info-tab-background: <<colour base2>>\n    tab-background: <<colour base2>>\n        dropdown-tab-background: <<colour tab-background>>\n: base3\n    alert-background: <<colour base3>>\n    message-background: <<colour base3>>\n: yellow\n: orange\n: red\n: magenta\n    alert-highlight: <<colour magenta>>\n: violet\n    external-link-foreground: <<colour violet>>\n: blue\n: cyan\n: green\n: base10\n    tiddler-controls-foreground: <<colour base10>>\n: violet-muted\n    external-link-foreground-visited: <<colour violet-muted>>\n: blue-muted\n    primary: <<colour blue-muted>>\n        download-background: <<colour primary>>\n        tiddler-link-foreground: <<colour primary>>\n\nalert-border: #b99e2f\ndirty-indicator: #ff0000\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nmessage-border: #cfd6e6\nmodal-border: #999999\nsidebar-controls-foreground-hover:\nsidebar-muted-foreground-hover:\nsidebar-tab-background: #ded8c5\nsidebar-tiddler-link-foreground-hover:\nstatic-alert-foreground: #aaaaaa\ntab-border: #cccccc\n    modal-footer-border: <<colour tab-border>>\n    modal-header-border: <<colour tab-border>>\n    notification-border: <<colour tab-border>>\n    sidebar-tab-border: <<colour tab-border>>\n    tab-border-selected: <<colour tab-border>>\n        sidebar-tab-border-selected: <<colour tab-border-selected>>\ntab-divider: #d8d8d8\n    sidebar-tab-divider: <<colour tab-divider>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-border: #dddddd\ntiddler-subtitle-foreground: #c0c0c0\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Vanilla": {
            "title": "$:/palettes/Vanilla",
            "name": "Vanilla",
            "description": "Pale and unobtrusive",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #f4f4f4\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #aaaaaa\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #f4f4f4\nsidebar-tab-background: #e0e0e0\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: #e4e4e4\nsidebar-tab-foreground-selected:\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #999999\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/core/readme": {
            "title": "$:/core/readme",
            "text": "This plugin contains TiddlyWiki's core components, comprising:\n\n* JavaScript code modules\n* Icons\n* Templates needed to create TiddlyWiki's user interface\n* British English (''en-GB'') translations of the localisable strings used by the core\n"
        },
        "$:/library/sjcl.js/license": {
            "title": "$:/library/sjcl.js/license",
            "type": "text/plain",
            "text": "SJCL is open. You can use, modify and redistribute it under a BSD\nlicense or under the GNU GPL, version 2.0.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/BSD-2-Clause\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are\nmet:\n\n1. Redistributions of source code must retain the above copyright\nnotice, this list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright\nnotice, this list of conditions and the following disclaimer in the\ndocumentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\nIS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED\nTO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A\nPARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\nPROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\nLIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/GPL-2.0\n\nThe Stanford Javascript Crypto Library (hosted here on GitHub) is a\nproject by the Stanford Computer Security Lab to build a secure,\npowerful, fast, small, easy-to-use, cross-browser library for\ncryptography in Javascript.\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University.\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the\nFree Software Foundation; either version 2 of the License, or (at your\noption) any later version.\n\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General\nPublic License for more details.\n\nYou should have received a copy of the GNU General Public License along\nwith this program; if not, write to the Free Software Foundation, Inc.,\n59 Temple Place, Suite 330, Boston, MA 02111-1307 USA"
        },
        "$:/core/templates/MOTW.html": {
            "title": "$:/core/templates/MOTW.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline entity\n<!-- The following comment is called a MOTW comment and is necessary for the TiddlyIE Internet Explorer extension -->\n<!-- saved from url=(0021)https://tiddlywiki.com -->&#13;&#10;"
        },
        "$:/core/templates/alltiddlers.template.html": {
            "title": "$:/core/templates/alltiddlers.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "<!-- This template is provided for backwards compatibility with older versions of TiddlyWiki -->\n\n<$set name=\"exportFilter\" value=\"[!is[system]sort[title]]\">\n\n{{$:/core/templates/exporters/StaticRiver}}\n\n</$set>\n"
        },
        "$:/core/templates/canonical-uri-external-image": {
            "title": "$:/core/templates/canonical-uri-external-image",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external images.\n\nChange the `./images/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./images/<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-raw": {
            "title": "$:/core/templates/canonical-uri-external-raw",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external raw files that are stored in the same directory\n\n-->\n<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-text": {
            "title": "$:/core/templates/canonical-uri-external-text",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external text files.\n\nChange the `./text/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./text/<$view field=\"title\" format=\"doubleurlencoded\"/>.tid"
        },
        "$:/core/templates/css-tiddler": {
            "title": "$:/core/templates/css-tiddler",
            "text": "<!--\n\nThis template is used for saving CSS tiddlers as a style tag with data attributes representing the tiddler fields.\n\n-->`<style`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/css\">`<$view field=\"text\" format=\"text\" />`</style>`"
        },
        "$:/core/templates/exporters/CsvFile": {
            "title": "$:/core/templates/exporters/CsvFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/CsvFile}}",
            "extension": ".csv",
            "text": "\\define renderContent()\n<$text text=<<csvtiddlers filter:\"\"\"$(exportFilter)$\"\"\" format:\"quoted-comma-sep\">>/>\n\\end\n<<renderContent>>\n"
        },
        "$:/core/templates/exporters/JsonFile": {
            "title": "$:/core/templates/exporters/JsonFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/JsonFile}}",
            "extension": ".json",
            "text": "\\define renderContent()\n<$text text=<<jsontiddlers filter:\"\"\"$(exportFilter)$\"\"\">>/>\n\\end\n<<renderContent>>\n"
        },
        "$:/core/templates/exporters/StaticRiver": {
            "title": "$:/core/templates/exporters/StaticRiver",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/StaticRiver}}",
            "extension": ".html",
            "text": "\\define tv-wikilink-template() #$uri_encoded$\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n<section class=\"tc-story-river\">\n{{$:/core/templates/exporters/StaticRiver/Content||$:/core/templates/html-tiddler}}\n</section>\n</body>\n</html>\n"
        },
        "$:/core/templates/exporters/StaticRiver/Content": {
            "title": "$:/core/templates/exporters/StaticRiver/Content",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ ||$:/core/templates/static-tiddler}}}\n\\end\n<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n<<renderContent>>\n</$importvariables>\n"
        },
        "$:/core/templates/exporters/TidFile": {
            "title": "$:/core/templates/exporters/TidFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/TidFile}}",
            "extension": ".tid",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ +[limit[1]] ||$:/core/templates/tid-tiddler}}}\n\\end\n<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\"><<renderContent>></$importvariables>"
        },
        "$:/core/templates/html-div-tiddler": {
            "title": "$:/core/templates/html-div-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as an HTML DIV tag with attributes representing the tiddler fields.\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre>`<$view field=\"text\" format=\"htmlencoded\" />`</pre>\n</div>`\n"
        },
        "$:/core/templates/html-tiddler": {
            "title": "$:/core/templates/html-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw HTML\n\n--><$view field=\"text\" format=\"htmlwikified\" />"
        },
        "$:/core/templates/javascript-tiddler": {
            "title": "$:/core/templates/javascript-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields.\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\">`<$view field=\"text\" format=\"text\" />`</script>`"
        },
        "$:/core/templates/json-tiddler": {
            "title": "$:/core/templates/json-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw JSON\n\n--><$text text=<<jsontiddler>>/>"
        },
        "$:/core/templates/module-tiddler": {
            "title": "$:/core/templates/module-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields. The body of the tiddler is wrapped in a call to the `$tw.modules.define` function in order to define the body of the tiddler as a module\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\" data-module=\"yes\">$tw.modules.define(\"`<$view field=\"title\" format=\"jsencoded\" />`\",\"`<$view field=\"module-type\" format=\"jsencoded\" />`\",function(module,exports,require) {`<$view field=\"text\" format=\"text\" />`});\n</script>`"
        },
        "$:/core/templates/plain-text-tiddler": {
            "title": "$:/core/templates/plain-text-tiddler",
            "text": "<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/raw-static-tiddler": {
            "title": "$:/core/templates/raw-static-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as static HTML\n\n--><$view field=\"text\" format=\"plainwikified\" />"
        },
        "$:/core/save/all": {
            "title": "$:/core/save/all",
            "text": "\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/empty": {
            "title": "$:/core/save/empty",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-all": {
            "title": "$:/core/save/lazy-all",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] \n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-images": {
            "title": "$:/core/save/lazy-images",
            "text": "\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[!is[system]is[image]] +[sort[title]] \n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/templates/single.tiddler.window": {
            "title": "$:/core/templates/single.tiddler.window",
            "text": "<$set name=\"themeTitle\" value={{$:/view}}>\n\n<$set name=\"tempCurrentTiddler\" value=<<currentTiddler>>>\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$set name=\"currentTiddler\" value=<<tempCurrentTiddler>>>\n\n<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n\n<$transclude mode=\"block\"/>\n\n</$navigator>\n\n</$importvariables>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n"
        },
        "$:/core/templates/split-recipe": {
            "title": "$:/core/templates/split-recipe",
            "text": "<$list filter=\"[!is[system]]\">\ntiddler: <$view field=\"title\" format=\"urlencoded\"/>.tid\n</$list>\n"
        },
        "$:/core/templates/static-tiddler": {
            "title": "$:/core/templates/static-tiddler",
            "text": "<a name=<<currentTiddler>>>\n<$transclude tiddler=\"$:/core/ui/ViewTemplate\"/>\n</a>"
        },
        "$:/core/templates/static.area": {
            "title": "$:/core/templates/static.area",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawStaticContent]!has[draft.of]] ||$:/core/templates/raw-static-tiddler}}}\n{{$:/core/templates/static.content||$:/core/templates/html-tiddler}}\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\nThis file contains an encrypted ~TiddlyWiki. Enable ~JavaScript and enter the decryption password when prompted.\n</$reveal>\n"
        },
        "$:/core/templates/static.content": {
            "title": "$:/core/templates/static.content",
            "text": "<!-- For Google, and people without JavaScript-->\nThis [[TiddlyWiki|https://tiddlywiki.com]] contains the following tiddlers:\n\n<ul>\n<$list filter=<<saveTiddlerFilter>>>\n<li><$view field=\"title\" format=\"text\"></$view></li>\n</$list>\n</ul>\n"
        },
        "$:/core/templates/static.template.css": {
            "title": "$:/core/templates/static.template.css",
            "text": "{{$:/boot/boot.css||$:/core/templates/plain-text-tiddler}}\n\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n"
        },
        "$:/core/templates/static.template.html": {
            "title": "$:/core/templates/static.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "\\define tv-wikilink-template() static/$uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n{{$:/core/ui/PageTemplate||$:/core/templates/html-tiddler}}\n</body>\n</html>\n"
        },
        "$:/core/templates/static.tiddler.html": {
            "title": "$:/core/templates/static.tiddler.html",
            "text": "\\define tv-wikilink-template() $uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n`<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"static.css\">\n<title>`<$view field=\"caption\"><$view field=\"title\"/></$view>: {{$:/core/wiki/title}}`</title>\n</head>\n<body class=\"tc-body\">\n`{{$:/StaticBanner||$:/core/templates/html-tiddler}}`\n<section class=\"tc-story-river\">\n`<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n<$view tiddler=\"$:/core/ui/ViewTemplate\" format=\"htmlwikified\"/>\n</$importvariables>`\n</section>\n</body>\n</html>\n`"
        },
        "$:/core/templates/store.area.template.html": {
            "title": "$:/core/templates/store.area.template.html",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n`<div id=\"storeArea\" style=\"display:none;\">`\n<$list filter=<<saveTiddlerFilter>> template=\"$:/core/templates/html-div-tiddler\"/>\n`</div>`\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n`<!--~~ Encrypted tiddlers ~~-->`\n`<pre id=\"encryptedStoreArea\" type=\"text/plain\" style=\"display:none;\">`\n<$encrypt filter=<<saveTiddlerFilter>>/>\n`</pre>`\n</$reveal>"
        },
        "$:/core/templates/tid-tiddler": {
            "title": "$:/core/templates/tid-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers in TiddlyWeb *.tid format\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>`\n`<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/tiddler-metadata": {
            "title": "$:/core/templates/tiddler-metadata",
            "text": "<!--\n\nThis template is used for saving tiddler metadata *.meta files\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>"
        },
        "$:/core/templates/tiddlywiki5.html": {
            "title": "$:/core/templates/tiddlywiki5.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n{{$:/core/templates/MOTW.html}}<html>\n<head>\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\">\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"{{$:/core/copyright.txt}}\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/core/wiki/rawmarkup]] [all[shadows+tiddlers]tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}\n</head>\n<body class=\"tc-body\">\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n{{$:/core/templates/static.area}}\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n{{$:/core/templates/store.area.template.html}}\n<!--~~ Library modules ~~-->\n<div id=\"libraryModules\" style=\"display:none;\">\n{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/javascript-tiddler}}}\n</div>\n<!--~~ Boot kernel prologue ~~-->\n<div id=\"bootKernelPrefix\" style=\"display:none;\">\n{{ $:/boot/bootprefix.js ||$:/core/templates/javascript-tiddler}}\n</div>\n<!--~~ Boot kernel ~~-->\n<div id=\"bootKernel\" style=\"display:none;\">\n{{ $:/boot/boot.js ||$:/core/templates/javascript-tiddler}}\n</div>\n</body>\n</html>\n"
        },
        "$:/core/templates/version": {
            "title": "$:/core/templates/version",
            "text": "<<version>>"
        },
        "$:/core/templates/wikified-tiddler": {
            "title": "$:/core/templates/wikified-tiddler",
            "text": "<$transclude />"
        },
        "$:/core/ui/AboveStory/tw2-plugin-check": {
            "title": "$:/core/ui/AboveStory/tw2-plugin-check",
            "tags": "$:/tags/AboveStory",
            "text": "\\define lingo-base() $:/language/AboveStory/ClassicPlugin/\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]limit[1]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n<ul>\n\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]]\">\n\n<li>\n\n<$link><$view field=\"title\"/></$link>\n\n</li>\n\n</$list>\n\n</ul>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter": {
            "title": "$:/core/ui/AdvancedSearch/Filter",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Filter/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n<<lingo Filter/Hint>>\n\n<div class=\"tc-search tc-advanced-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\n<div class=\"tc-search-results\">\n<<lingo Filter/Matches>>\n<$list filter={{$:/temp/advancedsearch}} template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$set>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button popup=<<qualify \"$:/state/filterDeleteDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/delete-button}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/filterDeleteDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\nAre you sure you wish to delete <<resultCount>> tiddler(s)?\n</$set>\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn\">\n<$action-deletetiddler $filter={{$:/temp/advancedsearch}}/>\nDelete these tiddlers\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/filterDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Filter]]\"><$link to={{!!filter}}><$transclude field=\"description\"/></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$macrocall $name=\"exportButton\" exportFilter={{$:/temp/advancedsearch}} lingoBase=\"$:/language/Buttons/ExportTiddlers/\"/>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Shadows": {
            "title": "$:/core/ui/AdvancedSearch/Shadows",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Shadows/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo Shadows/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[all[shadows]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo Shadows/Matches>>\n\n<$list filter=\"[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Standard": {
            "title": "$:/core/ui/AdvancedSearch/Standard",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Standard/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo Standard/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$set name=\"searchTiddler\" value=\"$:/temp/advancedsearch\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude/>\n</$list>\n\"\"\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}}/>\n</$list>\n</$set>\n</$list>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/System": {
            "title": "$:/core/ui/AdvancedSearch/System",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/System/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo System/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[is[system]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo System/Matches>>\n\n<$list filter=\"[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/AdvancedSearch": {
            "title": "$:/AdvancedSearch",
            "icon": "$:/core/images/advanced-search-button",
            "color": "#bbb",
            "text": "<div class=\"tc-advanced-search\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]\" \"$:/core/ui/AdvancedSearch/System\">>\n</div>\n"
        },
        "$:/core/ui/AlertTemplate": {
            "title": "$:/core/ui/AlertTemplate",
            "text": "<div class=\"tc-alert\">\n<div class=\"tc-alert-toolbar\">\n<$button class=\"tc-btn-invisible\"><$action-deletetiddler $tiddler=<<currentTiddler>>/>{{$:/core/images/delete-button}}</$button>\n</div>\n<div class=\"tc-alert-subtitle\">\n<$view field=\"component\"/> - <$view field=\"modified\" format=\"date\" template=\"0hh:0mm:0ss DD MM YYYY\"/> <$reveal type=\"nomatch\" state=\"!!count\" text=\"\"><span class=\"tc-alert-highlight\">({{$:/language/Count}}: <$view field=\"count\"/>)</span></$reveal>\n</div>\n<div class=\"tc-alert-body\">\n\n<$transclude/>\n\n</div>\n</div>\n"
        },
        "$:/core/ui/BinaryWarning": {
            "title": "$:/core/ui/BinaryWarning",
            "text": "\\define lingo-base() $:/language/BinaryWarning/\n<div class=\"tc-binary-warning\">\n\n<<lingo Prompt>>\n\n</div>\n"
        },
        "$:/core/ui/Components/plugin-info": {
            "title": "$:/core/ui/Components/plugin-info",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define popup-state-macro()\n$(qualified-state)$-$(currentTiddler)$\n\\end\n\n\\define tabs-state-macro()\n$(popup-state)$-$(pluginInfoType)$\n\\end\n\n\\define plugin-icon-title()\n$(currentTiddler)$/icon\n\\end\n\n\\define plugin-disable-title()\n$:/config/Plugins/Disabled/$(currentTiddler)$\n\\end\n\n\\define plugin-table-body(type,disabledMessage,default-popup-state)\n<div class=\"tc-plugin-info-chunk tc-small-icon\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<plugin-icon-title>>>\n<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\n</$transclude>\n</div>\n<div class=\"tc-plugin-info-chunk\">\n<h1>\n''<$view field=\"description\"><$view field=\"title\"/></$view>'' $disabledMessage$\n</h1>\n<h2>\n<$view field=\"title\"/>\n</h2>\n<h2>\n<div><em><$view field=\"version\"/></em></div>\n</h2>\n</div>\n\\end\n\n\\define plugin-info(type,default-popup-state)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info tc-plugin-info-disabled\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\" disabledMessage:\"<$macrocall $name='lingo' title='Disabled/Status'/>\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>> default=\"\"\"$default-popup-state$\"\"\">\n<div class=\"tc-plugin-info-dropdown\">\n<div class=\"tc-plugin-info-dropdown-body\">\n<$list filter=\"[all[current]] -[[$:/core]]\">\n<div style=\"float:right;\">\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"yes\" tooltip={{$:/language/ControlPanel/Plugins/Disable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Disable/Caption}}>\n<<lingo Disable/Caption>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"no\" tooltip={{$:/language/ControlPanel/Plugins/Enable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Enable/Caption}}>\n<<lingo Enable/Caption>>\n</$button>\n</$reveal>\n</div>\n</$list>\n<$set name=\"tabsList\" filter=\"[<currentTiddler>list[]] contents\">\n<$macrocall $name=\"tabs\" state=<<tabs-state-macro>> tabsList=<<tabsList>> default={{{ [enlist<tabsList>] }}} template=\"$:/core/ui/PluginInfo\"/>\n</$set>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end\n\n<$macrocall $name=\"plugin-info\" type=<<plugin-type>> default-popup-state=<<default-popup-state>>/>\n"
        },
        "$:/core/ui/Components/tag-link": {
            "title": "$:/core/ui/Components/tag-link",
            "text": "<$link>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<span style=<<tag-styles>> class=\"tc-tag-label\">\n<$view field=\"title\" format=\"text\"/>\n</span>\n</$set>\n</$link>"
        },
        "$:/core/ui/ControlPanel/Advanced": {
            "title": "$:/core/ui/ControlPanel/Advanced",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Advanced/Caption}}",
            "text": "{{$:/language/ControlPanel/Advanced/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Advanced]!has[draft.of]]\" \"$:/core/ui/ControlPanel/TiddlerFields\">>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Appearance": {
            "title": "$:/core/ui/ControlPanel/Appearance",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Appearance/Caption}}",
            "text": "{{$:/language/ControlPanel/Appearance/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Appearance]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Theme\">>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Basics": {
            "title": "$:/core/ui/ControlPanel/Basics",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Basics/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n\n\\define show-filter-count(filter)\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/state/tab--1498284803\" $value=\"$:/core/ui/AdvancedSearch/Filter\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n''<$count filter=\"\"\"$filter$\"\"\"/>''\n{{$:/core/images/advanced-search-button}}\n</$button>\n\\end\n\n|<<lingo Version/Prompt>> |''<<version>>'' |\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/status/UserName\"><<lingo Username/Prompt>></$link> |<$edit-text tiddler=\"$:/status/UserName\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/AnimationDuration\"><<lingo AnimDuration/Prompt>></$link> |<$edit-text tiddler=\"$:/config/AnimationDuration\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\" class=\"tc-edit-texteditor\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n|<$link to=\"$:/language/DefaultNewTiddlerTitle\"><<lingo NewTiddler/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/language/DefaultNewTiddlerTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Title\"><<lingo NewJournal/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/config/NewJournal/Title\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Text\"><<lingo NewJournal/Text/Prompt>></$link> |<$edit tiddler=\"$:/config/NewJournal/Text\" tag=\"textarea\" class=\"tc-edit-texteditor\" default=\"\"/> |\n|<$link to=\"$:/config/NewJournal/Tags\"><<lingo NewJournal/Tags/Prompt>></$link> |<$edit-text tiddler=\"$:/config/NewJournal/Tags\" default=\"\" tag=\"input\"/> |\n|<<lingo Language/Prompt>> |{{$:/snippets/minilanguageswitcher}} |\n|<<lingo Tiddlers/Prompt>> |<<show-filter-count \"[!is[system]sort[title]]\">> |\n|<<lingo Tags/Prompt>> |<<show-filter-count \"[tags[]sort[title]]\">> |\n|<<lingo SystemTiddlers/Prompt>> |<<show-filter-count \"[is[system]sort[title]]\">> |\n|<<lingo ShadowTiddlers/Prompt>> |<<show-filter-count \"[all[shadows]sort[title]]\">> |\n|<<lingo OverriddenShadowTiddlers/Prompt>> |<<show-filter-count \"[is[tiddler]is[shadow]sort[title]]\">> |\n"
        },
        "$:/core/ui/ControlPanel/EditorTypes": {
            "title": "$:/core/ui/ControlPanel/EditorTypes",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/EditorTypes/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/EditorTypes/\n\n<<lingo Hint>>\n\n<table>\n<tbody>\n<tr>\n<th><<lingo Type/Caption>></th>\n<th><<lingo Editor/Caption>></th>\n</tr>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/config/EditorTypeMappings/]sort[title]]\">\n<tr>\n<td>\n<$link>\n<$list filter=\"[all[current]removeprefix[$:/config/EditorTypeMappings/]]\">\n<$text text={{!!title}}/>\n</$list>\n</$link>\n</td>\n<td>\n<$view field=\"text\"/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/Info": {
            "title": "$:/core/ui/ControlPanel/Info",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Info/Caption}}",
            "text": "{{$:/language/ControlPanel/Info/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Info]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Basics\">>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/KeyboardShortcuts": {
            "title": "$:/core/ui/ControlPanel/KeyboardShortcuts",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/KeyboardShortcuts/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/KeyboardShortcuts/\n\n\\define new-shortcut(title)\n<div class=\"tc-dropdown-item-plain\">\n<$edit-shortcut tiddler=\"$title$\" placeholder={{$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt}} style=\"width:auto;\"/> <$button>\n<<lingo Add/Caption>>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"[{$title$}]\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"$title$\"\n/>\n</$button>\n</div>\n\\end\n\n\\define shortcut-list-item(caption)\n<td>\n</td>\n<td style=\"text-align:right;font-size:0.7em;\">\n<<lingo Platform/$caption$>>\n</td>\n<td>\n<div style=\"position:relative;\">\n<$button popup=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> class=\"tc-btn-invisible\">\n{{$:/core/images/edit-button}}\n</$button>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutTitle)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\n<$reveal state=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown tc-popup-keep\">\n<$list filter=\"[list[$(shortcutTitle)$!!text]sort[title]]\" variable=\"shortcut\" emptyMessage=\"\"\"\n<div class=\"tc-dropdown-item-plain\">\n//<<lingo NoShortcuts/Caption>>//\n</div>\n\"\"\">\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn-invisible\" tooltip=<<lingo Remove/Hint>>>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"+[remove<shortcut>]\"\n/>\n&times;\n</$button>\n<kbd>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts=<<shortcut>>/>\n</kbd>\n</div>\n</$list>\n<hr/>\n<$macrocall $name=\"new-shortcut\" title=<<qualify \"$:/state/new-shortcut/$(shortcutTitle)$\">>/>\n</div>\n</div>\n</$reveal>\n</div>\n</td>\n\\end\n\n\\define shortcut-list(caption,prefix)\n<tr>\n<$list filter=\"[all[tiddlers+shadows][$prefix$$(shortcutName)$]]\" variable=\"shortcutTitle\">\n<<shortcut-list-item \"$caption$\">>\n</$list>\n</tr>\n\\end\n\n\\define shortcut-editor()\n<<shortcut-list \"All\" \"$:/config/shortcuts/\">>\n<<shortcut-list \"Mac\" \"$:/config/shortcuts-mac/\">>\n<<shortcut-list \"NonMac\" \"$:/config/shortcuts-not-mac/\">>\n<<shortcut-list \"Linux\" \"$:/config/shortcuts-linux/\">>\n<<shortcut-list \"NonLinux\" \"$:/config/shortcuts-not-linux/\">>\n<<shortcut-list \"Windows\" \"$:/config/shortcuts-windows/\">>\n<<shortcut-list \"NonWindows\" \"$:/config/shortcuts-not-windows/\">>\n\\end\n\n\\define shortcut-preview()\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutPrefix)$$(shortcutName)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\\end\n\n\\define shortcut-item-inner()\n<tr>\n<td>\n<$reveal type=\"nomatch\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"open\"\n/>\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"close\"\n/>\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n''<$text text=<<shortcutName>>/>''\n</td>\n<td>\n<$transclude tiddler=\"$:/config/ShortcutInfo/$(shortcutName)$\"/>\n</td>\n<td>\n<$list filter=\"$:/config/shortcuts/ $:/config/shortcuts-mac/ $:/config/shortcuts-not-mac/ $:/config/shortcuts-linux/ $:/config/shortcuts-not-linux/ $:/config/shortcuts-windows/ $:/config/shortcuts-not-windows/\" variable=\"shortcutPrefix\">\n<<shortcut-preview>>\n</$list>\n</td>\n</tr>\n<$set name=\"dropdownState\" value={{$(dropdownStateTitle)$}}>\n<$list filter=\"[<dropdownState>prefix[open]]\" variable=\"listItem\">\n<<shortcut-editor>>\n</$list>\n</$set>\n\\end\n\n\\define shortcut-item()\n<$set name=\"dropdownStateTitle\" value=<<qualify \"$:/state/dropdown/keyboardshortcut/$(shortcutName)$\">>>\n<<shortcut-item-inner>>\n</$set>\n\\end\n\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$:/config/ShortcutInfo/]]\" variable=\"shortcutName\">\n<<shortcut-item>>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/LoadedModules": {
            "title": "$:/core/ui/ControlPanel/LoadedModules",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/LoadedModules/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n<<lingo LoadedModules/Hint>>\n\n{{$:/snippets/modules}}\n"
        },
        "$:/core/ui/ControlPanel/Modals/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Modals/AddPlugins",
            "subtitle": "{{$:/core/images/download-button}} {{$:/language/ControlPanel/Plugins/Add/Caption}}",
            "text": "\\define install-plugin-button()\n<$button>\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url={{!!url}} title={{$(assetInfo)$!!original-title}}/>\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\" emptyMessage=\"\"\"{{$:/language/ControlPanel/Plugins/Install/Caption}}\"\"\">\n{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}\n</$list>\n</$button>\n\\end\n\n\\define popup-state-macro()\n$:/state/add-plugin-info/$(connectionTiddler)$/$(assetInfo)$\n\\end\n\n\\define display-plugin-info(type)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<div class=\"tc-plugin-info\">\n<div class=\"tc-plugin-info-chunk tc-small-icon\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk\">\n<$list filter=\"[<assetInfo>has[icon]]\" emptyMessage=\"\"\"<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\"\"\">\n<img src={{$(assetInfo)$!!icon}}/>\n</$list>\n</div>\n<div class=\"tc-plugin-info-chunk\">\n<h1><$view tiddler=<<assetInfo>> field=\"description\"/></h1>\n<h2><$view tiddler=<<assetInfo>> field=\"original-title\"/></h2>\n<div><em><$view tiddler=<<assetInfo>> field=\"version\"/></em></div>\n</div>\n<div class=\"tc-plugin-info-chunk\">\n<<install-plugin-button>>\n</div>\n</div>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>>>\n<div class=\"tc-plugin-info-dropdown\">\n<div class=\"tc-plugin-info-dropdown-message\">\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\" emptyMessage=\"\"\"{{$:/language/ControlPanel/Plugins/NotInstalled/Hint}}\"\"\">\n<em>\n{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}\n</em>\n</$list>\n</div>\n<div class=\"tc-plugin-info-dropdown-body\">\n<$transclude tiddler=<<assetInfo>> field=\"readme\" mode=\"block\"/>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end\n\n\\define load-plugin-library-button()\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-load-plugin-library\" url={{!!url}} infoTitlePrefix=\"$:/temp/RemoteAssetInfo/\"/>\n{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Plugins/OpenPluginLibrary}}\n</$button>\n\\end\n\n\\define display-server-assets(type)\n{{$:/language/Search/Search}}: <$edit-text tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" default=\"\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n<div class=\"tc-plugin-library-listing\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]search{$:/temp/RemoteAssetSearch/$(currentTiddler)$}sort[description]]\" variable=\"assetInfo\">\n<<display-plugin-info \"$type$\">>\n</$list>\n</div>\n\\end\n\n\\define display-server-connection()\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/ServerConnection]suffix{!!url}]\" variable=\"connectionTiddler\" emptyMessage=<<load-plugin-library-button>>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Add/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Add/Themes]] [[$:/core/ui/ControlPanel/Plugins/Add/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Add/Plugins\">>\n\n</$list>\n\\end\n\n\\define close-library-button()\n<$reveal type='nomatch' state='$:/temp/ServerConnection/$(PluginLibraryURL)$' text=''>\n<$button class='tc-btn-big-green'>\n<$action-sendmessage $message=\"tm-unload-plugin-library\" url={{!!url}}/>\n{{$:/core/images/chevron-left}} {{$:/language/ControlPanel/Plugins/ClosePluginLibrary}}\n<$action-deletetiddler $filter=\"[prefix[$:/temp/ServerConnection/$(PluginLibraryURL)$]][prefix[$:/temp/RemoteAssetInfo/$(PluginLibraryURL)$]]\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define plugin-library-listing()\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<div class=\"tc-plugin-library\">\n\n!! <$link><$transclude field=\"caption\"><$view field=\"title\"/></$transclude></$link>\n\n//<$view field=\"url\"/>//\n\n<$transclude/>\n\n<$set name=PluginLibraryURL value={{!!url}}>\n<<close-library-button>>\n</$set>\n\n<<display-server-connection>>\n</div>\n</$list>\n\\end\n\n<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n\n<div>\n<<plugin-library-listing>>\n</div>\n\n</$importvariables>\n"
        },
        "$:/core/ui/ControlPanel/Palette": {
            "title": "$:/core/ui/ControlPanel/Palette",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Palette/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/\n\n{{$:/snippets/paletteswitcher}}\n\n<$reveal type=\"nomatch\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"yes\"><<lingo ShowEditor/Caption>></$button>\n\n</$reveal>\n\n<$reveal type=\"match\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"no\"><<lingo HideEditor/Caption>></$button>\n{{$:/snippets/paletteeditor}}\n\n</$reveal>\n\n"
        },
        "$:/core/ui/ControlPanel/Parsing": {
            "title": "$:/core/ui/ControlPanel/Parsing",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Parsing/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Parsing/\n\n\\define toggle(Type)\n<$checkbox\ntiddler=\"\"\"$:/config/WikiParserRules/$Type$/$(rule)$\"\"\"\nfield=\"text\"\nchecked=\"enable\"\nunchecked=\"disable\"\ndefault=\"enable\">\n<<rule>>\n</$checkbox>\n\\end\n\n\\define rules(type,Type)\n<$list filter=\"[wikiparserrules[$type$]]\" variable=\"rule\">\n<dd><<toggle $Type$>></dd>\n</$list>\n\\end\n\n<<lingo Hint>>\n\n<dl>\n<dt><<lingo Pragma/Caption>></dt>\n<<rules pragma Pragma>>\n<dt><<lingo Inline/Caption>></dt>\n<<rules inline Inline>>\n<dt><<lingo Block/Caption>></dt>\n<<rules block Block>>\n</dl>"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[language]]\"/>)",
            "text": "<<display-server-assets language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[plugin]]\"/>)",
            "text": "<<display-server-assets plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[theme]]\"/>)",
            "text": "<<display-server-assets theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/AddPlugins",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n<$button message=\"tm-modal\" param=\"$:/core/ui/ControlPanel/Modals/AddPlugins\" tooltip={{$:/language/ControlPanel/Plugins/Add/Hint}} class=\"tc-btn-big-green\" style=\"background:blue;\">\n{{$:/core/images/download-button}} <<lingo Add/Caption>>\n</$button>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[language]]\"/>)",
            "text": "<<plugin-table language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[plugin]]\"/>)",
            "text": "<<plugin-table plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[theme]]\"/>)",
            "text": "<<plugin-table theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define plugin-table(type)\n<$set name=\"plugin-type\" value=\"\"\"$type$\"\"\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n<$list filter=\"[!has[draft.of]plugin-type[$type$]sort[description]]\" emptyMessage=<<lingo \"Empty/Hint\">> template=\"$:/core/ui/Components/plugin-info\"/>\n</$set>\n</$set>\n\\end\n\n{{$:/core/ui/ControlPanel/Plugins/AddPlugins}}\n\n<<lingo Installed/Hint>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] [[$:/core/ui/ControlPanel/Plugins/Installed/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\">>\n"
        },
        "$:/core/ui/ControlPanel/Saving/DownloadSaver": {
            "title": "$:/core/ui/ControlPanel/Saving/DownloadSaver",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/DownloadSaver/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/DownloadSaver/\n\n<<lingo Hint>>\n\n!! <$link to=\"$:/config/DownloadSaver/AutoSave\"><<lingo AutoSave/Hint>></$link>\n\n<$checkbox tiddler=\"$:/config/DownloadSaver/AutoSave\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <<lingo AutoSave/Description>> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Saving/General": {
            "title": "$:/core/ui/ControlPanel/Saving/General",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/General/Caption}}",
            "list-before": "",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n{{$:/language/ControlPanel/Saving/General/Hint}}\n\n!! <$link to=\"$:/config/AutoSave\"><<lingo AutoSave/Caption>></$link>\n\n<<lingo AutoSave/Hint>>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"yes\"> <<lingo AutoSave/Enabled/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"no\"> <<lingo AutoSave/Disabled/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Saving/TiddlySpot": {
            "title": "$:/core/ui/ControlPanel/Saving/TiddlySpot",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/TiddlySpot/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/TiddlySpot/\n\n\\define backupURL()\nhttp://$(userName)$.tiddlyspot.com/backup/\n\\end\n\\define backupLink()\n<$reveal type=\"nomatch\" state=\"$:/UploadName\" text=\"\">\n<$set name=\"userName\" value={{$:/UploadName}}>\n<$reveal type=\"match\" state=\"$:/UploadURL\" text=\"\">\n<<backupURL>>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/UploadURL\" text=\"\">\n<$macrocall $name=resolvePath source={{$:/UploadBackupDir}} root={{$:/UploadURL}}>>\n</$reveal>\n</$set>\n</$reveal>\n\\end\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/UploadName\" default=\"\" tag=\"input\"/> |\n|<<lingo Password>> |<$password name=\"upload\"/> |\n|<<lingo Backups>> |<<backupLink>> |\n\n''<<lingo Advanced/Heading>>''\n\n|<<lingo ServerURL>>  |<$edit-text tiddler=\"$:/UploadURL\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/UploadFilename\" default=\"index.html\" tag=\"input\"/> |\n|<<lingo UploadDir>> |<$edit-text tiddler=\"$:/UploadDir\" default=\".\" tag=\"input\"/> |\n|<<lingo BackupDir>> |<$edit-text tiddler=\"$:/UploadBackupDir\" default=\".\" tag=\"input\"/> |\n\n<<lingo TiddlySpot/Hint>>"
        },
        "$:/core/ui/ControlPanel/Saving": {
            "title": "$:/core/ui/ControlPanel/Saving",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Saving/Caption}}",
            "text": "{{$:/language/ControlPanel/Saving/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Saving]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Saving/General\">>\n</div>\n"
        },
        "$:/core/buttonstyles/Borderless": {
            "title": "$:/core/buttonstyles/Borderless",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless}}",
            "text": "tc-btn-invisible"
        },
        "$:/core/buttonstyles/Boxed": {
            "title": "$:/core/buttonstyles/Boxed",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed}}",
            "text": "tc-btn-boxed"
        },
        "$:/core/buttonstyles/Rounded": {
            "title": "$:/core/buttonstyles/Rounded",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded}}",
            "text": "tc-btn-rounded"
        },
        "$:/core/ui/ControlPanel/Settings/CamelCase": {
            "title": "$:/core/ui/ControlPanel/Settings/CamelCase",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/CamelCase/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/CamelCase/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/WikiParserRules/Inline/wikilink\" field=\"text\" checked=\"enable\" unchecked=\"disable\" default=\"enable\"> <$link to=\"$:/config/WikiParserRules/Inline/wikilink\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultMoreSidebarTab/\n\n<$link to=\"$:/config/DefaultMoreSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultMoreSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultSidebarTab/\n\n<$link to=\"$:/config/DefaultSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Settings/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/EditorToolbar/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/TextEditor/EnableToolbar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/TextEditor/EnableToolbar\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/InfoPanelMode": {
            "title": "$:/core/ui/ControlPanel/Settings/InfoPanelMode",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/InfoPanelMode/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/InfoPanelMode/\n<$link to=\"$:/config/TiddlerInfo/Mode\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"popup\"> <<lingo Popup/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"sticky\"> <<lingo Sticky/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/LinkToBehaviour": {
            "title": "$:/core/ui/ControlPanel/Settings/LinkToBehaviour",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/LinkToBehaviour/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/LinkToBehaviour/\n\n<$link to=\"$:/config/Navigation/openLinkFromInsideRiver\"><<lingo \"InsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromInsideRiver\">\n  <option value=\"above\"><<lingo \"OpenAbove\">></option>\n  <option value=\"below\"><<lingo \"OpenBelow\">></option>\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n\n<$link to=\"$:/config/Navigation/openLinkFromOutsideRiver\"><<lingo \"OutsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromOutsideRiver\">\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/MissingLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/MissingLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/MissingLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/MissingLinks/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/MissingLinks\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/MissingLinks\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationAddressBar": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationAddressBar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationAddressBar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationAddressBar/\n\n<$link to=\"$:/config/Navigation/UpdateAddressBar\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permaview\"> <<lingo Permaview/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permalink\"> <<lingo Permalink/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationHistory": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationHistory",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationHistory/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationHistory/\n<$link to=\"$:/config/Navigation/UpdateHistory\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation": {
            "title": "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/PerformanceInstrumentation/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Performance/Instrumentation\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Performance/Instrumentation\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/TitleLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/TitleLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/TitleLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/TitleLinks/\n<$link to=\"$:/config/Tiddlers/TitleLinks\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtonStyle/\n<$link to=\"$:/config/Toolbar/ButtonClass\"><<lingo \"Hint\">></$link>\n\n<$select tiddler=\"$:/config/Toolbar/ButtonClass\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ToolbarButtonStyle]]\">\n<option value={{!!text}}>{{!!caption}}</option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtons": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtons",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtons/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtons/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Icons\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Toolbar/Icons\"><<lingo Icons/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Text\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Toolbar/Text\"><<lingo Text/Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings": {
            "title": "$:/core/ui/ControlPanel/Settings",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Settings/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n<<lingo Hint>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\">\n\n<div style=\"border-top:1px solid #eee;\">\n\n!! <$link><$transclude field=\"caption\"/></$link>\n\n<$transclude/>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ControlPanel/StoryView": {
            "title": "$:/core/ui/ControlPanel/StoryView",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/StoryView/Caption}}",
            "text": "{{$:/snippets/viewswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/Stylesheets": {
            "title": "$:/core/ui/ControlPanel/Stylesheets",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Stylesheets/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo Stylesheets/Hint>>\n\n{{$:/snippets/peek-stylesheets}}\n"
        },
        "$:/core/ui/ControlPanel/Theme": {
            "title": "$:/core/ui/ControlPanel/Theme",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Theme/Caption}}",
            "text": "{{$:/snippets/themeswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/TiddlerFields": {
            "title": "$:/core/ui/ControlPanel/TiddlerFields",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/TiddlerFields/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo TiddlerFields/Hint>>\n\n{{$:/snippets/allfields}}"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"><$transclude tiddler={{!!icon}}/></span> <$transclude field=\"caption\"/> -- <i class=\"tc-muted\"><$transclude field=\"description\"/></i>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditorToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditorToolbar/Hint}}\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditorToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate\"/>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"> <$transclude field=\"caption\"/> <i class=\"tc-muted\">-- <$transclude field=\"description\"/></i></span>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/PageControls": {
            "title": "$:/core/ui/ControlPanel/Toolbars/PageControls",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/PageControls/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/PageControlButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/PageControls/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/PageControls\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ViewToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ViewToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/ViewToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/ViewToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/ViewToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/ViewToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars": {
            "title": "$:/core/ui/ControlPanel/Toolbars",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Toolbars/Caption}}",
            "text": "{{$:/language/ControlPanel/Toolbars/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" \"$:/state/tabs/controlpanel/toolbars\" \"tc-vertical\">>\n</div>\n"
        },
        "$:/ControlPanel": {
            "title": "$:/ControlPanel",
            "icon": "$:/core/images/options-button",
            "color": "#bbb",
            "text": "<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Info\">>\n</div>\n"
        },
        "$:/core/ui/DefaultSearchResultList": {
            "title": "$:/core/ui/DefaultSearchResultList",
            "tags": "$:/tags/SearchResults",
            "caption": "{{$:/language/Search/DefaultResults/Caption}}",
            "text": "\\define searchResultList()\n//<small>{{$:/language/Search/Matches/Title}}</small>//\n\n<$list filter=\"[!is[system]search:title{$(searchTiddler)$}sort[title]limit[250]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n//<small>{{$:/language/Search/Matches/All}}</small>//\n\n<$list filter=\"[!is[system]search{$(searchTiddler)$}sort[title]limit[250]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n\\end\n<<searchResultList>>\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-current": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-current",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from current",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-shadow": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-shadow",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from shadow (if any)",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{{ [{!!draft.of}shadowsource[]] }}} sourceSubTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/output": {
            "title": "$:/core/ui/EditTemplate/body/preview/output",
            "tags": "$:/tags/EditPreview",
            "caption": "{{$:/language/EditTemplate/Body/Preview/Type/Output}}",
            "text": "<$set name=\"tv-tiddler-preview\" value=\"yes\">\n\n<$transclude />\n\n</$set>\n"
        },
        "$:/state/showeditpreview": {
            "title": "$:/state/showeditpreview",
            "text": "yes"
        },
        "$:/core/ui/EditTemplate/body/editor": {
            "title": "$:/core/ui/EditTemplate/body/editor",
            "text": "<$edit\n\n  field=\"text\"\n  class=\"tc-edit-texteditor\"\n  placeholder={{$:/language/EditTemplate/Body/Placeholder}}\n\n><$set\n\n  name=\"targetTiddler\"\n  value=<<currentTiddler>>\n\n><$list\n\n  filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]]\"\n\n><$reveal\n\n  type=\"nomatch\"\n  state=<<config-visibility-title>>\n  text=\"hide\"\n  class=\"tc-text-editor-toolbar-item-wrapper\"\n\n><$transclude\n\n  tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\"\n  mode=\"inline\"\n\n/></$reveal></$list></$set></$edit>\n"
        },
        "$:/core/ui/EditTemplate/body/toolbar/button": {
            "title": "$:/core/ui/EditTemplate/body/toolbar/button",
            "text": "\\define toolbar-button-icon()\n<$list\n\n  filter=\"[all[current]!has[custom-icon]]\"\n  variable=\"no-custom-icon\"\n\n><$transclude\n\n  tiddler={{!!icon}}\n\n/></$list>\n\\end\n\n\\define toolbar-button-tooltip()\n{{!!description}}<$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts={{!!shortcuts}} prefix=\"` - [\" separator=\"] [\" suffix=\"]`\"/>\n\\end\n\n\\define toolbar-button()\n<$list\n\n  filter={{!!condition}}\n  variable=\"list-condition\"\n\n><$wikify\n\n  name=\"tooltip-text\"\n  text=<<toolbar-button-tooltip>>\n  mode=\"inline\"\n  output=\"text\"\n\n><$list\n\n  filter=\"[all[current]!has[dropdown]]\"\n  variable=\"no-dropdown\"\n\n><$button\n\n  class=\"tc-btn-invisible $(buttonClasses)$\"\n  tooltip=<<tooltip-text>>\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button></$list><$list\n\n  filter=\"[all[current]has[dropdown]]\"\n  variable=\"dropdown\"\n\n><$set\n\n  name=\"dropdown-state\"\n  value=<<qualify \"$:/state/EditorToolbarDropdown\">>\n\n><$button\n\n  popup=<<dropdown-state>>\n  class=\"tc-popup-keep tc-btn-invisible $(buttonClasses)$\"\n  selectedClass=\"tc-selected\"\n  tooltip=<<tooltip-text>>\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button><$reveal\n\n  state=<<dropdown-state>>\n  type=\"popup\"\n  position=\"below\"\n  animate=\"yes\"\n  tag=\"span\"\n\n><div\n\n  class=\"tc-drop-down tc-popup-keep\"\n\n><$transclude\n\n  tiddler={{!!dropdown}}\n  mode=\"block\"\n\n/></div></$reveal></$set></$list></$wikify></$list>\n\\end\n\n\\define toolbar-button-outer()\n<$set\n\n  name=\"buttonClasses\"\n  value={{!!button-classes}}\n\n><<toolbar-button>></$set>\n\\end\n\n<<toolbar-button-outer>>"
        },
        "$:/core/ui/EditTemplate/body": {
            "title": "$:/core/ui/EditTemplate/body",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Body/\n\\define config-visibility-title()\n$:/config/EditorToolbarButtons/Visibility/$(currentTiddler)$\n\\end\n<$list filter=\"[is[current]has[_canonical_uri]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo External/Hint>>\n\n<a href={{!!_canonical_uri}}><$text text={{!!_canonical_uri}}/></a>\n\n<$edit-text field=\"_canonical_uri\" class=\"tc-edit-fields\"></$edit-text>\n\n</div>\n\n</$list>\n\n<$list filter=\"[is[current]!has[_canonical_uri]]\">\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\">\n\n<div class=\"tc-tiddler-preview\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n<div class=\"tc-tiddler-preview-preview\">\n\n<$transclude tiddler={{$:/state/editpreviewtype}} mode=\"inline\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/preview/output\" mode=\"inline\"/>\n\n</$transclude>\n\n</div>\n\n</div>\n\n</$reveal>\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/EditTemplate/controls": {
            "title": "$:/core/ui/EditTemplate/controls",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define config-title()\n$:/config/EditToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title tc-tiddler-edit-title\">\n<$view field=\"title\"/>\n<span class=\"tc-tiddler-controls tc-titlebar\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$transclude tiddler=<<listItem>>/></$reveal></$list></span>\n<div style=\"clear: both;\"></div>\n</div>\n"
        },
        "$:/core/ui/EditTemplate/fields": {
            "title": "$:/core/ui/EditTemplate/fields",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}]\n\\end\n\n\\define new-field()\n<$vars name={{$:/temp/newfieldname}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button>\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{$:/temp/newfieldvalue}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldname\"/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldvalue\"/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<span class=\"tc-edit-field-add-name\">\n<$edit-text tiddler=\"$:/temp/newfieldname\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}} focusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\"/>\n</span>\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"$:/temp/newfieldname\">\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title{$:/temp/newfieldname}sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\"  variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title{$:/temp/newfieldname}sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<<currentField>>\n</$link>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n<span class=\"tc-edit-field-add-value\">\n<$edit-text tiddler=\"$:/temp/newfieldvalue\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\"/>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</div>\n</$fieldmangler>\n"
        },
        "$:/core/ui/EditTemplate/shadow": {
            "title": "$:/core/ui/EditTemplate/shadow",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Shadow/\n\\define pluginLinkBody()\n<$link to=\"\"\"$(pluginTitle)$\"\"\">\n<$text text=\"\"\"$(pluginTitle)$\"\"\"/>\n</$link>\n\\end\n<$list filter=\"[all[current]get[draft.of]is[shadow]!is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>\n\n<$list filter=\"[all[current]get[draft.of]is[shadow]is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo OverriddenWarning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>"
        },
        "$:/core/ui/EditTemplate/tags": {
            "title": "$:/core/ui/EditTemplate/tags",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\n\\define tag-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-body-inner(colour,fallbackTarget,colourA,colourB)\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<span style=<<tag-styles>> class=\"tc-tag-label\">\n<$view field=\"title\" format=\"text\" />\n<$button message=\"tm-remove-tag\" param={{!!title}} class=\"tc-btn-invisible tc-remove-tag-button\">&times;</$button>\n</span>\n</$vars>\n\\end\n\n\\define tag-body(colour,palette)\n<$macrocall $name=\"tag-body-inner\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}}/>\n\\end\n\n\\define tag-picker-actions()\n<$action-listops\n\t$tiddler=<<currentTiddler>>\n\t$field=\"tags\"\n\t$subfilter=\"[<tag>] [all[current]tags[]]\"\n/>\n\\end\n\n<div class=\"tc-edit-tags\">\n<$fieldmangler>\n<$list filter=\"[all[current]tags[]sort[title]]\" storyview=\"pop\">\n<$macrocall $name=\"tag-body\" colour={{!!color}} palette={{$:/palette}}/>\n</$list>\n</$fieldmangler>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</div>\n"
        },
        "$:/core/ui/EditTemplate/title": {
            "title": "$:/core/ui/EditTemplate/title",
            "tags": "$:/tags/EditTemplate",
            "text": "<$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus=\"true\"/>\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[is[current]regexp:draft.title<pattern>]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n</div>\n\n</$list>\n\n</$vars>\n\n<$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\">\n\n<$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n</div>\n\n</$list>\n\n<$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\">\n\n<$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}>\n\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> {{$:/language/EditTemplate/Title/Relink/Prompt}}</$checkbox>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n\n\n"
        },
        "$:/core/ui/EditTemplate/type": {
            "title": "$:/core/ui/EditTemplate/type",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n<div class=\"tc-type-selector\"><$fieldmangler>\n<em class=\"tc-edit\"><<lingo Type/Prompt>></em> <$edit-text field=\"type\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Type/Placeholder}} focusPopup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-edit-typeeditor tc-popup-handle\"/> <$button popup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Type/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Type/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button> <$button message=\"tm-remove-field\" param=\"type\" class=\"tc-btn-invisible tc-btn-icon\" tooltip={{$:/language/EditTemplate/Type/Delete/Hint}} aria-label={{$:/language/EditTemplate/Type/Delete/Caption}}>{{$:/core/images/delete-button}}</$button>\n</$fieldmangler></div>\n\n<div class=\"tc-block-dropdown-wrapper\">\n<$reveal state=<<qualify \"$:/state/popup/type-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"!!type\">\n<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]each[group]sort[group-sort]]'>\n<div class=\"tc-dropdown-item\">\n<$text text={{!!group}}/>\n</div>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]]\"><$link to={{!!name}}><$view field=\"description\"/> (<$view field=\"name\"/>)</$link>\n</$list>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>"
        },
        "$:/core/ui/EditTemplate": {
            "title": "$:/core/ui/EditTemplate",
            "text": "\\define actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{$:/temp/NewTagName}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{$:/temp/newfieldname}} $value={{$:/temp/newfieldvalue}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldname\"/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldvalue\"/>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n\\end\n\\define frame-classes()\ntc-tiddler-frame tc-tiddler-edit-frame $(missingTiddlerClass)$ $(shadowTiddlerClass)$ $(systemTiddlerClass)$\n\\end\n<div class=<<frame-classes>> data-tiddler-title=<<currentTiddler>>>\n<$fieldmangler>\n<$set name=\"storyTiddler\" value=<<currentTiddler>>>\n<$keyboard key=\"((cancel-edit-tiddler))\" message=\"tm-cancel-tiddler\">\n<$keyboard key=\"((save-tiddler))\" actions=<<actions>>>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditTemplate]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>>/>\n</$set>\n</$list>\n</$keyboard>\n</$keyboard>\n</$set>\n</$fieldmangler>\n</div>\n"
        },
        "$:/core/ui/Buttons/cancel": {
            "title": "$:/core/ui/Buttons/cancel",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/cancel-button}} {{$:/language/Buttons/Cancel/Caption}}",
            "description": "{{$:/language/Buttons/Cancel/Hint}}",
            "text": "<$button message=\"tm-cancel-tiddler\" tooltip={{$:/language/Buttons/Cancel/Hint}} aria-label={{$:/language/Buttons/Cancel/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/cancel-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/delete": {
            "title": "$:/core/ui/Buttons/delete",
            "tags": "$:/tags/EditToolbar $:/tags/ViewToolbar",
            "caption": "{{$:/core/images/delete-button}} {{$:/language/Buttons/Delete/Caption}}",
            "description": "{{$:/language/Buttons/Delete/Hint}}",
            "text": "<$button message=\"tm-delete-tiddler\" tooltip={{$:/language/Buttons/Delete/Hint}} aria-label={{$:/language/Buttons/Delete/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/delete-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/save": {
            "title": "$:/core/ui/Buttons/save",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/done-button}} {{$:/language/Buttons/Save/Caption}}",
            "description": "{{$:/language/Buttons/Save/Hint}}",
            "text": "<$fieldmangler><$button tooltip={{$:/language/Buttons/Save/Hint}} aria-label={{$:/language/Buttons/Save/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-add-tag\" $param={{$:/temp/NewTagName}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{$:/temp/newfieldname}} $value={{$:/temp/newfieldvalue}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldname\"/>\n<$action-deletetiddler $tiddler=\"$:/temp/newfieldvalue\"/>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/done-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Save/Caption}}/></span>\n</$list>\n</$button></$fieldmangler>\n"
        },
        "$:/core/ui/EditorToolbar/bold": {
            "title": "$:/core/ui/EditorToolbar/bold",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/bold",
            "caption": "{{$:/language/Buttons/Bold/Caption}}",
            "description": "{{$:/language/Buttons/Bold/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((bold))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"''\"\n\tsuffix=\"''\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/clear-dropdown": {
            "title": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": "''{{$:/language/Buttons/Clear/Hint}}''\n\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"clear\"\n\tcolour=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/clear": {
            "title": "$:/core/ui/EditorToolbar/clear",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/erase",
            "caption": "{{$:/language/Buttons/Clear/Caption}}",
            "description": "{{$:/language/Buttons/Clear/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "dropdown": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/editor-height-dropdown": {
            "title": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/EditorHeight/\n''<<lingo Hint>>''\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"auto\"> {{$:/core/images/auto-height}} <<lingo Caption/Auto>></$radio>\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"fixed\"> {{$:/core/images/fixed-height}} <<lingo Caption/Fixed>> <$edit-text tag=\"input\" tiddler=\"$:/config/TextEditor/EditorHeight/Height\" default=\"100px\"/></$radio>\n"
        },
        "$:/core/ui/EditorToolbar/editor-height": {
            "title": "$:/core/ui/EditorToolbar/editor-height",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/fixed-height",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/EditorHeight/Caption}}",
            "description": "{{$:/language/Buttons/EditorHeight/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] +[first[]]",
            "dropdown": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n{{$:/core/images/fixed-height}}\n</$reveal>\n<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n{{$:/core/images/auto-height}}\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/excise-dropdown": {
            "title": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Excise/\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<<lingo Caption/NewTitle>> <$edit-text tag=\"input\" tiddler=\"$config-title$/new-title\" default=\"\" focus=\"true\"/>\n\n<$set name=\"new-title\" value={{$config-title$/new-title}}>\n<$list filter=\"\"\"[<new-title>is[tiddler]]\"\"\">\n<div class=\"tc-error\">\n<<lingo Caption/TiddlerExists>>\n</div>\n</$list>\n</$set>\n\n<$checkbox tiddler=\"\"\"$config-title$/tagnew\"\"\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"false\"> <<lingo Caption/Tag>></$checkbox>\n\n<<lingo Caption/Replace>> <$select tiddler=\"\"\"$config-title$/type\"\"\" default=\"transclude\">\n<option value=\"link\"><<lingo Caption/Replace/Link>></option>\n<option value=\"transclude\"><<lingo Caption/Replace/Transclusion>></option>\n<option value=\"macro\"><<lingo Caption/Replace/Macro>></option>\n</$select>\n\n<$reveal state=\"\"\"$config-title$/type\"\"\" type=\"match\" text=\"macro\">\n<<lingo Caption/MacroName>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/macro-title\"\"\" default=\"translink\"/>\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"excise\"\n\ttitle={{$config-title$/new-title}}\n\ttype={{$config-title$/type}}\n\tmacro={{$config-title$/macro-title}}\n\ttagnew={{$config-title$/tagnew}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"$config-title$/new-title\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Excise>>\n</$button>\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Excise/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/excise": {
            "title": "$:/core/ui/EditorToolbar/excise",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/excise",
            "caption": "{{$:/language/Buttons/Excise/Caption}}",
            "description": "{{$:/language/Buttons/Excise/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>type[text/vnc.tiddlywiki]] +[first[]]",
            "shortcuts": "((excise))",
            "dropdown": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/heading-1": {
            "title": "$:/core/ui/EditorToolbar/heading-1",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-1",
            "caption": "{{$:/language/Buttons/Heading1/Caption}}",
            "description": "{{$:/language/Buttons/Heading1/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((heading-1))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-2": {
            "title": "$:/core/ui/EditorToolbar/heading-2",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-2",
            "caption": "{{$:/language/Buttons/Heading2/Caption}}",
            "description": "{{$:/language/Buttons/Heading2/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-2))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"2\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-3": {
            "title": "$:/core/ui/EditorToolbar/heading-3",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-3",
            "caption": "{{$:/language/Buttons/Heading3/Caption}}",
            "description": "{{$:/language/Buttons/Heading3/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-3))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"3\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/core/ui/EditorToolbar/heading-4",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-4",
            "caption": "{{$:/language/Buttons/Heading4/Caption}}",
            "description": "{{$:/language/Buttons/Heading4/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-4))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"4\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/core/ui/EditorToolbar/heading-5",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-5",
            "caption": "{{$:/language/Buttons/Heading5/Caption}}",
            "description": "{{$:/language/Buttons/Heading5/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-5))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"5\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/core/ui/EditorToolbar/heading-6",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-6",
            "caption": "{{$:/language/Buttons/Heading6/Caption}}",
            "description": "{{$:/language/Buttons/Heading6/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-6))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"6\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/italic": {
            "title": "$:/core/ui/EditorToolbar/italic",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/italic",
            "caption": "{{$:/language/Buttons/Italic/Caption}}",
            "description": "{{$:/language/Buttons/Italic/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((italic))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"//\"\n\tsuffix=\"//\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/line-width-dropdown": {
            "title": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/LineWidth/\n\n\\define toolbar-line-width-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(line-width)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/LineWidth\"\n\t$value=\"$(line-width)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; margin: 4px calc(80px - $(line-width)$); background-color: #000; width: calc(100px + $(line-width)$ * 2); height: $(line-width)$; border-radius: 120px; vertical-align: middle;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(line-width)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/LineWidth\" type=\"match\" text=\"\"\"$(line-width)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/LineWidths}} variable=\"line-width\">\n\n<<toolbar-line-width-inner>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/line-width": {
            "title": "$:/core/ui/EditorToolbar/line-width",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/line-width",
            "caption": "{{$:/language/Buttons/LineWidth/Caption}}",
            "description": "{{$:/language/Buttons/LineWidth/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "dropdown": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/LineWidth}}/>"
        },
        "$:/core/ui/EditorToolbar/link-dropdown": {
            "title": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Link/\n\n\\define add-link-actions()\n<$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"make-link\" text={{$(linkTiddler)$}} />\n<$action-deletetiddler $tiddler=<<dropdown-state>> />\n<$action-deletetiddler $tiddler=<<searchTiddler>> />\n<$action-deletetiddler $tiddler=<<linkTiddler>> />\n\\end\n\n\\define external-link()\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\" actions=<<add-link-actions>>>\n{{$:/core/images/chevron-right}}\n</$button>\n\\end\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<$vars searchTiddler=\"\"\"$config-title$/search\"\"\" linkTiddler=\"\"\"$config-title$/link\"\"\" linktext=\"\" >\n\n<$vars linkTiddler=<<searchTiddler>>>\n<$keyboard key=\"ENTER\" actions=<<add-link-actions>>>\n<$edit-text tiddler=<<searchTiddler>> type=\"search\" tag=\"input\" focus=\"true\" placeholder={{$:/language/Search/Search}} default=\"\"/>\n<$reveal tag=\"span\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n<<external-link>>\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\">\n<$action-setfield $tiddler=<<searchTiddler>> text=\"\" />\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</$keyboard>\n</$vars>\n\n<$reveal tag=\"div\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n\n<$linkcatcher actions=<<add-link-actions>> to=<<linkTiddler>>>\n\n{{$:/core/ui/SearchResults}}\n\n</$linkcatcher>\n\n</$reveal>\n\n</$vars>\n\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Link/\">>/>"
        },
        "$:/core/ui/EditorToolbar/link": {
            "title": "$:/core/ui/EditorToolbar/link",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/link",
            "caption": "{{$:/language/Buttons/Link/Caption}}",
            "description": "{{$:/language/Buttons/Link/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((link))",
            "dropdown": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/linkify": {
            "title": "$:/core/ui/EditorToolbar/linkify",
            "caption": "{{$:/language/Buttons/Linkify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Linkify/Hint}}",
            "icon": "$:/core/images/linkify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((linkify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"[[\"\n\tsuffix=\"]]\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-bullet": {
            "title": "$:/core/ui/EditorToolbar/list-bullet",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-bullet",
            "caption": "{{$:/language/Buttons/ListBullet/Caption}}",
            "description": "{{$:/language/Buttons/ListBullet/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-bullet))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-number": {
            "title": "$:/core/ui/EditorToolbar/list-number",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-number",
            "caption": "{{$:/language/Buttons/ListNumber/Caption}}",
            "description": "{{$:/language/Buttons/ListNumber/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-number))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-block": {
            "title": "$:/core/ui/EditorToolbar/mono-block",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-block",
            "caption": "{{$:/language/Buttons/MonoBlock/Caption}}",
            "description": "{{$:/language/Buttons/MonoBlock/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((mono-block))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n```\"\n\tsuffix=\"```\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-line": {
            "title": "$:/core/ui/EditorToolbar/mono-line",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-line",
            "caption": "{{$:/language/Buttons/MonoLine/Caption}}",
            "description": "{{$:/language/Buttons/MonoLine/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((mono-line))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/more-dropdown": {
            "title": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": "\\define config-title()\n$:/config/EditorToolbarButtons/Visibility/$(toolbarItem)$\n\\end\n\n\\define conditional-button()\n<$list filter={{$(toolbarItem)$!!condition}} variable=\"condition\">\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\" mode=\"inline\"/> <$transclude tiddler=<<toolbarItem>> field=\"description\"/>\n</$list>\n\\end\n\n<div class=\"tc-text-editor-toolbar-more\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]] -[[$:/core/ui/EditorToolbar/more]]\">\n<$reveal type=\"match\" state=<<config-visibility-title>> text=\"hide\" tag=\"div\">\n<<conditional-button>>\n</$reveal>\n</$list>\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/more": {
            "title": "$:/core/ui/EditorToolbar/more",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/down-arrow",
            "caption": "{{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "condition": "[<targetTiddler>]",
            "dropdown": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/opacity-dropdown": {
            "title": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Opacity/\n\n\\define toolbar-opacity-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(opacity)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Opacity\"\n\t$value=\"$(opacity)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(current-paint-colour)$; opacity: $(opacity)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(opacity)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/Opacity\" type=\"match\" text=\"\"\"$(opacity)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n\\define toolbar-opacity()\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/Opacities}} variable=\"opacity\">\n\n<<toolbar-opacity-inner>>\n\n</$list>\n\\end\n\n<$set name=\"current-paint-colour\" value={{$:/config/BitmapEditor/Colour}}>\n\n<$set name=\"current-opacity\" value={{$:/config/BitmapEditor/Opacity}}>\n\n<<toolbar-opacity>>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/opacity": {
            "title": "$:/core/ui/EditorToolbar/opacity",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/opacity",
            "caption": "{{$:/language/Buttons/Opacity/Caption}}",
            "description": "{{$:/language/Buttons/Opacity/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "dropdown": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/Opacity}}/>\n"
        },
        "$:/core/ui/EditorToolbar/paint-dropdown": {
            "title": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "''{{$:/language/Buttons/Paint/Hint}}''\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Colour\"\n\t$value=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/paint": {
            "title": "$:/core/ui/EditorToolbar/paint",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/paint",
            "caption": "{{$:/language/Buttons/Paint/Caption}}",
            "description": "{{$:/language/Buttons/Paint/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "dropdown": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "\\define toolbar-paint()\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(colour-picker-value)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\\end\n<$set name=\"colour-picker-value\" value={{$:/config/BitmapEditor/Colour}}>\n<<toolbar-paint>>\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/picture-dropdown": {
            "title": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": "\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n''{{$:/language/Buttons/Picture/Hint}}''\n\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext=<<replacement-text>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/picture": {
            "title": "$:/core/ui/EditorToolbar/picture",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/picture",
            "caption": "{{$:/language/Buttons/Picture/Caption}}",
            "description": "{{$:/language/Buttons/Picture/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((picture))",
            "dropdown": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/preview-type-dropdown": {
            "title": "$:/core/ui/EditorToolbar/preview-type-dropdown",
            "text": "\\define preview-type-button()\n<$button tag=\"a\">\n\n<$action-setfield $tiddler=\"$:/state/editpreviewtype\" $value=\"$(previewType)$\"/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<previewType>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<previewType>> field=\"title\" mode=\"inline\"/>\n\n</$transclude> \n\n<$reveal tag=\"span\" state=\"$:/state/editpreviewtype\" type=\"match\" text=<<previewType>> default=\"$:/core/ui/EditTemplate/body/preview/output\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]]\" variable=\"previewType\">\n\n<<preview-type-button>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/preview-type": {
            "title": "$:/core/ui/EditorToolbar/preview-type",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/chevron-down",
            "caption": "{{$:/language/Buttons/PreviewType/Caption}}",
            "description": "{{$:/language/Buttons/PreviewType/Hint}}",
            "condition": "[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]butfirst[]limit[1]]",
            "button-classes": "tc-text-editor-toolbar-item-adjunct",
            "dropdown": "$:/core/ui/EditorToolbar/preview-type-dropdown"
        },
        "$:/core/ui/EditorToolbar/preview": {
            "title": "$:/core/ui/EditorToolbar/preview",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/preview-open",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/Preview/Caption}}",
            "description": "{{$:/language/Buttons/Preview/Hint}}",
            "condition": "[<targetTiddler>]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((preview))",
            "text": "<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-open}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"no\"/>\n</$reveal>\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-closed}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"yes\"/>\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/quote": {
            "title": "$:/core/ui/EditorToolbar/quote",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/quote",
            "caption": "{{$:/language/Buttons/Quote/Caption}}",
            "description": "{{$:/language/Buttons/Quote/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((quote))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n<<<\"\n\tsuffix=\"<<<\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/rotate-left": {
            "title": "$:/core/ui/EditorToolbar/rotate-left",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/rotate-left",
            "caption": "{{$:/language/Buttons/RotateLeft/Caption}}",
            "description": "{{$:/language/Buttons/RotateLeft/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"rotate-left\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/size-dropdown": {
            "title": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Size/\n\n\\define toolbar-button-size-preset(config-title)\n<$set name=\"width\" filter=\"$(sizePair)$ +[first[]]\">\n\n<$set name=\"height\" filter=\"$(sizePair)$ +[last[]]\">\n\n<$button tag=\"a\">\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n\t$value=<<width>>\n/>\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n\t$value=<<height>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/presets-popup\"\"\"\n/>\n\n<$text text=<<width>>/> &times; <$text text=<<height>>/>\n\n</$button>\n\n</$set>\n\n</$set>\n\\end\n\n\\define toolbar-button-size(config-title)\n''{{$:/language/Buttons/Size/Hint}}''\n\n<<lingo Caption/Width>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-width\"\"\" default=<<tv-bitmap-editor-width>> focus=\"true\" size=\"8\"/> <<lingo Caption/Height>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-height\"\"\" default=<<tv-bitmap-editor-height>> size=\"8\"/> <$button popup=\"\"\"$config-title$/presets-popup\"\"\" class=\"tc-btn-invisible tc-popup-keep\" style=\"width: auto; display: inline-block; background-colour: inherit;\" selectedClass=\"tc-selected\">\n{{$:/core/images/down-arrow}}\n</$button>\n\n<$reveal tag=\"span\" state=\"\"\"$config-title$/presets-popup\"\"\" type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down tc-popup-keep\">\n\n<$list filter={{$:/config/BitmapEditor/ImageSizes}} variable=\"sizePair\">\n\n<$macrocall $name=\"toolbar-button-size-preset\" config-title=\"$config-title$\"/>\n\n</$list>\n\n</div>\n\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"resize\"\n\twidth={{$config-title$/new-width}}\n\theight={{$config-title$/new-height}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Resize>>\n</$button>\n\\end\n\n<$macrocall $name=\"toolbar-button-size\" config-title=<<qualify \"$:/state/Size/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/size": {
            "title": "$:/core/ui/EditorToolbar/size",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/size",
            "caption": "{{$:/language/Buttons/Size/Caption}}",
            "description": "{{$:/language/Buttons/Size/Hint}}",
            "condition": "[<targetTiddler>is[image]]",
            "dropdown": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/stamp-dropdown": {
            "title": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": "\\define toolbar-button-stamp-inner()\n<$button tag=\"a\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext={{$(snippetTitle)$}}\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$view tiddler=<<snippetTitle>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<snippetTitle>> field=\"title\" mode=\"inline\"/>\n\n</$view>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TextEditor/Snippet]!has[draft.of]sort[caption]]\" variable=\"snippetTitle\">\n\n<<toolbar-button-stamp-inner>>\n\n</$list>\n\n----\n\n<$button tag=\"a\">\n\n<$action-sendmessage\n\t$message=\"tm-new-tiddler\"\n\ttags=\"$:/tags/TextEditor/Snippet\"\n\tcaption={{$:/language/Buttons/Stamp/New/Title}}\n\ttext={{$:/language/Buttons/Stamp/New/Text}}\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<em>\n\n<$text text={{$:/language/Buttons/Stamp/Caption/New}}/>\n\n</em>\n\n</$button>\n"
        },
        "$:/core/ui/EditorToolbar/stamp": {
            "title": "$:/core/ui/EditorToolbar/stamp",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/stamp",
            "caption": "{{$:/language/Buttons/Stamp/Caption}}",
            "description": "{{$:/language/Buttons/Stamp/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] +[first[]]",
            "shortcuts": "((stamp))",
            "dropdown": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/strikethrough": {
            "title": "$:/core/ui/EditorToolbar/strikethrough",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/strikethrough",
            "caption": "{{$:/language/Buttons/Strikethrough/Caption}}",
            "description": "{{$:/language/Buttons/Strikethrough/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((strikethrough))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"~~\"\n\tsuffix=\"~~\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/subscript": {
            "title": "$:/core/ui/EditorToolbar/subscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/subscript",
            "caption": "{{$:/language/Buttons/Subscript/Caption}}",
            "description": "{{$:/language/Buttons/Subscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((subscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\",,\"\n\tsuffix=\",,\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/superscript": {
            "title": "$:/core/ui/EditorToolbar/superscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/superscript",
            "caption": "{{$:/language/Buttons/Superscript/Caption}}",
            "description": "{{$:/language/Buttons/Superscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((superscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"^^\"\n\tsuffix=\"^^\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/transcludify": {
            "title": "$:/core/ui/EditorToolbar/transcludify",
            "caption": "{{$:/language/Buttons/Transcludify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Transcludify/Hint}}",
            "icon": "$:/core/images/transcludify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((transcludify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"{{\"\n\tsuffix=\"}}\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/underline": {
            "title": "$:/core/ui/EditorToolbar/underline",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/underline",
            "caption": "{{$:/language/Buttons/Underline/Caption}}",
            "description": "{{$:/language/Buttons/Underline/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((underline))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"__\"\n\tsuffix=\"__\"\n/>\n"
        },
        "$:/core/Filters/AllTags": {
            "title": "$:/core/Filters/AllTags",
            "tags": "$:/tags/Filter",
            "filter": "[tags[]!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTags}}",
            "text": ""
        },
        "$:/core/Filters/AllTiddlers": {
            "title": "$:/core/Filters/AllTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/Drafts": {
            "title": "$:/core/Filters/Drafts",
            "tags": "$:/tags/Filter",
            "filter": "[has[draft.of]sort[title]]",
            "description": "{{$:/language/Filters/Drafts}}",
            "text": ""
        },
        "$:/core/Filters/Missing": {
            "title": "$:/core/Filters/Missing",
            "tags": "$:/tags/Filter",
            "filter": "[all[missing]sort[title]]",
            "description": "{{$:/language/Filters/Missing}}",
            "text": ""
        },
        "$:/core/Filters/Orphans": {
            "title": "$:/core/Filters/Orphans",
            "tags": "$:/tags/Filter",
            "filter": "[all[orphans]sort[title]]",
            "description": "{{$:/language/Filters/Orphans}}",
            "text": ""
        },
        "$:/core/Filters/OverriddenShadowTiddlers": {
            "title": "$:/core/Filters/OverriddenShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[shadow]]",
            "description": "{{$:/language/Filters/OverriddenShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentSystemTiddlers": {
            "title": "$:/core/Filters/RecentSystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentSystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentTiddlers": {
            "title": "$:/core/Filters/RecentTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/ShadowTiddlers": {
            "title": "$:/core/Filters/ShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows]sort[title]]",
            "description": "{{$:/language/Filters/ShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/StoryList": {
            "title": "$:/core/Filters/StoryList",
            "tags": "$:/tags/Filter",
            "filter": "[list[$:/StoryList]] -$:/AdvancedSearch",
            "description": "{{$:/language/Filters/StoryList}}",
            "text": ""
        },
        "$:/core/Filters/SystemTags": {
            "title": "$:/core/Filters/SystemTags",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows+tiddlers]tags[]is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTags}}",
            "text": ""
        },
        "$:/core/Filters/SystemTiddlers": {
            "title": "$:/core/Filters/SystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/TypedTiddlers": {
            "title": "$:/core/Filters/TypedTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[type]each[type]sort[type]] -[type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Filters/TypedTiddlers}}",
            "text": ""
        },
        "$:/core/ui/ImportListing": {
            "title": "$:/core/ui/ImportListing",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define messageField()\nmessage-$(payloadTiddler)$\n\\end\n\n\\define selectionField()\nselection-$(payloadTiddler)$\n\\end\n\n\\define previewPopupState()\n$(currentTiddler)$!!popup-$(payloadTiddler)$\n\\end\n\n\\define select-all-actions()\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<$action-setfield $field={{{ [<payloadTiddler>addprefix[selection-]] }}} $value={{$:/state/import/select-all}}/>\n</$list>\n\\end\n\n<table>\n<tbody>\n<tr>\n<th>\n<$checkbox tiddler=\"$:/state/import/select-all\" field=\"text\" checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" actions=<<select-all-actions>>>\n<<lingo Listing/Select/Caption>>\n</$checkbox>\n</th>\n<th>\n<<lingo Listing/Title/Caption>>\n</th>\n<th>\n<<lingo Listing/Status/Caption>>\n</th>\n</tr>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<tr>\n<td>\n<$checkbox field=<<selectionField>> checked=\"checked\" unchecked=\"unchecked\" default=\"checked\"/>\n</td>\n<td>\n<$reveal type=\"nomatch\" state=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<previewPopupState>> setTo=\"yes\">\n{{$:/core/images/right-arrow}}&nbsp;<$text text=<<payloadTiddler>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<previewPopupState>> setTo=\"no\">\n{{$:/core/images/down-arrow}}&nbsp;<$text text=<<payloadTiddler>>/>\n</$button>\n</$reveal>\n</td>\n<td>\n<$view field=<<messageField>>/>\n</td>\n</tr>\n<tr>\n<td colspan=\"3\">\n<$reveal type=\"match\" text=\"yes\" state=<<previewPopupState>> tag=\"div\">\n<$list filter=\"[{$:/state/importpreviewtype}has[text]]\" variable=\"listItem\" emptyMessage={{$:/core/ui/ImportPreviews/Text}}>\n<$transclude tiddler={{$:/state/importpreviewtype}}/>\n</$list>\n</$reveal>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ImportPreviews/Diff": {
            "title": "$:/core/ui/ImportPreviews/Diff",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Diff}}",
            "text": "<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>>/>\n"
        },
        "$:/core/ui/ImportPreviews/DiffFields": {
            "title": "$:/core/ui/ImportPreviews/DiffFields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/DiffFields}}",
            "text": "<$macrocall $name=\"compareTiddlers\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>> exclude=\"text\"/>\n"
        },
        "$:/core/ui/ImportPreviews/Fields": {
            "title": "$:/core/ui/ImportPreviews/Fields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Fields}}",
            "text": "<$tiddler tiddler=<<payloadTiddler>>>\n<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n</$tiddler>\n"
        },
        "$:/core/ui/ImportPreviews/Text": {
            "title": "$:/core/ui/ImportPreviews/Text",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Text}}",
            "text": "<$transclude tiddler=<<payloadTiddler>> mode=\"block\"/>\n"
        },
        "$:/core/ui/ImportPreviews/TextRaw": {
            "title": "$:/core/ui/ImportPreviews/TextRaw",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/TextRaw}}",
            "text": "<pre><code><$view tiddler=<<payloadTiddler>>/></code></pre>"
        },
        "$:/core/ui/ListItemTemplate": {
            "title": "$:/core/ui/ListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</div>"
        },
        "$:/Manager/ItemMain/Fields": {
            "title": "$:/Manager/ItemMain/Fields",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/Fields}}",
            "text": "<table>\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/Manager/ItemMain/RawText": {
            "title": "$:/Manager/ItemMain/RawText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/RawText}}",
            "text": "<pre><code><$view/></code></pre>\n"
        },
        "$:/Manager/ItemMain/WikifiedText": {
            "title": "$:/Manager/ItemMain/WikifiedText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/WikifiedText}}",
            "text": "<$transclude mode=\"block\"/>\n"
        },
        "$:/Manager/ItemSidebar/Colour": {
            "title": "$:/Manager/ItemSidebar/Colour",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Colour}}",
            "text": "\\define swatch-styles()\nheight: 1em;\nbackground-color: $(colour)$\n\\end\n\n<$vars colour={{!!color}}>\n<p style=<<swatch-styles>>/>\n</$vars>\n<p>\n<$edit-text field=\"color\" tag=\"input\" type=\"color\"/> / <$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Icon": {
            "title": "$:/Manager/ItemSidebar/Icon",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Icon}}",
            "text": "<p>\n<div class=\"tc-manager-icon-editor\">\n<$button popup=<<qualify \"$:/state/popup/image-picker\">> class=\"tc-btn-invisible\">\n<$transclude tiddler={{!!icon}}>\n{{$:/language/Manager/Item/Icon/None}}\n</$transclude>\n</$button>\n<div class=\"tc-block-dropdown-wrapper\" style=\"position: static;\">\n<$reveal state=<<qualify \"$:/state/popup/image-picker\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-popup\">\n<div class=\"tc-block-dropdown tc-popup-keep\" style=\"width: 80%; left: 10%; right: 10%; padding: 0.5em;\">\n<$macrocall $name=\"image-picker-include-tagged-images\" actions=\"\"\"\n<$action-setfield $field=\"icon\" $value=<<imageTitle>>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/image-picker\">>/>\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n</div>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tags": {
            "title": "$:/Manager/ItemSidebar/Tags",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tags}}",
            "text": "\\define tag-checkbox-actions()\n<$action-listops\n\t$tiddler=\"$:/config/Manager/RecentTags\"\n\t$subfilter=\"[<tag>] [list[$:/config/Manager/RecentTags]] +[limit[12]]\"\n/>\n\\end\n\n\\define tag-picker-actions()\n<<tag-checkbox-actions>>\n<$action-listops\n\t$tiddler=<<currentTiddler>>\n\t$field=\"tags\"\n\t$subfilter=\"[<tag>] [all[current]tags[]]\"\n/>\n\\end\n\n<p>\n<$list filter=\"[is[current]tags[]] [list[$:/config/Manager/RecentTags]] +[sort[title]] \" variable=\"tag\">\n<div>\n<$checkbox tiddler=<<currentTiddler>> tag=<<tag>> actions=<<tag-checkbox-actions>>>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$checkbox>\n</div>\n</$list>\n</p>\n<p>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tools": {
            "title": "$:/Manager/ItemSidebar/Tools",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tools}}",
            "text": "<p>\n<$button to=<<currentTiddler>>>{{$:/core/images/link}} open</$button>\n</p>\n<p>\n<$button message=\"tm-edit-tiddler\" param=<<currentTiddler>>>{{$:/core/images/edit-button}} edit</$button>\n</p>\n"
        },
        "$:/Manager": {
            "title": "$:/Manager",
            "icon": "$:/core/images/list",
            "color": "#bbb",
            "text": "\\define lingo-base() $:/language/Manager/\n\n\\define list-item-content-item()\n<div class=\"tc-manager-list-item-content-item\">\n\t<$vars state-title=\"\"\"$:/state/popup/manager/item/$(listItem)$\"\"\">\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"hide\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/down-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"nomatch\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"show\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/right-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\" class=\"tc-manager-list-item-content-item-body\">\n\t\t\t<$transclude tiddler=<<listItem>>/>\n\t\t</$reveal>\n\t</$vars>\n</div>\n\\end\n\n<div class=\"tc-manager-wrapper\">\n\t<div class=\"tc-manager-controls\">\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Show/Prompt>> <$select tiddler=\"$:/config/Manager/Show\" default=\"tiddlers\">\n\t\t\t\t<option value=\"tiddlers\"><<lingo Controls/Show/Option/Tiddlers>></option>\n\t\t\t\t<option value=\"tags\"><<lingo Controls/Show/Option/Tags>></option>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Search/Prompt>> <$edit-text tiddler=\"$:/config/Manager/Filter\" tag=\"input\" default=\"\" placeholder={{$:/language/Manager/Controls/Search/Placeholder}}/>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/FilterByTag/Prompt>> <$select tiddler=\"$:/config/Manager/Tag\" default=\"\">\n\t\t\t\t<option value=\"\"><<lingo Controls/FilterByTag/None>></option>\n\t\t\t\t<$list filter=\"[!is{$:/config/Manager/System}tags[]!is[system]sort[title]]\" variable=\"tag\">\n\t\t\t\t\t<option value=<<tag>>><$text text=<<tag>>/></option>\n\t\t\t\t</$list>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Sort/Prompt>> <$select tiddler=\"$:/config/Manager/Sort\" default=\"title\">\n\t\t\t\t<optgroup label=\"Common\">\n\t\t\t\t\t<$list filter=\"title modified modifier created creator created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t\t<optgroup label=\"All\">\n\t\t\t\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}fields[]sort[title]] -title -modified -modifier -created -creator -created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t</$select>\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/Order\" field=\"text\" checked=\"reverse\" unchecked=\"forward\" default=\"forward\">\n\t\t\t\t<<lingo Controls/Order/Prompt>>\n\t\t\t</$checkbox>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/System\" field=\"text\" checked=\"\" unchecked=\"system\" default=\"system\">\n\t\t\t\t{{$:/language/SystemTiddlers/Include/Prompt}}\n\t\t\t</$checkbox>\n\t\t</div>\n\t</div>\n\t<div class=\"tc-manager-list\">\n\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}search{$:/config/Manager/Filter}tag:strict{$:/config/Manager/Tag}sort{$:/config/Manager/Sort}order{$:/config/Manager/Order}]\">\n\t\t\t<$vars transclusion=<<currentTiddler>>>\n\t\t\t\t<div style=\"tc-manager-list-item\">\n\t\t\t\t\t<$button popup=<<qualify \"$:/state/manager/popup\">> class=\"tc-btn-invisible tc-manager-list-item-heading\" selectedClass=\"tc-manager-list-item-heading-selected\">\n\t\t\t\t\t\t<$text text=<<currentTiddler>>/>\n\t\t\t\t\t</$button>\n\t\t\t\t\t<$reveal state=<<qualify \"$:/state/manager/popup\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-manager-list-item-content tc-popup-handle\">\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-tiddler\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemMain]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-sidebar\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemSidebar]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</$reveal>\n\t\t\t\t</div>\n\t\t\t</$vars>\n\t\t</$list>\n\t</div>\n</div>\n"
        },
        "$:/core/ui/MissingTemplate": {
            "title": "$:/core/ui/MissingTemplate",
            "text": "<div class=\"tc-tiddler-missing\">\n<$button popup=<<qualify \"$:/state/popup/missing\">> class=\"tc-btn-invisible tc-missing-tiddler-label\">\n<$view field=\"title\" format=\"text\" />\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/missing\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n<hr>\n<$list filter=\"[all[current]backlinks[]sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n</div>\n"
        },
        "$:/core/ui/MoreSideBar/All": {
            "title": "$:/core/ui/MoreSideBar/All",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/All/Caption}}",
            "text": "<$list filter={{$:/core/Filters/AllTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Drafts": {
            "title": "$:/core/ui/MoreSideBar/Drafts",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Drafts/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Drafts!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Explorer": {
            "title": "$:/core/ui/MoreSideBar/Explorer",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Explorer/Caption}}",
            "text": "<<tree \"$:/\">>\n"
        },
        "$:/core/ui/MoreSideBar/Missing": {
            "title": "$:/core/ui/MoreSideBar/Missing",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Missing/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Missing!!filter}} template=\"$:/core/ui/MissingTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Orphans": {
            "title": "$:/core/ui/MoreSideBar/Orphans",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Orphans/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Orphans!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\n{{$:/language/ControlPanel/Plugins/Installed/Hint}}\n\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar/Plugins]!has[draft.of]]\" \"$:/core/ui/MoreSideBar/Plugins/Plugins\">>\n"
        },
        "$:/core/ui/MoreSideBar/Recent": {
            "title": "$:/core/ui/MoreSideBar/Recent",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Shadows": {
            "title": "$:/core/ui/MoreSideBar/Shadows",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Shadows/Caption}}",
            "text": "<$list filter={{$:/core/Filters/ShadowTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/System": {
            "title": "$:/core/ui/MoreSideBar/System",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/System/Caption}}",
            "text": "<$list filter={{$:/core/Filters/SystemTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Tags": {
            "title": "$:/core/ui/MoreSideBar/Tags",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Tags/Caption}}",
            "text": "<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n{{$:/core/ui/Buttons/tag-manager}}\n\n</$set>\n\n</$set>\n\n</$set>\n\n<$list filter={{$:/core/Filters/AllTags!!filter}}>\n\n<$transclude tiddler=\"$:/core/ui/TagTemplate\"/>\n\n</$list>\n\n<hr class=\"tc-untagged-separator\">\n\n{{$:/core/ui/UntaggedTemplate}}\n"
        },
        "$:/core/ui/MoreSideBar/Types": {
            "title": "$:/core/ui/MoreSideBar/Types",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Types/Caption}}",
            "text": "<$list filter={{$:/core/Filters/TypedTiddlers!!filter}}>\n<div class=\"tc-menu-list-item\">\n<$view field=\"type\"/>\n<$list filter=\"[type{!!type}!is[system]sort[title]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><$view field=\"title\"/></$link>\n</div>\n</$list>\n</div>\n</$list>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Languages": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Languages",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[language]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Plugins",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[plugin]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>>/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Theme": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Theme",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[theme]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/Buttons/advanced-search": {
            "title": "$:/core/ui/Buttons/advanced-search",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/advanced-search-button}} {{$:/language/Buttons/AdvancedSearch/Caption}}",
            "description": "{{$:/language/Buttons/AdvancedSearch/Hint}}",
            "text": "\\define control-panel-button(class)\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/advanced-search-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/AdvancedSearch/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/AdvancedSearch]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/close-all": {
            "title": "$:/core/ui/Buttons/close-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/close-all-button}} {{$:/language/Buttons/CloseAll/Caption}}",
            "description": "{{$:/language/Buttons/CloseAll/Hint}}",
            "text": "<$button message=\"tm-close-all-tiddlers\" tooltip={{$:/language/Buttons/CloseAll/Hint}} aria-label={{$:/language/Buttons/CloseAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/close-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/CloseAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/control-panel": {
            "title": "$:/core/ui/Buttons/control-panel",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/options-button}} {{$:/language/Buttons/ControlPanel/Caption}}",
            "description": "{{$:/language/Buttons/ControlPanel/Hint}}",
            "text": "\\define control-panel-button(class)\n<$button to=\"$:/ControlPanel\" tooltip={{$:/language/Buttons/ControlPanel/Hint}} aria-label={{$:/language/Buttons/ControlPanel/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/options-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/ControlPanel/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/ControlPanel]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/encryption": {
            "title": "$:/core/ui/Buttons/encryption",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/locked-padlock}} {{$:/language/Buttons/Encryption/Caption}}",
            "description": "{{$:/language/Buttons/Encryption/Hint}}",
            "text": "<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-clear-password\" tooltip={{$:/language/Buttons/Encryption/ClearPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/ClearPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/locked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-set-password\" tooltip={{$:/language/Buttons/Encryption/SetPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/SetPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/unlocked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>"
        },
        "$:/core/ui/Buttons/export-page": {
            "title": "$:/core/ui/Buttons/export-page",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportPage/Caption}}",
            "description": "{{$:/language/Buttons/ExportPage/Hint}}",
            "text": "<$macrocall $name=\"exportButton\" exportFilter=\"[!is[system]sort[title]]\" lingoBase=\"$:/language/Buttons/ExportPage/\"/>"
        },
        "$:/core/ui/Buttons/fold-all": {
            "title": "$:/core/ui/Buttons/fold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/fold-all-button}} {{$:/language/Buttons/FoldAll/Caption}}",
            "description": "{{$:/language/Buttons/FoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/FoldAll/Hint}} aria-label={{$:/language/Buttons/FoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/full-screen": {
            "title": "$:/core/ui/Buttons/full-screen",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/full-screen-button}} {{$:/language/Buttons/FullScreen/Caption}}",
            "description": "{{$:/language/Buttons/FullScreen/Hint}}",
            "text": "<$button message=\"tm-full-screen\" tooltip={{$:/language/Buttons/FullScreen/Hint}} aria-label={{$:/language/Buttons/FullScreen/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/full-screen-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FullScreen/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/home": {
            "title": "$:/core/ui/Buttons/home",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/home-button}} {{$:/language/Buttons/Home/Caption}}",
            "description": "{{$:/language/Buttons/Home/Hint}}",
            "text": "<$button message=\"tm-home\" tooltip={{$:/language/Buttons/Home/Hint}} aria-label={{$:/language/Buttons/Home/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/home-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Home/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/import": {
            "title": "$:/core/ui/Buttons/import",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/import-button}} {{$:/language/Buttons/Import/Caption}}",
            "description": "{{$:/language/Buttons/Import/Hint}}",
            "text": "<div class=\"tc-file-input-wrapper\">\n<$button tooltip={{$:/language/Buttons/Import/Hint}} aria-label={{$:/language/Buttons/Import/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/import-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Import/Caption}}/></span>\n</$list>\n</$button>\n<$browse tooltip={{$:/language/Buttons/Import/Hint}}/>\n</div>"
        },
        "$:/core/ui/Buttons/language": {
            "title": "$:/core/ui/Buttons/language",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/globe}} {{$:/language/Buttons/Language/Caption}}",
            "description": "{{$:/language/Buttons/Language/Hint}}",
            "text": "\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/language\">> tooltip={{$:/language/Buttons/Language/Hint}} aria-label={{$:/language/Buttons/Language/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value={{$:/language}}>\n<$image source=<<flag-title>>/>\n</$set>\n</span>\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Language/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/language\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/languageswitcher}}\n</div>\n</$reveal>"
        },
        "$:/core/ui/Buttons/manager": {
            "title": "$:/core/ui/Buttons/manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/list}} {{$:/language/Buttons/Manager/Caption}}",
            "description": "{{$:/language/Buttons/Manager/Hint}}",
            "text": "\\define manager-button(class)\n<$button to=\"$:/Manager\" tooltip={{$:/language/Buttons/Manager/Hint}} aria-label={{$:/language/Buttons/Manager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/list}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Manager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Manager]]\" emptyMessage=<<manager-button>>>\n<<manager-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/core/ui/Buttons/more-page-actions",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/More/Caption}}/></span>\n</$list>\n</$button><$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"below\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]] -[[$:/core/ui/Buttons/more-page-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-image": {
            "title": "$:/core/ui/Buttons/new-image",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-image-button}} {{$:/language/Buttons/NewImage/Caption}}",
            "description": "{{$:/language/Buttons/NewImage/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/NewImage/Hint}} aria-label={{$:/language/Buttons/NewImage/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=\"image/jpeg\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/new-image-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewImage/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/new-journal": {
            "title": "$:/core/ui/Buttons/new-journal",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournal/Caption}}",
            "description": "{{$:/language/Buttons/NewJournal/Hint}}",
            "text": "\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<now \"\"\"$(journalTitleTemplate)$ \"\"\">> tags=<<journalTags>> text=<<journalText>>/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>\n</$list>\n</$button>\n\\end\n<$set name=\"journalTitleTemplate\" value={{$:/config/NewJournal/Title}}>\n<$set name=\"journalTags\" value={{$:/config/NewJournal/Tags}}>\n<$set name=\"journalText\" value={{$:/config/NewJournal/Text}}>\n<<journalButton>>\n</$set></$set></$set>"
        },
        "$:/core/ui/Buttons/new-tiddler": {
            "title": "$:/core/ui/Buttons/new-tiddler",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-button}} {{$:/language/Buttons/NewTiddler/Caption}}",
            "description": "{{$:/language/Buttons/NewTiddler/Hint}}",
            "text": "<$button message=\"tm-new-tiddler\" tooltip={{$:/language/Buttons/NewTiddler/Hint}} aria-label={{$:/language/Buttons/NewTiddler/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/new-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/palette": {
            "title": "$:/core/ui/Buttons/palette",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/palette}} {{$:/language/Buttons/Palette/Caption}}",
            "description": "{{$:/language/Buttons/Palette/Hint}}",
            "text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/palette\">> tooltip={{$:/language/Buttons/Palette/Hint}} aria-label={{$:/language/Buttons/Palette/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/palette}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Palette/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/palette\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\" style=\"font-size:0.7em;\">\n{{$:/snippets/paletteswitcher}}\n</div>\n</$reveal>"
        },
        "$:/core/ui/Buttons/print": {
            "title": "$:/core/ui/Buttons/print",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/print-button}} {{$:/language/Buttons/Print/Caption}}",
            "description": "{{$:/language/Buttons/Print/Hint}}",
            "text": "<$button message=\"tm-print\" tooltip={{$:/language/Buttons/Print/Hint}} aria-label={{$:/language/Buttons/Print/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/print-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Print/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/refresh": {
            "title": "$:/core/ui/Buttons/refresh",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/refresh-button}} {{$:/language/Buttons/Refresh/Caption}}",
            "description": "{{$:/language/Buttons/Refresh/Hint}}",
            "text": "<$button message=\"tm-browser-refresh\" tooltip={{$:/language/Buttons/Refresh/Hint}} aria-label={{$:/language/Buttons/Refresh/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/refresh-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Refresh/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/save-wiki": {
            "title": "$:/core/ui/Buttons/save-wiki",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/save-button}} {{$:/language/Buttons/SaveWiki/Caption}}",
            "description": "{{$:/language/Buttons/SaveWiki/Hint}}",
            "text": "<$button message=\"tm-save-wiki\" param={{$:/config/SaveWikiButton/Template}} tooltip={{$:/language/Buttons/SaveWiki/Hint}} aria-label={{$:/language/Buttons/SaveWiki/Caption}} class=<<tv-config-toolbar-class>>>\n<span class=\"tc-dirty-indicator\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/save-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/SaveWiki/Caption}}/></span>\n</$list>\n</span>\n</$button>"
        },
        "$:/core/ui/Buttons/storyview": {
            "title": "$:/core/ui/Buttons/storyview",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/storyview-classic}} {{$:/language/Buttons/StoryView/Caption}}",
            "description": "{{$:/language/Buttons/StoryView/Hint}}",
            "text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/storyview\">> tooltip={{$:/language/Buttons/StoryView/Hint}} aria-label={{$:/language/Buttons/StoryView/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n<$set name=\"storyview\" value={{$:/view}}>\n<$transclude tiddler=<<icon>>/>\n</$set>\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/StoryView/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/storyview\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/viewswitcher}}\n</div>\n</$reveal>"
        },
        "$:/core/ui/Buttons/tag-manager": {
            "title": "$:/core/ui/Buttons/tag-manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/tag-button}} {{$:/language/Buttons/TagManager/Caption}}",
            "description": "{{$:/language/Buttons/TagManager/Hint}}",
            "text": "\\define control-panel-button(class)\n<$button to=\"$:/TagManager\" tooltip={{$:/language/Buttons/TagManager/Hint}} aria-label={{$:/language/Buttons/TagManager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/tag-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TagManager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/TagManager]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/theme": {
            "title": "$:/core/ui/Buttons/theme",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/theme-button}} {{$:/language/Buttons/Theme/Caption}}",
            "description": "{{$:/language/Buttons/Theme/Hint}}",
            "text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/theme\">> tooltip={{$:/language/Buttons/Theme/Hint}} aria-label={{$:/language/Buttons/Theme/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/theme-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Theme/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/theme\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$linkcatcher to=\"$:/theme\">\n{{$:/snippets/themeswitcher}}\n</$linkcatcher>\n</div>\n</$reveal>"
        },
        "$:/core/ui/Buttons/timestamp": {
            "title": "$:/core/ui/Buttons/timestamp",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/timestamp-on}} {{$:/language/Buttons/Timestamp/Caption}}",
            "description": "{{$:/language/Buttons/Timestamp/Hint}}",
            "text": "<$reveal type=\"nomatch\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/On/Hint}} aria-label={{$:/language/Buttons/Timestamp/On/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"yes\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/timestamp-on}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/On/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/Off/Hint}} aria-label={{$:/language/Buttons/Timestamp/Off/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"no\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/timestamp-off}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/Off/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>"
        },
        "$:/core/ui/Buttons/unfold-all": {
            "title": "$:/core/ui/Buttons/unfold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/unfold-all-button}} {{$:/language/Buttons/UnfoldAll/Caption}}",
            "description": "{{$:/language/Buttons/UnfoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/UnfoldAll/Hint}} aria-label={{$:/language/Buttons/UnfoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-unfold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/UnfoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/PageTemplate/pagecontrols": {
            "title": "$:/core/ui/PageTemplate/pagecontrols",
            "text": "\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-page-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n<$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n</$set>\n</$reveal>\n</$list>\n</div>\n\n"
        },
        "$:/core/ui/PageStylesheet": {
            "title": "$:/core/ui/PageStylesheet",
            "text": "<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\n</$set>\n\n</$set>\n\n</$importvariables>\n"
        },
        "$:/core/ui/PageTemplate/alerts": {
            "title": "$:/core/ui/PageTemplate/alerts",
            "tags": "$:/tags/PageTemplate",
            "text": "<div class=\"tc-alerts\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Alert]!has[draft.of]]\" template=\"$:/core/ui/AlertTemplate\" storyview=\"pop\"/>\n\n</div>\n"
        },
        "$:/core/ui/PageTemplate/pluginreloadwarning": {
            "title": "$:/core/ui/PageTemplate/pluginreloadwarning",
            "tags": "$:/tags/PageTemplate",
            "text": "\\define lingo-base() $:/language/\n\n<$list filter=\"[has[plugin-type]haschanged[]!plugin-type[import]limit[1]]\">\n\n<$reveal type=\"nomatch\" state=\"$:/temp/HidePluginWarning\" text=\"yes\">\n\n<div class=\"tc-plugin-reload-warning\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<<lingo PluginReloadWarning>> <$button set=\"$:/temp/HidePluginWarning\" setTo=\"yes\" class=\"tc-btn-invisible\">{{$:/core/images/close-button}}</$button>\n\n</$set>\n\n</div>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/PageTemplate/sidebar": {
            "title": "$:/core/ui/PageTemplate/sidebar",
            "tags": "$:/tags/PageTemplate",
            "text": "<$scrollable fallthrough=\"no\" class=\"tc-sidebar-scrollable\">\n\n<div class=\"tc-sidebar-header\">\n\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\" retain=\"yes\" animate=\"yes\">\n\n<h1 class=\"tc-site-title\">\n\n<$transclude tiddler=\"$:/SiteTitle\" mode=\"inline\"/>\n\n</h1>\n\n<div class=\"tc-site-subtitle\">\n\n<$transclude tiddler=\"$:/SiteSubtitle\" mode=\"inline\"/>\n\n</div>\n\n{{||$:/core/ui/PageTemplate/pagecontrols}}\n\n<$transclude tiddler=\"$:/core/ui/SideBarLists\" mode=\"inline\"/>\n\n</$reveal>\n\n</div>\n\n</$scrollable>"
        },
        "$:/core/ui/PageTemplate/story": {
            "title": "$:/core/ui/PageTemplate/story",
            "tags": "$:/tags/PageTemplate",
            "text": "<section class=\"tc-story-river\">\n\n<section class=\"story-backdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AboveStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n<$list filter=\"[list[$:/StoryList]]\" history=\"$:/HistoryList\" template=\"$:/core/ui/ViewTemplate\" editTemplate=\"$:/core/ui/EditTemplate\" storyview={{$:/view}} emptyMessage={{$:/config/EmptyStoryMessage}}/>\n\n<section class=\"story-frontdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/BelowStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n</section>\n"
        },
        "$:/core/ui/PageTemplate/topleftbar": {
            "title": "$:/core/ui/PageTemplate/topleftbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-left\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopLeftBar]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate/toprightbar": {
            "title": "$:/core/ui/PageTemplate/toprightbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-right\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopRightBar]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate": {
            "title": "$:/core/ui/PageTemplate",
            "text": "\\define containerClasses()\ntc-page-container tc-page-view-$(themeTitle)$ tc-language-$(languageTitle)$\n\\end\n\n<$importvariables filter=\"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\">\n\n<$set name=\"tv-config-toolbar-icons\" value={{$:/config/Toolbar/Icons}}>\n\n<$set name=\"tv-config-toolbar-text\" value={{$:/config/Toolbar/Text}}>\n\n<$set name=\"tv-config-toolbar-class\" value={{$:/config/Toolbar/ButtonClass}}>\n\n<$set name=\"themeTitle\" value={{$:/view}}>\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$set name=\"currentTiddler\" value=\"\">\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n\n<$dropzone>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n\n</$dropzone>\n\n</$navigator>\n\n</div>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$importvariables>\n"
        },
        "$:/core/ui/PluginInfo": {
            "title": "$:/core/ui/PluginInfo",
            "text": "\\define localised-info-tiddler-title()\n$(currentTiddler)$/$(languageTitle)$/$(currentTab)$\n\\end\n\\define info-tiddler-title()\n$(currentTiddler)$/$(currentTab)$\n\\end\n\\define default-tiddler-title()\n$:/core/ui/PluginInfo/Default/$(currentTab)$\n\\end\n<$transclude tiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<default-tiddler-title>> mode=\"block\">\n{{$:/language/ControlPanel/Plugin/NoInfoFound/Hint}}\n</$transclude>\n</$transclude>\n</$transclude>\n</$transclude>\n"
        },
        "$:/core/ui/PluginInfo/Default/contents": {
            "title": "$:/core/ui/PluginInfo/Default/contents",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n"
        },
        "$:/core/ui/PluginListItemTemplate": {
            "title": "$:/core/ui/PluginListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link to={{!!title}}>\n<$view field=\"description\">\n<$view field=\"title\"/>\n</$view>\n</$link>\n</div>"
        },
        "$:/core/ui/SearchResults": {
            "title": "$:/core/ui/SearchResults",
            "text": "<div class=\"tc-search-results\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\"\"\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}}/>\n\n</$list>\n\n</div>\n"
        },
        "$:/core/ui/SideBar/More": {
            "title": "$:/core/ui/SideBar/More",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/More/Caption}}",
            "text": "<div class=\"tc-more-sidebar\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\" default={{$:/config/DefaultMoreSidebarTab}} state=\"$:/state/tab/moresidebar\" class=\"tc-vertical\" />\n</div>"
        },
        "$:/core/ui/SideBar/Open": {
            "title": "$:/core/ui/SideBar/Open",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Open/Caption}}",
            "text": "\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=\"$:/StoryList\" $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n<$list filter=\"[list[$:/StoryList]]\" history=\"$:/HistoryList\" storyview=\"pop\">\n<div style=\"position: relative;\">\n<$droppable actions=<<drop-actions>>>\n<div class=\"tc-droppable-placeholder\">\n&nbsp;\n</div>\n<div>\n<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini\">&times;</$button> <$link to={{!!title}}><$view field=\"title\"/></$link>\n</div>\n</$droppable>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<drop-actions>>>\n<div class=\"tc-droppable-placeholder\">\n&nbsp;\n</div>\n<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\n</$droppable>\n</$tiddler>\n"
        },
        "$:/core/ui/SideBar/Recent": {
            "title": "$:/core/ui/SideBar/Recent",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/SideBar/Tools": {
            "title": "$:/core/ui/SideBar/Tools",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n\n<<lingo Basics/Version/Prompt>> <<version>>\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n\n<div style=\"position:relative;\" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</div>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/SideBarLists": {
            "title": "$:/core/ui/SideBarLists",
            "text": "<div class=\"tc-sidebar-lists\">\n\n<$set name=\"searchTiddler\" value=\"$:/temp/search\">\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/search\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-popup-handle\"/>\n<$reveal state=\"$:/temp/search\" type=\"nomatch\" text=\"\">\n<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" text={{$:/temp/search}}/>\n<$action-setfield $tiddler=\"$:/temp/search\" text=\"\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n{{$:/core/images/advanced-search-button}}\n</$button>\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/search\" text=\"\" />\n{{$:/core/images/close-button}}\n</$button>\n<$button popup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n<$list filter=\"[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]\" variable=\"listItem\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[!is[system]search{$(searchTiddler)$}]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\n</$list>\n</$button>\n</$reveal>\n<$reveal state=\"$:/temp/search\" type=\"match\" text=\"\">\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/advanced-search-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown-wrapper\" state=\"$:/temp/search\" type=\"nomatch\" text=\"\">\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown tc-search-drop-down tc-popup-handle\" state=<<qualify \"$:/state/popup/search-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n\n<$list filter=\"[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n{{$:/core/ui/SearchResults}}\n\n</$list>\n\n</$reveal>\n\n</$reveal>\n\n</$set>\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\" default={{$:/config/DefaultSidebarTab}} state=\"$:/state/tab/sidebar\" />\n\n</div>\n"
        },
        "$:/TagManager": {
            "title": "$:/TagManager",
            "icon": "$:/core/images/tag-button",
            "color": "#bbb",
            "caption": "{{$:/language/TagManager/Caption}}",
            "text": "\\define lingo-base() $:/language/TagManager/\n\\define iconEditorTab(type)\n<$list filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[sort[title]] +[$type$is[system]]\">\n<$link to={{!!title}}>\n<$transclude/> <$view field=\"title\"/>\n</$link>\n</$list>\n\\end\n\\define iconEditor(title)\n<div class=\"tc-drop-down-wrapper\">\n<$button popup=<<qualify \"$:/state/popup/icon/$title$\">> class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/icon/$title$\">> type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$linkcatcher to=\"$title$!!icon\">\n<<iconEditorTab type:\"!\">>\n<hr/>\n<<iconEditorTab type:\"\">>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>\n\\end\n\\define qualifyTitle(title)\n$title$$(currentTiddler)$\n\\end\n\\define toggleButton(state)\n<$reveal state=\"$state$\" type=\"match\" text=\"closed\" default=\"closed\">\n<$button set=\"$state$\" setTo=\"open\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n<$reveal state=\"$state$\" type=\"match\" text=\"open\" default=\"closed\">\n<$button set=\"$state$\" setTo=\"closed\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n\\end\n<table class=\"tc-tag-manager-table\">\n<tbody>\n<tr>\n<th><<lingo Colour/Heading>></th>\n<th class=\"tc-tag-manager-tag\"><<lingo Tag/Heading>></th>\n<th><<lingo Count/Heading>></th>\n<th><<lingo Icon/Heading>></th>\n<th><<lingo Info/Heading>></th>\n</tr>\n<$list filter=\"[tags[]!is[system]sort[title]]\">\n<tr>\n<td><$edit-text field=\"color\" tag=\"input\" type=\"color\"/></td>\n<td><$macrocall $name=\"tag\" tag=<<currentTiddler>>/></td>\n<td><$count filter=\"[all[current]tagging[]]\"/></td>\n<td>\n<$macrocall $name=\"iconEditor\" title={{!!title}}/>\n</td>\n<td>\n<$macrocall $name=\"toggleButton\" state=<<qualifyTitle \"$:/state/tag-manager/\">> /> \n</td>\n</tr>\n<tr>\n<td></td>\n<td colspan=\"4\">\n<$reveal state=<<qualifyTitle \"$:/state/tag-manager/\">> type=\"match\" text=\"open\" default=\"\">\n<table>\n<tbody>\n<tr><td><<lingo Colour/Heading>></td><td><$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/></td></tr>\n<tr><td><<lingo Icon/Heading>></td><td><$edit-text field=\"icon\" tag=\"input\" size=\"45\"/></td></tr>\n</tbody>\n</table>\n</$reveal>\n</td>\n</tr>\n</$list>\n<tr>\n<td></td>\n<td>\n{{$:/core/ui/UntaggedTemplate}}\n</td>\n<td>\n<small class=\"tc-menu-list-count\"><$count filter=\"[untagged[]!is[system]] -[tags[]]\"/></small>\n</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TagTemplate": {
            "title": "$:/core/ui/TagTemplate",
            "text": "<span class=\"tc-tag-list-item\">\n<$set name=\"transclusion\" value=<<currentTiddler>>>\n<$macrocall $name=\"tag-pill-body\" tag=<<currentTiddler>> icon={{!!icon}} colour={{!!color}} palette={{$:/palette}} element-tag=\"\"\"$button\"\"\" element-attributes=\"\"\"popup=<<qualify \"$:/state/popup/tag\">> dragFilter='[all[current]tagging[]]' tag='span'\"\"\"/>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n<$transclude tiddler=<<listItem>>/> \n</$list>\n<hr>\n<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n</$reveal>\n</$set>\n</span>\n"
        },
        "$:/core/ui/TiddlerFieldTemplate": {
            "title": "$:/core/ui/TiddlerFieldTemplate",
            "text": "<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<listItem>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<listItem>>/>\n</td>\n</tr>"
        },
        "$:/core/ui/TiddlerFields": {
            "title": "$:/core/ui/TiddlerFields",
            "text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/PluginInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/PluginInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<$list filter=\"[all[current]has[plugin-type]]\">\n\n! <<lingo Heading>>\n\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/ShadowInfo/\n<$set name=\"infoTiddler\" value=<<currentTiddler>>>\n\n''<<lingo Heading>>''\n\n<$list filter=\"[all[current]!is[shadow]]\">\n\n<<lingo NotShadow/Hint>>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]]\">\n\n<<lingo Shadow/Hint>>\n\n<$list filter=\"[all[current]shadowsource[]]\">\n\n<$set name=\"pluginTiddler\" value=<<currentTiddler>>>\n<<lingo Shadow/Source>>\n</$set>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\">\n\n<<lingo OverriddenShadow/Hint>>\n\n</$list>\n\n\n</$list>\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced": {
            "title": "$:/core/ui/TiddlerInfo/Advanced",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Advanced/Caption}}",
            "text": "<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo/Advanced]!has[draft.of]]\" variable=\"listItem\">\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Fields": {
            "title": "$:/core/ui/TiddlerInfo/Fields",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Fields/Caption}}",
            "text": "<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/List": {
            "title": "$:/core/ui/TiddlerInfo/List",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/List/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[list{!!title}]\" emptyMessage=<<lingo List/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Listed": {
            "title": "$:/core/ui/TiddlerInfo/Listed",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Listed/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]listed[]!is[system]]\" emptyMessage=<<lingo Listed/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/References": {
            "title": "$:/core/ui/TiddlerInfo/References",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/References/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]backlinks[]sort[title]]\" emptyMessage=<<lingo References/Empty>> template=\"$:/core/ui/ListItemTemplate\">\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Tagging": {
            "title": "$:/core/ui/TiddlerInfo/Tagging",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tagging/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]tagging[]]\" emptyMessage=<<lingo Tagging/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Tools": {
            "title": "$:/core/ui/TiddlerInfo/Tools",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\">\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo": {
            "title": "$:/core/ui/TiddlerInfo",
            "text": "<div style=\"position:relative;\">\n<div class=\"tc-tiddler-controls\" style=\"position:absolute;right:0;\">\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n</div>\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo]!has[draft.of]]\" default={{$:/config/TiddlerInfo/Default}}/>"
        },
        "$:/core/ui/TopBar/menu": {
            "title": "$:/core/ui/TopBar/menu",
            "tags": "$:/tags/TopRightBar",
            "text": "<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"no\">\n<$button set=\"$:/state/sidebar\" setTo=\"no\" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}}</$button>\n</$reveal>\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"no\">\n<$button set=\"$:/state/sidebar\" setTo=\"yes\" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class=\"tc-btn-invisible\">{{$:/core/images/chevron-left}}</$button>\n</$reveal>\n"
        },
        "$:/core/ui/UntaggedTemplate": {
            "title": "$:/core/ui/UntaggedTemplate",
            "text": "\\define lingo-base() $:/language/SideBar/\n<$button popup=<<qualify \"$:/state/popup/tag\">> class=\"tc-btn-invisible tc-untagged-label tc-tag-label\">\n<<lingo Tags/Untagged/Caption>>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[untagged[]!is[system]] -[tags[]] +[sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/body": {
            "title": "$:/core/ui/ViewTemplate/body",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" class=\"tc-tiddler-body\" type=\"nomatch\" state=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]!has[plugin-type]!field:hide-body[yes]]\">\n\n<$transclude>\n\n<$transclude tiddler=\"$:/language/MissingTiddler/Hint\"/>\n\n</$transclude>\n\n</$list>\n\n</$reveal>"
        },
        "$:/core/ui/ViewTemplate/classic": {
            "title": "$:/core/ui/ViewTemplate/classic",
            "tags": "$:/tags/ViewTemplate $:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/ClassicWarning/\n<$list filter=\"[all[current]type[text/x-tiddlywiki]]\">\n<div class=\"tc-message-box\">\n\n<<lingo Hint>>\n\n<$button set=\"!!type\" setTo=\"text/vnd.tiddlywiki\"><<lingo Upgrade/Caption>></$button>\n\n</div>\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/import": {
            "title": "$:/core/ui/ViewTemplate/import",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define buttons()\n<$button message=\"tm-delete-tiddler\" param=<<currentTiddler>>><<lingo Listing/Cancel/Caption>></$button>\n<$button message=\"tm-perform-import\" param=<<currentTiddler>>><<lingo Listing/Import/Caption>></$button>\n<<lingo Listing/Preview>> <$select tiddler=\"$:/state/importpreviewtype\" default=\"$:/core/ui/ImportPreviews/Text\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ImportPreview]!has[draft.of]]\">\n<option value=<<currentTiddler>>>{{!!caption}}</option>\n</$list>\n</$select>\n\\end\n\n<$list filter=\"[all[current]field:plugin-type[import]]\">\n\n<div class=\"tc-import\">\n\n<<lingo Listing/Hint>>\n\n<<buttons>>\n\n{{||$:/core/ui/ImportListing}}\n\n<<buttons>>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/plugin": {
            "title": "$:/core/ui/ViewTemplate/plugin",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$list filter=\"[all[current]has[plugin-type]] -[all[current]field:plugin-type[import]]\">\n<$set name=\"plugin-type\" value={{!!plugin-type}}>\n<$set name=\"default-popup-state\" value=\"yes\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n{{||$:/core/ui/Components/plugin-info}}\n</$set>\n</$set>\n</$set>\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/subtitle": {
            "title": "$:/core/ui/ViewTemplate/subtitle",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal type=\"nomatch\" state=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}}>\n<$view field=\"modifier\"/>\n</$link> <$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/tags": {
            "title": "$:/core/ui/ViewTemplate/tags",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal type=\"nomatch\" state=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-tags-wrapper\"><$list filter=\"[all[current]tags[]sort[title]]\" template=\"$:/core/ui/TagTemplate\" storyview=\"pop\"/></div>\n</$reveal>"
        },
        "$:/core/ui/ViewTemplate/title": {
            "title": "$:/core/ui/ViewTemplate/title",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\define title-styles()\nfill:$(foregroundColor)$;\n\\end\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<span class=\"tc-tiddler-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>\n</span>\n<$set name=\"tv-wikilinks\" value={{$:/config/Tiddlers/TitleLinks}}>\n<$link>\n<$set name=\"foregroundColor\" value={{!!color}}>\n<span class=\"tc-tiddler-title-icon\" style=<<title-styles>>>\n<$transclude tiddler={{!!icon}}/>\n</span>\n</$set>\n<$list filter=\"[all[current]removeprefix[$:/]]\">\n<h2 class=\"tc-title\" title={{$:/language/SystemTiddler/Tooltip}}>\n<span class=\"tc-system-title-prefix\">$:/</span><$text text=<<currentTiddler>>/>\n</h2>\n</$list>\n<$list filter=\"[all[current]!prefix[$:/]]\">\n<h2 class=\"tc-title\">\n<$view field=\"title\"/>\n</h2>\n</$list>\n</$link>\n</$set>\n</div>\n\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<tiddlerInfoState>> class=\"tc-tiddler-info tc-popup-handle\" animate=\"yes\" retain=\"yes\">\n\n<$transclude tiddler=\"$:/core/ui/TiddlerInfo\"/>\n\n</$reveal>\n</div>"
        },
        "$:/core/ui/ViewTemplate/unfold": {
            "title": "$:/core/ui/ViewTemplate/unfold",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" type=\"nomatch\" state=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar\" text=\"hide\">\n<$reveal tag=\"div\" type=\"nomatch\" state=<<folded-state>> text=\"hide\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=\"tc-fold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-up}}\n</$button>\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" state=<<folded-state>> text=\"show\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=\"tc-unfold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate": {
            "title": "$:/core/ui/ViewTemplate",
            "text": "\\define frame-classes()\ntc-tiddler-frame tc-tiddler-view-frame $(missingTiddlerClass)$ $(shadowTiddlerClass)$ $(systemTiddlerClass)$ $(tiddlerTagClasses)$ $(userClass)$\n\\end\n\\define folded-state()\n$:/state/folded/$(currentTiddler)$\n\\end\n<$vars storyTiddler=<<currentTiddler>> tiddlerInfoState=<<qualify \"$:/state/popup/tiddler-info\">> userClass={{!!class}}><$tiddler tiddler=<<currentTiddler>>><div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class=<<frame-classes>>><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewTemplate]!has[draft.of]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>>/></$list>\n</div>\n</$tiddler></$vars>\n"
        },
        "$:/core/ui/Buttons/clone": {
            "title": "$:/core/ui/Buttons/clone",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/clone-button}} {{$:/language/Buttons/Clone/Caption}}",
            "description": "{{$:/language/Buttons/Clone/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-new-tiddler\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/Clone/Hint}} aria-label={{$:/language/Buttons/Clone/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/clone-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Clone/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close-others": {
            "title": "$:/core/ui/Buttons/close-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-others-button}} {{$:/language/Buttons/CloseOthers/Caption}}",
            "description": "{{$:/language/Buttons/CloseOthers/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/CloseOthers/Hint}} aria-label={{$:/language/Buttons/CloseOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/close-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/CloseOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close": {
            "title": "$:/core/ui/Buttons/close",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-button}} {{$:/language/Buttons/Close/Caption}}",
            "description": "{{$:/language/Buttons/Close/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/close-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Close/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/edit": {
            "title": "$:/core/ui/Buttons/edit",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/edit-button}} {{$:/language/Buttons/Edit/Caption}}",
            "description": "{{$:/language/Buttons/Edit/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-edit-tiddler\" tooltip={{$:/language/Buttons/Edit/Hint}} aria-label={{$:/language/Buttons/Edit/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/edit-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Edit/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/core/ui/Buttons/export-tiddler",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportTiddler/Caption}}",
            "description": "{{$:/language/Buttons/ExportTiddler/Hint}}",
            "text": "\\define makeExportFilter()\n[[$(currentTiddler)$]]\n\\end\n<$macrocall $name=\"exportButton\" exportFilter=<<makeExportFilter>> lingoBase=\"$:/language/Buttons/ExportTiddler/\" baseFilename=<<currentTiddler>>/>"
        },
        "$:/core/ui/Buttons/fold-bar": {
            "title": "$:/core/ui/Buttons/fold-bar",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/chevron-up}} {{$:/language/Buttons/Fold/FoldBar/Caption}}",
            "description": "{{$:/language/Buttons/Fold/FoldBar/Hint}}",
            "text": "<!-- This dummy toolbar button is here to allow visibility of the fold-bar to be controlled as if it were a toolbar button -->"
        },
        "$:/core/ui/Buttons/fold-others": {
            "title": "$:/core/ui/Buttons/fold-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-others-button}} {{$:/language/Buttons/FoldOthers/Caption}}",
            "description": "{{$:/language/Buttons/FoldOthers/Hint}}",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/FoldOthers/Hint}} aria-label={{$:/language/Buttons/FoldOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-other-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/FoldOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/fold": {
            "title": "$:/core/ui/Buttons/fold",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-button}} {{$:/language/Buttons/Fold/Caption}}",
            "description": "{{$:/language/Buttons/Fold/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" state=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Fold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Unfold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>"
        },
        "$:/core/ui/Buttons/info": {
            "title": "$:/core/ui/Buttons/info",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/info-button}} {{$:/language/Buttons/Info/Caption}}",
            "description": "{{$:/language/Buttons/Info/Hint}}",
            "text": "\\whitespace trim\n\\define button-content()\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/info-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Info/Caption}}/>\n</span>\n</$list>\n\\end\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"popup\">\n<$button popup=<<tiddlerInfoState>> tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$reveal state=<<tiddlerInfoState>> type=\"match\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"yes\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=<<tiddlerInfoState>> type=\"nomatch\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n</$reveal>"
        },
        "$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/core/ui/Buttons/more-tiddler-actions",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/More/Caption}}/>\n</span>\n</$list>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]] -[[$:/core/ui/Buttons/more-tiddler-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-here": {
            "title": "$:/core/ui/Buttons/new-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-here-button}} {{$:/language/Buttons/NewHere/Caption}}",
            "description": "{{$:/language/Buttons/NewHere/Hint}}",
            "text": "\\whitespace trim\n\\define newHereButtonTags()\n[[$(currentTiddler)$]]\n\\end\n\\define newHereButton()\n<$button tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<newHereButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/new-here-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<<newHereButton>>"
        },
        "$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/core/ui/Buttons/new-journal-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournalHere/Caption}}",
            "description": "{{$:/language/Buttons/NewJournalHere/Hint}}",
            "text": "\\whitespace trim\n\\define journalButtonTags()\n[[$(currentTiddlerTag)$]] $(journalTags)$\n\\end\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}} aria-label={{$:/language/Buttons/NewJournalHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<now \"\"\"$(journalTitleTemplate)$ \"\"\">> tags=<<journalButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<$set name=\"journalTitleTemplate\" value={{$:/config/NewJournal/Title}}>\n<$set name=\"journalTags\" value={{$:/config/NewJournal/Tags}}>\n<$set name=\"currentTiddlerTag\" value=<<currentTiddler>>>\n<<journalButton>>\n</$set>\n</$set>\n</$set>"
        },
        "$:/core/ui/Buttons/open-window": {
            "title": "$:/core/ui/Buttons/open-window",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/open-window}} {{$:/language/Buttons/OpenWindow/Caption}}",
            "description": "{{$:/language/Buttons/OpenWindow/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-open-window\" tooltip={{$:/language/Buttons/OpenWindow/Hint}} aria-label={{$:/language/Buttons/OpenWindow/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/open-window}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/OpenWindow/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permalink": {
            "title": "$:/core/ui/Buttons/permalink",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/permalink-button}} {{$:/language/Buttons/Permalink/Caption}}",
            "description": "{{$:/language/Buttons/Permalink/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permalink\" tooltip={{$:/language/Buttons/Permalink/Hint}} aria-label={{$:/language/Buttons/Permalink/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/permalink-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permalink/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permaview": {
            "title": "$:/core/ui/Buttons/permaview",
            "tags": "$:/tags/ViewToolbar $:/tags/PageControls",
            "caption": "{{$:/core/images/permaview-button}} {{$:/language/Buttons/Permaview/Caption}}",
            "description": "{{$:/language/Buttons/Permaview/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permaview\" tooltip={{$:/language/Buttons/Permaview/Hint}} aria-label={{$:/language/Buttons/Permaview/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/permaview-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permaview/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/DefaultTiddlers": {
            "title": "$:/DefaultTiddlers",
            "text": "GettingStarted\n"
        },
        "$:/temp/advancedsearch": {
            "title": "$:/temp/advancedsearch",
            "text": ""
        },
        "$:/snippets/allfields": {
            "title": "$:/snippets/allfields",
            "text": "\\define renderfield(title)\n<tr class=\"tc-view-field\"><td class=\"tc-view-field-name\">''$title$'':</td><td class=\"tc-view-field-value\">//{{$:/language/Docs/Fields/$title$}}//</td></tr>\n\\end\n<table class=\"tc-view-field-table\"><tbody><$list filter=\"[fields[]sort[title]]\" variable=\"listItem\"><$macrocall $name=\"renderfield\" title=<<listItem>>/></$list>\n</tbody></table>\n"
        },
        "$:/config/AnimationDuration": {
            "title": "$:/config/AnimationDuration",
            "text": "400"
        },
        "$:/config/AutoSave": {
            "title": "$:/config/AutoSave",
            "text": "yes"
        },
        "$:/config/BitmapEditor/Colour": {
            "title": "$:/config/BitmapEditor/Colour",
            "text": "#444"
        },
        "$:/config/BitmapEditor/ImageSizes": {
            "title": "$:/config/BitmapEditor/ImageSizes",
            "text": "[[62px 100px]] [[100px 62px]] [[124px 200px]] [[200px 124px]] [[248px 400px]] [[371px 600px]] [[400px 248px]] [[556px 900px]] [[600px 371px]] [[742px 1200px]] [[900px 556px]] [[1200px 742px]]"
        },
        "$:/config/BitmapEditor/LineWidth": {
            "title": "$:/config/BitmapEditor/LineWidth",
            "text": "3px"
        },
        "$:/config/BitmapEditor/LineWidths": {
            "title": "$:/config/BitmapEditor/LineWidths",
            "text": "0.25px 0.5px 1px 2px 3px 4px 6px 8px 10px 16px 20px 28px 40px 56px 80px"
        },
        "$:/config/BitmapEditor/Opacities": {
            "title": "$:/config/BitmapEditor/Opacities",
            "text": "0.01 0.025 0.05 0.075 0.1 0.15 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0"
        },
        "$:/config/BitmapEditor/Opacity": {
            "title": "$:/config/BitmapEditor/Opacity",
            "text": "1.0"
        },
        "$:/config/DefaultMoreSidebarTab": {
            "title": "$:/config/DefaultMoreSidebarTab",
            "text": "$:/core/ui/MoreSideBar/Tags"
        },
        "$:/config/DefaultSidebarTab": {
            "title": "$:/config/DefaultSidebarTab",
            "text": "$:/core/ui/SideBar/Open"
        },
        "$:/config/DownloadSaver/AutoSave": {
            "title": "$:/config/DownloadSaver/AutoSave",
            "text": "no"
        },
        "$:/config/Drafts/TypingTimeout": {
            "title": "$:/config/Drafts/TypingTimeout",
            "text": "400"
        },
        "$:/config/EditTemplateFields/Visibility/title": {
            "title": "$:/config/EditTemplateFields/Visibility/title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/tags": {
            "title": "$:/config/EditTemplateFields/Visibility/tags",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/text": {
            "title": "$:/config/EditTemplateFields/Visibility/text",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/creator": {
            "title": "$:/config/EditTemplateFields/Visibility/creator",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/created": {
            "title": "$:/config/EditTemplateFields/Visibility/created",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modified": {
            "title": "$:/config/EditTemplateFields/Visibility/modified",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modifier": {
            "title": "$:/config/EditTemplateFields/Visibility/modifier",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/type": {
            "title": "$:/config/EditTemplateFields/Visibility/type",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.title": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.of": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.of",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/revision": {
            "title": "$:/config/EditTemplateFields/Visibility/revision",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/bag": {
            "title": "$:/config/EditTemplateFields/Visibility/bag",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6",
            "text": "hide"
        },
        "$:/config/EditorTypeMappings/image/gif": {
            "title": "$:/config/EditorTypeMappings/image/gif",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpeg": {
            "title": "$:/config/EditorTypeMappings/image/jpeg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpg": {
            "title": "$:/config/EditorTypeMappings/image/jpg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/png": {
            "title": "$:/config/EditorTypeMappings/image/png",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/x-icon": {
            "title": "$:/config/EditorTypeMappings/image/x-icon",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/text/vnd.tiddlywiki": {
            "title": "$:/config/EditorTypeMappings/text/vnd.tiddlywiki",
            "text": "text"
        },
        "$:/config/Manager/Show": {
            "title": "$:/config/Manager/Show",
            "text": "tiddlers"
        },
        "$:/config/Manager/Filter": {
            "title": "$:/config/Manager/Filter",
            "text": ""
        },
        "$:/config/Manager/Order": {
            "title": "$:/config/Manager/Order",
            "text": "forward"
        },
        "$:/config/Manager/Sort": {
            "title": "$:/config/Manager/Sort",
            "text": "title"
        },
        "$:/config/Manager/System": {
            "title": "$:/config/Manager/System",
            "text": "system"
        },
        "$:/config/Manager/Tag": {
            "title": "$:/config/Manager/Tag",
            "text": ""
        },
        "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText": {
            "title": "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText",
            "text": "hide"
        },
        "$:/config/MissingLinks": {
            "title": "$:/config/MissingLinks",
            "text": "yes"
        },
        "$:/config/Navigation/UpdateAddressBar": {
            "title": "$:/config/Navigation/UpdateAddressBar",
            "text": "no"
        },
        "$:/config/Navigation/UpdateHistory": {
            "title": "$:/config/Navigation/UpdateHistory",
            "text": "no"
        },
        "$:/config/OfficialPluginLibrary": {
            "title": "$:/config/OfficialPluginLibrary",
            "tags": "$:/tags/PluginLibrary",
            "url": "https://tiddlywiki.com/library/v5.1.15/index.html",
            "caption": "{{$:/language/OfficialPluginLibrary}}",
            "text": "{{$:/language/OfficialPluginLibrary/Hint}}\n"
        },
        "$:/config/Navigation/openLinkFromInsideRiver": {
            "title": "$:/config/Navigation/openLinkFromInsideRiver",
            "text": "below"
        },
        "$:/config/Navigation/openLinkFromOutsideRiver": {
            "title": "$:/config/Navigation/openLinkFromOutsideRiver",
            "text": "top"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all",
            "text": "hide"
        },
        "$:/config/Performance/Instrumentation": {
            "title": "$:/config/Performance/Instrumentation",
            "text": "no"
        },
        "$:/config/SaveWikiButton/Template": {
            "title": "$:/config/SaveWikiButton/Template",
            "text": "$:/core/save/all"
        },
        "$:/config/SaverFilter": {
            "title": "$:/config/SaverFilter",
            "text": "[all[]] -[[$:/HistoryList]] -[[$:/StoryList]] -[[$:/Import]] -[[$:/isEncrypted]] -[[$:/UploadName]] -[prefix[$:/state/]] -[prefix[$:/temp/]]"
        },
        "$:/config/Search/AutoFocus": {
            "title": "$:/config/Search/AutoFocus",
            "text": "true"
        },
        "$:/config/Search/MinLength": {
            "title": "$:/config/Search/MinLength",
            "text": "3"
        },
        "$:/config/SearchResults/Default": {
            "title": "$:/config/SearchResults/Default",
            "text": "$:/core/ui/DefaultSearchResultList"
        },
        "$:/config/ShortcutInfo/bold": {
            "title": "$:/config/ShortcutInfo/bold",
            "text": "{{$:/language/Buttons/Bold/Hint}}"
        },
        "$:/config/ShortcutInfo/cancel-edit-tiddler": {
            "title": "$:/config/ShortcutInfo/cancel-edit-tiddler",
            "text": "{{$:/language/Buttons/Cancel/Hint}}"
        },
        "$:/config/ShortcutInfo/excise": {
            "title": "$:/config/ShortcutInfo/excise",
            "text": "{{$:/language/Buttons/Excise/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-1": {
            "title": "$:/config/ShortcutInfo/heading-1",
            "text": "{{$:/language/Buttons/Heading1/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-2": {
            "title": "$:/config/ShortcutInfo/heading-2",
            "text": "{{$:/language/Buttons/Heading2/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-3": {
            "title": "$:/config/ShortcutInfo/heading-3",
            "text": "{{$:/language/Buttons/Heading3/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-4": {
            "title": "$:/config/ShortcutInfo/heading-4",
            "text": "{{$:/language/Buttons/Heading4/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-5": {
            "title": "$:/config/ShortcutInfo/heading-5",
            "text": "{{$:/language/Buttons/Heading5/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-6": {
            "title": "$:/config/ShortcutInfo/heading-6",
            "text": "{{$:/language/Buttons/Heading6/Hint}}"
        },
        "$:/config/ShortcutInfo/italic": {
            "title": "$:/config/ShortcutInfo/italic",
            "text": "{{$:/language/Buttons/Italic/Hint}}"
        },
        "$:/config/ShortcutInfo/link": {
            "title": "$:/config/ShortcutInfo/link",
            "text": "{{$:/language/Buttons/Link/Hint}}"
        },
        "$:/config/ShortcutInfo/list-bullet": {
            "title": "$:/config/ShortcutInfo/list-bullet",
            "text": "{{$:/language/Buttons/ListBullet/Hint}}"
        },
        "$:/config/ShortcutInfo/list-number": {
            "title": "$:/config/ShortcutInfo/list-number",
            "text": "{{$:/language/Buttons/ListNumber/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-block": {
            "title": "$:/config/ShortcutInfo/mono-block",
            "text": "{{$:/language/Buttons/MonoBlock/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-line": {
            "title": "$:/config/ShortcutInfo/mono-line",
            "text": "{{$:/language/Buttons/MonoLine/Hint}}"
        },
        "$:/config/ShortcutInfo/picture": {
            "title": "$:/config/ShortcutInfo/picture",
            "text": "{{$:/language/Buttons/Picture/Hint}}"
        },
        "$:/config/ShortcutInfo/preview": {
            "title": "$:/config/ShortcutInfo/preview",
            "text": "{{$:/language/Buttons/Preview/Hint}}"
        },
        "$:/config/ShortcutInfo/quote": {
            "title": "$:/config/ShortcutInfo/quote",
            "text": "{{$:/language/Buttons/Quote/Hint}}"
        },
        "$:/config/ShortcutInfo/save-tiddler": {
            "title": "$:/config/ShortcutInfo/save-tiddler",
            "text": "{{$:/language/Buttons/Save/Hint}}"
        },
        "$:/config/ShortcutInfo/stamp": {
            "title": "$:/config/ShortcutInfo/stamp",
            "text": "{{$:/language/Buttons/Stamp/Hint}}"
        },
        "$:/config/ShortcutInfo/strikethrough": {
            "title": "$:/config/ShortcutInfo/strikethrough",
            "text": "{{$:/language/Buttons/Strikethrough/Hint}}"
        },
        "$:/config/ShortcutInfo/subscript": {
            "title": "$:/config/ShortcutInfo/subscript",
            "text": "{{$:/language/Buttons/Subscript/Hint}}"
        },
        "$:/config/ShortcutInfo/superscript": {
            "title": "$:/config/ShortcutInfo/superscript",
            "text": "{{$:/language/Buttons/Superscript/Hint}}"
        },
        "$:/config/ShortcutInfo/underline": {
            "title": "$:/config/ShortcutInfo/underline",
            "text": "{{$:/language/Buttons/Underline/Hint}}"
        },
        "$:/config/SyncFilter": {
            "title": "$:/config/SyncFilter",
            "text": "[is[tiddler]] -[[$:/HistoryList]] -[[$:/Import]] -[[$:/isEncrypted]] -[prefix[$:/status/]] -[prefix[$:/state/]] -[prefix[$:/temp/]]"
        },
        "$:/config/Tags/MinLength": {
            "title": "$:/config/Tags/MinLength",
            "text": "0"
        },
        "$:/config/TextEditor/EditorHeight/Height": {
            "title": "$:/config/TextEditor/EditorHeight/Height",
            "text": "400px"
        },
        "$:/config/TextEditor/EditorHeight/Mode": {
            "title": "$:/config/TextEditor/EditorHeight/Mode",
            "text": "auto"
        },
        "$:/config/TiddlerInfo/Default": {
            "title": "$:/config/TiddlerInfo/Default",
            "text": "$:/core/ui/TiddlerInfo/Fields"
        },
        "$:/config/TiddlerInfo/Mode": {
            "title": "$:/config/TiddlerInfo/Mode",
            "text": "popup"
        },
        "$:/config/Tiddlers/TitleLinks": {
            "title": "$:/config/Tiddlers/TitleLinks",
            "text": "no"
        },
        "$:/config/Toolbar/ButtonClass": {
            "title": "$:/config/Toolbar/ButtonClass",
            "text": "tc-btn-invisible"
        },
        "$:/config/Toolbar/Icons": {
            "title": "$:/config/Toolbar/Icons",
            "text": "yes"
        },
        "$:/config/Toolbar/Text": {
            "title": "$:/config/Toolbar/Text",
            "text": "no"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions",
            "text": "show"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others",
            "text": "hide"
        },
        "$:/config/shortcuts-mac/bold": {
            "title": "$:/config/shortcuts-mac/bold",
            "text": "meta-B"
        },
        "$:/config/shortcuts-mac/italic": {
            "title": "$:/config/shortcuts-mac/italic",
            "text": "meta-I"
        },
        "$:/config/shortcuts-mac/underline": {
            "title": "$:/config/shortcuts-mac/underline",
            "text": "meta-U"
        },
        "$:/config/shortcuts-not-mac/bold": {
            "title": "$:/config/shortcuts-not-mac/bold",
            "text": "ctrl-B"
        },
        "$:/config/shortcuts-not-mac/italic": {
            "title": "$:/config/shortcuts-not-mac/italic",
            "text": "ctrl-I"
        },
        "$:/config/shortcuts-not-mac/underline": {
            "title": "$:/config/shortcuts-not-mac/underline",
            "text": "ctrl-U"
        },
        "$:/config/shortcuts/cancel-edit-tiddler": {
            "title": "$:/config/shortcuts/cancel-edit-tiddler",
            "text": "escape"
        },
        "$:/config/shortcuts/excise": {
            "title": "$:/config/shortcuts/excise",
            "text": "ctrl-E"
        },
        "$:/config/shortcuts/heading-1": {
            "title": "$:/config/shortcuts/heading-1",
            "text": "ctrl-1"
        },
        "$:/config/shortcuts/heading-2": {
            "title": "$:/config/shortcuts/heading-2",
            "text": "ctrl-2"
        },
        "$:/config/shortcuts/heading-3": {
            "title": "$:/config/shortcuts/heading-3",
            "text": "ctrl-3"
        },
        "$:/config/shortcuts/heading-4": {
            "title": "$:/config/shortcuts/heading-4",
            "text": "ctrl-4"
        },
        "$:/config/shortcuts/heading-5": {
            "title": "$:/config/shortcuts/heading-5",
            "text": "ctrl-5"
        },
        "$:/config/shortcuts/heading-6": {
            "title": "$:/config/shortcuts/heading-6",
            "text": "ctrl-6"
        },
        "$:/config/shortcuts/link": {
            "title": "$:/config/shortcuts/link",
            "text": "ctrl-L"
        },
        "$:/config/shortcuts/linkify": {
            "title": "$:/config/shortcuts/linkify",
            "text": "alt-shift-L"
        },
        "$:/config/shortcuts/list-bullet": {
            "title": "$:/config/shortcuts/list-bullet",
            "text": "ctrl-shift-L"
        },
        "$:/config/shortcuts/list-number": {
            "title": "$:/config/shortcuts/list-number",
            "text": "ctrl-shift-N"
        },
        "$:/config/shortcuts/mono-block": {
            "title": "$:/config/shortcuts/mono-block",
            "text": "ctrl-shift-M"
        },
        "$:/config/shortcuts/mono-line": {
            "title": "$:/config/shortcuts/mono-line",
            "text": "ctrl-M"
        },
        "$:/config/shortcuts/picture": {
            "title": "$:/config/shortcuts/picture",
            "text": "ctrl-shift-I"
        },
        "$:/config/shortcuts/preview": {
            "title": "$:/config/shortcuts/preview",
            "text": "alt-P"
        },
        "$:/config/shortcuts/quote": {
            "title": "$:/config/shortcuts/quote",
            "text": "ctrl-Q"
        },
        "$:/config/shortcuts/save-tiddler": {
            "title": "$:/config/shortcuts/save-tiddler",
            "text": "ctrl+enter"
        },
        "$:/config/shortcuts/stamp": {
            "title": "$:/config/shortcuts/stamp",
            "text": "ctrl-S"
        },
        "$:/config/shortcuts/strikethrough": {
            "title": "$:/config/shortcuts/strikethrough",
            "text": "ctrl-T"
        },
        "$:/config/shortcuts/subscript": {
            "title": "$:/config/shortcuts/subscript",
            "text": "ctrl-shift-B"
        },
        "$:/config/shortcuts/superscript": {
            "title": "$:/config/shortcuts/superscript",
            "text": "ctrl-shift-P"
        },
        "$:/config/shortcuts/transcludify": {
            "title": "$:/config/shortcuts/transcludify",
            "text": "alt-shift-T"
        },
        "$:/config/WikiParserRules/Inline/wikilink": {
            "title": "$:/config/WikiParserRules/Inline/wikilink",
            "text": "enable"
        },
        "$:/snippets/currpalettepreview": {
            "title": "$:/snippets/currpalettepreview",
            "text": "\\define swatchStyle()\nbackground-color: $(swatchColour)$;\n\\end\n\\define swatch()\n<$set name=\"swatchColour\" value={{##$(colour)$}}\n><div class=\"tc-swatch\" style=<<swatchStyle>> title=<<colour>>/></$set>\n\\end\n<div class=\"tc-swatches-horiz\"><$list filter=\"\nforeground\nbackground\nmuted-foreground\nprimary\npage-background\ntab-background\ntiddler-info-background\n\" variable=\"colour\"><<swatch>></$list></div>"
        },
        "$:/snippets/download-wiki-button": {
            "title": "$:/snippets/download-wiki-button",
            "text": "\\define lingo-base() $:/language/ControlPanel/Tools/Download/\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-download-file\" $param=\"$:/core/save/all\" filename=\"index.html\"/>\n<<lingo Full/Caption>> {{$:/core/images/save-button}}\n</$button>"
        },
        "$:/language": {
            "title": "$:/language",
            "text": "$:/languages/en-GB"
        },
        "$:/snippets/languageswitcher": {
            "title": "$:/snippets/languageswitcher",
            "text": "\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n\n<$linkcatcher to=\"$:/language\">\n<div class=\"tc-chooser tc-language-chooser\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[description]]\">\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/language}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link>\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value=<<currentTiddler>>>\n<$transclude subtiddler=<<flag-title>>>\n<$list filter=\"[all[current]field:title[$:/languages/en-GB]]\">\n<$transclude tiddler=\"$:/languages/en-GB/icon\"/>\n</$list>\n</$transclude>\n</$set>\n</span>\n<$view field=\"description\">\n<$view field=\"name\">\n<$view field=\"title\"/>\n</$view>\n</$view>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/macros/CSS": {
            "title": "$:/core/macros/CSS",
            "tags": "$:/tags/Macro",
            "text": "\\define colour(name)\n<$transclude tiddler={{$:/palette}} index=\"$name$\"><$transclude tiddler=\"$:/palettes/Vanilla\" index=\"$name$\"/></$transclude>\n\\end\n\n\\define color(name)\n<<colour $name$>>\n\\end\n\n\\define box-shadow(shadow)\n``\n  -webkit-box-shadow: $shadow$;\n     -moz-box-shadow: $shadow$;\n          box-shadow: $shadow$;\n``\n\\end\n\n\\define filter(filter)\n``\n  -webkit-filter: $filter$;\n     -moz-filter: $filter$;\n          filter: $filter$;\n``\n\\end\n\n\\define transition(transition)\n``\n  -webkit-transition: $transition$;\n     -moz-transition: $transition$;\n          transition: $transition$;\n``\n\\end\n\n\\define transform-origin(origin)\n``\n  -webkit-transform-origin: $origin$;\n     -moz-transform-origin: $origin$;\n          transform-origin: $origin$;\n``\n\\end\n\n\\define background-linear-gradient(gradient)\n``\nbackground-image: linear-gradient($gradient$);\nbackground-image: -o-linear-gradient($gradient$);\nbackground-image: -moz-linear-gradient($gradient$);\nbackground-image: -webkit-linear-gradient($gradient$);\nbackground-image: -ms-linear-gradient($gradient$);\n``\n\\end\n\n\\define column-count(columns)\n``\n-moz-column-count: $columns$;\n-webkit-column-count: $columns$;\ncolumn-count: $columns$;\n``\n\\end\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/>\n\\end\n\n\\define if-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-no-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-background-attachment(text)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" type=\"nomatch\" text=\"\">$text$</$reveal>\n\\end\n"
        },
        "$:/core/macros/colour-picker": {
            "title": "$:/core/macros/colour-picker",
            "tags": "$:/tags/Macro",
            "text": "\\define colour-picker-update-recent()\n<$action-listops\n\t$tiddler=\"$:/config/ColourPicker/Recent\"\n\t$subfilter=\"$(colour-picker-value)$ [list[$:/config/ColourPicker/Recent]remove[$(colour-picker-value)$]] +[limit[8]]\"\n/>\n\\end\n\n\\define colour-picker-inner(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(colour-picker-value)$\"\"\">\n\n$(colour-picker-update-recent)$\n\n$actions$\n\n<div style=\"background-color: $(colour-picker-value)$; width: 100%; height: 100%; border-radius: 50%;\"/>\n\n</$button>\n\\end\n\n\\define colour-picker-recent-inner(actions)\n<$set name=\"colour-picker-value\" value=\"$(recentColour)$\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\\end\n\n\\define colour-picker-recent(actions)\n{{$:/language/ColourPicker/Recent}} <$list filter=\"[list[$:/config/ColourPicker/Recent]]\" variable=\"recentColour\">\n<$macrocall $name=\"colour-picker-recent-inner\" actions=\"\"\"$actions$\"\"\"/></$list>\n\\end\n\n\\define colour-picker(actions)\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker-recent\" actions=\"\"\"$actions$\"\"\"/>\n\n---\n\n<$list filter=\"LightPink Pink Crimson LavenderBlush PaleVioletRed HotPink DeepPink MediumVioletRed Orchid Thistle Plum Violet Magenta Fuchsia DarkMagenta Purple MediumOrchid DarkViolet DarkOrchid Indigo BlueViolet MediumPurple MediumSlateBlue SlateBlue DarkSlateBlue Lavender GhostWhite Blue MediumBlue MidnightBlue DarkBlue Navy RoyalBlue CornflowerBlue LightSteelBlue LightSlateGrey SlateGrey DodgerBlue AliceBlue SteelBlue LightSkyBlue SkyBlue DeepSkyBlue LightBlue PowderBlue CadetBlue Azure LightCyan PaleTurquoise Cyan Aqua DarkTurquoise DarkSlateGrey DarkCyan Teal MediumTurquoise LightSeaGreen Turquoise Aquamarine MediumAquamarine MediumSpringGreen MintCream SpringGreen MediumSeaGreen SeaGreen Honeydew LightGreen PaleGreen DarkSeaGreen LimeGreen Lime ForestGreen Green DarkGreen Chartreuse LawnGreen GreenYellow DarkOliveGreen YellowGreen OliveDrab Beige LightGoldenrodYellow Ivory LightYellow Yellow Olive DarkKhaki LemonChiffon PaleGoldenrod Khaki Gold Cornsilk Goldenrod DarkGoldenrod FloralWhite OldLace Wheat Moccasin Orange PapayaWhip BlanchedAlmond NavajoWhite AntiqueWhite Tan BurlyWood Bisque DarkOrange Linen Peru PeachPuff SandyBrown Chocolate SaddleBrown Seashell Sienna LightSalmon Coral OrangeRed DarkSalmon Tomato MistyRose Salmon Snow LightCoral RosyBrown IndianRed Red Brown FireBrick DarkRed Maroon White WhiteSmoke Gainsboro LightGrey Silver DarkGrey Grey DimGrey Black\" variable=\"colour-picker-value\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\n---\n\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" tag=\"input\" default=\"\" placeholder=\"\"/> \n<$edit-text tiddler=\"$:/config/ColourPicker/New\" type=\"color\" tag=\"input\"/>\n<$set name=\"colour-picker-value\" value={{$:/config/ColourPicker/New}}>\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\n</div>\n\n\\end\n"
        },
        "$:/core/macros/copy-to-clipboard": {
            "title": "$:/core/macros/copy-to-clipboard",
            "tags": "$:/tags/Macro",
            "text": "\\define copy-to-clipboard(src,class:\"tc-btn-invisible\",style)\n<$button class=<<__class__>> style=<<__style__>> message=\"tm-copy-to-clipboard\" param=<<__src__>> tooltip={{$:/language/Buttons/CopyToClipboard/Hint}}>\n{{$:/core/images/copy-clipboard}} <$text text={{$:/language/Buttons/CopyToClipboard/Caption}}/>\n</$button>\n\\end\n\n\\define copy-to-clipboard-above-right(src,class:\"tc-btn-invisible\",style)\n<div style=\"position: relative;\">\n<div style=\"position: absolute; bottom: 0; right: 0;\">\n<$macrocall $name=\"copy-to-clipboard\" src=<<__src__>> class=<<__class__>> style=<<__style__>>/>\n</div>\n</div>\n\\end\n\n"
        },
        "$:/core/macros/diff": {
            "title": "$:/core/macros/diff",
            "tags": "$:/tags/Macro",
            "text": "\\define compareTiddlerText(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle)\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>>>\n<$diff-text source=<<source>> dest=<<dest>>/>\n</$set>\n</$set>\n\\end\n\n\\define compareTiddlers(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle,exclude)\n<table class=\"tc-diff-tiddlers\">\n<tbody>\n<$set name=\"sourceFields\" filter=\"[<__sourceTiddlerTitle__>fields[]sort[]]\">\n<$set name=\"destFields\" filter=\"[<__destSubTiddlerTitle__>subtiddlerfields<__destTiddlerTitle__>sort[]]\">\n<$list filter=\"[enlist<sourceFields>] [enlist<destFields>] -[enlist<__exclude__>] +[sort[]]\" variable=\"fieldName\">\n<tr>\n<th>\n<$text text=<<fieldName>>/> \n</th>\n<td>\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>> field=<<fieldName>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>> field=<<fieldName>>>\n<$diff-text source=<<source>> dest=<<dest>>>\n</$diff-text>\n</$set>\n</$set>\n</td>\n</tr>\n</$list>\n</$set>\n</$set>\n</tbody>\n</table>\n\\end\n"
        },
        "$:/core/macros/export": {
            "title": "$:/core/macros/export",
            "tags": "$:/tags/Macro",
            "text": "\\define exportButtonFilename(baseFilename)\n$baseFilename$$(extension)$\n\\end\n\n\\define exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=\"\"\"$exportFilter$\"\"\" filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n</$button>\n</$set>\n</$list>\n</div>\n</$reveal>\n\\end\n"
        },
        "$:/core/macros/image-picker": {
            "title": "$:/core/macros/image-picker",
            "created": "20170715180840889",
            "modified": "20170715180914005",
            "tags": "$:/tags/Macro",
            "type": "text/vnd.tiddlywiki",
            "text": "\\define image-picker-thumbnail(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(imageTitle)$\"\"\">\n$actions$\n<$transclude tiddler=<<imageTitle>>/>\n</$button>\n\\end\n\n\\define image-picker-list(filter,actions)\n<$list filter=\"\"\"$filter$\"\"\" variable=\"imageTitle\">\n<$macrocall $name=\"image-picker-thumbnail\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\\end\n\n\\define image-picker(actions,filter:\"[all[shadows+tiddlers]is[image]] -[type[application/pdf]] +[!has[draft.of]$subfilter$sort[title]]\",subfilter:\"\")\n<div class=\"tc-image-chooser\">\n<$vars state-system=<<qualify \"$:/state/image-picker/system\">>>\n<$checkbox tiddler=<<state-system>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"hide\">\n{{$:/language/SystemTiddlers/Include/Prompt}}\n</$checkbox>\n<$reveal state=<<state-system>> type=\"match\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$ +[!is[system]]\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n<$reveal state=<<state-system>> type=\"nomatch\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n</$vars>\n</div>\n\\end\n\n\\define image-picker-include-tagged-images(actions)\n<$macrocall $name=\"image-picker\" filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[!has[draft.of]sort[title]]\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n"
        },
        "$:/core/macros/lingo": {
            "title": "$:/core/macros/lingo",
            "tags": "$:/tags/Macro",
            "text": "\\define lingo-base()\n$:/language/\n\\end\n\n\\define lingo(title)\n{{$(lingo-base)$$title$}}\n\\end\n"
        },
        "$:/core/macros/list": {
            "title": "$:/core/macros/list",
            "tags": "$:/tags/Macro",
            "text": "\\define list-links(filter,type:\"ul\",subtype:\"li\",class:\"\",emptyMessage)\n<$type$ class=\"$class$\">\n<$list filter=\"$filter$\" emptyMessage=<<__emptyMessage__>>>\n<$subtype$>\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$subtype$>\n</$list>\n</$type$>\n\\end\n\n\\define list-links-draggable-drop-actions()\n<$action-listops $tiddler=<<targetTiddler>> $field=<<targetField>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define list-links-draggable(tiddler,field:\"list\",type:\"ul\",subtype:\"li\",class:\"\",itemTemplate)\n<$vars targetTiddler=\"\"\"$tiddler$\"\"\" targetField=\"\"\"$field$\"\"\">\n<$type$ class=\"$class$\">\n<$list filter=\"[list[$tiddler$!!$field$]]\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"\"\"$subtype$\"\"\">\n<div class=\"tc-droppable-placeholder\">\n&nbsp;\n</div>\n<div>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$transclude>\n</div>\n</$droppable>\n</$list>\n</$type$>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"div\">\n<div class=\"tc-droppable-placeholder\">\n&nbsp;\n</div>\n<div style=\"height:0.5em;\"/>\n</$droppable>\n</$tiddler>\n</$vars>\n\\end\n\n\\define list-tagged-draggable-drop-actions()\n<!-- Save the current ordering of the tiddlers with this tag -->\n<$set name=\"order\" filter=\"[<tag>tagging[]]\">\n<!-- Remove any list-after or list-before fields from the tiddlers with this tag -->\n<$list filter=\"[<tag>tagging[]]\">\n<$action-deletefield $field=\"list-before\"/>\n<$action-deletefield $field=\"list-after\"/>\n</$list>\n<!-- Assign the list field of the tag with the current ordering -->\n<$action-setfield $tiddler=<<tag>> $field=\"list\" $value=<<order>>/>\n<!-- Add the newly inserted item to the list -->\n<$action-listops $tiddler=<<tag>> $field=\"list\" $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n<!-- Make sure the newly added item has the right tag -->\n<$action-listops $tiddler=<<actionTiddler>> $tags=\"[<tag>]\"/>\n</$set>\n\\end\n\n\\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:\"div\")\n<$set name=\"tag\" value=\"\"\"$tag$\"\"\">\n<$list filter=\"[<tag>tagging[]$subFilter$]\" emptyMessage=<<__emptyMessage__>>>\n<$elementTag$ class=\"tc-menu-list-item\">\n<$droppable actions=<<list-tagged-draggable-drop-actions>>>\n<$elementTag$ class=\"tc-droppable-placeholder\">\n&nbsp;\n</$elementTag$>\n<$elementTag$>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</$transclude>\n</$elementTag$>\n</$droppable>\n</$elementTag$>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<list-tagged-draggable-drop-actions>>>\n<$elementTag$ class=\"tc-droppable-placeholder\">\n&nbsp;\n</$elementTag$>\n<$elementTag$ style=\"height:0.5em;\">\n</$elementTag$>\n</$droppable>\n</$tiddler>\n</$set>\n\\end\n"
        },
        "$:/core/macros/tabs": {
            "title": "$:/core/macros/tabs",
            "tags": "$:/tags/Macro",
            "text": "\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain)\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<qualify \"$state$\">> setTo=<<currentTab>> default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}>\n<$tiddler tiddler=<<save-currentTiddler>>>\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\">\n<$transclude tiddler=<<currentTab>> field=\"caption\">\n<$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/>\n</$transclude>\n</$transclude>\n</$set></$tiddler></$button></$tiddler></$set></$list>\n</div>\n<div class=\"tc-tab-divider $class$\"/>\n<div class=\"tc-tab-content $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\">\n\n<$reveal type=\"match\" state=<<qualify \"$state$\">> text=<<currentTab>> default=\"$default$\" retain=\"\"\"$retain$\"\"\">\n\n<$transclude tiddler=\"$template$\" mode=\"block\">\n\n<$transclude tiddler=<<currentTab>> mode=\"block\"/>\n\n</$transclude>\n\n</$reveal>\n\n</$list>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/tag-picker": {
            "title": "$:/core/macros/tag-picker",
            "tags": "$:/tags/Macro",
            "text": "\\define add-tag-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{$:/temp/NewTagName}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n\\end\n\n\\define add-tag-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{$:/temp/NewTagName}}/>\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n\\end\n\n\\define tag-button()\n<$button class=\"tc-btn-invisible\" tag=\"a\">\n$(actions)$\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$button>\n\\end\n\n\\define tag-picker(actions)\n<$set name=\"actions\" value=\"\"\"$actions$\"\"\">\n<div class=\"tc-edit-add-tag\">\n<span class=\"tc-add-tag-name\">\n<$keyboard key=\"ENTER\" actions=<<add-tag-actions>>>\n<$edit-text tiddler=\"$:/temp/NewTagName\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}} focusPopup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-edit-texteditor tc-popup-handle\"/>\n</$keyboard>\n</span> <$button popup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Tags/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Tags/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button> <span class=\"tc-add-tag-button\">\n<$set name=\"tag\" value={{$:/temp/NewTagName}}>\n<$button set=\"$:/temp/NewTagName\" setTo=\"\" class=\"\">\n$actions$\n<$action-deletetiddler $tiddler=\"$:/temp/NewTagName\"/>\n{{$:/language/EditTemplate/Tags/Add/Button}}\n</$button>\n</$set>\n</span>\n</div>\n<div class=\"tc-block-dropdown-wrapper\">\n<$reveal state=<<qualify \"$:/state/popup/tags-auto-complete\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown\">\n<$list filter=\"[{$:/temp/NewTagName}minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=\"[tags[]!is[system]search:title{$:/temp/NewTagName}sort[]]\" variable=\"tag\">\n<<tag-button>>\n</$list></$list>\n<hr>\n<$list filter=\"[{$:/temp/NewTagName}minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=\"[tags[]is[system]search:title{$:/temp/NewTagName}sort[]]\" variable=\"tag\">\n<<tag-button>>\n</$list></$list>\n</div>\n</$reveal>\n</div>\n</$set>\n\\end\n"
        },
        "$:/core/macros/tag": {
            "title": "$:/core/macros/tag",
            "tags": "$:/tags/Macro",
            "text": "\\define tag-pill-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-pill-inner(tag,icon,colour,fallbackTarget,colourA,colourB,element-tag,element-attributes,actions)\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<$element-tag$ $element-attributes$ class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n$actions$<$transclude tiddler=\"\"\"$icon$\"\"\"/> <$view tiddler=\"\"\"$tag$\"\"\" field=\"title\" format=\"text\" />\n</$element-tag$>\n</$vars>\n\\end\n\n\\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)\n<$macrocall $name=\"tag-pill-inner\" tag=\"\"\"$tag$\"\"\" icon=\"\"\"$icon$\"\"\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n\n\\define tag-pill(tag,element-tag:\"span\",element-attributes:\"\",actions:\"\")\n<span class=\"tc-tag-list-item\">\n<$macrocall $name=\"tag-pill-body\" tag=\"\"\"$tag$\"\"\" icon={{$tag$!!icon}} colour={{$tag$!!color}} palette={{$:/palette}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</span>\n\\end\n\n\\define tag(tag)\n{{$tag$||$:/core/ui/TagTemplate}}\n\\end\n"
        },
        "$:/core/macros/thumbnails": {
            "title": "$:/core/macros/thumbnails",
            "tags": "$:/tags/Macro",
            "text": "\\define thumbnail(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<$link to=\"\"\"$link$\"\"\"><div class=\"tc-thumbnail-wrapper\">\n<div class=\"tc-thumbnail-image\" style=\"width:$width$px;height:$height$px;\"><$reveal type=\"nomatch\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" style=\"width:$width$px;height:$height$px;\">\n[img[$image$]]\n</$reveal><$reveal type=\"match\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" class=\"tc-thumbnail-background\" style=\"width:$width$px;height:$height$px;background-color:$background-color$;\"></$reveal></div><div class=\"tc-thumbnail-icon\" style=\"fill:$color$;color:$color$;\">\n$icon$\n</div><div class=\"tc-thumbnail-caption\">\n$caption$\n</div>\n</div></$link>\n\\end\n\n\\define thumbnail-right(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<div class=\"tc-thumbnail-right-wrapper\"><<thumbnail \"\"\"$link$\"\"\" \"\"\"$icon$\"\"\" \"\"\"$color$\"\"\" \"\"\"$background-color$\"\"\" \"\"\"$image$\"\"\" \"\"\"$caption$\"\"\" \"\"\"$width$\"\"\" \"\"\"$height$\"\"\">></div>\n\\end\n\n\\define list-thumbnails(filter,width:\"280\",height:\"157\")\n<$list filter=\"\"\"$filter$\"\"\"><$macrocall $name=\"thumbnail\" link={{!!link}} icon={{!!icon}} color={{!!color}} background-color={{!!background-color}} image={{!!image}} caption={{!!caption}} width=\"\"\"$width$\"\"\" height=\"\"\"$height$\"\"\"/></$list>\n\\end\n"
        },
        "$:/core/macros/timeline": {
            "title": "$:/core/macros/timeline",
            "created": "20141212105914482",
            "modified": "20141212110330815",
            "tags": "$:/tags/Macro",
            "text": "\\define timeline-title()\n<!-- Override this macro with a global macro \n     of the same name if you need to change \n     how titles are displayed on the timeline \n     -->\n<$view field=\"title\"/>\n\\end\n\\define timeline(limit:\"100\",format:\"DDth MMM YYYY\",subfilter:\"\",dateField:\"modified\")\n<div class=\"tc-timeline\">\n<$list filter=\"[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]\">\n<div class=\"tc-menu-list-item\">\n<$view field=\"$dateField$\" format=\"date\" template=\"$format$\"/>\n<$list filter=\"[sameday:$dateField${!!$dateField$}!is[system]$subfilter$!sort[$dateField$]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}>\n<<timeline-title>>\n</$link>\n</div>\n</$list>\n</div>\n</$list>\n</div>\n\\end\n"
        },
        "$:/core/macros/toc": {
            "title": "$:/core/macros/toc",
            "tags": "$:/tags/Macro",
            "text": "\\define toc-caption()\n<$set name=\"tv-wikilinks\" value=\"no\">\n  <$transclude field=\"caption\">\n    <$view field=\"title\"/>\n  </$transclude>\n</$set>\n\\end\n\n\\define toc-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<ol class=\"tc-toc\">\n  <$list filter=\"\"\"[all[shadows+tiddlers]tag[$tag$]!has[draft.of]$sort$] -[[$tag$]] $exclude$\"\"\">\n    <$vars item=<<currentTiddler>> path=\"\"\"$path$/$tag$\"\"\" excluded=\"\"\"$exclude$ -[[$tag$]]\"\"\">\n      <$set name=\"toc-item-class\" filter=\"\"\"$itemClassFilter$\"\"\" emptyValue=\"toc-item\" value=\"toc-item-selected\">\n        <li class=<<toc-item-class>>>\n          <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=\"<$link><$view field='caption'><$view field='title'/></$view></$link>\">\n            <<toc-caption>>\n          </$list>\n          <$macrocall $name=\"toc-body\" tag=<<item>> sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=<<excluded>> path=<<path>>/>\n        </li>\n      </$set>\n    </$vars>\n  </$list>\n</ol>\n\\end\n\n\\define toc(tag,sort:\"\",itemClassFilter:\" \")\n<<toc-body tag:\"\"\"$tag$\"\"\" sort:\"\"\"$sort$\"\"\" itemClassFilter:\"\"\"$itemClassFilter$\"\"\">>\n\\end\n\n\\define toc-linked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$set name=\"toc-state\" value=<<qualify \"\"\"$:/state/toc$path$-$(currentTiddler)$\"\"\">>>\n  <$set name=\"toc-item-class\" filter=\"\"\"$itemClassFilter$\"\"\" emptyValue=\"toc-item\" value=\"toc-item-selected\">\n    <li class=<<toc-item-class>>>\n    <$link>\n      <$reveal type=\"nomatch\" state=<<toc-state>> text=\"open\">\n        <$button set=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n        <$button set=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n        </$button>\n      </$reveal>\n      <<toc-caption>>\n    </$link>\n    <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n      <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=\"\"\"$exclude$\"\"\" path=\"\"\"$path$\"\"\"/>\n    </$reveal>\n    </li>\n  </$set>\n</$set>\n\\end\n\n\\define toc-unlinked-expandable-body(tag,sort:\"\",itemClassFilter:\" \",exclude,path)\n<!-- helper function -->\n<$set name=\"toc-state\" value=<<qualify \"\"\"$:/state/toc$path$-$(currentTiddler)$\"\"\">>>\n  <$set name=\"toc-item-class\" filter=\"\"\"$itemClassFilter$\"\"\" emptyValue=\"toc-item\" value=\"toc-item-selected\">\n    <li class=<<toc-item-class>>>\n      <$reveal type=\"nomatch\" state=<<toc-state>> text=\"open\">\n        <$button set=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n        <$button set=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=\"\"\"$exclude$\"\"\" path=\"\"\"$path$\"\"\"/>\n      </$reveal>\n    </li>\n  </$set>\n</$set>\n\\end\n\n\\define toc-expandable-empty-message()\n<<toc-linked-expandable-body tag:\"\"\"$(tag)$\"\"\" sort:\"\"\"$(sort)$\"\"\" itemClassFilter:\"\"\"$(itemClassFilter)$\"\"\" exclude:\"\"\"$(excluded)$\"\"\" path:\"\"\"$(path)$\"\"\">>\n\\end\n\n\\define toc-expandable(tag,sort:\"\",itemClassFilter:\" \",exclude,path)\n<$vars tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" excluded=\"\"\"$exclude$ -[[$tag$]]\"\"\" path=\"\"\"$path$/$tag$\"\"\">\n  <ol class=\"tc-toc toc-expandable\">\n    <$list filter=\"\"\"[all[shadows+tiddlers]tag[$tag$]!has[draft.of]$sort$] -[[$tag$]] $exclude$\"\"\">\n      <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=<<toc-expandable-empty-message>> >\n        <$macrocall $name=\"toc-unlinked-expandable-body\" tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"itemClassFilter\"\"\" exclude=<<excluded>> path=<<path>> />\n      </$list>\n    </$list>\n  </ol>\n</$vars>\n\\end\n\n\\define toc-linked-selective-expandable-body(tag,sort:\"\",itemClassFilter:\" \",exclude,path)\n<$set name=\"toc-state\" value=<<qualify \"\"\"$:/state/toc$path$-$(currentTiddler)$\"\"\">>>\n  <$set name=\"toc-item-class\" filter=\"\"\"$itemClassFilter$\"\"\" emptyValue=\"toc-item\" value=\"toc-item-selected\" >\n    <li class=<<toc-item-class>>>\n      <$link>\n          <$list filter=\"[all[current]tagging[]limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>\">\n          <$reveal type=\"nomatch\" state=<<toc-state>> text=\"open\">\n            <$button set=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/right-arrow}}\n            </$button>\n          </$reveal>\n          <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n            <$button set=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/down-arrow}}\n            </$button>\n          </$reveal>\n        </$list>\n        <<toc-caption>>\n      </$link>\n      <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=\"\"\"$exclude$\"\"\" path=\"\"\"$path$\"\"\"/>\n      </$reveal>\n    </li>\n  </$set>\n</$set>\n\\end\n\n\\define toc-unlinked-selective-expandable-body(tag,sort:\"\",itemClassFilter:\" \",exclude,path)\n<$set name=\"toc-state\" value=<<qualify \"\"\"$:/state/toc$path$-$(currentTiddler)$\"\"\">>>\n  <$set name=\"toc-item-class\" filter=\"\"\"$itemClassFilter$\"\"\" emptyValue=\"toc-item\" value=\"toc-item-selected\">\n    <li class=<<toc-item-class>>>\n      <$list filter=\"[all[current]tagging[]limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button> <$view field='caption'><$view field='title'/></$view>\">\n        <$reveal type=\"nomatch\" state=<<toc-state>> text=\"open\">\n          <$button set=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/right-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n        <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n          <$button set=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/down-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n      </$list>\n      <$reveal type=\"match\" state=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"\"\"toc-selective-expandable\"\"\" tag=<<currentTiddler>> sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=\"\"\"$exclude$\"\"\" path=\"\"\"$path$\"\"\"/>\n      </$reveal>\n    </li>\n  </$set>\n</$set>\n\\end\n\n\\define toc-selective-expandable-empty-message()\n<<toc-linked-selective-expandable-body tag:\"\"\"$(tag)$\"\"\" sort:\"\"\"$(sort)$\"\"\" itemClassFilter:\"\"\"$(itemClassFilter)$\"\"\" exclude:\"\"\"$(excluded)$\"\"\" path:\"\"\"$(path)$\"\"\">>\n\\end\n\n\\define toc-selective-expandable(tag,sort:\"\",itemClassFilter,exclude,path)\n<$vars tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" excluded=\"\"\"$exclude$ -[[$tag$]]\"\"\" path=\"\"\"$path$/$tag$\"\"\">\n  <ol class=\"tc-toc toc-selective-expandable\">\n    <$list filter=\"\"\"[all[shadows+tiddlers]tag[$tag$]!has[draft.of]$sort$] -[[$tag$]] $exclude$\"\"\">\n      <$list filter=\"[all[current]toc-link[no]]\" variable=\"ignore\" emptyMessage=<<toc-selective-expandable-empty-message>> >\n        <$macrocall $name=toc-unlinked-selective-expandable-body tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" itemClassFilter=\"\"\"$itemClassFilter$\"\"\" exclude=<<excluded>> path=<<path>> >\n      </$list>\n    </$list>\n  </ol>\n</$vars>\n\\end\n\n\\define toc-tabbed-selected-item-filter(selectedTiddler)\n[all[current]field:title{$selectedTiddler$}]\n\\end\n\n\\define toc-tabbed-external-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$tiddler tiddler={{$selectedTiddler$}}>\n  <div class=\"tc-tabbed-table-of-contents\">\n    <$linkcatcher to=\"$selectedTiddler$\">\n      <div class=\"tc-table-of-contents\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" itemClassFilter=<<toc-tabbed-selected-item-filter selectedTiddler:\"\"\"$selectedTiddler$\"\"\">>/>\n      </div>\n    </$linkcatcher>\n    <div class=\"tc-tabbed-table-of-contents-content\">\n      <$reveal state=\"\"\"$selectedTiddler$\"\"\" type=\"nomatch\" text=\"\">\n        <$transclude mode=\"block\" tiddler=\"$template$\">\n          <h1><<toc-caption>></h1>\n          <$transclude mode=\"block\">$missingText$</$transclude>\n        </$transclude>\n      </$reveal>\n      <$reveal state=\"\"\"$selectedTiddler$\"\"\" type=\"match\" text=\"\">\n        $unselectedText$\n      </$reveal>\n    </div>\n  </div>\n</$tiddler>\n\\end\n\n\\define toc-tabbed-internal-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$linkcatcher to=\"\"\"$selectedTiddler$\"\"\">\n  <$macrocall $name=\"toc-tabbed-external-nav\" tag=\"\"\"$tag$\"\"\" sort=\"\"\"$sort$\"\"\" selectedTiddler=\"\"\"$selectedTiddler$\"\"\" unselectedText=\"\"\"$unselectedText$\"\"\" missingText=\"\"\"$missingText$\"\"\" template=\"\"\"$template$\"\"\"/>\n</$linkcatcher>\n\\end\n\n"
        },
        "$:/core/macros/translink": {
            "title": "$:/core/macros/translink",
            "tags": "$:/tags/Macro",
            "text": "\\define translink(title,mode:\"block\")\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: black; foreground; white;\">\n<$link to=\"\"\"$title$\"\"\">\n<$text text=\"\"\"$title$\"\"\"/>\n</$link>\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: white; foreground; black;\">\n<$transclude tiddler=\"\"\"$title$\"\"\" mode=\"$mode$\">\n\"<$text text=\"\"\"$title$\"\"\"/>\" is missing\n</$transclude>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/tree": {
            "title": "$:/core/macros/tree",
            "tags": "$:/tags/Macro",
            "text": "\\define leaf-node(prefix)\n<li>\n<$list filter=\"\"\"[[$prefix$$(chunk)$]is[shadow]] [[$prefix$$(chunk)$]is[tiddler]] +[removeprefix[$prefix$]] +[limit[1]]\"\"\" \nemptyMessage=\"\"\"<$text text=\"$prefix$$(chunk)$\"/>\"\"\">\n<span>{{$:/core/images/file}}</span> <$link to=\"\"\"$prefix$$(chunk)$\"\"\">\n<$view field=\"title\"/>\n</$link> \n</$list>\n</li>\n\\end\n\n\\define branch-node(prefix)\n<$reveal type=\"nomatch\" text=\"\" default=\"\"\"$(chunk)$\"\"\">\n<li>      \n<$list filter=\"\"\"[all[shadows+tiddlers]prefix[$prefix$$(chunk)$]] -[[$prefix$$(chunk)$]] +[limit[1]]\"\"\">\n<$reveal type=\"nomatch\" state=\"\"\"$:/state/tree/$prefix$$(chunk)$\"\"\" text=\"show\">\n<$button set=\"\"\"$:/state/tree/$prefix$$(chunk)$\"\"\" setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/folder}} <$text text=\"\"\"$(chunk)$\"\"\"/></$button>\n</$reveal>\n<$reveal type=\"match\" state=\"\"\"$:/state/tree/$prefix$$(chunk)$\"\"\" text=\"show\">\n<$button set=\"\"\"$:/state/tree/$prefix$$(chunk)$\"\"\" setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/folder}} <$text text=\"\"\"$(chunk)$\"\"\"/></$button>\n</$reveal>\n</$list>\n<$list filter=\"\"\"[all[shadows+tiddlers]prefix[$prefix$$(chunk)$]] -[[$prefix$$(chunk)$]] +[limit[1]]\"\"\"><span>(<$count filter=\"\"\"[all[shadows+tiddlers]prefix[$prefix$$(chunk)$]] -[[$prefix$$(chunk)$]]\"\"\"/>)</span>\n<$reveal type=\"match\" state=\"\"\"$:/state/tree/$prefix$$(chunk)$\"\"\" text=\"show\">\n<$macrocall $name=\"tree-node\" prefix=\"\"\"$prefix$$(chunk)$\"\"\"/>\n</$reveal>\n</$list>\n</li>\n</$reveal>\n\\end\n\n\\define tree-node(prefix)\n<ol>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$prefix$]splitbefore[/]sort[title]] +[!suffix[/]]\" variable=\"chunk\">\n<<leaf-node \"\"\"$prefix$\"\"\">>\n</$list>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$prefix$]splitbefore[/]sort[title]] +[suffix[/]]\" variable=\"chunk\">\n<<branch-node \"\"\"$prefix$\"\"\">>\n</$list>\n</ol>\n\\end\n\n\\define tree(prefix)\n<div class=\"tc-tree\">\n<span><$text text=\"\"\"$prefix$\"\"\"/></span>\n<div>\n<$macrocall $name=\"tree-node\" prefix=\"\"\"$prefix$\"\"\"/>\n</div>\n</div>\n\\end\n"
        },
        "$:/snippets/minilanguageswitcher": {
            "title": "$:/snippets/minilanguageswitcher",
            "text": "<$select tiddler=\"$:/language\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"description\"><$view field=\"name\"><$view field=\"title\"/></$view></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/minithemeswitcher": {
            "title": "$:/snippets/minithemeswitcher",
            "text": "\\define lingo-base() $:/language/ControlPanel/Theme/\n<<lingo Prompt>> <$select tiddler=\"$:/theme\">\n<$list filter=\"[plugin-type[theme]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"name\"><$view field=\"title\"/></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/modules": {
            "title": "$:/snippets/modules",
            "text": "\\define describeModuleType(type)\n{{$:/language/Docs/ModuleTypes/$type$}}\n\\end\n<$list filter=\"[moduletypes[]]\">\n\n!! <$macrocall $name=\"currentTiddler\" $type=\"text/plain\" $output=\"text/plain\"/>\n\n<$macrocall $name=\"describeModuleType\" type=<<currentTiddler>>/>\n\n<ul><$list filter=\"[all[current]modules[]]\"><li><$link><<currentTiddler>></$link>\n</li>\n</$list>\n</ul>\n</$list>\n"
        },
        "$:/palette": {
            "title": "$:/palette",
            "text": "$:/palettes/Vanilla"
        },
        "$:/snippets/paletteeditor": {
            "title": "$:/snippets/paletteeditor",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/Editor/\n\\define describePaletteColour(colour)\n<$transclude tiddler=\"$:/language/Docs/PaletteColours/$colour$\"><$text text=\"$colour$\"/></$transclude>\n\\end\n<$set name=\"currentTiddler\" value={{$:/palette}}>\n\n<<lingo Prompt>> <$link to={{$:/palette}}><$macrocall $name=\"currentTiddler\" $output=\"text/plain\"/></$link>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\" variable=\"listItem\">\n<<lingo Prompt/Modified>>\n<$button message=\"tm-delete-tiddler\" param={{$:/palette}}><<lingo Reset/Caption>></$button>\n</$list>\n\n<$list filter=\"[all[current]is[shadow]!is[tiddler]]\" variable=\"listItem\">\n<<lingo Clone/Prompt>>\n</$list>\n\n<$button message=\"tm-new-tiddler\" param={{$:/palette}}><<lingo Clone/Caption>></$button>\n\n<table>\n<tbody>\n<$list filter=\"[all[current]indexes[]]\" variable=\"colourName\">\n<tr>\n<td>\n''<$macrocall $name=\"describePaletteColour\" colour=<<colourName>>/>''<br/>\n<$macrocall $name=\"colourName\" $output=\"text/plain\"/>\n</td>\n<td>\n<$edit-text index=<<colourName>> tag=\"input\"/>\n<br>\n<$edit-text index=<<colourName>> type=\"color\" tag=\"input\"/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n</$set>\n"
        },
        "$:/snippets/palettepreview": {
            "title": "$:/snippets/palettepreview",
            "text": "<$set name=\"currentTiddler\" value={{$:/palette}}>\n{{||$:/snippets/currpalettepreview}}\n</$set>\n"
        },
        "$:/snippets/paletteswitcher": {
            "title": "$:/snippets/paletteswitcher",
            "text": "<$linkcatcher to=\"$:/palette\">\n<div class=\"tc-chooser\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]sort[description]]\"><$set name=\"cls\" filter=\"[all[current]prefix{$:/palette}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' - <$view field=\"description\" format=\"text\"/>{{||$:/snippets/currpalettepreview}}</$link>\n</div></$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/snippets/peek-stylesheets": {
            "title": "$:/snippets/peek-stylesheets",
            "text": "\\define expandable-stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$vars state=<<qualify \"$:/config/peek-stylesheets/open/\">>>\n<$set name=\"state\" value={{{ [<state>addsuffix<currentTiddler>] }}}>\n<li>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"no\" class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"yes\" class=\"tc-btn-invisible\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"div\">\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</$reveal>\n</li>\n</$set>\n</$vars>\n</$list>\n</ol>\n\\end\n\n\\define stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<li>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</li>\n</$list>\n</ol>\n\\end\n\n<$vars modeState=<<qualify \"$:/config/peek-stylesheets/mode/\">>>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"expanded\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Stylesheets/Expand/Caption}}</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"restored\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-down}} {{$:/language/ControlPanel/Stylesheets/Restore/Caption}}</$button>\n</$reveal>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<expandable-stylesheets-list>>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<stylesheets-list>>\n</$reveal>\n\n</$vars>\n"
        },
        "$:/temp/search": {
            "title": "$:/temp/search",
            "text": ""
        },
        "$:/tags/AdvancedSearch": {
            "title": "$:/tags/AdvancedSearch",
            "list": "[[$:/core/ui/AdvancedSearch/Standard]] [[$:/core/ui/AdvancedSearch/System]] [[$:/core/ui/AdvancedSearch/Shadows]] [[$:/core/ui/AdvancedSearch/Filter]]"
        },
        "$:/tags/AdvancedSearch/FilterButton": {
            "title": "$:/tags/AdvancedSearch/FilterButton",
            "list": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown $:/core/ui/AdvancedSearch/Filter/FilterButtons/clear $:/core/ui/AdvancedSearch/Filter/FilterButtons/export $:/core/ui/AdvancedSearch/Filter/FilterButtons/delete"
        },
        "$:/tags/ControlPanel": {
            "title": "$:/tags/ControlPanel",
            "list": "$:/core/ui/ControlPanel/Info $:/core/ui/ControlPanel/Appearance $:/core/ui/ControlPanel/Settings $:/core/ui/ControlPanel/Saving $:/core/ui/ControlPanel/Plugins $:/core/ui/ControlPanel/Tools $:/core/ui/ControlPanel/Internals"
        },
        "$:/tags/ControlPanel/Info": {
            "title": "$:/tags/ControlPanel/Info",
            "list": "$:/core/ui/ControlPanel/Basics $:/core/ui/ControlPanel/Advanced"
        },
        "$:/tags/ControlPanel/Plugins": {
            "title": "$:/tags/ControlPanel/Plugins",
            "list": "[[$:/core/ui/ControlPanel/Plugins/Installed]] [[$:/core/ui/ControlPanel/Plugins/Add]]"
        },
        "$:/tags/EditTemplate": {
            "title": "$:/tags/EditTemplate",
            "list": "[[$:/core/ui/EditTemplate/controls]] [[$:/core/ui/EditTemplate/title]] [[$:/core/ui/EditTemplate/tags]] [[$:/core/ui/EditTemplate/shadow]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/EditTemplate/body]] [[$:/core/ui/EditTemplate/type]] [[$:/core/ui/EditTemplate/fields]]"
        },
        "$:/tags/EditToolbar": {
            "title": "$:/tags/EditToolbar",
            "list": "[[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/cancel]] [[$:/core/ui/Buttons/save]]"
        },
        "$:/tags/EditorToolbar": {
            "title": "$:/tags/EditorToolbar",
            "list": "$:/core/ui/EditorToolbar/paint $:/core/ui/EditorToolbar/opacity $:/core/ui/EditorToolbar/line-width $:/core/ui/EditorToolbar/rotate-left $:/core/ui/EditorToolbar/clear $:/core/ui/EditorToolbar/bold $:/core/ui/EditorToolbar/italic $:/core/ui/EditorToolbar/strikethrough $:/core/ui/EditorToolbar/underline $:/core/ui/EditorToolbar/superscript $:/core/ui/EditorToolbar/subscript $:/core/ui/EditorToolbar/mono-line $:/core/ui/EditorToolbar/mono-block $:/core/ui/EditorToolbar/quote $:/core/ui/EditorToolbar/list-bullet $:/core/ui/EditorToolbar/list-number $:/core/ui/EditorToolbar/heading-1 $:/core/ui/EditorToolbar/heading-2 $:/core/ui/EditorToolbar/heading-3 $:/core/ui/EditorToolbar/heading-4 $:/core/ui/EditorToolbar/heading-5 $:/core/ui/EditorToolbar/heading-6 $:/core/ui/EditorToolbar/link $:/core/ui/EditorToolbar/excise $:/core/ui/EditorToolbar/picture $:/core/ui/EditorToolbar/stamp $:/core/ui/EditorToolbar/size $:/core/ui/EditorToolbar/editor-height $:/core/ui/EditorToolbar/more $:/core/ui/EditorToolbar/preview $:/core/ui/EditorToolbar/preview-type"
        },
        "$:/tags/Manager/ItemMain": {
            "title": "$:/tags/Manager/ItemMain",
            "list": "$:/Manager/ItemMain/WikifiedText $:/Manager/ItemMain/RawText $:/Manager/ItemMain/Fields"
        },
        "$:/tags/Manager/ItemSidebar": {
            "title": "$:/tags/Manager/ItemSidebar",
            "list": "$:/Manager/ItemSidebar/Tags $:/Manager/ItemSidebar/Colour $:/Manager/ItemSidebar/Icon $:/Manager/ItemSidebar/Tools"
        },
        "$:/tags/MoreSideBar": {
            "title": "$:/tags/MoreSideBar",
            "list": "[[$:/core/ui/MoreSideBar/All]] [[$:/core/ui/MoreSideBar/Recent]] [[$:/core/ui/MoreSideBar/Tags]] [[$:/core/ui/MoreSideBar/Missing]] [[$:/core/ui/MoreSideBar/Drafts]] [[$:/core/ui/MoreSideBar/Orphans]] [[$:/core/ui/MoreSideBar/Types]] [[$:/core/ui/MoreSideBar/System]] [[$:/core/ui/MoreSideBar/Shadows]] [[$:/core/ui/MoreSideBar/Explorer]] [[$:/core/ui/MoreSideBar/Plugins]]",
            "text": ""
        },
        "$:/tags/PageControls": {
            "title": "$:/tags/PageControls",
            "list": "[[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/fold-all]] [[$:/core/ui/Buttons/unfold-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/new-journal]] [[$:/core/ui/Buttons/new-image]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/export-page]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/advanced-search]] [[$:/core/ui/Buttons/manager]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/palette]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/timestamp]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/print]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]"
        },
        "$:/tags/PageTemplate": {
            "title": "$:/tags/PageTemplate",
            "list": "[[$:/core/ui/PageTemplate/topleftbar]] [[$:/core/ui/PageTemplate/toprightbar]] [[$:/core/ui/PageTemplate/sidebar]] [[$:/core/ui/PageTemplate/story]] [[$:/core/ui/PageTemplate/alerts]]",
            "text": ""
        },
        "$:/tags/SideBar": {
            "title": "$:/tags/SideBar",
            "list": "[[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]",
            "text": ""
        },
        "$:/tags/TiddlerInfo": {
            "title": "$:/tags/TiddlerInfo",
            "list": "[[$:/core/ui/TiddlerInfo/Tools]] [[$:/core/ui/TiddlerInfo/References]] [[$:/core/ui/TiddlerInfo/Tagging]] [[$:/core/ui/TiddlerInfo/List]] [[$:/core/ui/TiddlerInfo/Listed]] [[$:/core/ui/TiddlerInfo/Fields]]",
            "text": ""
        },
        "$:/tags/TiddlerInfo/Advanced": {
            "title": "$:/tags/TiddlerInfo/Advanced",
            "list": "[[$:/core/ui/TiddlerInfo/Advanced/ShadowInfo]] [[$:/core/ui/TiddlerInfo/Advanced/PluginInfo]]"
        },
        "$:/tags/ViewTemplate": {
            "title": "$:/tags/ViewTemplate",
            "list": "[[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]]"
        },
        "$:/tags/ViewToolbar": {
            "title": "$:/tags/ViewToolbar",
            "list": "[[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/new-here]] [[$:/core/ui/Buttons/new-journal-here]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/export-tiddler]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/open-window]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]] [[$:/core/ui/Buttons/fold-others]] [[$:/core/ui/Buttons/fold]]"
        },
        "$:/snippets/themeswitcher": {
            "title": "$:/snippets/themeswitcher",
            "text": "<$linkcatcher to=\"$:/theme\">\n<div class=\"tc-chooser\"><$list filter=\"[plugin-type[theme]sort[title]]\"><$set name=\"cls\" filter=\"[all[current]field:title{$:/theme}] [[$:/theme]!has[text]addsuffix[s/tiddlywiki/vanilla]field:title<currentTiddler>] +[limit[1]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' <$view field=\"description\" format=\"text\"/></$link></div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/wiki/title": {
            "title": "$:/core/wiki/title",
            "text": "{{$:/SiteTitle}} --- {{$:/SiteSubtitle}}"
        },
        "$:/view": {
            "title": "$:/view",
            "text": "classic"
        },
        "$:/snippets/viewswitcher": {
            "title": "$:/snippets/viewswitcher",
            "text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<$linkcatcher to=\"$:/view\">\n<div class=\"tc-chooser\">\n<$list filter=\"[storyviews[]]\" variable=\"storyview\">\n<$set name=\"cls\" filter=\"[<storyview>prefix{$:/view}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link to=<<storyview>>>\n<$transclude tiddler=<<icon>>/>\n<$text text=<<storyview>>/>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        }
    }
}
\define neighbour()
<$list filter="[list[$:/StoryList!!list]before<current>]"/>
\end
<$button message="tm-close-tiddler" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=<<tv-config-toolbar-class>>>
<$wikify name="current" text=<<currentTiddler>>>
<$wikify name="goto" text=<<neighbour>>>
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{$:/core/images/close-button}}
</$list>
<$list filter="[<tv-config-toolbar-text>prefix[yes]]">
<span class="tc-btn-text"><$text text={{$:/language/Buttons/Close/Caption}}/></span>
</$list>
<$action-navigate $to=<<goto>>/>
</$wikify>
</$wikify>
</$button>
\define containerClasses()
tc-page-container tc-page-view-$(themeTitle)$ tc-language-$(languageTitle)$
\end

<$importvariables filter="[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]">

<$set name="tv-config-toolbar-icons" value={{$:/config/Toolbar/Icons}}>

<$set name="tv-config-toolbar-text" value={{$:/config/Toolbar/Text}}>

<$set name="tv-config-toolbar-class" value={{$:/config/Toolbar/ButtonClass}}>

<$set name="themeTitle" value={{$:/view}}>

<$set name="currentTiddler" value={{$:/language}}>

<$set name="languageTitle" value={{!!name}}>

<$set name="currentTiddler" value="">

<div class=<<containerClasses>>>

<$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}}>

<$dropzone>

<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]" variable="listItem">

<$transclude tiddler=<<listItem>>/>

</$list>

</$dropzone>

</$navigator>

</div>

</$set>

</$set>

</$set>

</$set>

</$set>

</$set>

</$set>

</$importvariables>
{{$:/SiteTitle}}
[list[$:/StoryList]]
0
The following tiddlers were imported:

# [[Untitled 3]]
no
$:/palettes/SolarFlare
{
    "tiddlers": {
        "$:/plugins/tiddlywiki/jszip/jszip.js": {
            "text": "/*!\n\nJSZip - A Javascript class for generating and reading zip files\n<http://stuartk.com/jszip>\n\n(c) 2009-2014 Stuart Knightley <stuart [at] stuartk.com>\nDual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown.\n\nJSZip uses the library pako released under the MIT license :\nhttps://github.com/nodeca/pako/blob/master/LICENSE\n*/\n!function(a){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=a();else if(\"function\"==typeof define&&define.amd)define([],a);else{var b;b=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,b.JSZip=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i=\"function\"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error(\"Cannot find module '\"+g+\"'\");throw j.code=\"MODULE_NOT_FOUND\",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f=\"function\"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){\"use strict\";function d(a){if(a){this.data=a,this.length=this.data.length,this.index=0,this.zero=0;for(var b=0;b<this.data.length;b++)a[b]=255&a[b]}}var e=a(\"./dataReader\");d.prototype=new e,d.prototype.byteAt=function(a){return this.data[this.zero+a]},d.prototype.lastIndexOfSignature=function(a){for(var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.length-4;f>=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f-this.zero;return-1},d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return[];var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{\"./dataReader\":6}],2:[function(a,b,c){\"use strict\";var d=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";c.encode=function(a,b){for(var c,e,f,g,h,i,j,k=\"\",l=0;l<a.length;)c=a.charCodeAt(l++),e=a.charCodeAt(l++),f=a.charCodeAt(l++),g=c>>2,h=(3&c)<<4|e>>4,i=(15&e)<<2|f>>6,j=63&f,isNaN(e)?i=j=64:isNaN(f)&&(j=64),k=k+d.charAt(g)+d.charAt(h)+d.charAt(i)+d.charAt(j);return k},c.decode=function(a,b){var c,e,f,g,h,i,j,k=\"\",l=0;for(a=a.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");l<a.length;)g=d.indexOf(a.charAt(l++)),h=d.indexOf(a.charAt(l++)),i=d.indexOf(a.charAt(l++)),j=d.indexOf(a.charAt(l++)),c=g<<2|h>>4,e=(15&h)<<4|i>>2,f=(3&i)<<6|j,k+=String.fromCharCode(c),64!=i&&(k+=String.fromCharCode(e)),64!=j&&(k+=String.fromCharCode(f));return k}},{}],3:[function(a,b,c){\"use strict\";function d(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}d.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},b.exports=d},{}],4:[function(a,b,c){\"use strict\";c.STORE={magic:\"\\0\\0\",compress:function(a,b){return a},uncompress:function(a){return a},compressInputType:null,uncompressInputType:null},c.DEFLATE=a(\"./flate\")},{\"./flate\":9}],5:[function(a,b,c){\"use strict\";var d=a(\"./utils\"),e=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];b.exports=function(a,b){if(\"undefined\"==typeof a||!a.length)return 0;var c=\"string\"!==d.getTypeOf(a);\"undefined\"==typeof b&&(b=0);var f=0,g=0,h=0;b^=-1;for(var i=0,j=a.length;i<j;i++)h=c?a[i]:a.charCodeAt(i),g=255&(b^h),f=e[g],b=b>>>8^f;return b^-1}},{\"./utils\":22}],6:[function(a,b,c){\"use strict\";function d(a){this.data=null,this.length=0,this.index=0,this.zero=0}var e=a(\"./utils\");d.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.length<this.zero+a||a<0)throw new Error(\"End of data reached (data length = \"+this.length+\", asked index = \"+a+\"). Corrupted zip ?\")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(a){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return e.transformTo(\"string\",this.readData(a))},readData:function(a){},lastIndexOfSignature:function(a){},readDate:function(){var a=this.readInt(4);return new Date((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1)}},b.exports=d},{\"./utils\":22}],7:[function(a,b,c){\"use strict\";c.base64=!1,c.binary=!1,c.dir=!1,c.createFolders=!1,c.date=null,c.compression=null,c.compressionOptions=null,c.comment=null,c.unixPermissions=null,c.dosPermissions=null},{}],8:[function(a,b,c){\"use strict\";var d=a(\"./utils\");c.string2binary=function(a){return d.string2binary(a)},c.string2Uint8Array=function(a){return d.transformTo(\"uint8array\",a)},c.uint8Array2String=function(a){return d.transformTo(\"string\",a)},c.string2Blob=function(a){var b=d.transformTo(\"arraybuffer\",a);return d.arrayBuffer2Blob(b)},c.arrayBuffer2Blob=function(a){return d.arrayBuffer2Blob(a)},c.transformTo=function(a,b){return d.transformTo(a,b)},c.getTypeOf=function(a){return d.getTypeOf(a)},c.checkSupport=function(a){return d.checkSupport(a)},c.MAX_VALUE_16BITS=d.MAX_VALUE_16BITS,c.MAX_VALUE_32BITS=d.MAX_VALUE_32BITS,c.pretty=function(a){return d.pretty(a)},c.findCompression=function(a){return d.findCompression(a)},c.isRegExp=function(a){return d.isRegExp(a)}},{\"./utils\":22}],9:[function(a,b,c){\"use strict\";var d=\"undefined\"!=typeof Uint8Array&&\"undefined\"!=typeof Uint16Array&&\"undefined\"!=typeof Uint32Array,e=a(\"pako\");c.uncompressInputType=d?\"uint8array\":\"array\",c.compressInputType=d?\"uint8array\":\"array\",c.magic=\"\\b\\0\",c.compress=function(a,b){return e.deflateRaw(a,{level:b.level||-1})},c.uncompress=function(a){return e.inflateRaw(a)}},{pako:25}],10:[function(a,b,c){\"use strict\";function d(a,b){return this instanceof d?(this.files={},this.comment=null,this.root=\"\",a&&this.load(a,b),void(this.clone=function(){var a=new d;for(var b in this)\"function\"!=typeof this[b]&&(a[b]=this[b]);return a})):new d(a,b)}var e=a(\"./base64\");d.prototype=a(\"./object\"),d.prototype.load=a(\"./load\"),d.support=a(\"./support\"),d.defaults=a(\"./defaults\"),d.utils=a(\"./deprecatedPublicUtils\"),d.base64={encode:function(a){return e.encode(a)},decode:function(a){return e.decode(a)}},d.compressions=a(\"./compressions\"),b.exports=d},{\"./base64\":2,\"./compressions\":4,\"./defaults\":7,\"./deprecatedPublicUtils\":8,\"./load\":11,\"./object\":14,\"./support\":18}],11:[function(a,b,c){\"use strict\";var d=a(\"./base64\"),e=a(\"./utf8\"),f=a(\"./utils\"),g=a(\"./zipEntries\");b.exports=function(a,b){var c,h,i,j;for(b=f.extend(b||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:e.utf8decode}),b.base64&&(a=d.decode(a)),h=new g(a,b),c=h.files,i=0;i<c.length;i++)j=c[i],this.file(j.fileNameStr,j.decompressed,{binary:!0,optimizedBinaryString:!0,date:j.date,dir:j.dir,comment:j.fileCommentStr.length?j.fileCommentStr:null,unixPermissions:j.unixPermissions,dosPermissions:j.dosPermissions,createFolders:b.createFolders});return h.zipComment.length&&(this.comment=h.zipComment),this}},{\"./base64\":2,\"./utf8\":21,\"./utils\":22,\"./zipEntries\":23}],12:[function(a,b,c){(function(a){\"use strict\";b.exports=function(b,c){return new a(b,c)},b.exports.test=function(b){return a.isBuffer(b)}}).call(this,\"undefined\"!=typeof Buffer?Buffer:void 0)},{}],13:[function(a,b,c){\"use strict\";function d(a){this.data=a,this.length=this.data.length,this.index=0,this.zero=0}var e=a(\"./uint8ArrayReader\");d.prototype=new e,d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{\"./uint8ArrayReader\":19}],14:[function(a,b,c){\"use strict\";var d=a(\"./support\"),e=a(\"./utils\"),f=a(\"./crc32\"),g=a(\"./signature\"),h=a(\"./defaults\"),i=a(\"./base64\"),j=a(\"./compressions\"),k=a(\"./compressedObject\"),l=a(\"./nodeBuffer\"),m=a(\"./utf8\"),n=a(\"./stringWriter\"),o=a(\"./uint8ArrayWriter\"),p=function(a){if(a._data instanceof k&&(a._data=a._data.getContent(),a.options.binary=!0,a.options.base64=!1,\"uint8array\"===e.getTypeOf(a._data))){var b=a._data;a._data=new Uint8Array(b.length),0!==b.length&&a._data.set(b,0)}return a._data},q=function(a){var b=p(a),c=e.getTypeOf(b);return\"string\"===c?!a.options.binary&&d.nodebuffer?l(b,\"utf-8\"):a.asBinary():b},r=function(a){var b=p(this);return null===b||\"undefined\"==typeof b?\"\":(this.options.base64&&(b=i.decode(b)),b=a&&this.options.binary?D.utf8decode(b):e.transformTo(\"string\",b),a||this.options.binary||(b=e.transformTo(\"string\",D.utf8encode(b))),b)},s=function(a,b,c){this.name=a,this.dir=c.dir,this.date=c.date,this.comment=c.comment,this.unixPermissions=c.unixPermissions,this.dosPermissions=c.dosPermissions,this._data=b,this.options=c,this._initialMetadata={dir:c.dir,date:c.date}};s.prototype={asText:function(){return r.call(this,!0)},asBinary:function(){return r.call(this,!1)},asNodeBuffer:function(){var a=q(this);return e.transformTo(\"nodebuffer\",a)},asUint8Array:function(){var a=q(this);return e.transformTo(\"uint8array\",a)},asArrayBuffer:function(){return this.asUint8Array().buffer}};var t=function(a,b){var c,d=\"\";for(c=0;c<b;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},u=function(a){return a=a||{},a.base64!==!0||null!==a.binary&&void 0!==a.binary||(a.binary=!0),a=e.extend(a,h),a.date=a.date||new Date,null!==a.compression&&(a.compression=a.compression.toUpperCase()),a},v=function(a,b,c){var d,f=e.getTypeOf(b);if(c=u(c),\"string\"==typeof c.unixPermissions&&(c.unixPermissions=parseInt(c.unixPermissions,8)),c.unixPermissions&&16384&c.unixPermissions&&(c.dir=!0),c.dosPermissions&&16&c.dosPermissions&&(c.dir=!0),c.dir&&(a=x(a)),c.createFolders&&(d=w(a))&&y.call(this,d,!0),c.dir||null===b||\"undefined\"==typeof b)c.base64=!1,c.binary=!1,b=null,f=null;else if(\"string\"===f)c.binary&&!c.base64&&c.optimizedBinaryString!==!0&&(b=e.string2binary(b));else{if(c.base64=!1,c.binary=!0,!(f||b instanceof k))throw new Error(\"The data of '\"+a+\"' is in an unsupported format !\");\"arraybuffer\"===f&&(b=e.transformTo(\"uint8array\",b))}var g=new s(a,b,c);return this.files[a]=g,g},w=function(a){\"/\"==a.slice(-1)&&(a=a.substring(0,a.length-1));var b=a.lastIndexOf(\"/\");return b>0?a.substring(0,b):\"\"},x=function(a){return\"/\"!=a.slice(-1)&&(a+=\"/\"),a},y=function(a,b){return b=\"undefined\"!=typeof b&&b,a=x(a),this.files[a]||v.call(this,a,null,{dir:!0,createFolders:b}),this.files[a]},z=function(a,b,c){var d,g=new k;return a._data instanceof k?(g.uncompressedSize=a._data.uncompressedSize,g.crc32=a._data.crc32,0===g.uncompressedSize||a.dir?(b=j.STORE,g.compressedContent=\"\",g.crc32=0):a._data.compressionMethod===b.magic?g.compressedContent=a._data.getCompressedContent():(d=a._data.getContent(),g.compressedContent=b.compress(e.transformTo(b.compressInputType,d),c))):(d=q(a),d&&0!==d.length&&!a.dir||(b=j.STORE,d=\"\"),g.uncompressedSize=d.length,g.crc32=f(d),g.compressedContent=b.compress(e.transformTo(b.compressInputType,d),c)),g.compressedSize=g.compressedContent.length,g.compressionMethod=b.magic,g},A=function(a,b){var c=a;return a||(c=b?16893:33204),(65535&c)<<16},B=function(a,b){return 63&(a||0)},C=function(a,b,c,d,h,i){var j,k,l,n,o=(c.compressedContent,i!==m.utf8encode),p=e.transformTo(\"string\",i(b.name)),q=e.transformTo(\"string\",m.utf8encode(b.name)),r=b.comment||\"\",s=e.transformTo(\"string\",i(r)),u=e.transformTo(\"string\",m.utf8encode(r)),v=q.length!==b.name.length,w=u.length!==r.length,x=b.options,y=\"\",z=\"\",C=\"\";l=b._initialMetadata.dir!==b.dir?b.dir:x.dir,n=b._initialMetadata.date!==b.date?b.date:x.date;var D=0,E=0;l&&(D|=16),\"UNIX\"===h?(E=798,D|=A(b.unixPermissions,l)):(E=20,D|=B(b.dosPermissions,l)),j=n.getHours(),j<<=6,j|=n.getMinutes(),j<<=5,j|=n.getSeconds()/2,k=n.getFullYear()-1980,k<<=4,k|=n.getMonth()+1,k<<=5,k|=n.getDate(),v&&(z=t(1,1)+t(f(p),4)+q,y+=\"up\"+t(z.length,2)+z),w&&(C=t(1,1)+t(this.crc32(s),4)+u,y+=\"uc\"+t(C.length,2)+C);var F=\"\";F+=\"\\n\\0\",F+=o||!v&&!w?\"\\0\\0\":\"\\0\\b\",F+=c.compressionMethod,F+=t(j,2),F+=t(k,2),F+=t(c.crc32,4),F+=t(c.compressedSize,4),F+=t(c.uncompressedSize,4),F+=t(p.length,2),F+=t(y.length,2);var G=g.LOCAL_FILE_HEADER+F+p+y,H=g.CENTRAL_FILE_HEADER+t(E,2)+F+t(s.length,2)+\"\\0\\0\\0\\0\"+t(D,4)+t(d,4)+p+y+s;return{fileRecord:G,dirRecord:H,compressedObject:c}},D={load:function(a,b){throw new Error(\"Load method is not defined. Is the file jszip-load.js included ?\")},filter:function(a){var b,c,d,f,g=[];for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],f=new s(d.name,d._data,e.extend(d.options)),c=b.slice(this.root.length,b.length),b.slice(0,this.root.length)===this.root&&a(c,f)&&g.push(f));return g},file:function(a,b,c){if(1===arguments.length){if(e.isRegExp(a)){var d=a;return this.filter(function(a,b){return!b.dir&&d.test(a)})}return this.filter(function(b,c){return!c.dir&&b===a})[0]||null}return a=this.root+a,v.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(e.isRegExp(a))return this.filter(function(b,c){return c.dir&&a.test(b)});var b=this.root+a,c=y.call(this,b),d=this.clone();return d.root=c.name,d},remove:function(a){a=this.root+a;var b=this.files[a];if(b||(\"/\"!=a.slice(-1)&&(a+=\"/\"),b=this.files[a]),b&&!b.dir)delete this.files[a];else for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d<c.length;d++)delete this.files[c[d].name];return this},generate:function(a){a=e.extend(a||{},{base64:!0,compression:\"STORE\",compressionOptions:null,type:\"base64\",platform:\"DOS\",comment:null,mimeType:\"application/zip\",encodeFileName:m.utf8encode}),e.checkSupport(a.type),\"darwin\"!==a.platform&&\"freebsd\"!==a.platform&&\"linux\"!==a.platform&&\"sunos\"!==a.platform||(a.platform=\"UNIX\"),\"win32\"===a.platform&&(a.platform=\"DOS\");var b,c,d=[],f=0,h=0,k=e.transformTo(\"string\",a.encodeFileName(a.comment||this.comment||\"\"));for(var l in this.files)if(this.files.hasOwnProperty(l)){var p=this.files[l],q=p.options.compression||a.compression.toUpperCase(),r=j[q];if(!r)throw new Error(q+\" is not a valid compression method !\");var s=p.options.compressionOptions||a.compressionOptions||{},u=z.call(this,p,r,s),v=C.call(this,l,p,u,f,a.platform,a.encodeFileName);f+=v.fileRecord.length+u.compressedSize,h+=v.dirRecord.length,d.push(v)}var w=\"\";w=g.CENTRAL_DIRECTORY_END+\"\\0\\0\\0\\0\"+t(d.length,2)+t(d.length,2)+t(h,4)+t(f,4)+t(k.length,2)+k;var x=a.type.toLowerCase();for(b=\"uint8array\"===x||\"arraybuffer\"===x||\"blob\"===x||\"nodebuffer\"===x?new o(f+h+w.length):new n(f+h+w.length),c=0;c<d.length;c++)b.append(d[c].fileRecord),b.append(d[c].compressedObject.compressedContent);for(c=0;c<d.length;c++)b.append(d[c].dirRecord);b.append(w);var y=b.finalize();switch(a.type.toLowerCase()){case\"uint8array\":case\"arraybuffer\":case\"nodebuffer\":return e.transformTo(a.type.toLowerCase(),y);case\"blob\":return e.arrayBuffer2Blob(e.transformTo(\"arraybuffer\",y),a.mimeType);case\"base64\":return a.base64?i.encode(y):y;default:return y}},crc32:function(a,b){return f(a,b)},utf8encode:function(a){return e.transformTo(\"string\",m.utf8encode(a))},utf8decode:function(a){return m.utf8decode(a)}};b.exports=D},{\"./base64\":2,\"./compressedObject\":3,\"./compressions\":4,\"./crc32\":5,\"./defaults\":7,\"./nodeBuffer\":12,\"./signature\":15,\"./stringWriter\":17,\"./support\":18,\"./uint8ArrayWriter\":20,\"./utf8\":21,\"./utils\":22}],15:[function(a,b,c){\"use strict\";c.LOCAL_FILE_HEADER=\"PK\u0003\u0004\",c.CENTRAL_FILE_HEADER=\"PK\u0001\u0002\",c.CENTRAL_DIRECTORY_END=\"PK\u0005\u0006\",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR=\"PK\u0006\u0007\",c.ZIP64_CENTRAL_DIRECTORY_END=\"PK\u0006\u0006\",c.DATA_DESCRIPTOR=\"PK\u0007\\b\"},{}],16:[function(a,b,c){\"use strict\";function d(a,b){this.data=a,b||(this.data=f.string2binary(this.data)),this.length=this.data.length,this.index=0,this.zero=0}var e=a(\"./dataReader\"),f=a(\"./utils\");d.prototype=new e,d.prototype.byteAt=function(a){return this.data.charCodeAt(this.zero+a)},d.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)-this.zero},d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{\"./dataReader\":6,\"./utils\":22}],17:[function(a,b,c){\"use strict\";var d=a(\"./utils\"),e=function(){this.data=[]};e.prototype={append:function(a){a=d.transformTo(\"string\",a),this.data.push(a)},finalize:function(){return this.data.join(\"\")}},b.exports=e},{\"./utils\":22}],18:[function(a,b,c){(function(a){\"use strict\";if(c.base64=!0,c.array=!0,c.string=!0,c.arraybuffer=\"undefined\"!=typeof ArrayBuffer&&\"undefined\"!=typeof Uint8Array,c.nodebuffer=\"undefined\"!=typeof a,c.uint8array=\"undefined\"!=typeof Uint8Array,\"undefined\"==typeof ArrayBuffer)c.blob=!1;else{var b=new ArrayBuffer(0);try{c.blob=0===new Blob([b],{type:\"application/zip\"}).size}catch(d){try{var e=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,f=new e;f.append(b),c.blob=0===f.getBlob(\"application/zip\").size}catch(d){c.blob=!1}}}}).call(this,\"undefined\"!=typeof Buffer?Buffer:void 0)},{}],19:[function(a,b,c){\"use strict\";function d(a){a&&(this.data=a,this.length=this.data.length,this.index=0,this.zero=0)}var e=a(\"./arrayReader\");d.prototype=new e,d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return new Uint8Array(0);var b=this.data.subarray(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{\"./arrayReader\":1}],20:[function(a,b,c){\"use strict\";var d=a(\"./utils\"),e=function(a){this.data=new Uint8Array(a),this.index=0};e.prototype={append:function(a){0!==a.length&&(a=d.transformTo(\"uint8array\",a),this.data.set(a,this.index),this.index+=a.length)},finalize:function(){return this.data}},b.exports=e},{\"./utils\":22}],21:[function(a,b,c){\"use strict\";for(var d=a(\"./utils\"),e=a(\"./support\"),f=a(\"./nodeBuffer\"),g=new Array(256),h=0;h<256;h++)g[h]=h>=252?6:h>=248?5:h>=240?4:h>=224?3:h>=192?2:1;g[254]=g[254]=1;var i=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;f<h;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=e.uint8array?new Uint8Array(i):new Array(i),g=0,f=0;g<i;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),c<128?b[g++]=c:c<2048?(b[g++]=192|c>>>6,b[g++]=128|63&c):c<65536?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},j=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+g[a[c]]>b?c:b},k=function(a){var b,c,e,f,h=a.length,i=new Array(2*h);for(c=0,b=0;b<h;)if(e=a[b++],e<128)i[c++]=e;else if(f=g[e],f>4)i[c++]=65533,b+=f-1;else{for(e&=2===f?31:3===f?15:7;f>1&&b<h;)e=e<<6|63&a[b++],f--;f>1?i[c++]=65533:e<65536?i[c++]=e:(e-=65536,i[c++]=55296|e>>10&1023,i[c++]=56320|1023&e)}return i.length!==c&&(i.subarray?i=i.subarray(0,c):i.length=c),d.applyFromCharCode(i)};c.utf8encode=function(a){return e.nodebuffer?f(a,\"utf-8\"):i(a)},c.utf8decode=function(a){if(e.nodebuffer)return d.transformTo(\"nodebuffer\",a).toString(\"utf-8\");a=d.transformTo(e.uint8array?\"uint8array\":\"array\",a);for(var b=[],c=0,f=a.length,g=65536;c<f;){var h=j(a,Math.min(c+g,f));e.uint8array?b.push(k(a.subarray(c,h))):b.push(k(a.slice(c,h))),c=h}return b.join(\"\")}},{\"./nodeBuffer\":12,\"./support\":18,\"./utils\":22}],22:[function(a,b,c){\"use strict\";function d(a){return a}function e(a,b){for(var c=0;c<a.length;++c)b[c]=255&a.charCodeAt(c);return b}function f(a){var b=65536,d=[],e=a.length,f=c.getTypeOf(a),g=0,h=!0;try{switch(f){case\"uint8array\":String.fromCharCode.apply(null,new Uint8Array(0));break;case\"nodebuffer\":String.fromCharCode.apply(null,j(0))}}catch(i){h=!1}if(!h){for(var k=\"\",l=0;l<a.length;l++)k+=String.fromCharCode(a[l]);return k}for(;g<e&&b>1;)try{\"array\"===f||\"nodebuffer\"===f?d.push(String.fromCharCode.apply(null,a.slice(g,Math.min(g+b,e)))):d.push(String.fromCharCode.apply(null,a.subarray(g,Math.min(g+b,e)))),g+=b}catch(i){b=Math.floor(b/2)}return d.join(\"\")}function g(a,b){for(var c=0;c<a.length;c++)b[c]=a[c];return b}var h=a(\"./support\"),i=a(\"./compressions\"),j=a(\"./nodeBuffer\");c.string2binary=function(a){for(var b=\"\",c=0;c<a.length;c++)b+=String.fromCharCode(255&a.charCodeAt(c));return b},c.arrayBuffer2Blob=function(a,b){c.checkSupport(\"blob\"),b=b||\"application/zip\";try{return new Blob([a],{type:b})}catch(d){try{var e=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,f=new e;return f.append(a),f.getBlob(b)}catch(d){throw new Error(\"Bug : can't construct the Blob.\")}}},c.applyFromCharCode=f;var k={};k.string={string:d,array:function(a){return e(a,new Array(a.length))},arraybuffer:function(a){return k.string.uint8array(a).buffer},uint8array:function(a){return e(a,new Uint8Array(a.length))},nodebuffer:function(a){return e(a,j(a.length))}},k.array={string:f,array:d,arraybuffer:function(a){return new Uint8Array(a).buffer},uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return j(a)}},k.arraybuffer={string:function(a){return f(new Uint8Array(a))},array:function(a){return g(new Uint8Array(a),new Array(a.byteLength))},arraybuffer:d,uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return j(new Uint8Array(a))}},k.uint8array={string:f,array:function(a){return g(a,new Array(a.length))},arraybuffer:function(a){return a.buffer},uint8array:d,nodebuffer:function(a){return j(a)}},k.nodebuffer={string:f,array:function(a){return g(a,new Array(a.length))},arraybuffer:function(a){return k.nodebuffer.uint8array(a).buffer},uint8array:function(a){return g(a,new Uint8Array(a.length))},nodebuffer:d},c.transformTo=function(a,b){if(b||(b=\"\"),!a)return b;c.checkSupport(a);var d=c.getTypeOf(b),e=k[d][a](b);return e},c.getTypeOf=function(a){return\"string\"==typeof a?\"string\":\"[object Array]\"===Object.prototype.toString.call(a)?\"array\":h.nodebuffer&&j.test(a)?\"nodebuffer\":h.uint8array&&a instanceof Uint8Array?\"uint8array\":h.arraybuffer&&a instanceof ArrayBuffer?\"arraybuffer\":void 0},c.checkSupport=function(a){var b=h[a.toLowerCase()];if(!b)throw new Error(a+\" is not supported by this browser\")},c.MAX_VALUE_16BITS=65535,c.MAX_VALUE_32BITS=-1,c.pretty=function(a){var b,c,d=\"\";for(c=0;c<(a||\"\").length;c++)b=a.charCodeAt(c),d+=\"\\\\x\"+(b<16?\"0\":\"\")+b.toString(16).toUpperCase();return d},c.findCompression=function(a){for(var b in i)if(i.hasOwnProperty(b)&&i[b].magic===a)return i[b];return null},c.isRegExp=function(a){return\"[object RegExp]\"===Object.prototype.toString.call(a)},c.extend=function(){var a,b,c={};for(a=0;a<arguments.length;a++)for(b in arguments[a])arguments[a].hasOwnProperty(b)&&\"undefined\"==typeof c[b]&&(c[b]=arguments[a][b]);return c}},{\"./compressions\":4,\"./nodeBuffer\":12,\"./support\":18}],23:[function(a,b,c){\"use strict\";function d(a,b){this.files=[],this.loadOptions=b,a&&this.load(a)}var e=a(\"./stringReader\"),f=a(\"./nodeBufferReader\"),g=a(\"./uint8ArrayReader\"),h=a(\"./arrayReader\"),i=a(\"./utils\"),j=a(\"./signature\"),k=a(\"./zipEntry\"),l=a(\"./support\");a(\"./object\");d.prototype={checkSignature:function(a){var b=this.reader.readString(4);if(b!==a)throw new Error(\"Corrupted zip or bug : unexpected signature (\"+i.pretty(b)+\", expected \"+i.pretty(a)+\")\")},isSignature:function(a,b){var c=this.reader.index;this.reader.setIndex(a);var d=this.reader.readString(4),e=d===b;return this.reader.setIndex(c),e},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var a=this.reader.readData(this.zipCommentLength),b=l.uint8array?\"uint8array\":\"array\",c=i.transformTo(b,a);this.zipComment=this.loadOptions.decodeFileName(c)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;e<d;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readString(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error(\"Multi-volumes zip are not supported\")},readLocalFiles:function(){var a,b;for(a=0;a<this.files.length;a++)b=this.files[a],this.reader.setIndex(b.localHeaderOffset),this.checkSignature(j.LOCAL_FILE_HEADER),b.readLocalPart(this.reader),b.handleUTF8(),b.processAttributes()},readCentralDir:function(){var a;for(this.reader.setIndex(this.centralDirOffset);this.reader.readString(4)===j.CENTRAL_FILE_HEADER;)a=new k({zip64:this.zip64},this.loadOptions),a.readCentralPart(this.reader),this.files.push(a);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error(\"Corrupted zip or bug: expected \"+this.centralDirRecords+\" records in central dir, got \"+this.files.length)},readEndOfCentral:function(){var a=this.reader.lastIndexOfSignature(j.CENTRAL_DIRECTORY_END);if(a<0){var b=!this.isSignature(0,j.LOCAL_FILE_HEADER);throw b?new Error(\"Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html\"):new Error(\"Corrupted zip : can't find end of central directory\")}this.reader.setIndex(a);var c=a;if(this.checkSignature(j.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,a=this.reader.lastIndexOfSignature(j.ZIP64_CENTRAL_DIRECTORY_LOCATOR),a<0)throw new Error(\"Corrupted zip : can't find the ZIP64 end of central directory locator\");if(this.reader.setIndex(a),this.checkSignature(j.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,j.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(j.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error(\"Corrupted zip : can't find the ZIP64 end of central directory\");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(j.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var d=this.centralDirOffset+this.centralDirSize;this.zip64&&(d+=20,d+=12+this.zip64EndOfCentralSize);var e=c-d;if(e>0)this.isSignature(c,j.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error(\"Corrupted zip: missing \"+Math.abs(e)+\" bytes.\")},prepareReader:function(a){var b=i.getTypeOf(a);if(i.checkSupport(b),\"string\"!==b||l.uint8array)if(\"nodebuffer\"===b)this.reader=new f(a);else if(l.uint8array)this.reader=new g(i.transformTo(\"uint8array\",a));else{if(!l.array)throw new Error(\"Unexpected error: unsupported type '\"+b+\"'\");this.reader=new h(i.transformTo(\"array\",a))}else this.reader=new e(a,this.loadOptions.optimizedBinaryString)},load:function(a){this.prepareReader(a),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},b.exports=d},{\"./arrayReader\":1,\"./nodeBufferReader\":13,\"./object\":14,\"./signature\":15,\"./stringReader\":16,\"./support\":18,\"./uint8ArrayReader\":19,\"./utils\":22,\"./zipEntry\":24}],24:[function(a,b,c){\"use strict\";function d(a,b){this.options=a,this.loadOptions=b}var e=a(\"./stringReader\"),f=a(\"./utils\"),g=a(\"./compressedObject\"),h=a(\"./object\"),i=a(\"./support\"),j=0,k=3;d.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},prepareCompressedContent:function(a,b,c){return function(){var d=a.index;a.setIndex(b);var e=a.readData(c);return a.setIndex(d),e}},prepareContent:function(a,b,c,d,e){return function(){var a=f.transformTo(d.uncompressInputType,this.getCompressedContent()),b=d.uncompress(a);if(b.length!==e)throw new Error(\"Bug : uncompressed data size mismatch\");return b}},readLocalPart:function(a){var b,c;if(a.skip(22),this.fileNameLength=a.readInt(2),c=a.readInt(2),this.fileName=a.readData(this.fileNameLength),a.skip(c),this.compressedSize==-1||this.uncompressedSize==-1)throw new Error(\"Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize == -1 || uncompressedSize == -1)\");if(b=f.findCompression(this.compressionMethod),null===b)throw new Error(\"Corrupted zip : compression \"+f.pretty(this.compressionMethod)+\" unknown (inner file : \"+f.transformTo(\"string\",this.fileName)+\")\");if(this.decompressed=new g,this.decompressed.compressedSize=this.compressedSize,this.decompressed.uncompressedSize=this.uncompressedSize,this.decompressed.crc32=this.crc32,this.decompressed.compressionMethod=this.compressionMethod,this.decompressed.getCompressedContent=this.prepareCompressedContent(a,a.index,this.compressedSize,b),this.decompressed.getContent=this.prepareContent(a,a.index,this.compressedSize,b,this.uncompressedSize),this.loadOptions.checkCRC32&&(this.decompressed=f.transformTo(\"string\",this.decompressed.getContent()),h.crc32(this.decompressed)!==this.crc32))throw new Error(\"Corrupted zip : CRC32 mismatch\");\n},readCentralPart:function(a){if(this.versionMadeBy=a.readInt(2),this.versionNeeded=a.readInt(2),this.bitFlag=a.readInt(2),this.compressionMethod=a.readString(2),this.date=a.readDate(),this.crc32=a.readInt(4),this.compressedSize=a.readInt(4),this.uncompressedSize=a.readInt(4),this.fileNameLength=a.readInt(2),this.extraFieldsLength=a.readInt(2),this.fileCommentLength=a.readInt(2),this.diskNumberStart=a.readInt(2),this.internalFileAttributes=a.readInt(2),this.externalFileAttributes=a.readInt(4),this.localHeaderOffset=a.readInt(4),this.isEncrypted())throw new Error(\"Encrypted zip are not supported\");this.fileName=a.readData(this.fileNameLength),this.readExtraFields(a),this.parseZIP64ExtraField(a),this.fileComment=a.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var a=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),a===j&&(this.dosPermissions=63&this.externalFileAttributes),a===k&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||\"/\"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(a){if(this.extraFields[1]){var b=new e(this.extraFields[1].value);this.uncompressedSize===f.MAX_VALUE_32BITS&&(this.uncompressedSize=b.readInt(8)),this.compressedSize===f.MAX_VALUE_32BITS&&(this.compressedSize=b.readInt(8)),this.localHeaderOffset===f.MAX_VALUE_32BITS&&(this.localHeaderOffset=b.readInt(8)),this.diskNumberStart===f.MAX_VALUE_32BITS&&(this.diskNumberStart=b.readInt(4))}},readExtraFields:function(a){var b,c,d,e=a.index;for(this.extraFields=this.extraFields||{};a.index<e+this.extraFieldsLength;)b=a.readInt(2),c=a.readInt(2),d=a.readString(c),this.extraFields[b]={id:b,length:c,value:d}},handleUTF8:function(){var a=i.uint8array?\"uint8array\":\"array\";if(this.useUTF8())this.fileNameStr=h.utf8decode(this.fileName),this.fileCommentStr=h.utf8decode(this.fileComment);else{var b=this.findExtraFieldUnicodePath();if(null!==b)this.fileNameStr=b;else{var c=f.transformTo(a,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(c)}var d=this.findExtraFieldUnicodeComment();if(null!==d)this.fileCommentStr=d;else{var e=f.transformTo(a,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(e)}}},findExtraFieldUnicodePath:function(){var a=this.extraFields[28789];if(a){var b=new e(a.value);return 1!==b.readInt(1)?null:h.crc32(this.fileName)!==b.readInt(4)?null:h.utf8decode(b.readString(a.length-5))}return null},findExtraFieldUnicodeComment:function(){var a=this.extraFields[25461];if(a){var b=new e(a.value);return 1!==b.readInt(1)?null:h.crc32(this.fileComment)!==b.readInt(4)?null:h.utf8decode(b.readString(a.length-5))}return null}},b.exports=d},{\"./compressedObject\":3,\"./object\":14,\"./stringReader\":16,\"./support\":18,\"./utils\":22}],25:[function(a,b,c){\"use strict\";var d=a(\"./lib/utils/common\").assign,e=a(\"./lib/deflate\"),f=a(\"./lib/inflate\"),g=a(\"./lib/zlib/constants\"),h={};d(h,e,f,g),b.exports=h},{\"./lib/deflate\":26,\"./lib/inflate\":27,\"./lib/utils/common\":28,\"./lib/zlib/constants\":31}],26:[function(a,b,c){\"use strict\";function d(a){if(!(this instanceof d))return new d(a);this.options=i.assign({level:s,method:u,chunkSize:16384,windowBits:15,memLevel:8,strategy:t,to:\"\"},a||{});var b=this.options;b.raw&&b.windowBits>0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg=\"\",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=h.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==p)throw new Error(k[c]);if(b.header&&h.deflateSetHeader(this.strm,b.header),b.dictionary){var e;if(e=\"string\"==typeof b.dictionary?j.string2buf(b.dictionary):\"[object ArrayBuffer]\"===m.call(b.dictionary)?new Uint8Array(b.dictionary):b.dictionary,c=h.deflateSetDictionary(this.strm,e),c!==p)throw new Error(k[c]);this._dict_set=!0}}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg;return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}function g(a,b){return b=b||{},b.gzip=!0,e(a,b)}var h=a(\"./zlib/deflate\"),i=a(\"./utils/common\"),j=a(\"./utils/strings\"),k=a(\"./zlib/messages\"),l=a(\"./zlib/zstream\"),m=Object.prototype.toString,n=0,o=4,p=0,q=1,r=2,s=-1,t=0,u=8;d.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?o:n,\"string\"==typeof a?e.input=j.string2buf(a):\"[object ArrayBuffer]\"===m.call(a)?e.input=new Uint8Array(a):e.input=a,e.next_in=0,e.avail_in=e.input.length;do{if(0===e.avail_out&&(e.output=new i.Buf8(f),e.next_out=0,e.avail_out=f),c=h.deflate(e,d),c!==q&&c!==p)return this.onEnd(c),this.ended=!0,!1;0!==e.avail_out&&(0!==e.avail_in||d!==o&&d!==r)||(\"string\"===this.options.to?this.onData(j.buf2binstring(i.shrinkBuf(e.output,e.next_out))):this.onData(i.shrinkBuf(e.output,e.next_out)))}while((e.avail_in>0||0===e.avail_out)&&c!==q);return d===o?(c=h.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===p):d!==r||(this.onEnd(p),e.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===p&&(\"string\"===this.options.to?this.result=this.chunks.join(\"\"):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=d,c.deflate=e,c.deflateRaw=f,c.gzip=g},{\"./utils/common\":28,\"./utils/strings\":29,\"./zlib/deflate\":33,\"./zlib/messages\":38,\"./zlib/zstream\":40}],27:[function(a,b,c){\"use strict\";function d(a){if(!(this instanceof d))return new d(a);this.options=h.assign({chunkSize:16384,windowBits:0,to:\"\"},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg=\"\",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=g.inflateInit2(this.strm,b.windowBits);if(c!==j.Z_OK)throw new Error(k[c]);this.header=new m,g.inflateGetHeader(this.strm,this.header)}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg;return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}var g=a(\"./zlib/inflate\"),h=a(\"./utils/common\"),i=a(\"./utils/strings\"),j=a(\"./zlib/constants\"),k=a(\"./zlib/messages\"),l=a(\"./zlib/zstream\"),m=a(\"./zlib/gzheader\"),n=Object.prototype.toString;d.prototype.push=function(a,b){var c,d,e,f,k,l,m=this.strm,o=this.options.chunkSize,p=this.options.dictionary,q=!1;if(this.ended)return!1;d=b===~~b?b:b===!0?j.Z_FINISH:j.Z_NO_FLUSH,\"string\"==typeof a?m.input=i.binstring2buf(a):\"[object ArrayBuffer]\"===n.call(a)?m.input=new Uint8Array(a):m.input=a,m.next_in=0,m.avail_in=m.input.length;do{if(0===m.avail_out&&(m.output=new h.Buf8(o),m.next_out=0,m.avail_out=o),c=g.inflate(m,j.Z_NO_FLUSH),c===j.Z_NEED_DICT&&p&&(l=\"string\"==typeof p?i.string2buf(p):\"[object ArrayBuffer]\"===n.call(p)?new Uint8Array(p):p,c=g.inflateSetDictionary(this.strm,l)),c===j.Z_BUF_ERROR&&q===!0&&(c=j.Z_OK,q=!1),c!==j.Z_STREAM_END&&c!==j.Z_OK)return this.onEnd(c),this.ended=!0,!1;m.next_out&&(0!==m.avail_out&&c!==j.Z_STREAM_END&&(0!==m.avail_in||d!==j.Z_FINISH&&d!==j.Z_SYNC_FLUSH)||(\"string\"===this.options.to?(e=i.utf8border(m.output,m.next_out),f=m.next_out-e,k=i.buf2string(m.output,e),m.next_out=f,m.avail_out=o-f,f&&h.arraySet(m.output,m.output,e,f,0),this.onData(k)):this.onData(h.shrinkBuf(m.output,m.next_out)))),0===m.avail_in&&0===m.avail_out&&(q=!0)}while((m.avail_in>0||0===m.avail_out)&&c!==j.Z_STREAM_END);return c===j.Z_STREAM_END&&(d=j.Z_FINISH),d===j.Z_FINISH?(c=g.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===j.Z_OK):d!==j.Z_SYNC_FLUSH||(this.onEnd(j.Z_OK),m.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===j.Z_OK&&(\"string\"===this.options.to?this.result=this.chunks.join(\"\"):this.result=h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=d,c.inflate=e,c.inflateRaw=f,c.ungzip=e},{\"./utils/common\":28,\"./utils/strings\":29,\"./zlib/constants\":31,\"./zlib/gzheader\":34,\"./zlib/inflate\":36,\"./zlib/messages\":38,\"./zlib/zstream\":40}],28:[function(a,b,c){\"use strict\";var d=\"undefined\"!=typeof Uint8Array&&\"undefined\"!=typeof Uint16Array&&\"undefined\"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if(\"object\"!=typeof c)throw new TypeError(c+\"must be non-object\");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray&&a.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;b<c;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;b<c;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],29:[function(a,b,c){\"use strict\";function d(a,b){if(b<65537&&(a.subarray&&g||!a.subarray&&f))return String.fromCharCode.apply(null,e.shrinkBuf(a,b));for(var c=\"\",d=0;d<b;d++)c+=String.fromCharCode(a[d]);return c}var e=a(\"./common\"),f=!0,g=!0;try{String.fromCharCode.apply(null,[0])}catch(h){f=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(h){g=!1}for(var i=new e.Buf8(256),j=0;j<256;j++)i[j]=j>=252?6:j>=248?5:j>=240?4:j>=224?3:j>=192?2:1;i[254]=i[254]=1,c.string2buf=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;f<h;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=new e.Buf8(i),g=0,f=0;g<i;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),c<128?b[g++]=c:c<2048?(b[g++]=192|c>>>6,b[g++]=128|63&c):c<65536?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},c.buf2binstring=function(a){return d(a,a.length)},c.binstring2buf=function(a){for(var b=new e.Buf8(a.length),c=0,d=b.length;c<d;c++)b[c]=a.charCodeAt(c);return b},c.buf2string=function(a,b){var c,e,f,g,h=b||a.length,j=new Array(2*h);for(e=0,c=0;c<h;)if(f=a[c++],f<128)j[e++]=f;else if(g=i[f],g>4)j[e++]=65533,c+=g-1;else{for(f&=2===g?31:3===g?15:7;g>1&&c<h;)f=f<<6|63&a[c++],g--;g>1?j[e++]=65533:f<65536?j[e++]=f:(f-=65536,j[e++]=55296|f>>10&1023,j[e++]=56320|1023&f)}return d(j,e)},c.utf8border=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+i[a[c]]>b?c:b}},{\"./common\":28}],30:[function(a,b,c){\"use strict\";function d(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0}b.exports=d},{}],31:[function(a,b,c){\"use strict\";b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],32:[function(a,b,c){\"use strict\";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=f,g=d+c;a^=-1;for(var h=d;h<g;h++)a=a>>>8^e[255&(a^b[h])];return a^-1}var f=d();b.exports=e},{}],33:[function(a,b,c){\"use strict\";function d(a,b){return a.msg=I[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b>=0;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(E.arraySet(a.output,b.pending_buf,b.pending_out,c,a.next_out),a.next_out+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){F._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,E.arraySet(b,a.input,a.next_in,e,c),1===a.state.wrap?a.adler=G(a.adler,b,e,c):2===a.state.wrap&&(a.adler=H(a.adler,b,e,c)),a.next_in+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-la?a.strstart-(a.w_size-la):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+ka,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&f<m);if(d=ka-(m-f),f=m-ka,d>g){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-la)){E.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=ja)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+1])&a.hash_mask;a.insert&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+ja-1])&a.hash_mask,a.prev[f&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=f,f++,a.insert--,!(a.lookahead+a.insert<ja)););}while(a.lookahead<la&&0!==a.strm.avail_in)}function n(a,b){var c=65535;for(c>a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===J)return ua;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return ua;if(a.strstart-a.block_start>=a.w_size-la&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?ua:ua}function o(a,b){for(var c,d;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),0!==c&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c)),a.match_length>=ja)if(d=F._tr_tally(a,a.strstart-a.match_start,a.match_length-ja),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=ja){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart;while(0!==--a.match_length);a.strstart++}else a.strstart+=a.match_length,a.match_length=0,a.ins_h=a.window[a.strstart],a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+1])&a.hash_mask;else d=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++;if(d&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function p(a,b){for(var c,d,e;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),a.prev_length=a.match_length,a.prev_match=a.match_start,a.match_length=ja-1,0!==c&&a.prev_length<a.max_lazy_match&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c),a.match_length<=5&&(a.strategy===U||a.match_length===ja&&a.strstart-a.match_start>4096)&&(a.match_length=ja-1)),a.prev_length>=ja&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-ja,d=F._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-ja),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart);while(0!==--a.prev_length);if(a.match_available=0,a.match_length=ja-1,a.strstart++,d&&(h(a,!1),0===a.strm.avail_out))return ua}else if(a.match_available){if(d=F._tr_tally(a,0,a.window[a.strstart-1]),d&&h(a,!1),a.strstart++,a.lookahead--,0===a.strm.avail_out)return ua}else a.match_available=1,a.strstart++,a.lookahead--}return a.match_available&&(d=F._tr_tally(a,0,a.window[a.strstart-1]),a.match_available=0),a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function q(a,b){for(var c,d,e,f,g=a.window;;){if(a.lookahead<=ka){if(m(a),a.lookahead<=ka&&b===J)return ua;if(0===a.lookahead)break}if(a.match_length=0,a.lookahead>=ja&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+ka;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&e<f);a.match_length=ka-(f-e),a.match_length>a.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=ja?(c=F._tr_tally(a,1,a.match_length-ja),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===J)return ua;break}if(a.match_length=0,c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function s(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e}function t(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=D[a.level].max_lazy,a.good_match=D[a.level].good_length,a.nice_match=D[a.level].nice_length,a.max_chain_length=D[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=ja-1,a.match_available=0,a.ins_h=0}function u(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new E.Buf16(2*ha),this.dyn_dtree=new E.Buf16(2*(2*fa+1)),this.bl_tree=new E.Buf16(2*(2*ga+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new E.Buf16(ia+1),this.heap=new E.Buf16(2*ea+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new E.Buf16(2*ea+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function v(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=Z,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?na:sa,a.adler=2===b.wrap?0:1,b.last_flush=J,F._tr_init(b),O):d(a,Q)}function w(a){var b=v(a);return b===O&&t(a.state),b}function x(a,b){return a&&a.state?2!==a.state.wrap?Q:(a.state.gzhead=b,O):Q}function y(a,b,c,e,f,g){if(!a)return Q;var h=1;if(b===T&&(b=6),e<0?(h=0,e=-e):e>15&&(h=2,e-=16),f<1||f>_||c!==$||e<8||e>15||b<0||b>9||g<0||g>X)return d(a,Q);8===e&&(e=9);var i=new u;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1<<i.w_bits,i.w_mask=i.w_size-1,i.hash_bits=f+7,i.hash_size=1<<i.hash_bits,i.hash_mask=i.hash_size-1,i.hash_shift=~~((i.hash_bits+ja-1)/ja),i.window=new E.Buf8(2*i.w_size),i.head=new E.Buf16(i.hash_size),i.prev=new E.Buf16(i.w_size),i.lit_bufsize=1<<f+6,i.pending_buf_size=4*i.lit_bufsize,i.pending_buf=new E.Buf8(i.pending_buf_size),i.d_buf=1*i.lit_bufsize,i.l_buf=3*i.lit_bufsize,i.level=b,i.strategy=g,i.method=c,w(a)}function z(a,b){return y(a,b,$,aa,ba,Y)}function A(a,b){var c,h,k,l;if(!a||!a.state||b>N||b<0)return a?d(a,Q):Q;if(h=a.state,!a.output||!a.input&&0!==a.avail_in||h.status===ta&&b!==M)return d(a,0===a.avail_out?S:Q);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===na)if(2===h.wrap)a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead?(i(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),i(h,255&h.gzhead.time),i(h,h.gzhead.time>>8&255),i(h,h.gzhead.time>>16&255),i(h,h.gzhead.time>>24&255),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(i(h,255&h.gzhead.extra.length),i(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(a.adler=H(a.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=oa):(i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,ya),h.status=sa);else{var m=$+(h.w_bits-8<<4)<<8,n=-1;n=h.strategy>=V||h.level<2?0:h.level<6?1:6===h.level?2:3,m|=n<<6,0!==h.strstart&&(m|=ma),m+=31-m%31,h.status=sa,j(h,m),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(h.status===oa)if(h.gzhead.extra){for(k=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending!==h.pending_buf_size));)i(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=pa)}else h.status=pa;if(h.status===pa)if(h.gzhead.name){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.name.length?255&h.gzhead.name.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.gzindex=0,h.status=qa)}else h.status=qa;if(h.status===qa)if(h.gzhead.comment){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.comment.length?255&h.gzhead.comment.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.status=ra)}else h.status=ra;if(h.status===ra&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&g(a),h.pending+2<=h.pending_buf_size&&(i(h,255&a.adler),i(h,a.adler>>8&255),a.adler=0,h.status=sa)):h.status=sa),0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,O}else if(0===a.avail_in&&e(b)<=e(c)&&b!==M)return d(a,S);if(h.status===ta&&0!==a.avail_in)return d(a,S);if(0!==a.avail_in||0!==h.lookahead||b!==J&&h.status!==ta){var o=h.strategy===V?r(h,b):h.strategy===W?q(h,b):D[h.level].func(h,b);if(o!==wa&&o!==xa||(h.status=ta),o===ua||o===wa)return 0===a.avail_out&&(h.last_flush=-1),O;if(o===va&&(b===K?F._tr_align(h):b!==N&&(F._tr_stored_block(h,0,0,!1),b===L&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,O}return b!==M?O:h.wrap<=0?P:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?O:P)}function B(a){var b;return a&&a.state?(b=a.state.status,b!==na&&b!==oa&&b!==pa&&b!==qa&&b!==ra&&b!==sa&&b!==ta?d(a,Q):(a.state=null,b===sa?d(a,R):O)):Q}function C(a,b){var c,d,e,g,h,i,j,k,l=b.length;if(!a||!a.state)return Q;if(c=a.state,g=c.wrap,2===g||1===g&&c.status!==na||c.lookahead)return Q;for(1===g&&(a.adler=G(a.adler,b,l,0)),c.wrap=0,l>=c.w_size&&(0===g&&(f(c.head),c.strstart=0,c.block_start=0,c.insert=0),k=new E.Buf8(c.w_size),E.arraySet(k,b,l-c.w_size,c.w_size,0),b=k,l=c.w_size),h=a.avail_in,i=a.next_in,j=a.input,a.avail_in=l,a.next_in=0,a.input=b,m(c);c.lookahead>=ja;){d=c.strstart,e=c.lookahead-(ja-1);do c.ins_h=(c.ins_h<<c.hash_shift^c.window[d+ja-1])&c.hash_mask,c.prev[d&c.w_mask]=c.head[c.ins_h],c.head[c.ins_h]=d,d++;while(--e);c.strstart=d,c.lookahead=ja-1,m(c)}return c.strstart+=c.lookahead,c.block_start=c.strstart,c.insert=c.lookahead,c.lookahead=0,c.match_length=c.prev_length=ja-1,c.match_available=0,a.next_in=i,a.input=j,a.avail_in=h,c.wrap=g,O}var D,E=a(\"../utils/common\"),F=a(\"./trees\"),G=a(\"./adler32\"),H=a(\"./crc32\"),I=a(\"./messages\"),J=0,K=1,L=3,M=4,N=5,O=0,P=1,Q=-2,R=-3,S=-5,T=-1,U=1,V=2,W=3,X=4,Y=0,Z=2,$=8,_=9,aa=15,ba=8,ca=29,da=256,ea=da+1+ca,fa=30,ga=19,ha=2*ea+1,ia=15,ja=3,ka=258,la=ka+ja+1,ma=32,na=42,oa=69,pa=73,qa=91,ra=103,sa=113,ta=666,ua=1,va=2,wa=3,xa=4,ya=3;D=[new s(0,0,0,0,n),new s(4,4,8,4,o),new s(4,5,16,8,o),new s(4,6,32,32,o),new s(4,4,16,16,p),new s(8,16,32,32,p),new s(8,16,128,128,p),new s(8,32,128,256,p),new s(32,128,258,1024,p),new s(32,258,258,4096,p)],c.deflateInit=z,c.deflateInit2=y,c.deflateReset=w,c.deflateResetKeep=v,c.deflateSetHeader=x,c.deflate=A,c.deflateEnd=B,c.deflateSetDictionary=C,c.deflateInfo=\"pako deflate (from Nodeca project)\"},{\"../utils/common\":28,\"./adler32\":30,\"./crc32\":32,\"./messages\":38,\"./trees\":39}],34:[function(a,b,c){\"use strict\";function d(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name=\"\",this.comment=\"\",this.hcrc=0,this.done=!1}b.exports=d},{}],35:[function(a,b,c){\"use strict\";var d=30,e=12;b.exports=function(a,b){var c,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C;c=a.state,f=a.next_in,B=a.input,g=f+(a.avail_in-5),h=a.next_out,C=a.output,i=h-(b-a.avail_out),j=h+(a.avail_out-257),k=c.dmax,l=c.wsize,m=c.whave,n=c.wnext,o=c.window,p=c.hold,q=c.bits,r=c.lencode,s=c.distcode,t=(1<<c.lenbits)-1,u=(1<<c.distbits)-1;a:do{q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=r[p&t];b:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<<w)-1)];continue b}if(32&w){c.mode=e;break a}a.msg=\"invalid literal/length code\",c.mode=d;break a}x=65535&v,w&=15,w&&(q<w&&(p+=B[f++]<<q,q+=8),x+=p&(1<<w)-1,p>>>=w,q-=w),q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=s[p&u];c:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<<w)-1)];continue c}a.msg=\"invalid distance code\",c.mode=d;break a}if(y=65535&v,w&=15,q<w&&(p+=B[f++]<<q,q+=8,q<w&&(p+=B[f++]<<q,q+=8)),y+=p&(1<<w)-1,y>k){a.msg=\"invalid distance too far back\",c.mode=d;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&c.sane){a.msg=\"invalid distance too far back\",c.mode=d;break a}if(z=0,A=o,0===n){if(z+=l-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(n<w){if(z+=l+n-w,w-=n,w<x){x-=w;do C[h++]=o[z++];while(--w);if(z=0,n<x){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(f<g&&h<j);x=q>>3,f-=x,q-=x<<3,p&=(1<<q)-1,a.next_in=f,a.next_out=h,a.avail_in=f<g?5+(g-f):5-(f-g),a.avail_out=h<j?257+(j-h):257-(h-j),c.hold=p,c.bits=q}},{}],36:[function(a,b,c){\"use strict\";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,a.msg=\"\",b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=b.lendyn=new s.Buf32(pa),b.distcode=b.distdyn=new s.Buf32(qa),b.sane=1,b.back=-1,D):G}function g(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,f(a)):G}function h(a,b){var c,d;return a&&a.state?(d=a.state,b<0?(c=0,b=-b):(c=(b>>4)+1,b<48&&(b&=15)),b&&(b<8||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,g(a))):G}function i(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=h(a,b),c!==D&&(a.state=null),c):G}function j(a){return i(a,sa)}function k(a){if(ta){var b;for(q=new s.Buf32(512),r=new s.Buf32(32),b=0;b<144;)a.lens[b++]=8;for(;b<256;)a.lens[b++]=9;for(;b<280;)a.lens[b++]=7;for(;b<288;)a.lens[b++]=8;for(w(y,a.lens,0,288,q,0,a.work,{bits:9}),b=0;b<32;)a.lens[b++]=5;w(z,a.lens,0,32,r,0,a.work,{bits:5}),ta=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function l(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<<f.wbits,f.wnext=0,f.whave=0,f.window=new s.Buf8(f.wsize)),d>=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave<f.wsize&&(f.whave+=e))),0}function m(a,b){var c,e,f,g,h,i,j,m,n,o,p,q,r,pa,qa,ra,sa,ta,ua,va,wa,xa,ya,za,Aa=0,Ba=new s.Buf8(4),Ca=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!a||!a.state||!a.output||!a.input&&0!==a.avail_in)return G;c=a.state,c.mode===W&&(c.mode=X),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,o=i,p=j,xa=D;a:for(;;)switch(c.mode){case L:if(0===c.wrap){c.mode=X;break}for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(2&c.wrap&&35615===m){c.check=0,Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0),m=0,n=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=!1),!(1&c.wrap)||(((255&m)<<8)+(m>>8))%31){a.msg=\"incorrect header check\",c.mode=ma;break}if((15&m)!==K){a.msg=\"unknown compression method\",c.mode=ma;break}if(m>>>=4,n-=4,wa=(15&m)+8,0===c.wbits)c.wbits=wa;else if(wa>c.wbits){a.msg=\"invalid window size\",c.mode=ma;break}c.dmax=1<<wa,a.adler=c.check=1,c.mode=512&m?U:W,m=0,n=0;break;case M:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.flags=m,(255&c.flags)!==K){a.msg=\"unknown compression method\",c.mode=ma;break}if(57344&c.flags){a.msg=\"unknown header flags set\",c.mode=ma;break}c.head&&(c.head.text=m>>8&1),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=N;case N:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.head&&(c.head.time=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,Ba[2]=m>>>16&255,Ba[3]=m>>>24&255,c.check=u(c.check,Ba,4,0)),m=0,n=0,c.mode=O;case O:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,\nn+=8}c.head&&(c.head.xflags=255&m,c.head.os=m>>8),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=P;case P:if(1024&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length=m,c.head&&(c.head.extra_len=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags&&(q=c.length,q>i&&(q=i),q&&(c.head&&(wa=c.head.extra_len-c.length,c.head.extra||(c.head.extra=new Array(c.head.extra_len)),s.arraySet(c.head.extra,e,g,q,wa)),512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,c.length-=q),c.length))break a;c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.name+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=S;case S:if(4096&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.comment+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.comment=null);c.mode=T;case T:if(512&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(65535&c.check)){a.msg=\"header crc mismatch\",c.mode=ma;break}m=0,n=0}c.head&&(c.head.hcrc=c.flags>>9&1,c.head.done=!0),a.adler=c.check=0,c.mode=W;break;case U:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}a.adler=c.check=d(m),m=0,n=0,c.mode=V;case V:if(0===c.havedict)return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,F;a.adler=c.check=1,c.mode=W;case W:if(b===B||b===C)break a;case X:if(c.last){m>>>=7&n,n-=7&n,c.mode=ja;break}for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}switch(c.last=1&m,m>>>=1,n-=1,3&m){case 0:c.mode=Y;break;case 1:if(k(c),c.mode=ca,b===C){m>>>=2,n-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg=\"invalid block type\",c.mode=ma}m>>>=2,n-=2;break;case Y:for(m>>>=7&n,n-=7&n;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if((65535&m)!==(m>>>16^65535)){a.msg=\"invalid stored block lengths\",c.mode=ma;break}if(c.length=65535&m,m=0,n=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(q=c.length){if(q>i&&(q=i),q>j&&(q=j),0===q)break a;s.arraySet(f,e,g,q,h),i-=q,g+=q,j-=q,h+=q,c.length-=q;break}c.mode=W;break;case _:for(;n<14;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.nlen=(31&m)+257,m>>>=5,n-=5,c.ndist=(31&m)+1,m>>>=5,n-=5,c.ncode=(15&m)+4,m>>>=4,n-=4,c.nlen>286||c.ndist>30){a.msg=\"too many length or distance symbols\",c.mode=ma;break}c.have=0,c.mode=aa;case aa:for(;c.have<c.ncode;){for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.lens[Ca[c.have++]]=7&m,m>>>=3,n-=3}for(;c.have<19;)c.lens[Ca[c.have++]]=0;if(c.lencode=c.lendyn,c.lenbits=7,ya={bits:c.lenbits},xa=w(x,c.lens,0,19,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg=\"invalid code lengths set\",c.mode=ma;break}c.have=0,c.mode=ba;case ba:for(;c.have<c.nlen+c.ndist;){for(;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(sa<16)m>>>=qa,n-=qa,c.lens[c.have++]=sa;else{if(16===sa){for(za=qa+2;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m>>>=qa,n-=qa,0===c.have){a.msg=\"invalid bit length repeat\",c.mode=ma;break}wa=c.lens[c.have-1],q=3+(3&m),m>>>=2,n-=2}else if(17===sa){for(za=qa+3;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=3+(7&m),m>>>=3,n-=3}else{for(za=qa+7;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=11+(127&m),m>>>=7,n-=7}if(c.have+q>c.nlen+c.ndist){a.msg=\"invalid bit length repeat\",c.mode=ma;break}for(;q--;)c.lens[c.have++]=wa}}if(c.mode===ma)break;if(0===c.lens[256]){a.msg=\"invalid code -- missing end-of-block\",c.mode=ma;break}if(c.lenbits=9,ya={bits:c.lenbits},xa=w(y,c.lens,0,c.nlen,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg=\"invalid literal/lengths set\",c.mode=ma;break}if(c.distbits=6,c.distcode=c.distdyn,ya={bits:c.distbits},xa=w(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.work,ya),c.distbits=ya.bits,xa){a.msg=\"invalid distances set\",c.mode=ma;break}if(c.mode=ca,b===C)break a;case ca:c.mode=da;case da:if(i>=6&&j>=258){a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,v(a,p),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(ra&&0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.lencode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ia;break}if(32&ra){c.back=-1,c.mode=W;break}if(64&ra){a.msg=\"invalid literal/length code\",c.mode=ma;break}c.extra=15&ra,c.mode=ea;case ea:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fa;case fa:for(;Aa=c.distcode[m&(1<<c.distbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.distcode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg=\"invalid distance code\",c.mode=ma;break}c.offset=sa,c.extra=15&ra,c.mode=ga;case ga:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.offset+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg=\"invalid distance too far back\",c.mode=ma;break}c.mode=ha;case ha:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg=\"invalid distance too far back\",c.mode=ma;break}q>c.wnext?(q-=c.wnext,r=c.wsize-q):r=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,r=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[r++];while(--q);0===c.length&&(c.mode=da);break;case ia:if(0===j)break a;f[h++]=c.length,j--,c.mode=da;break;case ja:if(c.wrap){for(;n<32;){if(0===i)break a;i--,m|=e[g++]<<n,n+=8}if(p-=j,a.total_out+=p,c.total+=p,p&&(a.adler=c.check=c.flags?u(c.check,f,p,h-p):t(c.check,f,p,h-p)),p=j,(c.flags?m:d(m))!==c.check){a.msg=\"incorrect data check\",c.mode=ma;break}m=0,n=0}c.mode=ka;case ka:if(c.wrap&&c.flags){for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(4294967295&c.total)){a.msg=\"incorrect length check\",c.mode=ma;break}m=0,n=0}c.mode=la;case la:xa=E;break a;case ma:xa=H;break a;case na:return I;case oa:default:return G}return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,(c.wsize||p!==a.avail_out&&c.mode<ma&&(c.mode<ja||b!==A))&&l(a,a.output,a.next_out,p-a.avail_out)?(c.mode=na,I):(o-=a.avail_in,p-=a.avail_out,a.total_in+=o,a.total_out+=p,c.total+=p,c.wrap&&p&&(a.adler=c.check=c.flags?u(c.check,f,p,a.next_out-p):t(c.check,f,p,a.next_out-p)),a.data_type=c.bits+(c.last?64:0)+(c.mode===W?128:0)+(c.mode===ca||c.mode===Z?256:0),(0===o&&0===p||b===A)&&xa===D&&(xa=J),xa)}function n(a){if(!a||!a.state)return G;var b=a.state;return b.window&&(b.window=null),a.state=null,D}function o(a,b){var c;return a&&a.state?(c=a.state,0===(2&c.wrap)?G:(c.head=b,b.done=!1,D)):G}function p(a,b){var c,d,e,f=b.length;return a&&a.state?(c=a.state,0!==c.wrap&&c.mode!==V?G:c.mode===V&&(d=1,d=t(d,b,f,0),d!==c.check)?H:(e=l(a,b,f,f))?(c.mode=na,I):(c.havedict=1,D)):G}var q,r,s=a(\"../utils/common\"),t=a(\"./adler32\"),u=a(\"./crc32\"),v=a(\"./inffast\"),w=a(\"./inftrees\"),x=0,y=1,z=2,A=4,B=5,C=6,D=0,E=1,F=2,G=-2,H=-3,I=-4,J=-5,K=8,L=1,M=2,N=3,O=4,P=5,Q=6,R=7,S=8,T=9,U=10,V=11,W=12,X=13,Y=14,Z=15,$=16,_=17,aa=18,ba=19,ca=20,da=21,ea=22,fa=23,ga=24,ha=25,ia=26,ja=27,ka=28,la=29,ma=30,na=31,oa=32,pa=852,qa=592,ra=15,sa=ra,ta=!0;c.inflateReset=g,c.inflateReset2=h,c.inflateResetKeep=f,c.inflateInit=j,c.inflateInit2=i,c.inflate=m,c.inflateEnd=n,c.inflateGetHeader=o,c.inflateSetDictionary=p,c.inflateInfo=\"pako inflate (from Nodeca project)\"},{\"../utils/common\":28,\"./adler32\":30,\"./crc32\":32,\"./inffast\":35,\"./inftrees\":37}],37:[function(a,b,c){\"use strict\";var d=a(\"../utils/common\"),e=15,f=852,g=592,h=0,i=1,j=2,k=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],l=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],m=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],n=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];b.exports=function(a,b,c,o,p,q,r,s){var t,u,v,w,x,y,z,A,B,C=s.bits,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=null,O=0,P=new d.Buf16(e+1),Q=new d.Buf16(e+1),R=null,S=0;for(D=0;D<=e;D++)P[D]=0;for(E=0;E<o;E++)P[b[c+E]]++;for(H=C,G=e;G>=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;F<G&&0===P[F];F++);for(H<F&&(H=F),K=1,D=1;D<=e;D++)if(K<<=1,K-=P[D],K<0)return-1;if(K>0&&(a===h||1!==G))return-1;for(Q[1]=0,D=1;D<e;D++)Q[D+1]=Q[D]+P[D];for(E=0;E<o;E++)0!==b[c+E]&&(r[Q[b[c+E]]++]=E);if(a===h?(N=R=r,y=19):a===i?(N=k,O-=257,R=l,S-=257,y=256):(N=m,R=n,y=-1),M=0,E=0,D=F,x=q,I=H,J=0,v=-1,L=1<<H,w=L-1,a===i&&L>f||a===j&&L>g)return 1;for(var T=0;;){T++,z=D-J,r[E]<y?(A=0,B=r[E]):r[E]>y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<<D-J,u=1<<I,F=u;do u-=t,p[x+(M>>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<<D-1;M&t;)t>>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[c+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<<I;I+J<G&&(K-=P[I+J],!(K<=0));)I++,K<<=1;if(L+=1<<I,a===i&&L>f||a===j&&L>g)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{\"../utils/common\":28}],38:[function(a,b,c){\"use strict\";b.exports={2:\"need dictionary\",1:\"stream end\",0:\"\",\"-1\":\"file error\",\"-2\":\"stream error\",\"-3\":\"data error\",\"-4\":\"insufficient memory\",\"-5\":\"buffer error\",\"-6\":\"incompatible version\"}},{}],39:[function(a,b,c){\"use strict\";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length}function f(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b}function g(a){return a<256?ia[a]:ia[256+(a>>>7)]}function h(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function i(a,b,c){a.bi_valid>X-c?(a.bi_buf|=b<<a.bi_valid&65535,h(a,a.bi_buf),a.bi_buf=b>>X-a.bi_valid,a.bi_valid+=c-X):(a.bi_buf|=b<<a.bi_valid&65535,a.bi_valid+=c)}function j(a,b,c){i(a,c[2*b],c[2*b+1])}function k(a,b){var c=0;do c|=1&a,a>>>=1,c<<=1;while(--b>0);return c>>>1}function l(a){16===a.bi_valid?(h(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function m(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;f<=W;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;c<V;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function n(a,b,c){var d,e,f=new Array(W+1),g=0;for(d=1;d<=W;d++)f[d]=g=g+c[d-1]<<1;for(e=0;e<=b;e++){var h=a[2*e+1];0!==h&&(a[2*e]=k(f[h]++,h))}}function o(){var a,b,c,d,f,g=new Array(W+1);for(c=0,d=0;d<Q-1;d++)for(ka[d]=c,a=0;a<1<<ba[d];a++)ja[c++]=d;for(ja[c-1]=d,f=0,d=0;d<16;d++)for(la[d]=f,a=0;a<1<<ca[d];a++)ia[f++]=d;for(f>>=7;d<T;d++)for(la[d]=f<<7,a=0;a<1<<ca[d]-7;a++)ia[256+f++]=d;for(b=0;b<=W;b++)g[b]=0;for(a=0;a<=143;)ga[2*a+1]=8,a++,g[8]++;for(;a<=255;)ga[2*a+1]=9,a++,g[9]++;for(;a<=279;)ga[2*a+1]=7,a++,g[7]++;for(;a<=287;)ga[2*a+1]=8,a++,g[8]++;for(n(ga,S+1,g),a=0;a<T;a++)ha[2*a+1]=5,ha[2*a]=k(a,5);ma=new e(ga,ba,R+1,S,W),na=new e(ha,ca,0,T,W),oa=new e(new Array(0),da,0,U,Y)}function p(a){var b;for(b=0;b<S;b++)a.dyn_ltree[2*b]=0;for(b=0;b<T;b++)a.dyn_dtree[2*b]=0;for(b=0;b<U;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*Z]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function q(a){a.bi_valid>8?h(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function r(a,b,c,d){q(a),d&&(h(a,c),h(a,~c)),G.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function s(a,b,c,d){var e=2*b,f=2*c;return a[e]<a[f]||a[e]===a[f]&&d[b]<=d[c]}function t(a,b,c){for(var d=a.heap[c],e=c<<1;e<=a.heap_len&&(e<a.heap_len&&s(b,a.heap[e+1],a.heap[e],a.depth)&&e++,!s(b,d,a.heap[e],a.depth));)a.heap[c]=a.heap[e],c=e,e<<=1;a.heap[c]=d}function u(a,b,c){var d,e,f,h,k=0;if(0!==a.last_lit)do d=a.pending_buf[a.d_buf+2*k]<<8|a.pending_buf[a.d_buf+2*k+1],e=a.pending_buf[a.l_buf+k],k++,0===d?j(a,e,b):(f=ja[e],j(a,f+R+1,b),h=ba[f],0!==h&&(e-=ka[f],i(a,e,h)),d--,f=g(d),j(a,f,c),h=ca[f],0!==h&&(d-=la[f],i(a,d,h)));while(k<a.last_lit);j(a,Z,b)}function v(a,b){var c,d,e,f=b.dyn_tree,g=b.stat_desc.static_tree,h=b.stat_desc.has_stree,i=b.stat_desc.elems,j=-1;for(a.heap_len=0,a.heap_max=V,c=0;c<i;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=j<2?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)t(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],t(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,t(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],m(a,b),n(f,j,a.bl_count)}function w(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;d<=c;d++)e=g,g=b[2*(d+1)+1],++h<i&&e===g||(h<j?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*$]++):h<=10?a.bl_tree[2*_]++:a.bl_tree[2*aa]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4))}function x(a,b,c){var d,e,f=-1,g=b[1],h=0,k=7,l=4;for(0===g&&(k=138,l=3),d=0;d<=c;d++)if(e=g,g=b[2*(d+1)+1],!(++h<k&&e===g)){if(h<l){do j(a,e,a.bl_tree);while(0!==--h)}else 0!==e?(e!==f&&(j(a,e,a.bl_tree),h--),j(a,$,a.bl_tree),i(a,h-3,2)):h<=10?(j(a,_,a.bl_tree),i(a,h-3,3)):(j(a,aa,a.bl_tree),i(a,h-11,7));h=0,f=e,0===g?(k=138,l=3):e===g?(k=6,l=3):(k=7,l=4)}}function y(a){var b;for(w(a,a.dyn_ltree,a.l_desc.max_code),w(a,a.dyn_dtree,a.d_desc.max_code),v(a,a.bl_desc),b=U-1;b>=3&&0===a.bl_tree[2*ea[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function z(a,b,c,d){var e;for(i(a,b-257,5),i(a,c-1,5),i(a,d-4,4),e=0;e<d;e++)i(a,a.bl_tree[2*ea[e]+1],3);x(a,a.dyn_ltree,b-1),x(a,a.dyn_dtree,c-1)}function A(a){var b,c=4093624447;for(b=0;b<=31;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return I;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return J;for(b=32;b<R;b++)if(0!==a.dyn_ltree[2*b])return J;return I}function B(a){pa||(o(),pa=!0),a.l_desc=new f(a.dyn_ltree,ma),a.d_desc=new f(a.dyn_dtree,na),a.bl_desc=new f(a.bl_tree,oa),a.bi_buf=0,a.bi_valid=0,p(a)}function C(a,b,c,d){i(a,(L<<1)+(d?1:0),3),r(a,b,c,!0)}function D(a){i(a,M<<1,3),j(a,Z,ga),l(a)}function E(a,b,c,d){var e,f,g=0;a.level>0?(a.strm.data_type===K&&(a.strm.data_type=A(a)),v(a,a.l_desc),v(a,a.d_desc),g=y(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,f<=e&&(e=f)):e=f=c+5,c+4<=e&&b!==-1?C(a,b,c,d):a.strategy===H||f===e?(i(a,(M<<1)+(d?1:0),3),u(a,ga,ha)):(i(a,(N<<1)+(d?1:0),3),z(a,a.l_desc.max_code+1,a.d_desc.max_code+1,g+1),u(a,a.dyn_ltree,a.dyn_dtree)),p(a),d&&q(a)}function F(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ja[c]+R+1)]++,a.dyn_dtree[2*g(b)]++),a.last_lit===a.lit_bufsize-1}var G=a(\"../utils/common\"),H=4,I=0,J=1,K=2,L=0,M=1,N=2,O=3,P=258,Q=29,R=256,S=R+1+Q,T=30,U=19,V=2*S+1,W=15,X=16,Y=7,Z=256,$=16,_=17,aa=18,ba=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ca=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],da=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ea=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],fa=512,ga=new Array(2*(S+2));d(ga);var ha=new Array(2*T);d(ha);var ia=new Array(fa);d(ia);var ja=new Array(P-O+1);d(ja);var ka=new Array(Q);d(ka);var la=new Array(T);d(la);var ma,na,oa,pa=!1;c._tr_init=B,c._tr_stored_block=C,c._tr_flush_block=E,c._tr_tally=F,c._tr_align=D},{\"../utils/common\":28}],40:[function(a,b,c){\"use strict\";function d(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=\"\",this.state=null,this.data_type=2,this.adler=0}b.exports=d},{}]},{},[10])(10)});",
            "type": "application/javascript",
            "title": "$:/plugins/tiddlywiki/jszip/jszip.js",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/jszip/license": {
            "text": "JSZip is dual licensed. You may use it under the MIT license *or* the GPLv3\nlicense.\n\nThe MIT License\n===============\n\nCopyright (c) 2009-2014 Stuart Knightley, David Duponchel, Franz Buchinger, António Afonso\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n\n\nGPL version 3\n=============\n\n                    GNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n                            Preamble\n\n  The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n  The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works.  By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users.  We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors.  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n  To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights.  Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received.  You must make sure that they, too, receive\nor can get the source code.  And you must show them these terms so they\nknow their rights.\n\n  Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n  For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software.  For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n  Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so.  This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software.  The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable.  Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts.  If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n  Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary.  To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n                       TERMS AND CONDITIONS\n\n  0. Definitions.\n\n  \"This License\" refers to version 3 of the GNU General Public License.\n\n  \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n  \"The Program\" refers to any copyrightable work licensed under this\nLicense.  Each licensee is addressed as \"you\".  \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n  To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy.  The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n  A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n  To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy.  Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n  To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies.  Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n  An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License.  If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n  1. Source Code.\n\n  The \"source code\" for a work means the preferred form of the work\nfor making modifications to it.  \"Object code\" means any non-source\nform of a work.\n\n  A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n  The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form.  A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n  The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities.  However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work.  For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n  The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n  The Corresponding Source for a work in source code form is that\nsame work.\n\n  2. Basic Permissions.\n\n  All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met.  This License explicitly affirms your unlimited\npermission to run the unmodified Program.  The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work.  This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n  You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force.  You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright.  Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n  Conveying under any other circumstances is permitted solely under\nthe conditions stated below.  Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n  3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n  No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n  When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n  4. Conveying Verbatim Copies.\n\n  You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n  You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n  5. Conveying Modified Source Versions.\n\n  You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n    a) The work must carry prominent notices stating that you modified\n    it, and giving a relevant date.\n\n    b) The work must carry prominent notices stating that it is\n    released under this License and any conditions added under section\n    7.  This requirement modifies the requirement in section 4 to\n    \"keep intact all notices\".\n\n    c) You must license the entire work, as a whole, under this\n    License to anyone who comes into possession of a copy.  This\n    License will therefore apply, along with any applicable section 7\n    additional terms, to the whole of the work, and all its parts,\n    regardless of how they are packaged.  This License gives no\n    permission to license the work in any other way, but it does not\n    invalidate such permission if you have separately received it.\n\n    d) If the work has interactive user interfaces, each must display\n    Appropriate Legal Notices; however, if the Program has interactive\n    interfaces that do not display Appropriate Legal Notices, your\n    work need not make them do so.\n\n  A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit.  Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n  6. Conveying Non-Source Forms.\n\n  You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n    a) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by the\n    Corresponding Source fixed on a durable physical medium\n    customarily used for software interchange.\n\n    b) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by a\n    written offer, valid for at least three years and valid for as\n    long as you offer spare parts or customer support for that product\n    model, to give anyone who possesses the object code either (1) a\n    copy of the Corresponding Source for all the software in the\n    product that is covered by this License, on a durable physical\n    medium customarily used for software interchange, for a price no\n    more than your reasonable cost of physically performing this\n    conveying of source, or (2) access to copy the\n    Corresponding Source from a network server at no charge.\n\n    c) Convey individual copies of the object code with a copy of the\n    written offer to provide the Corresponding Source.  This\n    alternative is allowed only occasionally and noncommercially, and\n    only if you received the object code with such an offer, in accord\n    with subsection 6b.\n\n    d) Convey the object code by offering access from a designated\n    place (gratis or for a charge), and offer equivalent access to the\n    Corresponding Source in the same way through the same place at no\n    further charge.  You need not require recipients to copy the\n    Corresponding Source along with the object code.  If the place to\n    copy the object code is a network server, the Corresponding Source\n    may be on a different server (operated by you or a third party)\n    that supports equivalent copying facilities, provided you maintain\n    clear directions next to the object code saying where to find the\n    Corresponding Source.  Regardless of what server hosts the\n    Corresponding Source, you remain obligated to ensure that it is\n    available for as long as needed to satisfy these requirements.\n\n    e) Convey the object code using peer-to-peer transmission, provided\n    you inform other peers where the object code and Corresponding\n    Source of the work are being offered to the general public at no\n    charge under subsection 6d.\n\n  A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n  A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling.  In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage.  For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product.  A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n  \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source.  The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n  If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information.  But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n  The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed.  Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n  Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n  7. Additional Terms.\n\n  \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law.  If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n  When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit.  (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.)  You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n  Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n    a) Disclaiming warranty or limiting liability differently from the\n    terms of sections 15 and 16 of this License; or\n\n    b) Requiring preservation of specified reasonable legal notices or\n    author attributions in that material or in the Appropriate Legal\n    Notices displayed by works containing it; or\n\n    c) Prohibiting misrepresentation of the origin of that material, or\n    requiring that modified versions of such material be marked in\n    reasonable ways as different from the original version; or\n\n    d) Limiting the use for publicity purposes of names of licensors or\n    authors of the material; or\n\n    e) Declining to grant rights under trademark law for use of some\n    trade names, trademarks, or service marks; or\n\n    f) Requiring indemnification of licensors and authors of that\n    material by anyone who conveys the material (or modified versions of\n    it) with contractual assumptions of liability to the recipient, for\n    any liability that these contractual assumptions directly impose on\n    those licensors and authors.\n\n  All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10.  If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term.  If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n  If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n  Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n  8. Termination.\n\n  You may not propagate or modify a covered work except as expressly\nprovided under this License.  Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n  However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n  Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n  Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License.  If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n  9. Acceptance Not Required for Having Copies.\n\n  You are not required to accept this License in order to receive or\nrun a copy of the Program.  Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance.  However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work.  These actions infringe copyright if you do\nnot accept this License.  Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n  10. Automatic Licensing of Downstream Recipients.\n\n  Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License.  You are not responsible\nfor enforcing compliance by third parties with this License.\n\n  An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations.  If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n  You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License.  For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n  11. Patents.\n\n  A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based.  The\nwork thus licensed is called the contributor's \"contributor version\".\n\n  A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version.  For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n  Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n  In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement).  To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n  If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients.  \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n  If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n  A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License.  You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n  Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n  12. No Surrender of Others' Freedom.\n\n  If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all.  For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n  13. Use with the GNU Affero General Public License.\n\n  Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work.  The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n  14. Revised Versions of this License.\n\n  The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n  Each version is given a distinguishing version number.  If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation.  If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n  If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n  Later license versions may give you additional or different\npermissions.  However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n  15. Disclaimer of Warranty.\n\n  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. Limitation of Liability.\n\n  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n  17. Interpretation of Sections 15 and 16.\n\n  If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n                     END OF TERMS AND CONDITIONS\n",
            "type": "text/plain",
            "title": "$:/plugins/tiddlywiki/jszip/license"
        },
        "$:/plugins/tiddlywiki/jszip/readme": {
            "title": "$:/plugins/tiddlywiki/jszip/readme",
            "text": "This plugin packages [[JSZip|https://stuk.github.io/jszip/]] for use by other plugins. It does not provide any end-user visible features.\n"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/tiddlywiki/xlsx-utils/controls": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/controls",
            "caption": "XLSX Utilities",
            "tags": "$:/tags/ControlPanel",
            "text": "\\define help-button(state)\n<$button popup=\"\"\"$:/state/expand-help/$state$\"\"\" class=\"tc-btn-invisible tc-popup-keep\">\n{{$:/core/images/help}}\n</$button>\n\\end\n\n\\define help-content(type,state)\n<$reveal tag=\"span\" state=\"\"\"$:/state/expand-help/$state$\"\"\" type=\"popup\" position=\"below\">\n<div class=\"tc-drop-down tc-popup-keep\" style=\"padding: 0.5em; max-width: 30em; white-space: normal;\">\n<$transclude tiddler=\"\"\"$:/plugins/tiddlywiki/xlsx-utils/docs/$type$\"\"\" mode=\"block\"/>\n</div>\n</$reveal>\n\\end\n\n\\define renameProxyTitle()\n$:/state/plugins/tiddlywiki/xlsx-utils/rename-$(currentTiddler)$\n\\end\n\n\\define rename-current-tiddler()\n<$edit-text tag=\"input\" tiddler=<<renameProxyTitle>> placeholder=\"Rename\" default=<<currentTiddler>> size=\"50\"/>\n<$reveal type=\"nomatch\" state=\"\"\"$(renameProxyTitle)$\"\"\" text=<<currentTiddler>> default=<<currentTiddler>> tag=\"span\">\n<$button>\n<$action-deletetiddler $tiddler=<<renameProxyTitle>>/>\ncancel\n</$button>\n<$button>\n<$action-sendmessage $message=\"tm-rename-tiddler\" from=<<currentTiddler>> to={{$(renameProxyTitle)$}}/>\n<$action-deletetiddler $tiddler=<<renameProxyTitle>>/>\nrename\n</$button>\n<$set name=\"proxy-title\" value={{$(renameProxyTitle)$}}>\n<$list filter=\"\"\"[<proxy-title>is[tiddler]]\"\"\">\nWarning: tiddler already exists\n</$list>\n</$set>\n</$reveal>\n\\end\n\n\\define expand-collapse-button(state)\n<$reveal state=\"\"\"$:/state/expand/$state$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"span\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/state/expand/$state$\"\"\" $value=\"no\"/>\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n<$reveal state=\"\"\"$:/state/expand/$state$\"\"\" type=\"nomatch\" text=\"yes\" default=\"no\" tag=\"span\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/state/expand/$state$\"\"\" $value=\"yes\"/>\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n\\end\n\n\\define expand-collapse-content(state,content,class)\n<$reveal state=\"\"\"$:/state/expand/$state$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"div\" class=\"\"\"$class$\"\"\" animate=\"yes\" retain=\"yes\">\n$content$\n</$reveal>\n\\end\n\n\\define up-down-buttons(parent,child)\n<$list filter=\"[list<$parent$>butfirst[]field:title<$child$>limit[1]]\" variable=\"listItem\">\n<$button class=\"tc-btn-invisible\">\n<$action-listops $tiddler=<<$parent$>> $subfilter=\"+[move:-1<$child$>]\"/>\n{{$:/core/images/chevron-up}}\n</$button>\n</$list>\n<$list filter=\"[list<$parent$>butlast[]field:title<$child$>limit[1]]\" variable=\"listItem\">\n<$button class=\"tc-btn-invisible\">\n<$action-listops $tiddler=<<$parent$>> $subfilter=\"+[move:1<$child$>]\"/>\n{{$:/core/images/chevron-down}}\n</$button>\n</$list>\n\\end\n\n\\define edit-button(state)\n<$reveal state=\"\"\"$:/state/edit/$state$\"\"\" type=\"nomatch\" text=\"yes\" default=\"no\" tag=\"span\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/state/edit/$state$\"\"\" $value=\"yes\"/>\n<$action-setfield $tiddler=\"\"\"$:/state/expand/$state$\"\"\" $value=\"yes\"/>\n{{$:/core/images/edit-button}}\n</$button>\n</$reveal>\n<$reveal state=\"\"\"$:/state/edit/$state$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"span\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/state/edit/$state$\"\"\" $value=\"no\"/>\n{{$:/core/images/done-button}} Finish editing\n</$button>\n</$reveal>\n\\end\n\n\\define delete-item-button(filter,parent,title,prompt)\n<$button class=\"tc-btn-invisible\">\n<$action-deletetiddler $filter=\"\"\"$filter$\"\"\"/>\n<$action-listops $tiddler=\"\"\"$parent$\"\"\" $subfilter=\"-[[$title$]]\"/>\n{{$:/core/images/delete-button}}$prompt$\n</$button>\n\\end\n\n\\define edit-field()\n<$select tiddler=<<field>> field=\"import-field-list-op\" default=\"none\">\n<option value=\"none\">Set field</option>\n<option value=\"append\">Append to list field</option>\n</$select>\n<$edit-text tiddler=<<field>> field=\"import-field-name\" size=\"10\" tag=\"input\" placeholder=\"field name\"default=\"\"/>\n<$reveal state=\"\"\"$(field)$!!import-field-list-op\"\"\" type=\"match\" text=\"none\" default=\"none\" tag=\"span\">\nto\n</$reveal>\n<$reveal state=\"\"\"$(field)$!!import-field-list-op\"\"\" type=\"match\" text=\"append\" default=\"none\" tag=\"span\">\nthe\n</$reveal>\n<$select tiddler=<<field>> field=\"import-field-type\" default=\"string\">\n<option value=\"date\">date</option>\n<option value=\"string\">string</option>\n</$select>\n<$select tiddler=<<field>> field=\"import-field-source\" default=\"column\">\n<option value=\"column\">from column</option>\n<option value=\"constant\">constant</option>\n</$select>\n<$reveal state=\"\"\"$(field)$!!import-field-source\"\"\" type=\"match\" text=\"column\" default=\"column\" tag=\"span\">\n<$edit-text tiddler=<<field>> field=\"import-field-column\" tag=\"input\" placeholder=\"column\" default=\"\"/>\nprefixed\n<$edit-text tiddler=<<field>> field=\"import-field-prefix\" tag=\"input\" placeholder=\"prefix\" default=\"\"/>,\nsuffixed\n<$edit-text tiddler=<<field>> field=\"import-field-suffix\" tag=\"input\" placeholder=\"suffix\" default=\"\"/>\n</$reveal>\n<$reveal state=\"\"\"$(field)$!!import-field-source\"\"\" type=\"match\" text=\"constant\" default=\"column\" tag=\"span\">\n<$edit-text tiddler=<<field>> field=\"import-field-value\" tag=\"input\" placeholder=\"constant\" default=\"\"/>\n</$reveal>\n<$checkbox tiddler=<<field>> field=\"import-field-skip-tiddler-if-blank\" checked=\"yes\" unchecked=\"no\" default=\"no\">\nSkip this tiddler when field blank\n<br/>\nTitle:\n<$tiddler tiddler=<<field>>>\n<<rename-current-tiddler>>\n</$tiddler>\n\\end\n\n\\define view-field()\n<$link to=<<field>>>\n<$list filter=\"[<field>!has[import-field-list-op]]\" variable=\"listItem\">\nSet field ''<$view tiddler=<<field>> field=\"import-field-name\"/>'' to\n</$list>\n<$list filter=\"[<field>get[import-field-list-op]prefix[append]]\" variable=\"listItem\">\nAppend to list field ''<$view tiddler=<<field>> field=\"import-field-name\"/>''\n</$list>\n<$list filter=\"[<field>has[import-field-prefix]]\" variable=\"listItem\">\n''<code><$view tiddler=<<field>> field=\"import-field-prefix\"/></code>'' +\n</$list>\n<$list filter=\"[<field>get[import-field-type]prefix[date]]\" variable=\"listItem\">\ndate\n</$list>\n<$list filter=\"[<field>get[import-field-source]prefix[column]]\" variable=\"listItem\">\nvalue from column ''<$view tiddler=<<field>> field=\"import-field-column\"/>''\n</$list>\n<$list filter=\"[<field>get[import-field-source]prefix[constant]]\" variable=\"listItem\">\nconstant ''<code><$view tiddler=<<field>> field=\"import-field-value\"/></code>''\n</$list>\n<$list filter=\"[<field>has[import-field-suffix]]\" variable=\"listItem\">\n+ ''<code><$view tiddler=<<field>> field=\"import-field-suffix\"/></code>''\n</$list>\n</$link>\n\\end\n\n\\define list-fields()\n<ul class=\"tc-import-spec-row-list\">\n<$list filter=\"[list<row>]\" variable=\"field\" emptyMessage=\"<div>(No field import specifiers)</div>\">\n<li class=\"tc-import-spec-field-wrapper\">\n<$reveal state=\"\"\"$:/state/edit/$(row)$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"span\">\n<<edit-field>>\n<<up-down-buttons parent:\"row\" child:\"field\">>\n<$macrocall $name=\"delete-item-button\" filter=\"[<field>]\" parent=<<row>> title=<<field>>/>\n</$reveal>\n<$reveal state=\"\"\"$:/state/edit/$(row)$\"\"\" type=\"nomatch\" text=\"yes\" default=\"no\" tag=\"span\">\n<<view-field>>\n</$reveal>\n</li>\n</$list>\n</ul>\n\\end\n\n\\define view-row-content()\n<$reveal state=\"\"\"$:/state/edit/$(row)$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"ul\" class=\"tc-import-spec-row-controls\" animate=\"yes\" retain=\"yes\">\n<li>\n<$macrocall $name=\"delete-item-button\" filter=\"[<row>] [<row>getlist[]]\" parent=<<sheet>> title=<<row>> prompt=\" Delete this row\"/>\n</li>\n<li>\nTitle:\n<$tiddler tiddler=<<row>>>\n<<rename-current-tiddler>>\n</$tiddler>\n</li>\n<li>\nRow type:\n<$select tiddler=<<row>> field=\"import-row-type\" default=\"by-field\">\n<option value=\"by-field\">By field</option>\n<option value=\"by-column\">By column</option>\n</$select>\n</li>\n<li>\n<$button class=\"tc-btn-invisible\">\n<$action-createtiddler $basetitle=\"$:/_ExcelImporter/ImportSpecifiers/Field\" $savetitle=\"$:/temp/newtiddler\" import-spec-role=\"field\" import-field-name=\"fieldname\" import-field-type=\"string\" import-field-source=\"column\" import-field-column=\"Column Name\" />\n<$action-listops $tiddler=<<row>> $subfilter=\"[{$:/temp/newtiddler}] +[putfirst[]]\"/>\n{{$:/core/images/new-button}} Add new field\n</$button>\n</li>\n</$reveal>\n<<list-fields>>\n\\end\n\n\\define view-row()\n<div class=\"tc-import-spec-row-wrapper\">\n<h5>\n<$macrocall $name=\"expand-collapse-button\" state=<<row>>/>\nEach row: <$list filter=\"[list<row>import-field-name[title]]\" variable=\"field\" emptyMessage=\"\n<$link to=<<field>>>(title field not set)</$link>\"><<view-field>></$list>\n<$macrocall $name=\"edit-button\" state=<<row>>/>\n<<up-down-buttons parent:\"sheet\" child:\"row\">>\n<$macrocall $name=\"help-button\" state=<<row>>/>\n</h5>\n<$macrocall $name=\"help-content\" type=\"row\" state=<<row>>/>\n<$macrocall $name=\"expand-collapse-content\" state=<<row>> content=<<view-row-content>> class=\"tc-import-spec-row\"/>\n</div>\n\\end\n\n\\define list-rows()\n<div class=\"tc-import-spec-sheet-list\">\n<$list filter=\"[list<sheet>]\" variable=\"row\" emptyMessage=\"<div>(No row import specifiers)</div>\">\n<<view-row>>\n</$list>\n\\end\n\n\\define view-sheet-content()\n<$reveal state=\"\"\"$:/state/edit/$(sheet)$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"ul\" class=\"tc-import-spec-sheet-controls\" animate=\"yes\" retain=\"yes\">\n<li>\n<$macrocall $name=\"delete-item-button\" filter=\"[<sheet>] [<sheet>getlist[]] [<sheet>getlist[]getlist[]]\" parent=<<workbook>> title=<<sheet>> prompt=\" Delete this sheet\"/>\n</li>\n<li>\nTitle:\n<$tiddler tiddler=<<sheet>>>\n<<rename-current-tiddler>>\n</$tiddler>\n</li>\n<li>\nImport sheet name:\n<$edit-text tiddler=<<sheet>> field=\"import-sheet-name\" size=\"50\"/>\n</li>\n<li>\n<$button class=\"tc-btn-invisible\">\n<$action-createtiddler $basetitle=\"$:/_ExcelImporter/ImportSpecifiers/Row\" $savetitle=\"$:/temp/newtiddler\" import-spec-role=\"row\"/>\n<$action-listops $tiddler=<<sheet>> $subfilter=\"[{$:/temp/newtiddler}] +[putfirst[]]\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/edit/]] }}} $value=\"yes\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/expand/]] }}} $value=\"yes\"/>\n{{$:/core/images/new-button}} Add new row\n</$button>\n</li>\n</$reveal>\n<<list-rows>>\n\\end\n\n\\define view-sheet()\n<div class=\"tc-import-spec-sheet-wrapper\">\n<h4>\n<$macrocall $name=\"expand-collapse-button\" state=<<sheet>>/>\nSheet: <$link to=<<sheet>>><$view tiddler=<<sheet>> field=\"import-sheet-name\"/></$link>\n<$macrocall $name=\"edit-button\" state=<<sheet>>/>\n<<up-down-buttons parent:\"workbook\" child:\"sheet\">>\n<$macrocall $name=\"help-button\" state=<<sheet>>/>\n</h4>\n<$macrocall $name=\"help-content\" type=\"sheet\" state=<<sheet>>/>\n<$macrocall $name=\"expand-collapse-content\" state=<<sheet>> content=<<view-sheet-content>> class=\"tc-import-spec-sheet\"/>\n</div>\n\\end\n\n\\define list-sheets()\n<div class=\"tc-import-spec-workbook-list\">\n<$list filter=\"[list<workbook>]\" variable=\"sheet\" emptyMessage=\"<div>(No sheet import specifiers)</div>\">\n<<view-sheet>>\n</$list>\n</div>\n\\end\n\n\\define view-workbook-content()\n<$reveal state=\"\"\"$:/state/edit/$(workbook)$\"\"\" type=\"match\" text=\"yes\" default=\"no\" tag=\"ul\" class=\"tc-import-spec-workbook-controls\" animate=\"yes\" retain=\"yes\">\n<li>\n<$macrocall $name=\"delete-item-button\" filter=\"[<workbook>] [<workbook>getlist[]] [<workbook>getlist[]getlist[]] [<workbook>getlist[]getlist[]getlist[]]\" prompt=\" Delete this workbook\"/>\n</li>\n<li>\nTitle:\n<$tiddler tiddler=<<workbook>>>\n<<rename-current-tiddler>>\n</$tiddler>\n</li>\n<li>\nCaption:\n<$edit-text tiddler=<<workbook>> field=\"caption\" size=\"50\"/>\n</li>\n<li>\n<$button class=\"tc-btn-invisible\">\n<$action-createtiddler $basetitle=\"$:/_ExcelImporter/ImportSpecifiers/Sheet\" $savetitle=\"$:/temp/newtiddler\" import-spec-role=\"sheet\" import-sheet-name=\"Sheet name\"/>\n<$action-listops $tiddler=<<workbook>> $subfilter=\"[{$:/temp/newtiddler}] +[putfirst[]]\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/edit/]] }}} $value=\"yes\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/expand/]] }}} $value=\"yes\"/>\n{{$:/core/images/new-button}} Add new sheet\n</$button>\n</li>\n</$reveal>\n<<list-sheets>>\n\\end\n\n\\define view-workbook()\n<div class=\"tc-import-spec-workbook-wrapper\">\n<h3>\n<$macrocall $name=\"expand-collapse-button\" state=<<workbook>>/>\nWorkbook: <$link to=<<workbook>>><$view tiddler=<<workbook>> field=\"caption\"/></$link>\n<$macrocall $name=\"edit-button\" state=<<workbook>>/>\n<$macrocall $name=\"help-button\" state=<<workbook>>/>\n</h3>\n<$macrocall $name=\"help-content\" type=\"workbook\" state=<<workbook>>/>\n<$macrocall $name=\"expand-collapse-content\" state=<<workbook>> content=<<view-workbook-content>> class=\"tc-import-spec-workbook\"/>\n</div>\n\\end\n\n\\define list-workbooks()\n<ul class=\"tc-import-spec-editor-controls\">\n<li>\n<$button class=\"tc-btn-invisible\">\n<$action-createtiddler $basetitle=\"$:/_ExcelImporter/ImportSpecifiers/Workbook\" $savetitle=\"$:/temp/newtiddler\" import-spec-role=\"workbook\" caption=\"New workbook\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/edit/]] }}} $value=\"yes\"/>\n<$action-setfield $tiddler={{{ [{$:/temp/newtiddler}addprefix[$:/state/expand/]] }}} $value=\"yes\"/>\n{{$:/core/images/new-button}} Add new workbook\n</$button>\n</li>\n</ul>\n<div class=\"tc-import-spec-editor-list\">\n<$list filter=\"[all[shadows+tiddlers]import-spec-role[workbook]sort[caption]]\" variable=\"workbook\">\n<<view-workbook>>\n</$list>\n</div>\n\\end\n\n<h1>\nControls for XLSX Spreadsheet Utilities\n</h1>\n\n<div class=\"tc-import-spec-selector\">\n<h2>\nCurrent Import Specification\n</h2>\n<$list filter=\"[all[shadows+tiddlers]import-spec-role[workbook]limit[1]]\" emptyMessage=\"\"\"\nThere are no import specifications available. Use the controls below to create one\n\"\"\">\nThis is the import specification that will be used for the next import of an `.XLSX` file\n<$select tiddler=\"$:/config/plugins/tiddlywiki/xlsx-utils/default-import-spec\">\n<$list filter=\"[all[shadows+tiddlers]import-spec-role[workbook]sort[caption]]\">\n<option value=<<currentTiddler>>><$text text={{!!caption}}/></option>\n</$list>\n</$select>\n</$list>\n</div>\n\n<div class=\"tc-import-spec-editor-wrapper\">\n<h2>\n Import Specifications\n<$macrocall $name=\"help-button\" state=\"\"/>\n</h2>\n<$macrocall $name=\"help-content\" type=\"editor\" state=\"\"/>\n<div class=\"tc-import-spec-editor\">\n<<list-workbooks>>\n</div>\n</div>\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/deserializer.js": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/deserializer.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/xlsx-utils/deserializer.js\ntype: application/javascript\nmodule-type: tiddlerdeserializer\n\nXLSX file deserializer\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse an XLSX file into tiddlers\n*/\nexports[\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"] = function(text,fields) {\n\t// Collect output tiddlers in an array\n\tvar results = [],\n\t\tXLSXImporter = require(\"$:/plugins/tiddlywiki/xlsx-utils/importer.js\").XLSXImporter,\n\t\timporter = new XLSXImporter({\n\t\t\ttext: text\n\t\t});\n\t// Return the output tiddlers\n\treturn importer.getResults();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlerdeserializer"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/docs/editor": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/docs/editor",
            "text": "!!! Import Specifications\n\nImport specifications govern how spreadsheets are converted into individual tiddlers.\n\nEach \"workbook\" describes how spreadsheets of a particular format should be converted.\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/docs/row": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/docs/row",
            "text": "!!! Row Import Specifications\n\nEach row import specification describes how one tiddler should be extracted from each row of the current sheet.\n\nNote that using multiple row import specifications within a sheet enables multiple tiddlers to be created from each row of the sheet.\n\nRows contain a list of field import specifications that describe how each field of the tiddler should be created.\n\n!!! Field Import Specifications\n\nField import specifications describe the value given to a particular field of a tiddler.\n\nThey follow a rich syntax for describing how each field of the tiddler is created. For example:\n\n* Set field `title` to string from column `Organization`\n* Set field `role` to string constant `organization`\n* Append to list field `list` the string from column `Country` prefixed with `Map:`\n\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/docs/sheet": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/docs/sheet",
            "text": "!!! Sheet Import Specifications\n\nEach sheet import specification describes how a named sheet within a workbook should be converted into individual tiddlers.\n\nSheets contain a list of row import specifications that describe how individual rows of the sheet should be handled.\n\nEach sheet has the name of the sheet that it handles.\n\nNote that the first row of each sheet is interpreted as the title of each column.\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/docs/workbook": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/docs/workbook",
            "text": "!!! Workbook Import Specifications\n\nEach workbook import specification describes how spreadsheets of a particular format should be converted into individual tiddlers.\n\nCreate a new workbook for each type of spreadsheet that you will be working with.\n\nWorkbooks contain a list of sheet import specifications that describe how individual sheets of the workbook should be handled.\n\nEach workbook has a caption that you can use to describe its purpose.\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/xlsx.js": {
            "text": "var old_exports = exports,JSZip = require(\"$:/plugins/tiddlywiki/jszip/jszip.js\");exports = {};if($tw.browser){module.exports=undefined;};/* xlsx.js (C) 2013-2015 SheetJS -- http://sheetjs.com */\n/* vim: set ts=2: */\n/*jshint -W041 */\n/*jshint funcscope:true, eqnull:true */\nvar XLSX = {};\n(function make_xlsx(XLSX){\nXLSX.version = '0.8.0';\nvar current_codepage = 1200, current_cptable;\nif(typeof module !== \"undefined\" && typeof require !== 'undefined') {\n\tif(typeof cptable === 'undefined') cptable = require('./dist/cpexcel');\n\tcurrent_cptable = cptable[current_codepage];\n}\nfunction reset_cp() { set_cp(1200); }\nvar set_cp = function(cp) { current_codepage = cp; };\n\nfunction char_codes(data) { var o = []; for(var i = 0, len = data.length; i < len; ++i) o[i] = data.charCodeAt(i); return o; }\nvar debom_xml = function(data) { return data; };\n\nvar _getchar = function _gc1(x) { return String.fromCharCode(x); };\nif(typeof cptable !== 'undefined') {\n\tset_cp = function(cp) { current_codepage = cp; current_cptable = cptable[cp]; };\n\tdebom_xml = function(data) {\n\t\tif(data.charCodeAt(0) === 0xFF && data.charCodeAt(1) === 0xFE) { return cptable.utils.decode(1200, char_codes(data.substr(2))); }\n\t\treturn data;\n\t};\n\t_getchar = function _gc2(x) {\n\t\tif(current_codepage === 1200) return String.fromCharCode(x);\n\t\treturn cptable.utils.decode(current_codepage, [x&255,x>>8])[0];\n\t};\n}\nvar Base64 = (function make_b64(){\n\tvar map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\treturn {\n\t\tencode: function(input, utf8) {\n\t\t\tvar o = \"\";\n\t\t\tvar c1, c2, c3, e1, e2, e3, e4;\n\t\t\tfor(var i = 0; i < input.length; ) {\n\t\t\t\tc1 = input.charCodeAt(i++);\n\t\t\t\tc2 = input.charCodeAt(i++);\n\t\t\t\tc3 = input.charCodeAt(i++);\n\t\t\t\te1 = c1 >> 2;\n\t\t\t\te2 = (c1 & 3) << 4 | c2 >> 4;\n\t\t\t\te3 = (c2 & 15) << 2 | c3 >> 6;\n\t\t\t\te4 = c3 & 63;\n\t\t\t\tif (isNaN(c2)) { e3 = e4 = 64; }\n\t\t\t\telse if (isNaN(c3)) { e4 = 64; }\n\t\t\t\to += map.charAt(e1) + map.charAt(e2) + map.charAt(e3) + map.charAt(e4);\n\t\t\t}\n\t\t\treturn o;\n\t\t},\n\t\tdecode: function b64_decode(input, utf8) {\n\t\t\tvar o = \"\";\n\t\t\tvar c1, c2, c3;\n\t\t\tvar e1, e2, e3, e4;\n\t\t\tinput = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n\t\t\tfor(var i = 0; i < input.length;) {\n\t\t\t\te1 = map.indexOf(input.charAt(i++));\n\t\t\t\te2 = map.indexOf(input.charAt(i++));\n\t\t\t\te3 = map.indexOf(input.charAt(i++));\n\t\t\t\te4 = map.indexOf(input.charAt(i++));\n\t\t\t\tc1 = e1 << 2 | e2 >> 4;\n\t\t\t\tc2 = (e2 & 15) << 4 | e3 >> 2;\n\t\t\t\tc3 = (e3 & 3) << 6 | e4;\n\t\t\t\to += String.fromCharCode(c1);\n\t\t\t\tif (e3 != 64) { o += String.fromCharCode(c2); }\n\t\t\t\tif (e4 != 64) { o += String.fromCharCode(c3); }\n\t\t\t}\n\t\t\treturn o;\n\t\t}\n\t};\n})();\nvar has_buf = (typeof Buffer !== 'undefined');\n\nfunction new_raw_buf(len) {\n\t/* jshint -W056 */\n\treturn new (has_buf ? Buffer : Array)(len);\n\t/* jshint +W056 */\n}\n\nfunction s2a(s) {\n\tif(has_buf) return new Buffer(s, \"binary\");\n\treturn s.split(\"\").map(function(x){ return x.charCodeAt(0) & 0xff; });\n}\n\nvar bconcat = function(bufs) { return [].concat.apply([], bufs); };\n\nvar chr0 = /\\u0000/g, chr1 = /[\\u0001-\\u0006]/;\n/* ssf.js (C) 2013-2014 SheetJS -- http://sheetjs.com */\n/*jshint -W041 */\nvar SSF = {};\nvar make_ssf = function make_ssf(SSF){\nSSF.version = '0.8.1';\nfunction _strrev(x) { var o = \"\", i = x.length-1; while(i>=0) o += x.charAt(i--); return o; }\nfunction fill(c,l) { var o = \"\"; while(o.length < l) o+=c; return o; }\nfunction pad0(v,d){var t=\"\"+v; return t.length>=d?t:fill('0',d-t.length)+t;}\nfunction pad_(v,d){var t=\"\"+v;return t.length>=d?t:fill(' ',d-t.length)+t;}\nfunction rpad_(v,d){var t=\"\"+v; return t.length>=d?t:t+fill(' ',d-t.length);}\nfunction pad0r1(v,d){var t=\"\"+Math.round(v); return t.length>=d?t:fill('0',d-t.length)+t;}\nfunction pad0r2(v,d){var t=\"\"+v; return t.length>=d?t:fill('0',d-t.length)+t;}\nvar p2_32 = Math.pow(2,32);\nfunction pad0r(v,d){if(v>p2_32||v<-p2_32) return pad0r1(v,d); var i = Math.round(v); return pad0r2(i,d); }\nfunction isgeneral(s, i) { return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; }\n/* Options */\nvar opts_fmt = [\n\t[\"date1904\", 0],\n\t[\"output\", \"\"],\n\t[\"WTF\", false]\n];\nfunction fixopts(o){\n\tfor(var y = 0; y != opts_fmt.length; ++y) if(o[opts_fmt[y][0]]===undefined) o[opts_fmt[y][0]]=opts_fmt[y][1];\n}\nSSF.opts = opts_fmt;\nvar table_fmt = {\n\t0:  'General',\n\t1:  '0',\n\t2:  '0.00',\n\t3:  '#,##0',\n\t4:  '#,##0.00',\n\t9:  '0%',\n\t10: '0.00%',\n\t11: '0.00E+00',\n\t12: '# ?/?',\n\t13: '# ??/??',\n\t14: 'm/d/yy',\n\t15: 'd-mmm-yy',\n\t16: 'd-mmm',\n\t17: 'mmm-yy',\n\t18: 'h:mm AM/PM',\n\t19: 'h:mm:ss AM/PM',\n\t20: 'h:mm',\n\t21: 'h:mm:ss',\n\t22: 'm/d/yy h:mm',\n\t37: '#,##0 ;(#,##0)',\n\t38: '#,##0 ;[Red](#,##0)',\n\t39: '#,##0.00;(#,##0.00)',\n\t40: '#,##0.00;[Red](#,##0.00)',\n\t45: 'mm:ss',\n\t46: '[h]:mm:ss',\n\t47: 'mmss.0',\n\t48: '##0.0E+0',\n\t49: '@',\n\t56: '\"上午/下午 \"hh\"時\"mm\"分\"ss\"秒 \"',\n\t65535: 'General'\n};\nvar days = [\n\t['Sun', 'Sunday'],\n\t['Mon', 'Monday'],\n\t['Tue', 'Tuesday'],\n\t['Wed', 'Wednesday'],\n\t['Thu', 'Thursday'],\n\t['Fri', 'Friday'],\n\t['Sat', 'Saturday']\n];\nvar months = [\n\t['J', 'Jan', 'January'],\n\t['F', 'Feb', 'February'],\n\t['M', 'Mar', 'March'],\n\t['A', 'Apr', 'April'],\n\t['M', 'May', 'May'],\n\t['J', 'Jun', 'June'],\n\t['J', 'Jul', 'July'],\n\t['A', 'Aug', 'August'],\n\t['S', 'Sep', 'September'],\n\t['O', 'Oct', 'October'],\n\t['N', 'Nov', 'November'],\n\t['D', 'Dec', 'December']\n];\nfunction frac(x, D, mixed) {\n\tvar sgn = x < 0 ? -1 : 1;\n\tvar B = x * sgn;\n\tvar P_2 = 0, P_1 = 1, P = 0;\n\tvar Q_2 = 1, Q_1 = 0, Q = 0;\n\tvar A = Math.floor(B);\n\twhile(Q_1 < D) {\n\t\tA = Math.floor(B);\n\t\tP = A * P_1 + P_2;\n\t\tQ = A * Q_1 + Q_2;\n\t\tif((B - A) < 0.0000000005) break;\n\t\tB = 1 / (B - A);\n\t\tP_2 = P_1; P_1 = P;\n\t\tQ_2 = Q_1; Q_1 = Q;\n\t}\n\tif(Q > D) { Q = Q_1; P = P_1; }\n\tif(Q > D) { Q = Q_2; P = P_2; }\n\tif(!mixed) return [0, sgn * P, Q];\n\tif(Q===0) throw \"Unexpected state: \"+P+\" \"+P_1+\" \"+P_2+\" \"+Q+\" \"+Q_1+\" \"+Q_2;\n\tvar q = Math.floor(sgn * P/Q);\n\treturn [q, sgn*P - q*Q, Q];\n}\nfunction general_fmt_int(v, opts) { return \"\"+v; }\nSSF._general_int = general_fmt_int;\nvar general_fmt_num = (function make_general_fmt_num() {\nvar gnr1 = /\\.(\\d*[1-9])0+$/, gnr2 = /\\.0*$/, gnr4 = /\\.(\\d*[1-9])0+/, gnr5 = /\\.0*[Ee]/, gnr6 = /(E[+-])(\\d)$/;\nfunction gfn2(v) {\n\tvar w = (v<0?12:11);\n\tvar o = gfn5(v.toFixed(12)); if(o.length <= w) return o;\n\to = v.toPrecision(10); if(o.length <= w) return o;\n\treturn v.toExponential(5);\n}\nfunction gfn3(v) {\n\tvar o = v.toFixed(11).replace(gnr1,\".$1\");\n\tif(o.length > (v<0?12:11)) o = v.toPrecision(6);\n\treturn o;\n}\nfunction gfn4(o) {\n\tfor(var i = 0; i != o.length; ++i) if((o.charCodeAt(i) | 0x20) === 101) return o.replace(gnr4,\".$1\").replace(gnr5,\"E\").replace(\"e\",\"E\").replace(gnr6,\"$10$2\");\n\treturn o;\n}\nfunction gfn5(o) {\n\t//for(var i = 0; i != o.length; ++i) if(o.charCodeAt(i) === 46) return o.replace(gnr2,\"\").replace(gnr1,\".$1\");\n\t//return o;\n\treturn o.indexOf(\".\") > -1 ? o.replace(gnr2,\"\").replace(gnr1,\".$1\") : o;\n}\nreturn function general_fmt_num(v, opts) {\n\tvar V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o;\n\tif(V >= -4 && V <= -1) o = v.toPrecision(10+V);\n\telse if(Math.abs(V) <= 9) o = gfn2(v);\n\telse if(V === 10) o = v.toFixed(10).substr(0,12);\n\telse o = gfn3(v);\n\treturn gfn5(gfn4(o));\n};})();\nSSF._general_num = general_fmt_num;\nfunction general_fmt(v, opts) {\n\tswitch(typeof v) {\n\t\tcase 'string': return v;\n\t\tcase 'boolean': return v ? \"TRUE\" : \"FALSE\";\n\t\tcase 'number': return (v|0) === v ? general_fmt_int(v, opts) : general_fmt_num(v, opts);\n\t}\n\tthrow new Error(\"unsupported value in General format: \" + v);\n}\nSSF._general = general_fmt;\nfunction fix_hijri(date, o) { return 0; }\nfunction parse_date_code(v,opts,b2) {\n\tif(v > 2958465 || v < 0) return null;\n\tvar date = (v|0), time = Math.floor(86400 * (v - date)), dow=0;\n\tvar dout=[];\n\tvar out={D:date, T:time, u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};\n\tif(Math.abs(out.u) < 1e-6) out.u = 0;\n\tfixopts(opts != null ? opts : (opts=[]));\n\tif(opts.date1904) date += 1462;\n\tif(out.u > 0.999) {\n\t\tout.u = 0;\n\t\tif(++time == 86400) { time = 0; ++date; }\n\t}\n\tif(date === 60) {dout = b2 ? [1317,10,29] : [1900,2,29]; dow=3;}\n\telse if(date === 0) {dout = b2 ? [1317,8,29] : [1900,1,0]; dow=6;}\n\telse {\n\t\tif(date > 60) --date;\n\t\t/* 1 = Jan 1 1900 */\n\t\tvar d = new Date(1900,0,1);\n\t\td.setDate(d.getDate() + date - 1);\n\t\tdout = [d.getFullYear(), d.getMonth()+1,d.getDate()];\n\t\tdow = d.getDay();\n\t\tif(date < 60) dow = (dow + 6) % 7;\n\t\tif(b2) dow = fix_hijri(d, dout);\n\t}\n\tout.y = dout[0]; out.m = dout[1]; out.d = dout[2];\n\tout.S = time % 60; time = Math.floor(time / 60);\n\tout.M = time % 60; time = Math.floor(time / 60);\n\tout.H = time;\n\tout.q = dow;\n\treturn out;\n}\nSSF.parse_date_code = parse_date_code;\n/*jshint -W086 */\nfunction write_date(type, fmt, val, ss0) {\n\tvar o=\"\", ss=0, tt=0, y = val.y, out, outl = 0;\n\tswitch(type) {\n\t\tcase 98: /* 'b' buddhist year */\n\t\t\ty = val.y + 543;\n\t\t\t/* falls through */\n\t\tcase 121: /* 'y' year */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = y % 100; outl = 2; break;\n\t\t\tdefault: out = y % 10000; outl = 4; break;\n\t\t} break;\n\t\tcase 109: /* 'm' month */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = val.m; outl = fmt.length; break;\n\t\t\tcase 3: return months[val.m-1][1];\n\t\t\tcase 5: return months[val.m-1][0];\n\t\t\tdefault: return months[val.m-1][2];\n\t\t} break;\n\t\tcase 100: /* 'd' day */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = val.d; outl = fmt.length; break;\n\t\t\tcase 3: return days[val.q][0];\n\t\t\tdefault: return days[val.q][1];\n\t\t} break;\n\t\tcase 104: /* 'h' 12-hour */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = 1+(val.H+11)%12; outl = fmt.length; break;\n\t\t\tdefault: throw 'bad hour format: ' + fmt;\n\t\t} break;\n\t\tcase 72: /* 'H' 24-hour */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = val.H; outl = fmt.length; break;\n\t\t\tdefault: throw 'bad hour format: ' + fmt;\n\t\t} break;\n\t\tcase 77: /* 'M' minutes */\n\t\tswitch(fmt.length) {\n\t\t\tcase 1: case 2: out = val.M; outl = fmt.length; break;\n\t\t\tdefault: throw 'bad minute format: ' + fmt;\n\t\t} break;\n\t\tcase 115: /* 's' seconds */\n\t\tif(val.u === 0) switch(fmt) {\n\t\t\tcase 's': case 'ss': return pad0(val.S, fmt.length);\n\t\t\tcase '.0': case '.00': case '.000':\n\t\t}\n\t\tswitch(fmt) {\n\t\t\tcase 's': case 'ss': case '.0': case '.00': case '.000':\n\t\t\t\tif(ss0 >= 2) tt = ss0 === 3 ? 1000 : 100;\n\t\t\t\telse tt = ss0 === 1 ? 10 : 1;\n\t\t\t\tss = Math.round((tt)*(val.S + val.u));\n\t\t\t\tif(ss >= 60*tt) ss = 0;\n\t\t\t\tif(fmt === 's') return ss === 0 ? \"0\" : \"\"+ss/tt;\n\t\t\t\to = pad0(ss,2 + ss0);\n\t\t\t\tif(fmt === 'ss') return o.substr(0,2);\n\t\t\t\treturn \".\" + o.substr(2,fmt.length-1);\n\t\t\tdefault: throw 'bad second format: ' + fmt;\n\t\t}\n\t\tcase 90: /* 'Z' absolute time */\n\t\tswitch(fmt) {\n\t\t\tcase '[h]': case '[hh]': out = val.D*24+val.H; break;\n\t\t\tcase '[m]': case '[mm]': out = (val.D*24+val.H)*60+val.M; break;\n\t\t\tcase '[s]': case '[ss]': out = ((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u); break;\n\t\t\tdefault: throw 'bad abstime format: ' + fmt;\n\t\t} outl = fmt.length === 3 ? 1 : 2; break;\n\t\tcase 101: /* 'e' era */\n\t\t\tout = y; outl = 1;\n\t}\n\tif(outl > 0) return pad0(out, outl); else return \"\";\n}\n/*jshint +W086 */\nfunction commaify(s) {\n\tif(s.length <= 3) return s;\n\tvar j = (s.length % 3), o = s.substr(0,j);\n\tfor(; j!=s.length; j+=3) o+=(o.length > 0 ? \",\" : \"\") + s.substr(j,3);\n\treturn o;\n}\nvar write_num = (function make_write_num(){\nvar pct1 = /%/g;\nfunction write_num_pct(type, fmt, val){\n\tvar sfmt = fmt.replace(pct1,\"\"), mul = fmt.length - sfmt.length;\n\treturn write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill(\"%\",mul);\n}\nfunction write_num_cm(type, fmt, val){\n\tvar idx = fmt.length - 1;\n\twhile(fmt.charCodeAt(idx-1) === 44) --idx;\n\treturn write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx)));\n}\nfunction write_num_exp(fmt, val){\n\tvar o;\n\tvar idx = fmt.indexOf(\"E\") - fmt.indexOf(\".\") - 1;\n\tif(fmt.match(/^#+0.0E\\+0$/)) {\n\t\tvar period = fmt.indexOf(\".\"); if(period === -1) period=fmt.indexOf('E');\n\t\tvar ee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;\n\t\tif(ee < 0) ee += period;\n\t\to = (val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);\n\t\tif(o.indexOf(\"e\") === -1) {\n\t\t\tvar fakee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E);\n\t\t\tif(o.indexOf(\".\") === -1) o = o[0] + \".\" + o.substr(1) + \"E+\" + (fakee - o.length+ee);\n\t\t\telse o += \"E+\" + (fakee - ee);\n\t\t\twhile(o.substr(0,2) === \"0.\") {\n\t\t\t\to = o[0] + o.substr(2,period) + \".\" + o.substr(2+period);\n\t\t\t\to = o.replace(/^0+([1-9])/,\"$1\").replace(/^0+\\./,\"0.\");\n\t\t\t}\n\t\t\to = o.replace(/\\+-/,\"-\");\n\t\t}\n\t\to = o.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/,function($$,$1,$2,$3) { return $1 + $2 + $3.substr(0,(period+ee)%period) + \".\" + $3.substr(ee) + \"E\"; });\n\t} else o = val.toExponential(idx);\n\tif(fmt.match(/E\\+00$/) && o.match(/e[+-]\\d$/)) o = o.substr(0,o.length-1) + \"0\" + o[o.length-1];\n\tif(fmt.match(/E\\-/) && o.match(/e\\+/)) o = o.replace(/e\\+/,\"e\");\n\treturn o.replace(\"e\",\"E\");\n}\nvar frac1 = /# (\\?+)( ?)\\/( ?)(\\d+)/;\nfunction write_num_f1(r, aval, sign) {\n\tvar den = parseInt(r[4]), rr = Math.round(aval * den), base = Math.floor(rr/den);\n\tvar myn = (rr - base*den), myd = den;\n\treturn sign + (base === 0 ? \"\" : \"\"+base) + \" \" + (myn === 0 ? fill(\" \", r[1].length + 1 + r[4].length) : pad_(myn,r[1].length) + r[2] + \"/\" + r[3] + pad0(myd,r[4].length));\n}\nfunction write_num_f2(r, aval, sign) {\n\treturn sign + (aval === 0 ? \"\" : \"\"+aval) + fill(\" \", r[1].length + 2 + r[4].length);\n}\nvar dec1 = /^#*0*\\.(0+)/;\nvar closeparen = /\\).*[0#]/;\nvar phone = /\\(###\\) ###\\\\?-####/;\nfunction hashq(str) {\n\tvar o = \"\", cc;\n\tfor(var i = 0; i != str.length; ++i) switch((cc=str.charCodeAt(i))) {\n\t\tcase 35: break;\n\t\tcase 63: o+= \" \"; break;\n\t\tcase 48: o+= \"0\"; break;\n\t\tdefault: o+= String.fromCharCode(cc);\n\t}\n\treturn o;\n}\nfunction rnd(val, d) { var dd = Math.pow(10,d); return \"\"+(Math.round(val * dd)/dd); }\nfunction dec(val, d) { return Math.round((val-Math.floor(val))*Math.pow(10,d)); }\nfunction flr(val) { if(val < 2147483647 && val > -2147483648) return \"\"+(val >= 0 ? (val|0) : (val-1|0)); return \"\"+Math.floor(val); }\nfunction write_num_flt(type, fmt, val) {\n\tif(type.charCodeAt(0) === 40 && !fmt.match(closeparen)) {\n\t\tvar ffmt = fmt.replace(/\\( */,\"\").replace(/ \\)/,\"\").replace(/\\)/,\"\");\n\t\tif(val >= 0) return write_num_flt('n', ffmt, val);\n\t\treturn '(' + write_num_flt('n', ffmt, -val) + ')';\n\t}\n\tif(fmt.charCodeAt(fmt.length - 1) === 44) return write_num_cm(type, fmt, val);\n\tif(fmt.indexOf('%') !== -1) return write_num_pct(type, fmt, val);\n\tif(fmt.indexOf('E') !== -1) return write_num_exp(fmt, val);\n\tif(fmt.charCodeAt(0) === 36) return \"$\"+write_num_flt(type,fmt.substr(fmt[1]==' '?2:1),val);\n\tvar o, oo;\n\tvar r, ri, ff, aval = Math.abs(val), sign = val < 0 ? \"-\" : \"\";\n\tif(fmt.match(/^00+$/)) return sign + pad0r(aval,fmt.length);\n\tif(fmt.match(/^[#?]+$/)) {\n\t\to = pad0r(val,0); if(o === \"0\") o = \"\";\n\t\treturn o.length > fmt.length ? o : hashq(fmt.substr(0,fmt.length-o.length)) + o;\n\t}\n\tif((r = fmt.match(frac1)) !== null) return write_num_f1(r, aval, sign);\n\tif(fmt.match(/^#+0+$/) !== null) return sign + pad0r(aval,fmt.length - fmt.indexOf(\"0\"));\n\tif((r = fmt.match(dec1)) !== null) {\n\t\to = rnd(val, r[1].length).replace(/^([^\\.]+)$/,\"$1.\"+r[1]).replace(/\\.$/,\".\"+r[1]).replace(/\\.(\\d*)$/,function($$, $1) { return \".\" + $1 + fill(\"0\", r[1].length-$1.length); });\n\t\treturn fmt.indexOf(\"0.\") !== -1 ? o : o.replace(/^0\\./,\".\");\n\t}\n\tfmt = fmt.replace(/^#+([0.])/, \"$1\");\n\tif((r = fmt.match(/^(0*)\\.(#*)$/)) !== null) {\n\t\treturn sign + rnd(aval, r[2].length).replace(/\\.(\\d*[1-9])0*$/,\".$1\").replace(/^(-?\\d*)$/,\"$1.\").replace(/^0\\./,r[1].length?\"0.\":\".\");\n\t}\n\tif((r = fmt.match(/^#,##0(\\.?)$/)) !== null) return sign + commaify(pad0r(aval,0));\n\tif((r = fmt.match(/^#,##0\\.([#0]*0)$/)) !== null) {\n\t\treturn val < 0 ? \"-\" + write_num_flt(type, fmt, -val) : commaify(\"\"+(Math.floor(val))) + \".\" + pad0(dec(val, r[1].length),r[1].length);\n\t}\n\tif((r = fmt.match(/^#,#*,#0/)) !== null) return write_num_flt(type,fmt.replace(/^#,#*,/,\"\"),val);\n\tif((r = fmt.match(/^([0#]+)(\\\\?-([0#]+))+$/)) !== null) {\n\t\to = _strrev(write_num_flt(type, fmt.replace(/[\\\\-]/g,\"\"), val));\n\t\tri = 0;\n\t\treturn _strrev(_strrev(fmt.replace(/\\\\/g,\"\")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==='0'?'0':\"\";}));\n\t}\n\tif(fmt.match(phone) !== null) {\n\t\to = write_num_flt(type, \"##########\", val);\n\t\treturn \"(\" + o.substr(0,3) + \") \" + o.substr(3, 3) + \"-\" + o.substr(6);\n\t}\n\tvar oa = \"\";\n\tif((r = fmt.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/)) !== null) {\n\t\tri = Math.min(r[4].length,7);\n\t\tff = frac(aval, Math.pow(10,ri)-1, false);\n\t\to = \"\" + sign;\n\t\toa = write_num(\"n\", r[1], ff[1]);\n\t\tif(oa[oa.length-1] == \" \") oa = oa.substr(0,oa.length-1) + \"0\";\n\t\to += oa + r[2] + \"/\" + r[3];\n\t\toa = rpad_(ff[2],ri);\n\t\tif(oa.length < r[4].length) oa = hashq(r[4].substr(r[4].length-oa.length)) + oa;\n\t\to += oa;\n\t\treturn o;\n\t}\n\tif((r = fmt.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/)) !== null) {\n\t\tri = Math.min(Math.max(r[1].length, r[4].length),7);\n\t\tff = frac(aval, Math.pow(10,ri)-1, true);\n\t\treturn sign + (ff[0]||(ff[1] ? \"\" : \"0\")) + \" \" + (ff[1] ? pad_(ff[1],ri) + r[2] + \"/\" + r[3] + rpad_(ff[2],ri): fill(\" \", 2*ri+1 + r[2].length + r[3].length));\n\t}\n\tif((r = fmt.match(/^[#0?]+$/)) !== null) {\n\t\to = pad0r(val, 0);\n\t\tif(fmt.length <= o.length) return o;\n\t\treturn hashq(fmt.substr(0,fmt.length-o.length)) + o;\n\t}\n  if((r = fmt.match(/^([#0?]+)\\.([#0]+)$/)) !== null) {\n\t\to = \"\" + val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,\"$1\");\n\t\tri = o.indexOf(\".\");\n\t\tvar lres = fmt.indexOf(\".\") - ri, rres = fmt.length - o.length - lres;\n\t\treturn hashq(fmt.substr(0,lres) + o + fmt.substr(fmt.length-rres));\n\t}\n\tif((r = fmt.match(/^00,000\\.([#0]*0)$/)) !== null) {\n\t\tri = dec(val, r[1].length);\n\t\treturn val < 0 ? \"-\" + write_num_flt(type, fmt, -val) : commaify(flr(val)).replace(/^\\d,\\d{3}$/,\"0$&\").replace(/^\\d*$/,function($$) { return \"00,\" + ($$.length < 3 ? pad0(0,3-$$.length) : \"\") + $$; }) + \".\" + pad0(ri,r[1].length);\n\t}\n\tswitch(fmt) {\n\t\tcase \"#,###\": var x = commaify(pad0r(aval,0)); return x !== \"0\" ? sign + x : \"\";\n\t\tdefault:\n\t}\n\tthrow new Error(\"unsupported format |\" + fmt + \"|\");\n}\nfunction write_num_cm2(type, fmt, val){\n\tvar idx = fmt.length - 1;\n\twhile(fmt.charCodeAt(idx-1) === 44) --idx;\n\treturn write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx)));\n}\nfunction write_num_pct2(type, fmt, val){\n\tvar sfmt = fmt.replace(pct1,\"\"), mul = fmt.length - sfmt.length;\n\treturn write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill(\"%\",mul);\n}\nfunction write_num_exp2(fmt, val){\n\tvar o;\n\tvar idx = fmt.indexOf(\"E\") - fmt.indexOf(\".\") - 1;\n\tif(fmt.match(/^#+0.0E\\+0$/)) {\n\t\tvar period = fmt.indexOf(\".\"); if(period === -1) period=fmt.indexOf('E');\n\t\tvar ee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E)%period;\n\t\tif(ee < 0) ee += period;\n\t\to = (val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);\n\t\tif(!o.match(/[Ee]/)) {\n\t\t\tvar fakee = Math.floor(Math.log(Math.abs(val))*Math.LOG10E);\n\t\t\tif(o.indexOf(\".\") === -1) o = o[0] + \".\" + o.substr(1) + \"E+\" + (fakee - o.length+ee);\n\t\t\telse o += \"E+\" + (fakee - ee);\n\t\t\to = o.replace(/\\+-/,\"-\");\n\t\t}\n\t\to = o.replace(/^([+-]?)(\\d*)\\.(\\d*)[Ee]/,function($$,$1,$2,$3) { return $1 + $2 + $3.substr(0,(period+ee)%period) + \".\" + $3.substr(ee) + \"E\"; });\n\t} else o = val.toExponential(idx);\n\tif(fmt.match(/E\\+00$/) && o.match(/e[+-]\\d$/)) o = o.substr(0,o.length-1) + \"0\" + o[o.length-1];\n\tif(fmt.match(/E\\-/) && o.match(/e\\+/)) o = o.replace(/e\\+/,\"e\");\n\treturn o.replace(\"e\",\"E\");\n}\nfunction write_num_int(type, fmt, val) {\n\tif(type.charCodeAt(0) === 40 && !fmt.match(closeparen)) {\n\t\tvar ffmt = fmt.replace(/\\( */,\"\").replace(/ \\)/,\"\").replace(/\\)/,\"\");\n\t\tif(val >= 0) return write_num_int('n', ffmt, val);\n\t\treturn '(' + write_num_int('n', ffmt, -val) + ')';\n\t}\n\tif(fmt.charCodeAt(fmt.length - 1) === 44) return write_num_cm2(type, fmt, val);\n\tif(fmt.indexOf('%') !== -1) return write_num_pct2(type, fmt, val);\n\tif(fmt.indexOf('E') !== -1) return write_num_exp2(fmt, val);\n\tif(fmt.charCodeAt(0) === 36) return \"$\"+write_num_int(type,fmt.substr(fmt[1]==' '?2:1),val);\n\tvar o;\n\tvar r, ri, ff, aval = Math.abs(val), sign = val < 0 ? \"-\" : \"\";\n\tif(fmt.match(/^00+$/)) return sign + pad0(aval,fmt.length);\n\tif(fmt.match(/^[#?]+$/)) {\n\t\to = (\"\"+val); if(val === 0) o = \"\";\n\t\treturn o.length > fmt.length ? o : hashq(fmt.substr(0,fmt.length-o.length)) + o;\n\t}\n\tif((r = fmt.match(frac1)) !== null) return write_num_f2(r, aval, sign);\n\tif(fmt.match(/^#+0+$/) !== null) return sign + pad0(aval,fmt.length - fmt.indexOf(\"0\"));\n\tif((r = fmt.match(dec1)) !== null) {\n\t\to = (\"\"+val).replace(/^([^\\.]+)$/,\"$1.\"+r[1]).replace(/\\.$/,\".\"+r[1]).replace(/\\.(\\d*)$/,function($$, $1) { return \".\" + $1 + fill(\"0\", r[1].length-$1.length); });\n\t\treturn fmt.indexOf(\"0.\") !== -1 ? o : o.replace(/^0\\./,\".\");\n\t}\n\tfmt = fmt.replace(/^#+([0.])/, \"$1\");\n\tif((r = fmt.match(/^(0*)\\.(#*)$/)) !== null) {\n\t\treturn sign + (\"\"+aval).replace(/\\.(\\d*[1-9])0*$/,\".$1\").replace(/^(-?\\d*)$/,\"$1.\").replace(/^0\\./,r[1].length?\"0.\":\".\");\n\t}\n\tif((r = fmt.match(/^#,##0(\\.?)$/)) !== null) return sign + commaify((\"\"+aval));\n\tif((r = fmt.match(/^#,##0\\.([#0]*0)$/)) !== null) {\n\t\treturn val < 0 ? \"-\" + write_num_int(type, fmt, -val) : commaify((\"\"+val)) + \".\" + fill('0',r[1].length);\n\t}\n\tif((r = fmt.match(/^#,#*,#0/)) !== null) return write_num_int(type,fmt.replace(/^#,#*,/,\"\"),val);\n\tif((r = fmt.match(/^([0#]+)(\\\\?-([0#]+))+$/)) !== null) {\n\t\to = _strrev(write_num_int(type, fmt.replace(/[\\\\-]/g,\"\"), val));\n\t\tri = 0;\n\t\treturn _strrev(_strrev(fmt.replace(/\\\\/g,\"\")).replace(/[0#]/g,function(x){return ri<o.length?o[ri++]:x==='0'?'0':\"\";}));\n\t}\n\tif(fmt.match(phone) !== null) {\n\t\to = write_num_int(type, \"##########\", val);\n\t\treturn \"(\" + o.substr(0,3) + \") \" + o.substr(3, 3) + \"-\" + o.substr(6);\n\t}\n\tvar oa = \"\";\n\tif((r = fmt.match(/^([#0?]+)( ?)\\/( ?)([#0?]+)/)) !== null) {\n\t\tri = Math.min(r[4].length,7);\n\t\tff = frac(aval, Math.pow(10,ri)-1, false);\n\t\to = \"\" + sign;\n\t\toa = write_num(\"n\", r[1], ff[1]);\n\t\tif(oa[oa.length-1] == \" \") oa = oa.substr(0,oa.length-1) + \"0\";\n\t\to += oa + r[2] + \"/\" + r[3];\n\t\toa = rpad_(ff[2],ri);\n\t\tif(oa.length < r[4].length) oa = hashq(r[4].substr(r[4].length-oa.length)) + oa;\n\t\to += oa;\n\t\treturn o;\n\t}\n\tif((r = fmt.match(/^# ([#0?]+)( ?)\\/( ?)([#0?]+)/)) !== null) {\n\t\tri = Math.min(Math.max(r[1].length, r[4].length),7);\n\t\tff = frac(aval, Math.pow(10,ri)-1, true);\n\t\treturn sign + (ff[0]||(ff[1] ? \"\" : \"0\")) + \" \" + (ff[1] ? pad_(ff[1],ri) + r[2] + \"/\" + r[3] + rpad_(ff[2],ri): fill(\" \", 2*ri+1 + r[2].length + r[3].length));\n\t}\n\tif((r = fmt.match(/^[#0?]+$/)) !== null) {\n\t\to = \"\" + val;\n\t\tif(fmt.length <= o.length) return o;\n\t\treturn hashq(fmt.substr(0,fmt.length-o.length)) + o;\n\t}\n\tif((r = fmt.match(/^([#0]+)\\.([#0]+)$/)) !== null) {\n\t\to = \"\" + val.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,\"$1\");\n\t\tri = o.indexOf(\".\");\n\t\tvar lres = fmt.indexOf(\".\") - ri, rres = fmt.length - o.length - lres;\n\t\treturn hashq(fmt.substr(0,lres) + o + fmt.substr(fmt.length-rres));\n\t}\n\tif((r = fmt.match(/^00,000\\.([#0]*0)$/)) !== null) {\n\t\treturn val < 0 ? \"-\" + write_num_int(type, fmt, -val) : commaify(\"\"+val).replace(/^\\d,\\d{3}$/,\"0$&\").replace(/^\\d*$/,function($$) { return \"00,\" + ($$.length < 3 ? pad0(0,3-$$.length) : \"\") + $$; }) + \".\" + pad0(0,r[1].length);\n\t}\n\tswitch(fmt) {\n\t\tcase \"#,###\": var x = commaify(\"\"+aval); return x !== \"0\" ? sign + x : \"\";\n\t\tdefault:\n\t}\n\tthrow new Error(\"unsupported format |\" + fmt + \"|\");\n}\nreturn function write_num(type, fmt, val) {\n\treturn (val|0) === val ? write_num_int(type, fmt, val) : write_num_flt(type, fmt, val);\n};})();\nfunction split_fmt(fmt) {\n\tvar out = [];\n\tvar in_str = false, cc;\n\tfor(var i = 0, j = 0; i < fmt.length; ++i) switch((cc=fmt.charCodeAt(i))) {\n\t\tcase 34: /* '\"' */\n\t\t\tin_str = !in_str; break;\n\t\tcase 95: case 42: case 92: /* '_' '*' '\\\\' */\n\t\t\t++i; break;\n\t\tcase 59: /* ';' */\n\t\t\tout[out.length] = fmt.substr(j,i-j);\n\t\t\tj = i+1;\n\t}\n\tout[out.length] = fmt.substr(j);\n\tif(in_str === true) throw new Error(\"Format |\" + fmt + \"| unterminated string \");\n\treturn out;\n}\nSSF._split = split_fmt;\nvar abstime = /\\[[HhMmSs]*\\]/;\nfunction eval_fmt(fmt, v, opts, flen) {\n\tvar out = [], o = \"\", i = 0, c = \"\", lst='t', q, dt, j, cc;\n\tvar hr='H';\n\t/* Tokenize */\n\twhile(i < fmt.length) {\n\t\tswitch((c = fmt[i])) {\n\t\t\tcase 'G': /* General */\n\t\t\t\tif(!isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt);\n\t\t\t\tout[out.length] = {t:'G', v:'General'}; i+=7; break;\n\t\t\tcase '\"': /* Literal text */\n\t\t\t\tfor(o=\"\";(cc=fmt.charCodeAt(++i)) !== 34 && i < fmt.length;) o += String.fromCharCode(cc);\n\t\t\t\tout[out.length] = {t:'t', v:o}; ++i; break;\n\t\t\tcase '\\\\': var w = fmt[++i], t = (w === \"(\" || w === \")\") ? w : 't';\n\t\t\t\tout[out.length] = {t:t, v:w}; ++i; break;\n\t\t\tcase '_': out[out.length] = {t:'t', v:\" \"}; i+=2; break;\n\t\t\tcase '@': /* Text Placeholder */\n\t\t\t\tout[out.length] = {t:'T', v:v}; ++i; break;\n\t\t\tcase 'B': case 'b':\n\t\t\t\tif(fmt[i+1] === \"1\" || fmt[i+1] === \"2\") {\n          if(dt==null) { dt=parse_date_code(v, opts, fmt[i+1] === \"2\"); if(dt==null) return \"\"; }\n\t\t\t\t\tout[out.length] = {t:'X', v:fmt.substr(i,2)}; lst = c; i+=2; break;\n\t\t\t\t}\n\t\t\t\t/* falls through */\n\t\t\tcase 'M': case 'D': case 'Y': case 'H': case 'S': case 'E':\n\t\t\t\tc = c.toLowerCase();\n\t\t\t\t/* falls through */\n\t\t\tcase 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g':\n\t\t\t\tif(v < 0) return \"\";\n\t\t\t\tif(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return \"\"; }\n\t\t\t\to = c; while(++i<fmt.length && fmt[i].toLowerCase() === c) o+=c;\n\t\t\t\tif(c === 'm' && lst.toLowerCase() === 'h') c = 'M'; /* m = minute */\n\t\t\t\tif(c === 'h') c = hr;\n\t\t\t\tout[out.length] = {t:c, v:o}; lst = c; break;\n\t\t\tcase 'A':\n\t\t\t\tq={t:c, v:\"A\"};\n\t\t\t\tif(dt==null) dt=parse_date_code(v, opts);\n        if(fmt.substr(i, 3) === \"A/P\") { if(dt!=null) q.v = dt.H >= 12 ? \"P\" : \"A\"; q.t = 'T'; hr='h';i+=3;}\n        else if(fmt.substr(i,5) === \"AM/PM\") { if(dt!=null) q.v = dt.H >= 12 ? \"PM\" : \"AM\"; q.t = 'T'; i+=5; hr='h'; }\n\t\t\t\telse { q.t = \"t\"; ++i; }\n\t\t\t\tif(dt==null && q.t === 'T') return \"\";\n\t\t\t\tout[out.length] = q; lst = c; break;\n\t\t\tcase '[':\n\t\t\t\to = c;\n\t\t\t\twhile(fmt[i++] !== ']' && i < fmt.length) o += fmt[i];\n\t\t\t\tif(o.substr(-1) !== ']') throw 'unterminated \"[\" block: |' + o + '|';\n\t\t\t\tif(o.match(abstime)) {\n\t\t\t\t\tif(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return \"\"; }\n\t\t\t\t\tout[out.length] = {t:'Z', v:o.toLowerCase()};\n\t\t\t\t} else { o=\"\"; }\n\t\t\t\tbreak;\n\t\t\t/* Numbers */\n\t\t\tcase '.':\n\t\t\t\tif(dt != null) {\n\t\t\t\t\to = c; while((c=fmt[++i]) === \"0\") o += c;\n\t\t\t\t\tout[out.length] = {t:'s', v:o}; break;\n\t\t\t\t}\n\t\t\t\t/* falls through */\n\t\t\tcase '0': case '#':\n\t\t\t\to = c; while(\"0#?.,E+-%\".indexOf(c=fmt[++i]) > -1 || c=='\\\\' && fmt[i+1] == \"-\" && \"0#\".indexOf(fmt[i+2])>-1) o += c;\n\t\t\t\tout[out.length] = {t:'n', v:o}; break;\n\t\t\tcase '?':\n\t\t\t\to = c; while(fmt[++i] === c) o+=c;\n\t\t\t\tq={t:c, v:o}; out[out.length] = q; lst = c; break;\n\t\t\tcase '*': ++i; if(fmt[i] == ' ' || fmt[i] == '*') ++i; break; // **\n\t\t\tcase '(': case ')': out[out.length] = {t:(flen===1?'t':c), v:c}; ++i; break;\n\t\t\tcase '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':\n\t\t\t\to = c; while(\"0123456789\".indexOf(fmt[++i]) > -1) o+=fmt[i];\n\t\t\t\tout[out.length] = {t:'D', v:o}; break;\n\t\t\tcase ' ': out[out.length] = {t:c, v:c}; ++i; break;\n\t\t\tdefault:\n\t\t\t\tif(\",$-+/():!^&'~{}<>=€acfijklopqrtuvwxz\".indexOf(c) === -1) throw new Error('unrecognized character ' + c + ' in ' + fmt);\n\t\t\t\tout[out.length] = {t:'t', v:c}; ++i; break;\n\t\t}\n\t}\n\tvar bt = 0, ss0 = 0, ssm;\n\tfor(i=out.length-1, lst='t'; i >= 0; --i) {\n\t\tswitch(out[i].t) {\n\t\t\tcase 'h': case 'H': out[i].t = hr; lst='h'; if(bt < 1) bt = 1; break;\n\t\t\tcase 's':\n\t\t\t\tif((ssm=out[i].v.match(/\\.0+$/))) ss0=Math.max(ss0,ssm[0].length-1);\n\t\t\t\tif(bt < 3) bt = 3;\n\t\t\t/* falls through */\n\t\t\tcase 'd': case 'y': case 'M': case 'e': lst=out[i].t; break;\n\t\t\tcase 'm': if(lst === 's') { out[i].t = 'M'; if(bt < 2) bt = 2; } break;\n\t\t\tcase 'X': if(out[i].v === \"B2\");\n\t\t\t\tbreak;\n\t\t\tcase 'Z':\n\t\t\t\tif(bt < 1 && out[i].v.match(/[Hh]/)) bt = 1;\n\t\t\t\tif(bt < 2 && out[i].v.match(/[Mm]/)) bt = 2;\n\t\t\t\tif(bt < 3 && out[i].v.match(/[Ss]/)) bt = 3;\n\t\t}\n\t}\n\tswitch(bt) {\n\t\tcase 0: break;\n\t\tcase 1:\n\t\t\tif(dt.u >= 0.5) { dt.u = 0; ++dt.S; }\n\t\t\tif(dt.S >=  60) { dt.S = 0; ++dt.M; }\n\t\t\tif(dt.M >=  60) { dt.M = 0; ++dt.H; }\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tif(dt.u >= 0.5) { dt.u = 0; ++dt.S; }\n\t\t\tif(dt.S >=  60) { dt.S = 0; ++dt.M; }\n\t\t\tbreak;\n\t}\n\t/* replace fields */\n\tvar nstr = \"\", jj;\n\tfor(i=0; i < out.length; ++i) {\n\t\tswitch(out[i].t) {\n\t\t\tcase 't': case 'T': case ' ': case 'D': break;\n\t\t\tcase 'X': out[i] = undefined; break;\n\t\t\tcase 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'b': case 'Z':\n\t\t\t\tout[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0);\n\t\t\t\tout[i].t = 't'; break;\n\t\t\tcase 'n': case '(': case '?':\n\t\t\t\tjj = i+1;\n\t\t\t\twhile(out[jj] != null && (\n\t\t\t\t\t(c=out[jj].t) === \"?\" || c === \"D\" ||\n\t\t\t\t\t(c === \" \" || c === \"t\") && out[jj+1] != null && (out[jj+1].t === '?' || out[jj+1].t === \"t\" && out[jj+1].v === '/') ||\n\t\t\t\t\tout[i].t === '(' && (c === ' ' || c === 'n' || c === ')') ||\n\t\t\t\t\tc === 't' && (out[jj].v === '/' || '$€'.indexOf(out[jj].v) > -1 || out[jj].v === ' ' && out[jj+1] != null && out[jj+1].t == '?')\n\t\t\t\t)) {\n\t\t\t\t\tout[i].v += out[jj].v;\n\t\t\t\t\tout[jj] = undefined; ++jj;\n\t\t\t\t}\n\t\t\t\tnstr += out[i].v;\n\t\t\t\ti = jj-1; break;\n\t\t\tcase 'G': out[i].t = 't'; out[i].v = general_fmt(v,opts); break;\n\t\t}\n\t}\n\tvar vv = \"\", myv, ostr;\n\tif(nstr.length > 0) {\n\t\tmyv = (v<0&&nstr.charCodeAt(0) === 45 ? -v : v); /* '-' */\n\t\tostr = write_num(nstr.charCodeAt(0) === 40 ? '(' : 'n', nstr, myv); /* '(' */\n\t\tjj=ostr.length-1;\n\t\tvar decpt = out.length;\n\t\tfor(i=0; i < out.length; ++i) if(out[i] != null && out[i].v.indexOf(\".\") > -1) { decpt = i; break; }\n\t\tvar lasti=out.length;\n\t\tif(decpt === out.length && ostr.indexOf(\"E\") === -1) {\n\t\t\tfor(i=out.length-1; i>= 0;--i) {\n\t\t\t\tif(out[i] == null || 'n?('.indexOf(out[i].t) === -1) continue;\n\t\t\t\tif(jj>=out[i].v.length-1) { jj -= out[i].v.length; out[i].v = ostr.substr(jj+1, out[i].v.length); }\n\t\t\t\telse if(jj < 0) out[i].v = \"\";\n\t\t\t\telse { out[i].v = ostr.substr(0, jj+1); jj = -1; }\n\t\t\t\tout[i].t = 't';\n\t\t\t\tlasti = i;\n\t\t\t}\n\t\t\tif(jj>=0 && lasti<out.length) out[lasti].v = ostr.substr(0,jj+1) + out[lasti].v;\n\t\t}\n\t\telse if(decpt !== out.length && ostr.indexOf(\"E\") === -1) {\n\t\t\tjj = ostr.indexOf(\".\")-1;\n\t\t\tfor(i=decpt; i>= 0; --i) {\n\t\t\t\tif(out[i] == null || 'n?('.indexOf(out[i].t) === -1) continue;\n\t\t\t\tj=out[i].v.indexOf(\".\")>-1&&i===decpt?out[i].v.indexOf(\".\")-1:out[i].v.length-1;\n\t\t\t\tvv = out[i].v.substr(j+1);\n\t\t\t\tfor(; j>=0; --j) {\n\t\t\t\t\tif(jj>=0 && (out[i].v[j] === \"0\" || out[i].v[j] === \"#\")) vv = ostr[jj--] + vv;\n\t\t\t\t}\n\t\t\t\tout[i].v = vv;\n\t\t\t\tout[i].t = 't';\n\t\t\t\tlasti = i;\n\t\t\t}\n\t\t\tif(jj>=0 && lasti<out.length) out[lasti].v = ostr.substr(0,jj+1) + out[lasti].v;\n\t\t\tjj = ostr.indexOf(\".\")+1;\n\t\t\tfor(i=decpt; i<out.length; ++i) {\n\t\t\t\tif(out[i] == null || 'n?('.indexOf(out[i].t) === -1 && i !== decpt ) continue;\n\t\t\t\tj=out[i].v.indexOf(\".\")>-1&&i===decpt?out[i].v.indexOf(\".\")+1:0;\n\t\t\t\tvv = out[i].v.substr(0,j);\n\t\t\t\tfor(; j<out[i].v.length; ++j) {\n\t\t\t\t\tif(jj<ostr.length) vv += ostr[jj++];\n\t\t\t\t}\n\t\t\t\tout[i].v = vv;\n\t\t\t\tout[i].t = 't';\n\t\t\t\tlasti = i;\n\t\t\t}\n\t\t}\n\t}\n\tfor(i=0; i<out.length; ++i) if(out[i] != null && 'n(?'.indexOf(out[i].t)>-1) {\n\t\tmyv = (flen >1 && v < 0 && i>0 && out[i-1].v === \"-\" ? -v:v);\n\t\tout[i].v = write_num(out[i].t, out[i].v, myv);\n\t\tout[i].t = 't';\n\t}\n\tvar retval = \"\";\n\tfor(i=0; i !== out.length; ++i) if(out[i] != null) retval += out[i].v;\n\treturn retval;\n}\nSSF._eval = eval_fmt;\nvar cfregex = /\\[[=<>]/;\nvar cfregex2 = /\\[([=<>]*)(-?\\d+\\.?\\d*)\\]/;\nfunction chkcond(v, rr) {\n\tif(rr == null) return false;\n\tvar thresh = parseFloat(rr[2]);\n\tswitch(rr[1]) {\n\t\tcase \"=\":  if(v == thresh) return true; break;\n\t\tcase \">\":  if(v >  thresh) return true; break;\n\t\tcase \"<\":  if(v <  thresh) return true; break;\n\t\tcase \"<>\": if(v != thresh) return true; break;\n\t\tcase \">=\": if(v >= thresh) return true; break;\n\t\tcase \"<=\": if(v <= thresh) return true; break;\n\t}\n\treturn false;\n}\nfunction choose_fmt(f, v) {\n\tvar fmt = split_fmt(f);\n\tvar l = fmt.length, lat = fmt[l-1].indexOf(\"@\");\n\tif(l<4 && lat>-1) --l;\n\tif(fmt.length > 4) throw \"cannot find right format for |\" + fmt + \"|\";\n\tif(typeof v !== \"number\") return [4, fmt.length === 4 || lat>-1?fmt[fmt.length-1]:\"@\"];\n\tswitch(fmt.length) {\n\t\tcase 1: fmt = lat>-1 ? [\"General\", \"General\", \"General\", fmt[0]] : [fmt[0], fmt[0], fmt[0], \"@\"]; break;\n\t\tcase 2: fmt = lat>-1 ? [fmt[0], fmt[0], fmt[0], fmt[1]] : [fmt[0], fmt[1], fmt[0], \"@\"]; break;\n\t\tcase 3: fmt = lat>-1 ? [fmt[0], fmt[1], fmt[0], fmt[2]] : [fmt[0], fmt[1], fmt[2], \"@\"]; break;\n\t\tcase 4: break;\n\t}\n\tvar ff = v > 0 ? fmt[0] : v < 0 ? fmt[1] : fmt[2];\n\tif(fmt[0].indexOf(\"[\") === -1 && fmt[1].indexOf(\"[\") === -1) return [l, ff];\n\tif(fmt[0].match(cfregex) != null || fmt[1].match(cfregex) != null) {\n\t\tvar m1 = fmt[0].match(cfregex2);\n\t\tvar m2 = fmt[1].match(cfregex2);\n\t\treturn chkcond(v, m1) ? [l, fmt[0]] : chkcond(v, m2) ? [l, fmt[1]] : [l, fmt[m1 != null && m2 != null ? 2 : 1]];\n\t}\n\treturn [l, ff];\n}\nfunction format(fmt,v,o) {\n\tfixopts(o != null ? o : (o=[]));\n\tvar sfmt = \"\";\n\tswitch(typeof fmt) {\n\t\tcase \"string\": sfmt = fmt; break;\n\t\tcase \"number\": sfmt = (o.table != null ? o.table : table_fmt)[fmt]; break;\n\t}\n\tif(isgeneral(sfmt,0)) return general_fmt(v, o);\n\tvar f = choose_fmt(sfmt, v);\n\tif(isgeneral(f[1])) return general_fmt(v, o);\n\tif(v === true) v = \"TRUE\"; else if(v === false) v = \"FALSE\";\n\telse if(v === \"\" || v == null) return \"\";\n\treturn eval_fmt(f[1], v, o, f[0]);\n}\nSSF._table = table_fmt;\nSSF.load = function load_entry(fmt, idx) { table_fmt[idx] = fmt; };\nSSF.format = format;\nSSF.get_table = function get_table() { return table_fmt; };\nSSF.load_table = function load_table(tbl) { for(var i=0; i!=0x0188; ++i) if(tbl[i] !== undefined) SSF.load(tbl[i], i); };\n};\nmake_ssf(SSF);\n/* map from xlml named formats to SSF TODO: localize */\nvar XLMLFormatMap = {\n\t\"General Number\": \"General\",\n\t\"General Date\": SSF._table[22],\n\t\"Long Date\": \"dddd, mmmm dd, yyyy\",\n\t\"Medium Date\": SSF._table[15],\n\t\"Short Date\": SSF._table[14],\n\t\"Long Time\": SSF._table[19],\n\t\"Medium Time\": SSF._table[18],\n\t\"Short Time\": SSF._table[20],\n\t\"Currency\": '\"$\"#,##0.00_);[Red]\\\\(\"$\"#,##0.00\\\\)',\n\t\"Fixed\": SSF._table[2],\n\t\"Standard\": SSF._table[4],\n\t\"Percent\": SSF._table[10],\n\t\"Scientific\": SSF._table[11],\n\t\"Yes/No\": '\"Yes\";\"Yes\";\"No\";@',\n\t\"True/False\": '\"True\";\"True\";\"False\";@',\n\t\"On/Off\": '\"Yes\";\"Yes\";\"No\";@'\n};\n\nvar DO_NOT_EXPORT_CFB = true;\n/* cfb.js (C) 2013-2014 SheetJS -- http://sheetjs.com */\n/* vim: set ts=2: */\n/*jshint eqnull:true */\n\n/* [MS-CFB] v20130118 */\nvar CFB = (function _CFB(){\nvar exports = {};\nexports.version = '0.10.2';\nfunction parse(file) {\nvar mver = 3; // major version\nvar ssz = 512; // sector size\nvar nmfs = 0; // number of mini FAT sectors\nvar ndfs = 0; // number of DIFAT sectors\nvar dir_start = 0; // first directory sector location\nvar minifat_start = 0; // first mini FAT sector location\nvar difat_start = 0; // first mini FAT sector location\n\nvar fat_addrs = []; // locations of FAT sectors\n\n/* [MS-CFB] 2.2 Compound File Header */\nvar blob = file.slice(0,512);\nprep_blob(blob, 0);\n\n/* major version */\nvar mv = check_get_mver(blob);\nmver = mv[0];\nswitch(mver) {\n\tcase 3: ssz = 512; break; case 4: ssz = 4096; break;\n\tdefault: throw \"Major Version: Expected 3 or 4 saw \" + mver;\n}\n\n/* reprocess header */\nif(ssz !== 512) { blob = file.slice(0,ssz); prep_blob(blob, 28 /* blob.l */); }\n/* Save header for final object */\nvar header = file.slice(0,ssz);\n\ncheck_shifts(blob, mver);\n\n// Number of Directory Sectors\nvar nds = blob.read_shift(4, 'i');\nif(mver === 3 && nds !== 0) throw '# Directory Sectors: Expected 0 saw ' + nds;\n\n// Number of FAT Sectors\n//var nfs = blob.read_shift(4, 'i');\nblob.l += 4;\n\n// First Directory Sector Location\ndir_start = blob.read_shift(4, 'i');\n\n// Transaction Signature\nblob.l += 4;\n\n// Mini Stream Cutoff Size\nblob.chk('00100000', 'Mini Stream Cutoff Size: ');\n\n// First Mini FAT Sector Location\nminifat_start = blob.read_shift(4, 'i');\n\n// Number of Mini FAT Sectors\nnmfs = blob.read_shift(4, 'i');\n\n// First DIFAT sector location\ndifat_start = blob.read_shift(4, 'i');\n\n// Number of DIFAT Sectors\nndfs = blob.read_shift(4, 'i');\n\n// Grab FAT Sector Locations\nfor(var q, j = 0; j < 109; ++j) { /* 109 = (512 - blob.l)>>>2; */\n\tq = blob.read_shift(4, 'i');\n\tif(q<0) break;\n\tfat_addrs[j] = q;\n}\n\n/** Break the file up into sectors */\nvar sectors = sectorify(file, ssz);\n\nsleuth_fat(difat_start, ndfs, sectors, ssz, fat_addrs);\n\n/** Chains */\nvar sector_list = make_sector_list(sectors, dir_start, fat_addrs, ssz);\n\nsector_list[dir_start].name = \"!Directory\";\nif(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = \"!MiniFAT\";\nsector_list[fat_addrs[0]].name = \"!FAT\";\nsector_list.fat_addrs = fat_addrs;\nsector_list.ssz = ssz;\n\n/* [MS-CFB] 2.6.1 Compound File Directory Entry */\nvar files = {}, Paths = [], FileIndex = [], FullPaths = [], FullPathDir = {};\nread_directory(dir_start, sector_list, sectors, Paths, nmfs, files, FileIndex);\n\nbuild_full_paths(FileIndex, FullPathDir, FullPaths, Paths);\n\nvar root_name = Paths.shift();\nPaths.root = root_name;\n\n/* [MS-CFB] 2.6.4 (Unicode 3.0.1 case conversion) */\nvar find_path = make_find_path(FullPaths, Paths, FileIndex, files, root_name);\n\nreturn {\n\traw: {header: header, sectors: sectors},\n\tFileIndex: FileIndex,\n\tFullPaths: FullPaths,\n\tFullPathDir: FullPathDir,\n\tfind: find_path\n};\n} // parse\n\n/* [MS-CFB] 2.2 Compound File Header -- read up to major version */\nfunction check_get_mver(blob) {\n\t// header signature 8\n\tblob.chk(HEADER_SIGNATURE, 'Header Signature: ');\n\n\t// clsid 16\n\tblob.chk(HEADER_CLSID, 'CLSID: ');\n\n\t// minor version 2\n\tvar mver = blob.read_shift(2, 'u');\n\n\treturn [blob.read_shift(2,'u'), mver];\n}\nfunction check_shifts(blob, mver) {\n\tvar shift = 0x09;\n\n\t// Byte Order\n\tblob.chk('feff', 'Byte Order: ');\n\n\t// Sector Shift\n\tswitch((shift = blob.read_shift(2))) {\n\t\tcase 0x09: if(mver !== 3) throw 'MajorVersion/SectorShift Mismatch'; break;\n\t\tcase 0x0c: if(mver !== 4) throw 'MajorVersion/SectorShift Mismatch'; break;\n\t\tdefault: throw 'Sector Shift: Expected 9 or 12 saw ' + shift;\n\t}\n\n\t// Mini Sector Shift\n\tblob.chk('0600', 'Mini Sector Shift: ');\n\n\t// Reserved\n\tblob.chk('000000000000', 'Reserved: ');\n}\n\n/** Break the file up into sectors */\nfunction sectorify(file, ssz) {\n\tvar nsectors = Math.ceil(file.length/ssz)-1;\n\tvar sectors = new Array(nsectors);\n\tfor(var i=1; i < nsectors; ++i) sectors[i-1] = file.slice(i*ssz,(i+1)*ssz);\n\tsectors[nsectors-1] = file.slice(nsectors*ssz);\n\treturn sectors;\n}\n\n/* [MS-CFB] 2.6.4 Red-Black Tree */\nfunction build_full_paths(FI, FPD, FP, Paths) {\n\tvar i = 0, L = 0, R = 0, C = 0, j = 0, pl = Paths.length;\n\tvar dad = new Array(pl), q = new Array(pl);\n\n\tfor(; i < pl; ++i) { dad[i]=q[i]=i; FP[i]=Paths[i]; }\n\n\tfor(; j < q.length; ++j) {\n\t\ti = q[j];\n\t\tL = FI[i].L; R = FI[i].R; C = FI[i].C;\n\t\tif(dad[i] === i) {\n\t\t\tif(L !== -1 /*NOSTREAM*/ && dad[L] !== L) dad[i] = dad[L];\n\t\t\tif(R !== -1 && dad[R] !== R) dad[i] = dad[R];\n\t\t}\n\t\tif(C !== -1 /*NOSTREAM*/) dad[C] = i;\n\t\tif(L !== -1) { dad[L] = dad[i]; q.push(L); }\n\t\tif(R !== -1) { dad[R] = dad[i]; q.push(R); }\n\t}\n\tfor(i=1; i !== pl; ++i) if(dad[i] === i) {\n\t\tif(R !== -1 /*NOSTREAM*/ && dad[R] !== R) dad[i] = dad[R];\n\t\telse if(L !== -1 && dad[L] !== L) dad[i] = dad[L];\n\t}\n\n\tfor(i=1; i < pl; ++i) {\n\t\tif(FI[i].type === 0 /* unknown */) continue;\n\t\tj = dad[i];\n\t\tif(j === 0) FP[i] = FP[0] + \"/\" + FP[i];\n\t\telse while(j !== 0) {\n\t\t\tFP[i] = FP[j] + \"/\" + FP[i];\n\t\t\tj = dad[j];\n\t\t}\n\t\tdad[i] = 0;\n\t}\n\n\tFP[0] += \"/\";\n\tfor(i=1; i < pl; ++i) {\n\t\tif(FI[i].type !== 2 /* stream */) FP[i] += \"/\";\n\t\tFPD[FP[i]] = FI[i];\n\t}\n}\n\n/* [MS-CFB] 2.6.4 */\nfunction make_find_path(FullPaths, Paths, FileIndex, files, root_name) {\n\tvar UCFullPaths = new Array(FullPaths.length);\n\tvar UCPaths = new Array(Paths.length), i;\n\tfor(i = 0; i < FullPaths.length; ++i) UCFullPaths[i] = FullPaths[i].toUpperCase().replace(chr0,'').replace(chr1,'!');\n\tfor(i = 0; i < Paths.length; ++i) UCPaths[i] = Paths[i].toUpperCase().replace(chr0,'').replace(chr1,'!');\n\treturn function find_path(path) {\n\t\tvar k;\n\t\tif(path.charCodeAt(0) === 47 /* \"/\" */) { k=true; path = root_name + path; }\n\t\telse k = path.indexOf(\"/\") !== -1;\n\t\tvar UCPath = path.toUpperCase().replace(chr0,'').replace(chr1,'!');\n\t\tvar w = k === true ? UCFullPaths.indexOf(UCPath) : UCPaths.indexOf(UCPath);\n\t\tif(w === -1) return null;\n\t\treturn k === true ? FileIndex[w] : files[Paths[w]];\n\t};\n}\n\n/** Chase down the rest of the DIFAT chain to build a comprehensive list\n    DIFAT chains by storing the next sector number as the last 32 bytes */\nfunction sleuth_fat(idx, cnt, sectors, ssz, fat_addrs) {\n\tvar q;\n\tif(idx === ENDOFCHAIN) {\n\t\tif(cnt !== 0) throw \"DIFAT chain shorter than expected\";\n\t} else if(idx !== -1 /*FREESECT*/) {\n\t\tvar sector = sectors[idx], m = (ssz>>>2)-1;\n\t\tfor(var i = 0; i < m; ++i) {\n\t\t\tif((q = __readInt32LE(sector,i*4)) === ENDOFCHAIN) break;\n\t\t\tfat_addrs.push(q);\n\t\t}\n\t\tsleuth_fat(__readInt32LE(sector,ssz-4),cnt - 1, sectors, ssz, fat_addrs);\n\t}\n}\n\n/** Follow the linked list of sectors for a given starting point */\nfunction get_sector_list(sectors, start, fat_addrs, ssz, chkd) {\n\tvar sl = sectors.length;\n\tvar buf, buf_chain;\n\tif(!chkd) chkd = new Array(sl);\n\tvar modulus = ssz - 1, j, jj;\n\tbuf = [];\n\tbuf_chain = [];\n\tfor(j=start; j>=0;) {\n\t\tchkd[j] = true;\n\t\tbuf[buf.length] = j;\n\t\tbuf_chain.push(sectors[j]);\n\t\tvar addr = fat_addrs[Math.floor(j*4/ssz)];\n\t\tjj = ((j*4) & modulus);\n\t\tif(ssz < 4 + jj) throw \"FAT boundary crossed: \" + j + \" 4 \"+ssz;\n\t\tj = __readInt32LE(sectors[addr], jj);\n\t}\n\treturn {nodes: buf, data:__toBuffer([buf_chain])};\n}\n\n/** Chase down the sector linked lists */\nfunction make_sector_list(sectors, dir_start, fat_addrs, ssz) {\n\tvar sl = sectors.length, sector_list = new Array(sl);\n\tvar chkd = new Array(sl), buf, buf_chain;\n\tvar modulus = ssz - 1, i, j, k, jj;\n\tfor(i=0; i < sl; ++i) {\n\t\tbuf = [];\n\t\tk = (i + dir_start); if(k >= sl) k-=sl;\n\t\tif(chkd[k] === true) continue;\n\t\tbuf_chain = [];\n\t\tfor(j=k; j>=0;) {\n\t\t\tchkd[j] = true;\n\t\t\tbuf[buf.length] = j;\n\t\t\tbuf_chain.push(sectors[j]);\n\t\t\tvar addr = fat_addrs[Math.floor(j*4/ssz)];\n\t\t\tjj = ((j*4) & modulus);\n\t\t\tif(ssz < 4 + jj) throw \"FAT boundary crossed: \" + j + \" 4 \"+ssz;\n\t\t\tj = __readInt32LE(sectors[addr], jj);\n\t\t}\n\t\tsector_list[k] = {nodes: buf, data:__toBuffer([buf_chain])};\n\t}\n\treturn sector_list;\n}\n\n/* [MS-CFB] 2.6.1 Compound File Directory Entry */\nfunction read_directory(dir_start, sector_list, sectors, Paths, nmfs, files, FileIndex) {\n\tvar blob;\n\tvar minifat_store = 0, pl = (Paths.length?2:0);\n\tvar sector = sector_list[dir_start].data;\n\tvar i = 0, namelen = 0, name, o, ctime, mtime;\n\tfor(; i < sector.length; i+= 128) {\n\t\tblob = sector.slice(i, i+128);\n\t\tprep_blob(blob, 64);\n\t\tnamelen = blob.read_shift(2);\n\t\tif(namelen === 0) continue;\n\t\tname = __utf16le(blob,0,namelen-pl);\n\t\tPaths.push(name);\n\t\to = {\n\t\t\tname:  name,\n\t\t\ttype:  blob.read_shift(1),\n\t\t\tcolor: blob.read_shift(1),\n\t\t\tL:     blob.read_shift(4, 'i'),\n\t\t\tR:     blob.read_shift(4, 'i'),\n\t\t\tC:     blob.read_shift(4, 'i'),\n\t\t\tclsid: blob.read_shift(16),\n\t\t\tstate: blob.read_shift(4, 'i')\n\t\t};\n\t\tctime = blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2);\n\t\tif(ctime !== 0) {\n\t\t\to.ctime = ctime; o.ct = read_date(blob, blob.l-8);\n\t\t}\n\t\tmtime = blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2) + blob.read_shift(2);\n\t\tif(mtime !== 0) {\n\t\t\to.mtime = mtime; o.mt = read_date(blob, blob.l-8);\n\t\t}\n\t\to.start = blob.read_shift(4, 'i');\n\t\to.size = blob.read_shift(4, 'i');\n\t\tif(o.type === 5) { /* root */\n\t\t\tminifat_store = o.start;\n\t\t\tif(nmfs > 0 && minifat_store !== ENDOFCHAIN) sector_list[minifat_store].name = \"!StreamData\";\n\t\t\t/*minifat_size = o.size;*/\n\t\t} else if(o.size >= 4096 /* MSCSZ */) {\n\t\t\to.storage = 'fat';\n\t\t\tif(sector_list[o.start] === undefined) sector_list[o.start] = get_sector_list(sectors, o.start, sector_list.fat_addrs, sector_list.ssz);\n\t\t\tsector_list[o.start].name = o.name;\n\t\t\to.content = sector_list[o.start].data.slice(0,o.size);\n\t\t\tprep_blob(o.content, 0);\n\t\t} else {\n\t\t\to.storage = 'minifat';\n\t\t\tif(minifat_store !== ENDOFCHAIN && o.start !== ENDOFCHAIN) {\n\t\t\t\to.content = sector_list[minifat_store].data.slice(o.start*MSSZ,o.start*MSSZ+o.size);\n\t\t\t\tprep_blob(o.content, 0);\n\t\t\t}\n\t\t}\n\t\tfiles[name] = o;\n\t\tFileIndex.push(o);\n\t}\n}\n\nfunction read_date(blob, offset) {\n\treturn new Date(( ( (__readUInt32LE(blob,offset+4)/1e7)*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7 ) - 11644473600)*1000);\n}\n\nvar fs;\nfunction readFileSync(filename, options) {\n\tif(fs === undefined) fs = require('fs');\n\treturn parse(fs.readFileSync(filename), options);\n}\n\nfunction readSync(blob, options) {\n\tswitch(options !== undefined && options.type !== undefined ? options.type : \"base64\") {\n\t\tcase \"file\": return readFileSync(blob, options);\n\t\tcase \"base64\": return parse(s2a(Base64.decode(blob)), options);\n\t\tcase \"binary\": return parse(s2a(blob), options);\n\t}\n\treturn parse(blob);\n}\n\n/** CFB Constants */\nvar MSSZ = 64; /* Mini Sector Size = 1<<6 */\n//var MSCSZ = 4096; /* Mini Stream Cutoff Size */\n/* 2.1 Compound File Sector Numbers and Types */\nvar ENDOFCHAIN = -2;\n/* 2.2 Compound File Header */\nvar HEADER_SIGNATURE = 'd0cf11e0a1b11ae1';\nvar HEADER_CLSID = '00000000000000000000000000000000';\nvar consts = {\n\t/* 2.1 Compund File Sector Numbers and Types */\n\tMAXREGSECT: -6,\n\tDIFSECT: -4,\n\tFATSECT: -3,\n\tENDOFCHAIN: ENDOFCHAIN,\n\tFREESECT: -1,\n\t/* 2.2 Compound File Header */\n\tHEADER_SIGNATURE: HEADER_SIGNATURE,\n\tHEADER_MINOR_VERSION: '3e00',\n\tMAXREGSID: -6,\n\tNOSTREAM: -1,\n\tHEADER_CLSID: HEADER_CLSID,\n\t/* 2.6.1 Compound File Directory Entry */\n\tEntryTypes: ['unknown','storage','stream','lockbytes','property','root']\n};\n\nexports.read = readSync;\nexports.parse = parse;\nexports.utils = {\n\tReadShift: ReadShift,\n\tCheckField: CheckField,\n\tprep_blob: prep_blob,\n\tbconcat: bconcat,\n\tconsts: consts\n};\n\nreturn exports;\n})();\n\nif(typeof require !== 'undefined' && typeof module !== 'undefined' && typeof DO_NOT_EXPORT_CFB === 'undefined') { module.exports = CFB; }\nfunction isval(x) { return x !== undefined && x !== null; }\n\nfunction keys(o) { return Object.keys(o); }\n\nfunction evert_key(obj, key) {\n\tvar o = [], K = keys(obj);\n\tfor(var i = 0; i !== K.length; ++i) o[obj[K[i]][key]] = K[i];\n\treturn o;\n}\n\nfunction evert(obj) {\n\tvar o = [], K = keys(obj);\n\tfor(var i = 0; i !== K.length; ++i) o[obj[K[i]]] = K[i];\n\treturn o;\n}\n\nfunction evert_num(obj) {\n\tvar o = [], K = keys(obj);\n\tfor(var i = 0; i !== K.length; ++i) o[obj[K[i]]] = parseInt(K[i],10);\n\treturn o;\n}\n\nfunction evert_arr(obj) {\n\tvar o = [], K = keys(obj);\n\tfor(var i = 0; i !== K.length; ++i) {\n\t\tif(o[obj[K[i]]] == null) o[obj[K[i]]] = [];\n\t\to[obj[K[i]]].push(K[i]);\n\t}\n\treturn o;\n}\n\n/* TODO: date1904 logic */\nfunction datenum(v, date1904) {\n\tif(date1904) v+=1462;\n\tvar epoch = Date.parse(v);\n\treturn (epoch + 2209161600000) / (24 * 60 * 60 * 1000);\n}\n\nfunction cc2str(arr) {\n\tvar o = \"\";\n\tfor(var i = 0; i != arr.length; ++i) o += String.fromCharCode(arr[i]);\n\treturn o;\n}\n\nfunction getdata(data) {\n\tif(!data) return null;\n\tif(data.name.substr(-4) === \".bin\") {\n\t\tif(data.data) return char_codes(data.data);\n\t\tif(data.asNodeBuffer && has_buf) return data.asNodeBuffer();\n\t\tif(data._data && data._data.getContent) return Array.prototype.slice.call(data._data.getContent());\n\t} else {\n\t\tif(data.data) return data.name.substr(-4) !== \".bin\" ? debom_xml(data.data) : char_codes(data.data);\n\t\tif(data.asNodeBuffer && has_buf) return debom_xml(data.asNodeBuffer().toString('binary'));\n\t\tif(data.asBinary) return debom_xml(data.asBinary());\n\t\tif(data._data && data._data.getContent) return debom_xml(cc2str(Array.prototype.slice.call(data._data.getContent(),0)));\n\t}\n\treturn null;\n}\n\nfunction safegetzipfile(zip, file) {\n\tvar f = file; if(zip.files[f]) return zip.files[f];\n\tf = file.toLowerCase(); if(zip.files[f]) return zip.files[f];\n\tf = f.replace(/\\//g,'\\\\'); if(zip.files[f]) return zip.files[f];\n\treturn null;\n}\n\nfunction getzipfile(zip, file) {\n\tvar o = safegetzipfile(zip, file);\n\tif(o == null) throw new Error(\"Cannot find file \" + file + \" in zip\");\n\treturn o;\n}\n\nfunction getzipdata(zip, file, safe) {\n\tif(!safe) return getdata(getzipfile(zip, file));\n\tif(!file) return null;\n\ttry { return getzipdata(zip, file); } catch(e) { return null; }\n}\n\nvar _fs, jszip;\nif(typeof JSZip !== 'undefined') jszip = JSZip;\nif (typeof exports !== 'undefined') {\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tif(has_buf && typeof jszip === 'undefined') jszip = require('js'+'zip');\n\t\tif(typeof jszip === 'undefined') jszip = require('./js'+'zip').JSZip;\n\t\t_fs = require('f'+'s');\n\t}\n}\nvar attregexg=/([\\w:]+)=((?:\")([^\"]*)(?:\")|(?:')([^']*)(?:'))/g;\nvar tagregex=/<[^>]*>/g;\nvar nsregex=/<\\w*:/, nsregex2 = /<(\\/?)\\w+:/;\nfunction parsexmltag(tag, skip_root) {\n\tvar z = [];\n\tvar eq = 0, c = 0;\n\tfor(; eq !== tag.length; ++eq) if((c = tag.charCodeAt(eq)) === 32 || c === 10 || c === 13) break;\n\tif(!skip_root) z[0] = tag.substr(0, eq);\n\tif(eq === tag.length) return z;\n\tvar m = tag.match(attregexg), j=0, w=\"\", v=\"\", i=0, q=\"\", cc=\"\";\n\tif(m) for(i = 0; i != m.length; ++i) {\n\t\tcc = m[i];\n\t\tfor(c=0; c != cc.length; ++c) if(cc.charCodeAt(c) === 61) break;\n\t\tq = cc.substr(0,c); v = cc.substring(c+2, cc.length-1);\n\t\tfor(j=0;j!=q.length;++j) if(q.charCodeAt(j) === 58) break;\n\t\tif(j===q.length) z[q] = v;\n\t\telse z[(j===5 && q.substr(0,5)===\"xmlns\"?\"xmlns\":\"\")+q.substr(j+1)] = v;\n\t}\n\treturn z;\n}\nfunction strip_ns(x) { return x.replace(nsregex2, \"<$1\"); }\n\nvar encodings = {\n\t'&quot;': '\"',\n\t'&apos;': \"'\",\n\t'&gt;': '>',\n\t'&lt;': '<',\n\t'&amp;': '&'\n};\nvar rencoding = evert(encodings);\nvar rencstr = \"&<>'\\\"\".split(\"\");\n\n// TODO: CP remap (need to read file version to determine OS)\nvar unescapexml = (function() {\n\tvar encregex = /&[a-z]*;/g, coderegex = /_x([\\da-fA-F]+)_/g;\n\treturn function unescapexml(text){\n\t\tvar s = text + '';\n\t\treturn s.replace(encregex, function($$) { return encodings[$$]; }).replace(coderegex,function(m,c) {return String.fromCharCode(parseInt(c,16));});\n\t};\n})();\n\nvar decregex=/[&<>'\"]/g, charegex = /[\\u0000-\\u0008\\u000b-\\u001f]/g;\nfunction escapexml(text){\n\tvar s = text + '';\n\treturn s.replace(decregex, function(y) { return rencoding[y]; }).replace(charegex,function(s) { return \"_x\" + (\"000\"+s.charCodeAt(0).toString(16)).substr(-4) + \"_\";});\n}\n\n/* TODO: handle codepages */\nvar xlml_fixstr = (function() {\n\tvar entregex = /&#(\\d+);/g;\n\tfunction entrepl($$,$1) { return String.fromCharCode(parseInt($1,10)); }\n\treturn function xlml_fixstr(str) { return str.replace(entregex,entrepl); };\n})();\n\nfunction parsexmlbool(value, tag) {\n\tswitch(value) {\n\t\tcase '1': case 'true': case 'TRUE': return true;\n\t\t/* case '0': case 'false': case 'FALSE':*/\n\t\tdefault: return false;\n\t}\n}\n\nvar utf8read = function utf8reada(orig) {\n\tvar out = \"\", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0;\n\twhile (i < orig.length) {\n\t\tc = orig.charCodeAt(i++);\n\t\tif (c < 128) { out += String.fromCharCode(c); continue; }\n\t\td = orig.charCodeAt(i++);\n\t\tif (c>191 && c<224) { out += String.fromCharCode(((c & 31) << 6) | (d & 63)); continue; }\n\t\te = orig.charCodeAt(i++);\n\t\tif (c < 240) { out += String.fromCharCode(((c & 15) << 12) | ((d & 63) << 6) | (e & 63)); continue; }\n\t\tf = orig.charCodeAt(i++);\n\t\tw = (((c & 7) << 18) | ((d & 63) << 12) | ((e & 63) << 6) | (f & 63))-65536;\n\t\tout += String.fromCharCode(0xD800 + ((w>>>10)&1023));\n\t\tout += String.fromCharCode(0xDC00 + (w&1023));\n\t}\n\treturn out;\n};\n\n\nif(has_buf) {\n\tvar utf8readb = function utf8readb(data) {\n\t\tvar out = new Buffer(2*data.length), w, i, j = 1, k = 0, ww=0, c;\n\t\tfor(i = 0; i < data.length; i+=j) {\n\t\t\tj = 1;\n\t\t\tif((c=data.charCodeAt(i)) < 128) w = c;\n\t\t\telse if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; }\n\t\t\telse if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; }\n\t\t\telse { j = 4;\n\t\t\t\tw = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63);\n\t\t\t\tw -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023);\n\t\t\t}\n\t\t\tif(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; }\n\t\t\tout[k++] = w%256; out[k++] = w>>>8;\n\t\t}\n\t\tout.length = k;\n\t\treturn out.toString('ucs2');\n\t};\n\tvar corpus = \"foo bar baz\\u00e2\\u0098\\u0083\\u00f0\\u009f\\u008d\\u00a3\";\n\tif(utf8read(corpus) == utf8readb(corpus)) utf8read = utf8readb;\n\tvar utf8readc = function utf8readc(data) { return Buffer(data, 'binary').toString('utf8'); };\n\tif(utf8read(corpus) == utf8readc(corpus)) utf8read = utf8readc;\n}\n\n// matches <foo>...</foo> extracts content\nvar matchtag = (function() {\n\tvar mtcache = {};\n\treturn function matchtag(f,g) {\n\t\tvar t = f+\"|\"+g;\n\t\tif(mtcache[t] !== undefined) return mtcache[t];\n\t\treturn (mtcache[t] = new RegExp('<(?:\\\\w+:)?'+f+'(?: xml:space=\"preserve\")?(?:[^>]*)>([^\\u2603]*)</(?:\\\\w+:)?'+f+'>',(g||\"\")));\n\t};\n})();\n\nvar vtregex = (function(){ var vt_cache = {};\n\treturn function vt_regex(bt) {\n\t\tif(vt_cache[bt] !== undefined) return vt_cache[bt];\n\t\treturn (vt_cache[bt] = new RegExp(\"<vt:\" + bt + \">(.*?)</vt:\" + bt + \">\", 'g') );\n};})();\nvar vtvregex = /<\\/?vt:variant>/g, vtmregex = /<vt:([^>]*)>(.*)</;\nfunction parseVector(data) {\n\tvar h = parsexmltag(data);\n\n\tvar matches = data.match(vtregex(h.baseType))||[];\n\tif(matches.length != h.size) throw \"unexpected vector length \" + matches.length + \" != \" + h.size;\n\tvar res = [];\n\tmatches.forEach(function(x) {\n\t\tvar v = x.replace(vtvregex,\"\").match(vtmregex);\n\t\tres.push({v:v[2], t:v[1]});\n\t});\n\treturn res;\n}\n\nvar wtregex = /(^\\s|\\s$|\\n)/;\nfunction writetag(f,g) {return '<' + f + (g.match(wtregex)?' xml:space=\"preserve\"' : \"\") + '>' + g + '</' + f + '>';}\n\nfunction wxt_helper(h) { return keys(h).map(function(k) { return \" \" + k + '=\"' + h[k] + '\"';}).join(\"\"); }\nfunction writextag(f,g,h) { return '<' + f + (isval(h) ? wxt_helper(h) : \"\") + (isval(g) ? (g.match(wtregex)?' xml:space=\"preserve\"' : \"\") + '>' + g + '</' + f : \"/\") + '>';}\n\nfunction write_w3cdtf(d, t) { try { return d.toISOString().replace(/\\.\\d*/,\"\"); } catch(e) { if(t) throw e; } }\n\nfunction write_vt(s) {\n\tswitch(typeof s) {\n\t\tcase 'string': return writextag('vt:lpwstr', s);\n\t\tcase 'number': return writextag((s|0)==s?'vt:i4':'vt:r8', String(s));\n\t\tcase 'boolean': return writextag('vt:bool',s?'true':'false');\n\t}\n\tif(s instanceof Date) return writextag('vt:filetime', write_w3cdtf(s));\n\tthrow new Error(\"Unable to serialize \" + s);\n}\n\nvar XML_HEADER = '<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\\r\\n';\nvar XMLNS = {\n\t'dc': 'http://purl.org/dc/elements/1.1/',\n\t'dcterms': 'http://purl.org/dc/terms/',\n\t'dcmitype': 'http://purl.org/dc/dcmitype/',\n\t'mx': 'http://schemas.microsoft.com/office/mac/excel/2008/main',\n\t'r': 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',\n\t'sjs': 'http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties',\n\t'vt': 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes',\n\t'xsi': 'http://www.w3.org/2001/XMLSchema-instance',\n\t'xsd': 'http://www.w3.org/2001/XMLSchema'\n};\n\nXMLNS.main = [\n\t'http://schemas.openxmlformats.org/spreadsheetml/2006/main',\n\t'http://purl.oclc.org/ooxml/spreadsheetml/main',\n\t'http://schemas.microsoft.com/office/excel/2006/main',\n\t'http://schemas.microsoft.com/office/excel/2006/2'\n];\n\nfunction readIEEE754(buf, idx, isLE, nl, ml) {\n\tif(isLE === undefined) isLE = true;\n\tif(!nl) nl = 8;\n\tif(!ml && nl === 8) ml = 52;\n\tvar e, m, el = nl * 8 - ml - 1, eMax = (1 << el) - 1, eBias = eMax >> 1;\n\tvar bits = -7, d = isLE ? -1 : 1, i = isLE ? (nl - 1) : 0, s = buf[idx + i];\n\n\ti += d;\n\te = s & ((1 << (-bits)) - 1); s >>>= (-bits); bits += el;\n\tfor (; bits > 0; e = e * 256 + buf[idx + i], i += d, bits -= 8);\n\tm = e & ((1 << (-bits)) - 1); e >>>= (-bits); bits += ml;\n\tfor (; bits > 0; m = m * 256 + buf[idx + i], i += d, bits -= 8);\n\tif (e === eMax) return m ? NaN : ((s ? -1 : 1) * Infinity);\n\telse if (e === 0) e = 1 - eBias;\n\telse { m = m + Math.pow(2, ml); e = e - eBias; }\n\treturn (s ? -1 : 1) * m * Math.pow(2, e - ml);\n}\n\nvar __toBuffer, ___toBuffer;\n__toBuffer = ___toBuffer = function toBuffer_(bufs) { var x = []; for(var i = 0; i < bufs[0].length; ++i) { x.push.apply(x, bufs[0][i]); } return x; };\nvar __utf16le, ___utf16le;\n__utf16le = ___utf16le = function utf16le_(b,s,e) { var ss=[]; for(var i=s; i<e; i+=2) ss.push(String.fromCharCode(__readUInt16LE(b,i))); return ss.join(\"\"); };\nvar __hexlify, ___hexlify;\n__hexlify = ___hexlify = function hexlify_(b,s,l) { return b.slice(s,(s+l)).map(function(x){return (x<16?\"0\":\"\") + x.toString(16);}).join(\"\"); };\nvar __utf8, ___utf8;\n__utf8 = ___utf8 = function(b,s,e) { var ss=[]; for(var i=s; i<e; i++) ss.push(String.fromCharCode(__readUInt8(b,i))); return ss.join(\"\"); };\nvar __lpstr, ___lpstr;\n__lpstr = ___lpstr = function lpstr_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : \"\";};\nvar __lpwstr, ___lpwstr;\n__lpwstr = ___lpwstr = function lpwstr_(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : \"\";};\nvar __double, ___double;\n__double = ___double = function(b, idx) { return readIEEE754(b, idx);};\n\nvar is_buf = function is_buf_a(a) { return Array.isArray(a); };\nif(has_buf) {\n\t__utf16le = function utf16le_b(b,s,e) { if(!Buffer.isBuffer(b)) return ___utf16le(b,s,e); return b.toString('utf16le',s,e); };\n\t__hexlify = function(b,s,l) { return Buffer.isBuffer(b) ? b.toString('hex',s,s+l) : ___hexlify(b,s,l); };\n\t__lpstr = function lpstr_b(b,i) { if(!Buffer.isBuffer(b)) return ___lpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : \"\";};\n\t__lpwstr = function lpwstr_b(b,i) { if(!Buffer.isBuffer(b)) return ___lpwstr(b, i); var len = 2*b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len-1);};\n\t__utf8 = function utf8_b(s,e) { return this.toString('utf8',s,e); };\n\t__toBuffer = function(bufs) { return (bufs[0].length > 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0]) : ___toBuffer(bufs);};\n\tbconcat = function(bufs) { return Buffer.isBuffer(bufs[0]) ? Buffer.concat(bufs) : [].concat.apply([], bufs); };\n\t__double = function double_(b,i) { if(Buffer.isBuffer(b)) return b.readDoubleLE(i); return ___double(b,i); };\n\tis_buf = function is_buf_b(a) { return Buffer.isBuffer(a) || Array.isArray(a); };\n}\n\n/* from js-xls */\nif(typeof cptable !== 'undefined') {\n\t__utf16le = function(b,s,e) { return cptable.utils.decode(1200, b.slice(s,e)); };\n\t__utf8 = function(b,s,e) { return cptable.utils.decode(65001, b.slice(s,e)); };\n\t__lpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? cptable.utils.decode(current_codepage, b.slice(i+4, i+4+len-1)) : \"\";};\n\t__lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? cptable.utils.decode(1200, b.slice(i+4,i+4+len-1)) : \"\";};\n}\n\nvar __readUInt8 = function(b, idx) { return b[idx]; };\nvar __readUInt16LE = function(b, idx) { return b[idx+1]*(1<<8)+b[idx]; };\nvar __readInt16LE = function(b, idx) { var u = b[idx+1]*(1<<8)+b[idx]; return (u < 0x8000) ? u : (0xffff - u + 1) * -1; };\nvar __readUInt32LE = function(b, idx) { return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]; };\nvar __readInt32LE = function(b, idx) { return (b[idx+3]<<24)|(b[idx+2]<<16)|(b[idx+1]<<8)|b[idx]; };\n\nvar ___unhexlify = function(s) { return s.match(/../g).map(function(x) { return parseInt(x,16);}); };\nvar __unhexlify = typeof Buffer !== \"undefined\" ? function(s) { return Buffer.isBuffer(s) ? new Buffer(s, 'hex') : ___unhexlify(s); } : ___unhexlify;\n\nfunction ReadShift(size, t) {\n\tvar o=\"\", oI, oR, oo=[], w, vv, i, loc;\n\tswitch(t) {\n\t\tcase 'dbcs':\n\t\t\tloc = this.l;\n\t\t\tif(has_buf && Buffer.isBuffer(this)) o = this.slice(this.l, this.l+2*size).toString(\"utf16le\");\n\t\t\telse for(i = 0; i != size; ++i) { o+=String.fromCharCode(__readUInt16LE(this, loc)); loc+=2; }\n\t\t\tsize *= 2;\n\t\t\tbreak;\n\n\t\tcase 'utf8': o = __utf8(this, this.l, this.l + size); break;\n\t\tcase 'utf16le': size *= 2; o = __utf16le(this, this.l, this.l + size); break;\n\n\t\t/* [MS-OLEDS] 2.1.4 LengthPrefixedAnsiString */\n\t\tcase 'lpstr': o = __lpstr(this, this.l); size = 5 + o.length; break;\n\t\t/* [MS-OLEDS] 2.1.5 LengthPrefixedUnicodeString */\n\t\tcase 'lpwstr': o = __lpwstr(this, this.l); size = 5 + o.length; if(o[o.length-1] == '\\u0000') size += 2; break;\n\n\t\tcase 'cstr': size = 0; o = \"\";\n\t\t\twhile((w=__readUInt8(this, this.l + size++))!==0) oo.push(_getchar(w));\n\t\t\to = oo.join(\"\"); break;\n\t\tcase 'wstr': size = 0; o = \"\";\n\t\t\twhile((w=__readUInt16LE(this,this.l +size))!==0){oo.push(_getchar(w));size+=2;}\n\t\t\tsize+=2; o = oo.join(\"\"); break;\n\n\t\t/* sbcs and dbcs support continue records in the SST way TODO codepages */\n\t\tcase 'dbcs-cont': o = \"\"; loc = this.l;\n\t\t\tfor(i = 0; i != size; ++i) {\n\t\t\t\tif(this.lens && this.lens.indexOf(loc) !== -1) {\n\t\t\t\t\tw = __readUInt8(this, loc);\n\t\t\t\t\tthis.l = loc + 1;\n\t\t\t\t\tvv = ReadShift.call(this, size-i, w ? 'dbcs-cont' : 'sbcs-cont');\n\t\t\t\t\treturn oo.join(\"\") + vv;\n\t\t\t\t}\n\t\t\t\too.push(_getchar(__readUInt16LE(this, loc)));\n\t\t\t\tloc+=2;\n\t\t\t} o = oo.join(\"\"); size *= 2; break;\n\n\t\tcase 'sbcs-cont': o = \"\"; loc = this.l;\n\t\t\tfor(i = 0; i != size; ++i) {\n\t\t\t\tif(this.lens && this.lens.indexOf(loc) !== -1) {\n\t\t\t\t\tw = __readUInt8(this, loc);\n\t\t\t\t\tthis.l = loc + 1;\n\t\t\t\t\tvv = ReadShift.call(this, size-i, w ? 'dbcs-cont' : 'sbcs-cont');\n\t\t\t\t\treturn oo.join(\"\") + vv;\n\t\t\t\t}\n\t\t\t\too.push(_getchar(__readUInt8(this, loc)));\n\t\t\t\tloc+=1;\n\t\t\t} o = oo.join(\"\"); break;\n\n\t\tdefault:\n\tswitch(size) {\n\t\tcase 1: oI = __readUInt8(this, this.l); this.l++; return oI;\n\t\tcase 2: oI = (t === 'i' ? __readInt16LE : __readUInt16LE)(this, this.l); this.l += 2; return oI;\n\t\tcase 4:\n\t\t\tif(t === 'i' || (this[this.l+3] & 0x80)===0) { oI = __readInt32LE(this, this.l); this.l += 4; return oI; }\n\t\t\telse { oR = __readUInt32LE(this, this.l); this.l += 4; return oR; } break;\n\t\tcase 8: if(t === 'f') { oR = __double(this, this.l); this.l += 8; return oR; }\n\t\t/* falls through */\n\t\tcase 16: o = __hexlify(this, this.l, size); break;\n\t}}\n\tthis.l+=size; return o;\n}\n\nfunction WriteShift(t, val, f) {\n\tvar size, i;\n\tif(f === 'dbcs') {\n\t\tfor(i = 0; i != val.length; ++i) this.writeUInt16LE(val.charCodeAt(i), this.l + 2 * i);\n\t\tsize = 2 * val.length;\n\t} else switch(t) {\n\t\tcase  1: size = 1; this[this.l] = val&255; break;\n\t\tcase  3: size = 3; this[this.l+2] = val & 255; val >>>= 8; this[this.l+1] = val&255; val >>>= 8; this[this.l] = val&255; break;\n\t\tcase  4: size = 4; this.writeUInt32LE(val, this.l); break;\n\t\tcase  8: size = 8; if(f === 'f') { this.writeDoubleLE(val, this.l); break; }\n\t\t/* falls through */\n\t\tcase 16: break;\n\t\tcase -4: size = 4; this.writeInt32LE(val, this.l); break;\n\t}\n\tthis.l += size; return this;\n}\n\nfunction CheckField(hexstr, fld) {\n\tvar m = __hexlify(this,this.l,hexstr.length>>1);\n\tif(m !== hexstr) throw fld + 'Expected ' + hexstr + ' saw ' + m;\n\tthis.l += hexstr.length>>1;\n}\n\nfunction prep_blob(blob, pos) {\n\tblob.l = pos;\n\tblob.read_shift = ReadShift;\n\tblob.chk = CheckField;\n\tblob.write_shift = WriteShift;\n}\n\nfunction parsenoop(blob, length) { blob.l += length; }\n\nfunction writenoop(blob, length) { blob.l += length; }\n\nfunction new_buf(sz) {\n\tvar o = new_raw_buf(sz);\n\tprep_blob(o, 0);\n\treturn o;\n}\n\n/* [MS-XLSB] 2.1.4 Record */\nfunction recordhopper(data, cb, opts) {\n\tvar tmpbyte, cntbyte, length;\n\tprep_blob(data, data.l || 0);\n\twhile(data.l < data.length) {\n\t\tvar RT = data.read_shift(1);\n\t\tif(RT & 0x80) RT = (RT & 0x7F) + ((data.read_shift(1) & 0x7F)<<7);\n\t\tvar R = XLSBRecordEnum[RT] || XLSBRecordEnum[0xFFFF];\n\t\ttmpbyte = data.read_shift(1);\n\t\tlength = tmpbyte & 0x7F;\n\t\tfor(cntbyte = 1; cntbyte <4 && (tmpbyte & 0x80); ++cntbyte) length += ((tmpbyte = data.read_shift(1)) & 0x7F)<<(7*cntbyte);\n\t\tvar d = R.f(data, length, opts);\n\t\tif(cb(d, R, RT)) return;\n\t}\n}\n\n/* control buffer usage for fixed-length buffers */\nfunction buf_array() {\n\tvar bufs = [], blksz = 2048;\n\tvar newblk = function ba_newblk(sz) {\n\t\tvar o = new_buf(sz);\n\t\tprep_blob(o, 0);\n\t\treturn o;\n\t};\n\n\tvar curbuf = newblk(blksz);\n\n\tvar endbuf = function ba_endbuf() {\n\t\tcurbuf.length = curbuf.l;\n\t\tif(curbuf.length > 0) bufs.push(curbuf);\n\t\tcurbuf = null;\n\t};\n\n\tvar next = function ba_next(sz) {\n\t\tif(sz < curbuf.length - curbuf.l) return curbuf;\n\t\tendbuf();\n\t\treturn (curbuf = newblk(Math.max(sz+1, blksz)));\n\t};\n\n\tvar end = function ba_end() {\n\t\tendbuf();\n\t\treturn __toBuffer([bufs]);\n\t};\n\n\tvar push = function ba_push(buf) { endbuf(); curbuf = buf; next(blksz); };\n\n\treturn { next:next, push:push, end:end, _bufs:bufs };\n}\n\nfunction write_record(ba, type, payload, length) {\n\tvar t = evert_RE[type], l;\n\tif(!length) length = XLSBRecordEnum[t].p || (payload||[]).length || 0;\n\tl = 1 + (t >= 0x80 ? 1 : 0) + 1 + length;\n\tif(length >= 0x80) ++l; if(length >= 0x4000) ++l; if(length >= 0x200000) ++l;\n\tvar o = ba.next(l);\n\tif(t <= 0x7F) o.write_shift(1, t);\n\telse {\n\t\to.write_shift(1, (t & 0x7F) + 0x80);\n\t\to.write_shift(1, (t >> 7));\n\t}\n\tfor(var i = 0; i != 4; ++i) {\n\t\tif(length >= 0x80) { o.write_shift(1, (length & 0x7F)+0x80); length >>= 7; }\n\t\telse { o.write_shift(1, length); break; }\n\t}\n\tif(length > 0 && is_buf(payload)) ba.push(payload);\n}\n/* XLS ranges enforced */\nfunction shift_cell_xls(cell, tgt) {\n\tif(tgt.s) {\n\t\tif(cell.cRel) cell.c += tgt.s.c;\n\t\tif(cell.rRel) cell.r += tgt.s.r;\n\t} else {\n\t\tcell.c += tgt.c;\n\t\tcell.r += tgt.r;\n\t}\n\tcell.cRel = cell.rRel = 0;\n\twhile(cell.c >= 0x100) cell.c -= 0x100;\n\twhile(cell.r >= 0x10000) cell.r -= 0x10000;\n\treturn cell;\n}\n\nfunction shift_range_xls(cell, range) {\n\tcell.s = shift_cell_xls(cell.s, range.s);\n\tcell.e = shift_cell_xls(cell.e, range.s);\n\treturn cell;\n}\n\nvar OFFCRYPTO = {};\nvar make_offcrypto = function(O, _crypto) {\n\tvar crypto;\n\tif(typeof _crypto !== 'undefined') crypto = _crypto;\n\telse if(typeof require !== 'undefined') {\n\t\ttry { crypto = require('cry'+'pto'); }\n\t\tcatch(e) { crypto = null; }\n\t}\n\n\tO.rc4 = function(key, data) {\n\t\tvar S = new Array(256);\n\t\tvar c = 0, i = 0, j = 0, t = 0;\n\t\tfor(i = 0; i != 256; ++i) S[i] = i;\n\t\tfor(i = 0; i != 256; ++i) {\n\t\t\tj = (j + S[i] + (key[i%key.length]).charCodeAt(0))&255;\n\t\t\tt = S[i]; S[i] = S[j]; S[j] = t;\n\t\t}\n\t\ti = j = 0; out = Buffer(data.length);\n\t\tfor(c = 0; c != data.length; ++c) {\n\t\t\ti = (i + 1)&255;\n\t\t\tj = (j + S[i])%256;\n\t\t\tt = S[i]; S[i] = S[j]; S[j] = t;\n\t\t\tout[c] = (data[c] ^ S[(S[i]+S[j])&255]);\n\t\t}\n\t\treturn out;\n\t};\n\n\tif(crypto) {\n\t\tO.md5 = function(hex) { return crypto.createHash('md5').update(hex).digest('hex'); };\n\t} else {\n\t\tO.md5 = function(hex) { throw \"unimplemented\"; };\n\t}\n};\nmake_offcrypto(OFFCRYPTO, typeof crypto !== \"undefined\" ? crypto : undefined);\n\n\n/* [MS-XLSB] 2.5.143 */\nfunction parse_StrRun(data, length) {\n\treturn { ich: data.read_shift(2), ifnt: data.read_shift(2) };\n}\n\n/* [MS-XLSB] 2.1.7.121 */\nfunction parse_RichStr(data, length) {\n\tvar start = data.l;\n\tvar flags = data.read_shift(1);\n\tvar str = parse_XLWideString(data);\n\tvar rgsStrRun = [];\n\tvar z = { t: str, h: str };\n\tif((flags & 1) !== 0) { /* fRichStr */\n\t\t/* TODO: formatted string */\n\t\tvar dwSizeStrRun = data.read_shift(4);\n\t\tfor(var i = 0; i != dwSizeStrRun; ++i) rgsStrRun.push(parse_StrRun(data));\n\t\tz.r = rgsStrRun;\n\t}\n\telse z.r = \"<t>\" + escapexml(str) + \"</t>\";\n\tif((flags & 2) !== 0) { /* fExtStr */\n\t\t/* TODO: phonetic string */\n\t}\n\tdata.l = start + length;\n\treturn z;\n}\nfunction write_RichStr(str, o) {\n\t/* TODO: formatted string */\n\tif(o == null) o = new_buf(5+2*str.t.length);\n\to.write_shift(1,0);\n\twrite_XLWideString(str.t, o);\n\treturn o;\n}\n\n/* [MS-XLSB] 2.5.9 */\nfunction parse_XLSBCell(data) {\n\tvar col = data.read_shift(4);\n\tvar iStyleRef = data.read_shift(2);\n\tiStyleRef += data.read_shift(1) <<16;\n\tvar fPhShow = data.read_shift(1);\n\treturn { c:col, iStyleRef: iStyleRef };\n}\nfunction write_XLSBCell(cell, o) {\n\tif(o == null) o = new_buf(8);\n\to.write_shift(-4, cell.c);\n\to.write_shift(3, cell.iStyleRef === undefined ? cell.iStyleRef : cell.s);\n\to.write_shift(1, 0); /* fPhShow */\n\treturn o;\n}\n\n\n/* [MS-XLSB] 2.5.21 */\nfunction parse_XLSBCodeName (data, length) { return parse_XLWideString(data, length); }\n\n/* [MS-XLSB] 2.5.166 */\nfunction parse_XLNullableWideString(data) {\n\tvar cchCharacters = data.read_shift(4);\n\treturn cchCharacters === 0 || cchCharacters === 0xFFFFFFFF ? \"\" : data.read_shift(cchCharacters, 'dbcs');\n}\nfunction write_XLNullableWideString(data, o) {\n\tif(!o) o = new_buf(127);\n\to.write_shift(4, data.length > 0 ? data.length : 0xFFFFFFFF);\n\tif(data.length > 0) o.write_shift(0, data, 'dbcs');\n\treturn o;\n}\n\n/* [MS-XLSB] 2.5.168 */\nfunction parse_XLWideString(data) {\n\tvar cchCharacters = data.read_shift(4);\n\treturn cchCharacters === 0 ? \"\" : data.read_shift(cchCharacters, 'dbcs');\n}\nfunction write_XLWideString(data, o) {\n\tif(o == null) o = new_buf(4+2*data.length);\n\to.write_shift(4, data.length);\n\tif(data.length > 0) o.write_shift(0, data, 'dbcs');\n\treturn o;\n}\n\n/* [MS-XLSB] 2.5.114 */\nvar parse_RelID = parse_XLNullableWideString;\nvar write_RelID = write_XLNullableWideString;\n\n\n/* [MS-XLSB] 2.5.122 */\n/* [MS-XLS] 2.5.217 */\nfunction parse_RkNumber(data) {\n\tvar b = data.slice(data.l, data.l+4);\n\tvar fX100 = b[0] & 1, fInt = b[0] & 2;\n\tdata.l+=4;\n\tb[0] &= 0xFC; // b[0] &= ~3;\n\tvar RK = fInt === 0 ? __double([0,0,0,0,b[0],b[1],b[2],b[3]],0) : __readInt32LE(b,0)>>2;\n\treturn fX100 ? RK/100 : RK;\n}\n\n/* [MS-XLSB] 2.5.153 */\nfunction parse_UncheckedRfX(data) {\n\tvar cell = {s: {}, e: {}};\n\tcell.s.r = data.read_shift(4);\n\tcell.e.r = data.read_shift(4);\n\tcell.s.c = data.read_shift(4);\n\tcell.e.c = data.read_shift(4);\n\treturn cell;\n}\n\nfunction write_UncheckedRfX(r, o) {\n\tif(!o) o = new_buf(16);\n\to.write_shift(4, r.s.r);\n\to.write_shift(4, r.e.r);\n\to.write_shift(4, r.s.c);\n\to.write_shift(4, r.e.c);\n\treturn o;\n}\n\n/* [MS-XLSB] 2.5.171 */\n/* [MS-XLS] 2.5.342 */\nfunction parse_Xnum(data, length) { return data.read_shift(8, 'f'); }\nfunction write_Xnum(data, o) { return (o || new_buf(8)).write_shift(8, 'f', data); }\n\n/* [MS-XLSB] 2.5.198.2 */\nvar BErr = {\n\t0x00: \"#NULL!\",\n\t0x07: \"#DIV/0!\",\n\t0x0F: \"#VALUE!\",\n\t0x17: \"#REF!\",\n\t0x1D: \"#NAME?\",\n\t0x24: \"#NUM!\",\n\t0x2A: \"#N/A\",\n\t0x2B: \"#GETTING_DATA\",\n\t0xFF: \"#WTF?\"\n};\nvar RBErr = evert_num(BErr);\n\n/* [MS-XLSB] 2.4.321 BrtColor */\nfunction parse_BrtColor(data, length) {\n\tvar out = {};\n\tvar d = data.read_shift(1);\n\tout.fValidRGB = d & 1;\n\tout.xColorType = d >>> 1;\n\tout.index = data.read_shift(1);\n\tout.nTintAndShade = data.read_shift(2, 'i');\n\tout.bRed   = data.read_shift(1);\n\tout.bGreen = data.read_shift(1);\n\tout.bBlue  = data.read_shift(1);\n\tout.bAlpha = data.read_shift(1);\n}\n\n/* [MS-XLSB] 2.5.52 */\nfunction parse_FontFlags(data, length) {\n\tvar d = data.read_shift(1);\n\tdata.l++;\n\tvar out = {\n\t\tfItalic: d & 0x2,\n\t\tfStrikeout: d & 0x8,\n\t\tfOutline: d & 0x10,\n\t\tfShadow: d & 0x20,\n\t\tfCondense: d & 0x40,\n\t\tfExtend: d & 0x80\n\t};\n\treturn out;\n}\n/* [MS-OLEPS] 2.2 PropertyType */\n{\n\tvar VT_EMPTY    = 0x0000;\n\tvar VT_NULL     = 0x0001;\n\tvar VT_I2       = 0x0002;\n\tvar VT_I4       = 0x0003;\n\tvar VT_R4       = 0x0004;\n\tvar VT_R8       = 0x0005;\n\tvar VT_CY       = 0x0006;\n\tvar VT_DATE     = 0x0007;\n\tvar VT_BSTR     = 0x0008;\n\tvar VT_ERROR    = 0x000A;\n\tvar VT_BOOL     = 0x000B;\n\tvar VT_VARIANT  = 0x000C;\n\tvar VT_DECIMAL  = 0x000E;\n\tvar VT_I1       = 0x0010;\n\tvar VT_UI1      = 0x0011;\n\tvar VT_UI2      = 0x0012;\n\tvar VT_UI4      = 0x0013;\n\tvar VT_I8       = 0x0014;\n\tvar VT_UI8      = 0x0015;\n\tvar VT_INT      = 0x0016;\n\tvar VT_UINT     = 0x0017;\n\tvar VT_LPSTR    = 0x001E;\n\tvar VT_LPWSTR   = 0x001F;\n\tvar VT_FILETIME = 0x0040;\n\tvar VT_BLOB     = 0x0041;\n\tvar VT_STREAM   = 0x0042;\n\tvar VT_STORAGE  = 0x0043;\n\tvar VT_STREAMED_Object  = 0x0044;\n\tvar VT_STORED_Object    = 0x0045;\n\tvar VT_BLOB_Object      = 0x0046;\n\tvar VT_CF       = 0x0047;\n\tvar VT_CLSID    = 0x0048;\n\tvar VT_VERSIONED_STREAM = 0x0049;\n\tvar VT_VECTOR   = 0x1000;\n\tvar VT_ARRAY    = 0x2000;\n\n\tvar VT_STRING   = 0x0050; // 2.3.3.1.11 VtString\n\tvar VT_USTR     = 0x0051; // 2.3.3.1.12 VtUnalignedString\n\tvar VT_CUSTOM   = [VT_STRING, VT_USTR];\n}\n\n/* [MS-OSHARED] 2.3.3.2.2.1 Document Summary Information PIDDSI */\nvar DocSummaryPIDDSI = {\n\t0x01: { n: 'CodePage', t: VT_I2 },\n\t0x02: { n: 'Category', t: VT_STRING },\n\t0x03: { n: 'PresentationFormat', t: VT_STRING },\n\t0x04: { n: 'ByteCount', t: VT_I4 },\n\t0x05: { n: 'LineCount', t: VT_I4 },\n\t0x06: { n: 'ParagraphCount', t: VT_I4 },\n\t0x07: { n: 'SlideCount', t: VT_I4 },\n\t0x08: { n: 'NoteCount', t: VT_I4 },\n\t0x09: { n: 'HiddenCount', t: VT_I4 },\n\t0x0a: { n: 'MultimediaClipCount', t: VT_I4 },\n\t0x0b: { n: 'Scale', t: VT_BOOL },\n\t0x0c: { n: 'HeadingPair', t: VT_VECTOR | VT_VARIANT },\n\t0x0d: { n: 'DocParts', t: VT_VECTOR | VT_LPSTR },\n\t0x0e: { n: 'Manager', t: VT_STRING },\n\t0x0f: { n: 'Company', t: VT_STRING },\n\t0x10: { n: 'LinksDirty', t: VT_BOOL },\n\t0x11: { n: 'CharacterCount', t: VT_I4 },\n\t0x13: { n: 'SharedDoc', t: VT_BOOL },\n\t0x16: { n: 'HLinksChanged', t: VT_BOOL },\n\t0x17: { n: 'AppVersion', t: VT_I4, p: 'version' },\n\t0x1A: { n: 'ContentType', t: VT_STRING },\n\t0x1B: { n: 'ContentStatus', t: VT_STRING },\n\t0x1C: { n: 'Language', t: VT_STRING },\n\t0x1D: { n: 'Version', t: VT_STRING },\n\t0xFF: {}\n};\n\n/* [MS-OSHARED] 2.3.3.2.1.1 Summary Information Property Set PIDSI */\nvar SummaryPIDSI = {\n\t0x01: { n: 'CodePage', t: VT_I2 },\n\t0x02: { n: 'Title', t: VT_STRING },\n\t0x03: { n: 'Subject', t: VT_STRING },\n\t0x04: { n: 'Author', t: VT_STRING },\n\t0x05: { n: 'Keywords', t: VT_STRING },\n\t0x06: { n: 'Comments', t: VT_STRING },\n\t0x07: { n: 'Template', t: VT_STRING },\n\t0x08: { n: 'LastAuthor', t: VT_STRING },\n\t0x09: { n: 'RevNumber', t: VT_STRING },\n\t0x0A: { n: 'EditTime', t: VT_FILETIME },\n\t0x0B: { n: 'LastPrinted', t: VT_FILETIME },\n\t0x0C: { n: 'CreatedDate', t: VT_FILETIME },\n\t0x0D: { n: 'ModifiedDate', t: VT_FILETIME },\n\t0x0E: { n: 'PageCount', t: VT_I4 },\n\t0x0F: { n: 'WordCount', t: VT_I4 },\n\t0x10: { n: 'CharCount', t: VT_I4 },\n\t0x11: { n: 'Thumbnail', t: VT_CF },\n\t0x12: { n: 'ApplicationName', t: VT_LPSTR },\n\t0x13: { n: 'DocumentSecurity', t: VT_I4 },\n\t0xFF: {}\n};\n\n/* [MS-OLEPS] 2.18 */\nvar SpecialProperties = {\n\t0x80000000: { n: 'Locale', t: VT_UI4 },\n\t0x80000003: { n: 'Behavior', t: VT_UI4 },\n\t0x72627262: {}\n};\n\n(function() {\n\tfor(var y in SpecialProperties) if(SpecialProperties.hasOwnProperty(y))\n\tDocSummaryPIDDSI[y] = SummaryPIDSI[y] = SpecialProperties[y];\n})();\n\n/* [MS-XLS] 2.4.63 Country/Region codes */\nvar CountryEnum = {\n\t0x0001: \"US\", // United States\n\t0x0002: \"CA\", // Canada\n\t0x0003: \"\", // Latin America (except Brazil)\n\t0x0007: \"RU\", // Russia\n\t0x0014: \"EG\", // Egypt\n\t0x001E: \"GR\", // Greece\n\t0x001F: \"NL\", // Netherlands\n\t0x0020: \"BE\", // Belgium\n\t0x0021: \"FR\", // France\n\t0x0022: \"ES\", // Spain\n\t0x0024: \"HU\", // Hungary\n\t0x0027: \"IT\", // Italy\n\t0x0029: \"CH\", // Switzerland\n\t0x002B: \"AT\", // Austria\n\t0x002C: \"GB\", // United Kingdom\n\t0x002D: \"DK\", // Denmark\n\t0x002E: \"SE\", // Sweden\n\t0x002F: \"NO\", // Norway\n\t0x0030: \"PL\", // Poland\n\t0x0031: \"DE\", // Germany\n\t0x0034: \"MX\", // Mexico\n\t0x0037: \"BR\", // Brazil\n\t0x003d: \"AU\", // Australia\n\t0x0040: \"NZ\", // New Zealand\n\t0x0042: \"TH\", // Thailand\n\t0x0051: \"JP\", // Japan\n\t0x0052: \"KR\", // Korea\n\t0x0054: \"VN\", // Viet Nam\n\t0x0056: \"CN\", // China\n\t0x005A: \"TR\", // Turkey\n\t0x0069: \"JS\", // Ramastan\n\t0x00D5: \"DZ\", // Algeria\n\t0x00D8: \"MA\", // Morocco\n\t0x00DA: \"LY\", // Libya\n\t0x015F: \"PT\", // Portugal\n\t0x0162: \"IS\", // Iceland\n\t0x0166: \"FI\", // Finland\n\t0x01A4: \"CZ\", // Czech Republic\n\t0x0376: \"TW\", // Taiwan\n\t0x03C1: \"LB\", // Lebanon\n\t0x03C2: \"JO\", // Jordan\n\t0x03C3: \"SY\", // Syria\n\t0x03C4: \"IQ\", // Iraq\n\t0x03C5: \"KW\", // Kuwait\n\t0x03C6: \"SA\", // Saudi Arabia\n\t0x03CB: \"AE\", // United Arab Emirates\n\t0x03CC: \"IL\", // Israel\n\t0x03CE: \"QA\", // Qatar\n\t0x03D5: \"IR\", // Iran\n\t0xFFFF: \"US\"  // United States\n};\n\n/* [MS-XLS] 2.5.127 */\nvar XLSFillPattern = [\n\tnull,\n\t'solid',\n\t'mediumGray',\n\t'darkGray',\n\t'lightGray',\n\t'darkHorizontal',\n\t'darkVertical',\n\t'darkDown',\n\t'darkUp',\n\t'darkGrid',\n\t'darkTrellis',\n\t'lightHorizontal',\n\t'lightVertical',\n\t'lightDown',\n\t'lightUp',\n\t'lightGrid',\n\t'lightTrellis',\n\t'gray125',\n\t'gray0625'\n];\n\nfunction rgbify(arr) { return arr.map(function(x) { return [(x>>16)&255,(x>>8)&255,x&255]; }); }\n\n/* [MS-XLS] 2.5.161 */\nvar XLSIcv = rgbify([\n\t/* Color Constants */\n\t0x000000,\n\t0xFFFFFF,\n\t0xFF0000,\n\t0x00FF00,\n\t0x0000FF,\n\t0xFFFF00,\n\t0xFF00FF,\n\t0x00FFFF,\n\n\t/* Defaults */\n\t0x000000,\n\t0xFFFFFF,\n\t0xFF0000,\n\t0x00FF00,\n\t0x0000FF,\n\t0xFFFF00,\n\t0xFF00FF,\n\t0x00FFFF,\n\n\t0x800000,\n\t0x008000,\n\t0x000080,\n\t0x808000,\n\t0x800080,\n\t0x008080,\n\t0xC0C0C0,\n\t0x808080,\n\t0x9999FF,\n\t0x993366,\n\t0xFFFFCC,\n\t0xCCFFFF,\n\t0x660066,\n\t0xFF8080,\n\t0x0066CC,\n\t0xCCCCFF,\n\n\t0x000080,\n\t0xFF00FF,\n\t0xFFFF00,\n\t0x00FFFF,\n\t0x800080,\n\t0x800000,\n\t0x008080,\n\t0x0000FF,\n\t0x00CCFF,\n\t0xCCFFFF,\n\t0xCCFFCC,\n\t0xFFFF99,\n\t0x99CCFF,\n\t0xFF99CC,\n\t0xCC99FF,\n\t0xFFCC99,\n\n\t0x3366FF,\n\t0x33CCCC,\n\t0x99CC00,\n\t0xFFCC00,\n\t0xFF9900,\n\t0xFF6600,\n\t0x666699,\n\t0x969696,\n\t0x003366,\n\t0x339966,\n\t0x003300,\n\t0x333300,\n\t0x993300,\n\t0x993366,\n\t0x333399,\n\t0x333333,\n\n\t/* Sheet */\n\t0xFFFFFF,\n\t0x000000\n]);\n\n/* Parts enumerated in OPC spec, MS-XLSB and MS-XLSX */\n/* 12.3 Part Summary <SpreadsheetML> */\n/* 14.2 Part Summary <DrawingML> */\n/* [MS-XLSX] 2.1 Part Enumerations */\n/* [MS-XLSB] 2.1.7 Part Enumeration */\nvar ct2type = {\n\t/* Workbook */\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\": \"workbooks\",\n\n\t/* Worksheet */\n\t\"application/vnd.ms-excel.binIndexWs\": \"TODO\", /* Binary Index */\n\n\t/* Chartsheet */\n\t\"application/vnd.ms-excel.chartsheet\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml\": \"TODO\",\n\n\t/* Dialogsheet */\n\t\"application/vnd.ms-excel.dialogsheet\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml\": \"TODO\",\n\n\t/* Macrosheet */\n\t\"application/vnd.ms-excel.macrosheet\": \"TODO\",\n\t\"application/vnd.ms-excel.macrosheet+xml\": \"TODO\",\n\t\"application/vnd.ms-excel.intlmacrosheet\": \"TODO\",\n\t\"application/vnd.ms-excel.binIndexMs\": \"TODO\", /* Binary Index */\n\n\t/* File Properties */\n\t\"application/vnd.openxmlformats-package.core-properties+xml\": \"coreprops\",\n\t\"application/vnd.openxmlformats-officedocument.custom-properties+xml\": \"custprops\",\n\t\"application/vnd.openxmlformats-officedocument.extended-properties+xml\": \"extprops\",\n\n\t/* Custom Data Properties */\n\t\"application/vnd.openxmlformats-officedocument.customXmlProperties+xml\": \"TODO\",\n\n\t/* Comments */\n\t\"application/vnd.ms-excel.comments\": \"comments\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml\": \"comments\",\n\n\t/* PivotTable */\n\t\"application/vnd.ms-excel.pivotTable\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml\": \"TODO\",\n\n\t/* Calculation Chain */\n\t\"application/vnd.ms-excel.calcChain\": \"calcchains\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml\": \"calcchains\",\n\n\t/* Printer Settings */\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings\": \"TODO\",\n\n\t/* ActiveX */\n\t\"application/vnd.ms-office.activeX\": \"TODO\",\n\t\"application/vnd.ms-office.activeX+xml\": \"TODO\",\n\n\t/* Custom Toolbars */\n\t\"application/vnd.ms-excel.attachedToolbars\": \"TODO\",\n\n\t/* External Data Connections */\n\t\"application/vnd.ms-excel.connections\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml\": \"TODO\",\n\n\t/* External Links */\n\t\"application/vnd.ms-excel.externalLink\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml\": \"TODO\",\n\n\t/* Metadata */\n\t\"application/vnd.ms-excel.sheetMetadata\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml\": \"TODO\",\n\n\t/* PivotCache */\n\t\"application/vnd.ms-excel.pivotCacheDefinition\": \"TODO\",\n\t\"application/vnd.ms-excel.pivotCacheRecords\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml\": \"TODO\",\n\n\t/* Query Table */\n\t\"application/vnd.ms-excel.queryTable\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml\": \"TODO\",\n\n\t/* Shared Workbook */\n\t\"application/vnd.ms-excel.userNames\": \"TODO\",\n\t\"application/vnd.ms-excel.revisionHeaders\": \"TODO\",\n\t\"application/vnd.ms-excel.revisionLog\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml\": \"TODO\",\n\n\t/* Single Cell Table */\n\t\"application/vnd.ms-excel.tableSingleCells\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml\": \"TODO\",\n\n\t/* Slicer */\n\t\"application/vnd.ms-excel.slicer\": \"TODO\",\n\t\"application/vnd.ms-excel.slicerCache\": \"TODO\",\n\t\"application/vnd.ms-excel.slicer+xml\": \"TODO\",\n\t\"application/vnd.ms-excel.slicerCache+xml\": \"TODO\",\n\n\t/* Sort Map */\n\t\"application/vnd.ms-excel.wsSortMap\": \"TODO\",\n\n\t/* Table */\n\t\"application/vnd.ms-excel.table\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml\": \"TODO\",\n\n\t/* Themes */\n\t\"application/vnd.openxmlformats-officedocument.theme+xml\": \"themes\",\n\n\t/* Timeline */\n\t\"application/vnd.ms-excel.Timeline+xml\": \"TODO\", /* verify */\n\t\"application/vnd.ms-excel.TimelineCache+xml\": \"TODO\", /* verify */\n\n\t/* VBA */\n\t\"application/vnd.ms-office.vbaProject\": \"vba\",\n\t\"application/vnd.ms-office.vbaProjectSignature\": \"vba\",\n\n\t/* Volatile Dependencies */\n\t\"application/vnd.ms-office.volatileDependencies\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml\": \"TODO\",\n\n\t/* Control Properties */\n\t\"application/vnd.ms-excel.controlproperties+xml\": \"TODO\",\n\n\t/* Data Model */\n\t\"application/vnd.openxmlformats-officedocument.model+data\": \"TODO\",\n\n\t/* Survey */\n\t\"application/vnd.ms-excel.Survey+xml\": \"TODO\",\n\n\t/* Drawing */\n\t\"application/vnd.openxmlformats-officedocument.drawing+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.chart+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml\": \"TODO\",\n\t\"application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml\": \"TODO\",\n\n\t/* VML */\n\t\"application/vnd.openxmlformats-officedocument.vmlDrawing\": \"TODO\",\n\n\t\"application/vnd.openxmlformats-package.relationships+xml\": \"rels\",\n\t\"application/vnd.openxmlformats-officedocument.oleObject\": \"TODO\",\n\n\t\"sheet\": \"js\"\n};\n\nvar CT_LIST = (function(){\n\tvar o = {\n\t\tworkbooks: {\n\t\t\txlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\",\n\t\t\txlsm: \"application/vnd.ms-excel.sheet.macroEnabled.main+xml\",\n\t\t\txlsb: \"application/vnd.ms-excel.sheet.binary.macroEnabled.main\",\n\t\t\txltx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml\"\n\t\t},\n\t\tstrs: { /* Shared Strings */\n\t\t\txlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml\",\n\t\t\txlsb: \"application/vnd.ms-excel.sharedStrings\"\n\t\t},\n\t\tsheets: {\n\t\t\txlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml\",\n\t\t\txlsb: \"application/vnd.ms-excel.worksheet\"\n\t\t},\n\t\tstyles: {/* Styles */\n\t\t\txlsx: \"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml\",\n\t\t\txlsb: \"application/vnd.ms-excel.styles\"\n\t\t}\n\t};\n\tkeys(o).forEach(function(k) { if(!o[k].xlsm) o[k].xlsm = o[k].xlsx; });\n\tkeys(o).forEach(function(k){ keys(o[k]).forEach(function(v) { ct2type[o[k][v]] = k; }); });\n\treturn o;\n})();\n\nvar type2ct = evert_arr(ct2type);\n\nXMLNS.CT = 'http://schemas.openxmlformats.org/package/2006/content-types';\n\nfunction parse_ct(data, opts) {\n\tvar ctext = {};\n\tif(!data || !data.match) return data;\n\tvar ct = { workbooks: [], sheets: [], calcchains: [], themes: [], styles: [],\n\t\tcoreprops: [], extprops: [], custprops: [], strs:[], comments: [], vba: [],\n\t\tTODO:[], rels:[], xmlns: \"\" };\n\t(data.match(tagregex)||[]).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(y[0].replace(nsregex,\"<\")) {\n\t\t\tcase '<?xml': break;\n\t\t\tcase '<Types': ct.xmlns = y['xmlns' + (y[0].match(/<(\\w+):/)||[\"\",\"\"])[1] ]; break;\n\t\t\tcase '<Default': ctext[y.Extension] = y.ContentType; break;\n\t\t\tcase '<Override':\n\t\t\t\tif(ct[ct2type[y.ContentType]] !== undefined) ct[ct2type[y.ContentType]].push(y.PartName);\n\t\t\t\telse if(opts.WTF) console.error(y);\n\t\t\t\tbreak;\n\t\t}\n\t});\n\tif(ct.xmlns !== XMLNS.CT) throw new Error(\"Unknown Namespace: \" + ct.xmlns);\n\tct.calcchain = ct.calcchains.length > 0 ? ct.calcchains[0] : \"\";\n\tct.sst = ct.strs.length > 0 ? ct.strs[0] : \"\";\n\tct.style = ct.styles.length > 0 ? ct.styles[0] : \"\";\n\tct.defaults = ctext;\n\tdelete ct.calcchains;\n\treturn ct;\n}\n\nvar CTYPE_XML_ROOT = writextag('Types', null, {\n\t'xmlns': XMLNS.CT,\n\t'xmlns:xsd': XMLNS.xsd,\n\t'xmlns:xsi': XMLNS.xsi\n});\n\nvar CTYPE_DEFAULTS = [\n\t['xml', 'application/xml'],\n\t['bin', 'application/vnd.ms-excel.sheet.binary.macroEnabled.main'],\n\t['rels', type2ct.rels[0]]\n].map(function(x) {\n\treturn writextag('Default', null, {'Extension':x[0], 'ContentType': x[1]});\n});\n\nfunction write_ct(ct, opts) {\n\tvar o = [], v;\n\to[o.length] = (XML_HEADER);\n\to[o.length] = (CTYPE_XML_ROOT);\n\to = o.concat(CTYPE_DEFAULTS);\n\tvar f1 = function(w) {\n\t\tif(ct[w] && ct[w].length > 0) {\n\t\t\tv = ct[w][0];\n\t\t\to[o.length] = (writextag('Override', null, {\n\t\t\t\t'PartName': (v[0] == '/' ? \"\":\"/\") + v,\n\t\t\t\t'ContentType': CT_LIST[w][opts.bookType || 'xlsx']\n\t\t\t}));\n\t\t}\n\t};\n\tvar f2 = function(w) {\n\t\tct[w].forEach(function(v) {\n\t\t\to[o.length] = (writextag('Override', null, {\n\t\t\t\t'PartName': (v[0] == '/' ? \"\":\"/\") + v,\n\t\t\t\t'ContentType': CT_LIST[w][opts.bookType || 'xlsx']\n\t\t\t}));\n\t\t});\n\t};\n\tvar f3 = function(t) {\n\t\t(ct[t]||[]).forEach(function(v) {\n\t\t\to[o.length] = (writextag('Override', null, {\n\t\t\t\t'PartName': (v[0] == '/' ? \"\":\"/\") + v,\n\t\t\t\t'ContentType': type2ct[t][0]\n\t\t\t}));\n\t\t});\n\t};\n\tf1('workbooks');\n\tf2('sheets');\n\tf3('themes');\n\t['strs', 'styles'].forEach(f1);\n\t['coreprops', 'extprops', 'custprops'].forEach(f3);\n\tif(o.length>2){ o[o.length] = ('</Types>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* 9.3.2 OPC Relationships Markup */\nvar RELS = {\n\tWB: \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument\",\n\tSHEET: \"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument\"\n};\n\nfunction parse_rels(data, currentFilePath) {\n\tif (!data) return data;\n\tif (currentFilePath.charAt(0) !== '/') {\n\t\tcurrentFilePath = '/'+currentFilePath;\n\t}\n\tvar rels = {};\n\tvar hash = {};\n\tvar resolveRelativePathIntoAbsolute = function (to) {\n\t\tvar toksFrom = currentFilePath.split('/');\n\t\ttoksFrom.pop(); // folder path\n\t\tvar toksTo = to.split('/');\n\t\tvar reversed = [];\n\t\twhile (toksTo.length !== 0) {\n\t\t\tvar tokTo = toksTo.shift();\n\t\t\tif (tokTo === '..') {\n\t\t\t\ttoksFrom.pop();\n\t\t\t} else if (tokTo !== '.') {\n\t\t\t\ttoksFrom.push(tokTo);\n\t\t\t}\n\t\t}\n\t\treturn toksFrom.join('/');\n\t};\n\n\tdata.match(tagregex).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\t/* 9.3.2.2 OPC_Relationships */\n\t\tif (y[0] === '<Relationship') {\n\t\t\tvar rel = {}; rel.Type = y.Type; rel.Target = y.Target; rel.Id = y.Id; rel.TargetMode = y.TargetMode;\n\t\t\tvar canonictarget = y.TargetMode === 'External' ? y.Target : resolveRelativePathIntoAbsolute(y.Target);\n\t\t\trels[canonictarget] = rel;\n\t\t\thash[y.Id] = rel;\n\t\t}\n\t});\n\trels[\"!id\"] = hash;\n\treturn rels;\n}\n\nXMLNS.RELS = 'http://schemas.openxmlformats.org/package/2006/relationships';\n\nvar RELS_ROOT = writextag('Relationships', null, {\n\t//'xmlns:ns0': XMLNS.RELS,\n\t'xmlns': XMLNS.RELS\n});\n\n/* TODO */\nfunction write_rels(rels) {\n\tvar o = [];\n\to[o.length] = (XML_HEADER);\n\to[o.length] = (RELS_ROOT);\n\tkeys(rels['!id']).forEach(function(rid) { var rel = rels['!id'][rid];\n\t\to[o.length] = (writextag('Relationship', null, rel));\n\t});\n\tif(o.length>2){ o[o.length] = ('</Relationships>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* ECMA-376 Part II 11.1 Core Properties Part */\n/* [MS-OSHARED] 2.3.3.2.[1-2].1 (PIDSI/PIDDSI) */\nvar CORE_PROPS = [\n\t[\"cp:category\", \"Category\"],\n\t[\"cp:contentStatus\", \"ContentStatus\"],\n\t[\"cp:keywords\", \"Keywords\"],\n\t[\"cp:lastModifiedBy\", \"LastAuthor\"],\n\t[\"cp:lastPrinted\", \"LastPrinted\"],\n\t[\"cp:revision\", \"RevNumber\"],\n\t[\"cp:version\", \"Version\"],\n\t[\"dc:creator\", \"Author\"],\n\t[\"dc:description\", \"Comments\"],\n\t[\"dc:identifier\", \"Identifier\"],\n\t[\"dc:language\", \"Language\"],\n\t[\"dc:subject\", \"Subject\"],\n\t[\"dc:title\", \"Title\"],\n\t[\"dcterms:created\", \"CreatedDate\", 'date'],\n\t[\"dcterms:modified\", \"ModifiedDate\", 'date']\n];\n\nXMLNS.CORE_PROPS = \"http://schemas.openxmlformats.org/package/2006/metadata/core-properties\";\nRELS.CORE_PROPS  = 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties';\n\nvar CORE_PROPS_REGEX = (function() {\n\tvar r = new Array(CORE_PROPS.length);\n\tfor(var i = 0; i < CORE_PROPS.length; ++i) {\n\t\tvar f = CORE_PROPS[i];\n\t\tvar g = \"(?:\"+ f[0].substr(0,f[0].indexOf(\":\")) +\":)\"+ f[0].substr(f[0].indexOf(\":\")+1);\n\t\tr[i] = new RegExp(\"<\" + g + \"[^>]*>(.*)<\\/\" + g + \">\");\n\t}\n\treturn r;\n})();\n\nfunction parse_core_props(data) {\n\tvar p = {};\n\n\tfor(var i = 0; i < CORE_PROPS.length; ++i) {\n\t\tvar f = CORE_PROPS[i], cur = data.match(CORE_PROPS_REGEX[i]);\n\t\tif(cur != null && cur.length > 0) p[f[1]] = cur[1];\n\t\tif(f[2] === 'date' && p[f[1]]) p[f[1]] = new Date(p[f[1]]);\n\t}\n\n\treturn p;\n}\n\nvar CORE_PROPS_XML_ROOT = writextag('cp:coreProperties', null, {\n\t//'xmlns': XMLNS.CORE_PROPS,\n\t'xmlns:cp': XMLNS.CORE_PROPS,\n\t'xmlns:dc': XMLNS.dc,\n\t'xmlns:dcterms': XMLNS.dcterms,\n\t'xmlns:dcmitype': XMLNS.dcmitype,\n\t'xmlns:xsi': XMLNS.xsi\n});\n\nfunction cp_doit(f, g, h, o, p) {\n\tif(p[f] != null || g == null || g === \"\") return;\n\tp[f] = g;\n\to[o.length] = (h ? writextag(f,g,h) : writetag(f,g));\n}\n\nfunction write_core_props(cp, opts) {\n\tvar o = [XML_HEADER, CORE_PROPS_XML_ROOT], p = {};\n\tif(!cp) return o.join(\"\");\n\n\n\tif(cp.CreatedDate != null) cp_doit(\"dcterms:created\", typeof cp.CreatedDate === \"string\" ? cp.CreatedDate : write_w3cdtf(cp.CreatedDate, opts.WTF), {\"xsi:type\":\"dcterms:W3CDTF\"}, o, p);\n\tif(cp.ModifiedDate != null) cp_doit(\"dcterms:modified\", typeof cp.ModifiedDate === \"string\" ? cp.ModifiedDate : write_w3cdtf(cp.ModifiedDate, opts.WTF), {\"xsi:type\":\"dcterms:W3CDTF\"}, o, p);\n\n\tfor(var i = 0; i != CORE_PROPS.length; ++i) { var f = CORE_PROPS[i]; cp_doit(f[0], cp[f[1]], null, o, p); }\n\tif(o.length>2){ o[o.length] = ('</cp:coreProperties>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* 15.2.12.3 Extended File Properties Part */\n/* [MS-OSHARED] 2.3.3.2.[1-2].1 (PIDSI/PIDDSI) */\nvar EXT_PROPS = [\n\t[\"Application\", \"Application\", \"string\"],\n\t[\"AppVersion\", \"AppVersion\", \"string\"],\n\t[\"Company\", \"Company\", \"string\"],\n\t[\"DocSecurity\", \"DocSecurity\", \"string\"],\n\t[\"Manager\", \"Manager\", \"string\"],\n\t[\"HyperlinksChanged\", \"HyperlinksChanged\", \"bool\"],\n\t[\"SharedDoc\", \"SharedDoc\", \"bool\"],\n\t[\"LinksUpToDate\", \"LinksUpToDate\", \"bool\"],\n\t[\"ScaleCrop\", \"ScaleCrop\", \"bool\"],\n\t[\"HeadingPairs\", \"HeadingPairs\", \"raw\"],\n\t[\"TitlesOfParts\", \"TitlesOfParts\", \"raw\"]\n];\n\nXMLNS.EXT_PROPS = \"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties\";\nRELS.EXT_PROPS  = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties';\n\nfunction parse_ext_props(data, p) {\n\tvar q = {}; if(!p) p = {};\n\n\tEXT_PROPS.forEach(function(f) {\n\t\tswitch(f[2]) {\n\t\t\tcase \"string\": p[f[1]] = (data.match(matchtag(f[0]))||[])[1]; break;\n\t\t\tcase \"bool\": p[f[1]] = (data.match(matchtag(f[0]))||[])[1] === \"true\"; break;\n\t\t\tcase \"raw\":\n\t\t\t\tvar cur = data.match(new RegExp(\"<\" + f[0] + \"[^>]*>(.*)<\\/\" + f[0] + \">\"));\n\t\t\t\tif(cur && cur.length > 0) q[f[1]] = cur[1];\n\t\t\t\tbreak;\n\t\t}\n\t});\n\n\tif(q.HeadingPairs && q.TitlesOfParts) {\n\t\tvar v = parseVector(q.HeadingPairs);\n\t\tvar j = 0, widx = 0;\n\t\tfor(var i = 0; i !== v.length; ++i) {\n\t\t\tswitch(v[i].v) {\n\t\t\t\tcase \"Worksheets\": widx = j; p.Worksheets = +(v[++i].v); break;\n\t\t\t\tcase \"Named Ranges\": ++i; break; // TODO: Handle Named Ranges\n\t\t\t}\n\t\t}\n\t\tvar parts = parseVector(q.TitlesOfParts).map(function(x) { return utf8read(x.v); });\n\t\tp.SheetNames = parts.slice(widx, widx + p.Worksheets);\n\t}\n\treturn p;\n}\n\nvar EXT_PROPS_XML_ROOT = writextag('Properties', null, {\n\t'xmlns': XMLNS.EXT_PROPS,\n\t'xmlns:vt': XMLNS.vt\n});\n\nfunction write_ext_props(cp, opts) {\n\tvar o = [], p = {}, W = writextag;\n\tif(!cp) cp = {};\n\tcp.Application = \"SheetJS\";\n\to[o.length] = (XML_HEADER);\n\to[o.length] = (EXT_PROPS_XML_ROOT);\n\n\tEXT_PROPS.forEach(function(f) {\n\t\tif(cp[f[1]] === undefined) return;\n\t\tvar v;\n\t\tswitch(f[2]) {\n\t\t\tcase 'string': v = cp[f[1]]; break;\n\t\t\tcase 'bool': v = cp[f[1]] ? 'true' : 'false'; break;\n\t\t}\n\t\tif(v !== undefined) o[o.length] = (W(f[0], v));\n\t});\n\n\t/* TODO: HeadingPairs, TitlesOfParts */\n\to[o.length] = (W('HeadingPairs', W('vt:vector', W('vt:variant', '<vt:lpstr>Worksheets</vt:lpstr>')+W('vt:variant', W('vt:i4', String(cp.Worksheets))), {size:2, baseType:\"variant\"})));\n\to[o.length] = (W('TitlesOfParts', W('vt:vector', cp.SheetNames.map(function(s) { return \"<vt:lpstr>\" + s + \"</vt:lpstr>\"; }).join(\"\"), {size: cp.Worksheets, baseType:\"lpstr\"})));\n\tif(o.length>2){ o[o.length] = ('</Properties>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* 15.2.12.2 Custom File Properties Part */\nXMLNS.CUST_PROPS = \"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties\";\nRELS.CUST_PROPS  = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties';\n\nvar custregex = /<[^>]+>[^<]*/g;\nfunction parse_cust_props(data, opts) {\n\tvar p = {}, name;\n\tvar m = data.match(custregex);\n\tif(m) for(var i = 0; i != m.length; ++i) {\n\t\tvar x = m[i], y = parsexmltag(x);\n\t\tswitch(y[0]) {\n\t\t\tcase '<?xml': break;\n\t\t\tcase '<Properties':\n\t\t\t\tif(y.xmlns !== XMLNS.CUST_PROPS) throw \"unrecognized xmlns \" + y.xmlns;\n\t\t\t\tif(y.xmlnsvt && y.xmlnsvt !== XMLNS.vt) throw \"unrecognized vt \" + y.xmlnsvt;\n\t\t\t\tbreak;\n\t\t\tcase '<property': name = y.name; break;\n\t\t\tcase '</property>': name = null; break;\n\t\t\tdefault: if (x.indexOf('<vt:') === 0) {\n\t\t\t\tvar toks = x.split('>');\n\t\t\t\tvar type = toks[0].substring(4), text = toks[1];\n\t\t\t\t/* 22.4.2.32 (CT_Variant). Omit the binary types from 22.4 (Variant Types) */\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase 'lpstr': case 'lpwstr': case 'bstr': case 'lpwstr':\n\t\t\t\t\t\tp[name] = unescapexml(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'bool':\n\t\t\t\t\t\tp[name] = parsexmlbool(text, '<vt:bool>');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'i1': case 'i2': case 'i4': case 'i8': case 'int': case 'uint':\n\t\t\t\t\t\tp[name] = parseInt(text, 10);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'r4': case 'r8': case 'decimal':\n\t\t\t\t\t\tp[name] = parseFloat(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'filetime': case 'date':\n\t\t\t\t\t\tp[name] = new Date(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'cy': case 'error':\n\t\t\t\t\t\tp[name] = unescapexml(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tif(typeof console !== 'undefined') console.warn('Unexpected', x, type, toks);\n\t\t\t\t}\n\t\t\t} else if(x.substr(0,2) === \"</\") {\n\t\t\t} else if(opts.WTF) throw new Error(x);\n\t\t}\n\t}\n\treturn p;\n}\n\nvar CUST_PROPS_XML_ROOT = writextag('Properties', null, {\n\t'xmlns': XMLNS.CUST_PROPS,\n\t'xmlns:vt': XMLNS.vt\n});\n\nfunction write_cust_props(cp, opts) {\n\tvar o = [XML_HEADER, CUST_PROPS_XML_ROOT];\n\tif(!cp) return o.join(\"\");\n\tvar pid = 1;\n\tkeys(cp).forEach(function custprop(k) { ++pid;\n\t\to[o.length] = (writextag('property', write_vt(cp[k]), {\n\t\t\t'fmtid': '{D5CDD505-2E9C-101B-9397-08002B2CF9AE}',\n\t\t\t'pid': pid,\n\t\t\t'name': k\n\t\t}));\n\t});\n\tif(o.length>2){ o[o.length] = '</Properties>'; o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\nfunction xlml_set_prop(Props, tag, val) {\n\t/* TODO: Normalize the properties */\n\tswitch(tag) {\n\t\tcase 'Description': tag = 'Comments'; break;\n\t}\n\tProps[tag] = val;\n}\n\n/* [MS-DTYP] 2.3.3 FILETIME */\n/* [MS-OLEDS] 2.1.3 FILETIME (Packet Version) */\n/* [MS-OLEPS] 2.8 FILETIME (Packet Version) */\nfunction parse_FILETIME(blob) {\n\tvar dwLowDateTime = blob.read_shift(4), dwHighDateTime = blob.read_shift(4);\n\treturn new Date(((dwHighDateTime/1e7*Math.pow(2,32) + dwLowDateTime/1e7) - 11644473600)*1000).toISOString().replace(/\\.000/,\"\");\n}\n\n/* [MS-OSHARED] 2.3.3.1.4 Lpstr */\nfunction parse_lpstr(blob, type, pad) {\n\tvar str = blob.read_shift(0, 'lpstr');\n\tif(pad) blob.l += (4 - ((str.length+1) & 3)) & 3;\n\treturn str;\n}\n\n/* [MS-OSHARED] 2.3.3.1.6 Lpwstr */\nfunction parse_lpwstr(blob, type, pad) {\n\tvar str = blob.read_shift(0, 'lpwstr');\n\tif(pad) blob.l += (4 - ((str.length+1) & 3)) & 3;\n\treturn str;\n}\n\n\n/* [MS-OSHARED] 2.3.3.1.11 VtString */\n/* [MS-OSHARED] 2.3.3.1.12 VtUnalignedString */\nfunction parse_VtStringBase(blob, stringType, pad) {\n\tif(stringType === 0x1F /*VT_LPWSTR*/) return parse_lpwstr(blob);\n\treturn parse_lpstr(blob, stringType, pad);\n}\n\nfunction parse_VtString(blob, t, pad) { return parse_VtStringBase(blob, t, pad === false ? 0: 4); }\nfunction parse_VtUnalignedString(blob, t) { if(!t) throw new Error(\"dafuq?\"); return parse_VtStringBase(blob, t, 0); }\n\n/* [MS-OSHARED] 2.3.3.1.9 VtVecUnalignedLpstrValue */\nfunction parse_VtVecUnalignedLpstrValue(blob) {\n\tvar length = blob.read_shift(4);\n\tvar ret = [];\n\tfor(var i = 0; i != length; ++i) ret[i] = blob.read_shift(0, 'lpstr');\n\treturn ret;\n}\n\n/* [MS-OSHARED] 2.3.3.1.10 VtVecUnalignedLpstr */\nfunction parse_VtVecUnalignedLpstr(blob) {\n\treturn parse_VtVecUnalignedLpstrValue(blob);\n}\n\n/* [MS-OSHARED] 2.3.3.1.13 VtHeadingPair */\nfunction parse_VtHeadingPair(blob) {\n\tvar headingString = parse_TypedPropertyValue(blob, VT_USTR);\n\tvar headerParts = parse_TypedPropertyValue(blob, VT_I4);\n\treturn [headingString, headerParts];\n}\n\n/* [MS-OSHARED] 2.3.3.1.14 VtVecHeadingPairValue */\nfunction parse_VtVecHeadingPairValue(blob) {\n\tvar cElements = blob.read_shift(4);\n\tvar out = [];\n\tfor(var i = 0; i != cElements / 2; ++i) out.push(parse_VtHeadingPair(blob));\n\treturn out;\n}\n\n/* [MS-OSHARED] 2.3.3.1.15 VtVecHeadingPair */\nfunction parse_VtVecHeadingPair(blob) {\n\t// NOTE: When invoked, wType & padding were already consumed\n\treturn parse_VtVecHeadingPairValue(blob);\n}\n\n/* [MS-OLEPS] 2.18.1 Dictionary (uses 2.17, 2.16) */\nfunction parse_dictionary(blob,CodePage) {\n\tvar cnt = blob.read_shift(4);\n\tvar dict = {};\n\tfor(var j = 0; j != cnt; ++j) {\n\t\tvar pid = blob.read_shift(4);\n\t\tvar len = blob.read_shift(4);\n\t\tdict[pid] = blob.read_shift(len, (CodePage === 0x4B0 ?'utf16le':'utf8')).replace(chr0,'').replace(chr1,'!');\n\t}\n\tif(blob.l & 3) blob.l = (blob.l>>2+1)<<2;\n\treturn dict;\n}\n\n/* [MS-OLEPS] 2.9 BLOB */\nfunction parse_BLOB(blob) {\n\tvar size = blob.read_shift(4);\n\tvar bytes = blob.slice(blob.l,blob.l+size);\n\tif(size & 3 > 0) blob.l += (4 - (size & 3)) & 3;\n\treturn bytes;\n}\n\n/* [MS-OLEPS] 2.11 ClipboardData */\nfunction parse_ClipboardData(blob) {\n\t// TODO\n\tvar o = {};\n\to.Size = blob.read_shift(4);\n\t//o.Format = blob.read_shift(4);\n\tblob.l += o.Size;\n\treturn o;\n}\n\n/* [MS-OLEPS] 2.14 Vector and Array Property Types */\nfunction parse_VtVector(blob, cb) {\n\t/* [MS-OLEPS] 2.14.2 VectorHeader */\n/*\tvar Length = blob.read_shift(4);\n\tvar o = [];\n\tfor(var i = 0; i != Length; ++i) {\n\t\to.push(cb(blob));\n\t}\n\treturn o;*/\n}\n\n/* [MS-OLEPS] 2.15 TypedPropertyValue */\nfunction parse_TypedPropertyValue(blob, type, _opts) {\n\tvar t = blob.read_shift(2), ret, opts = _opts||{};\n\tblob.l += 2;\n\tif(type !== VT_VARIANT)\n\tif(t !== type && VT_CUSTOM.indexOf(type)===-1) throw new Error('Expected type ' + type + ' saw ' + t);\n\tswitch(type === VT_VARIANT ? t : type) {\n\t\tcase 0x02 /*VT_I2*/: ret = blob.read_shift(2, 'i'); if(!opts.raw) blob.l += 2; return ret;\n\t\tcase 0x03 /*VT_I4*/: ret = blob.read_shift(4, 'i'); return ret;\n\t\tcase 0x0B /*VT_BOOL*/: return blob.read_shift(4) !== 0x0;\n\t\tcase 0x13 /*VT_UI4*/: ret = blob.read_shift(4); return ret;\n\t\tcase 0x1E /*VT_LPSTR*/: return parse_lpstr(blob, t, 4).replace(chr0,'');\n\t\tcase 0x1F /*VT_LPWSTR*/: return parse_lpwstr(blob);\n\t\tcase 0x40 /*VT_FILETIME*/: return parse_FILETIME(blob);\n\t\tcase 0x41 /*VT_BLOB*/: return parse_BLOB(blob);\n\t\tcase 0x47 /*VT_CF*/: return parse_ClipboardData(blob);\n\t\tcase 0x50 /*VT_STRING*/: return parse_VtString(blob, t, !opts.raw && 4).replace(chr0,'');\n\t\tcase 0x51 /*VT_USTR*/: return parse_VtUnalignedString(blob, t, 4).replace(chr0,'');\n\t\tcase 0x100C /*VT_VECTOR|VT_VARIANT*/: return parse_VtVecHeadingPair(blob);\n\t\tcase 0x101E /*VT_LPSTR*/: return parse_VtVecUnalignedLpstr(blob);\n\t\tdefault: throw new Error(\"TypedPropertyValue unrecognized type \" + type + \" \" + t);\n\t}\n}\n/* [MS-OLEPS] 2.14.2 VectorHeader */\n/*function parse_VTVectorVariant(blob) {\n\tvar Length = blob.read_shift(4);\n\n\tif(Length & 1 !== 0) throw new Error(\"VectorHeader Length=\" + Length + \" must be even\");\n\tvar o = [];\n\tfor(var i = 0; i != Length; ++i) {\n\t\to.push(parse_TypedPropertyValue(blob, VT_VARIANT));\n\t}\n\treturn o;\n}*/\n\n/* [MS-OLEPS] 2.20 PropertySet */\nfunction parse_PropertySet(blob, PIDSI) {\n\tvar start_addr = blob.l;\n\tvar size = blob.read_shift(4);\n\tvar NumProps = blob.read_shift(4);\n\tvar Props = [], i = 0;\n\tvar CodePage = 0;\n\tvar Dictionary = -1, DictObj;\n\tfor(i = 0; i != NumProps; ++i) {\n\t\tvar PropID = blob.read_shift(4);\n\t\tvar Offset = blob.read_shift(4);\n\t\tProps[i] = [PropID, Offset + start_addr];\n\t}\n\tvar PropH = {};\n\tfor(i = 0; i != NumProps; ++i) {\n\t\tif(blob.l !== Props[i][1]) {\n\t\t\tvar fail = true;\n\t\t\tif(i>0 && PIDSI) switch(PIDSI[Props[i-1][0]].t) {\n\t\t\t\tcase 0x02 /*VT_I2*/: if(blob.l +2 === Props[i][1]) { blob.l+=2; fail = false; } break;\n\t\t\t\tcase 0x50 /*VT_STRING*/: if(blob.l <= Props[i][1]) { blob.l=Props[i][1]; fail = false; } break;\n\t\t\t\tcase 0x100C /*VT_VECTOR|VT_VARIANT*/: if(blob.l <= Props[i][1]) { blob.l=Props[i][1]; fail = false; } break;\n\t\t\t}\n\t\t\tif(!PIDSI && blob.l <= Props[i][1]) { fail=false; blob.l = Props[i][1]; }\n\t\t\tif(fail) throw new Error(\"Read Error: Expected address \" + Props[i][1] + ' at ' + blob.l + ' :' + i);\n\t\t}\n\t\tif(PIDSI) {\n\t\t\tvar piddsi = PIDSI[Props[i][0]];\n\t\t\tPropH[piddsi.n] = parse_TypedPropertyValue(blob, piddsi.t, {raw:true});\n\t\t\tif(piddsi.p === 'version') PropH[piddsi.n] = String(PropH[piddsi.n] >> 16) + \".\" + String(PropH[piddsi.n] & 0xFFFF);\n\t\t\tif(piddsi.n == \"CodePage\") switch(PropH[piddsi.n]) {\n\t\t\t\tcase 0: PropH[piddsi.n] = 1252;\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase 10000: // OSX Roman\n\t\t\t\tcase 1252: // Windows Latin\n\n\t\t\t\tcase 874: // SB Windows Thai\n\t\t\t\tcase 1250: // SB Windows Central Europe\n\t\t\t\tcase 1251: // SB Windows Cyrillic\n\t\t\t\tcase 1253: // SB Windows Greek\n\t\t\t\tcase 1254: // SB Windows Turkish\n\t\t\t\tcase 1255: // SB Windows Hebrew\n\t\t\t\tcase 1256: // SB Windows Arabic\n\t\t\t\tcase 1257: // SB Windows Baltic\n\t\t\t\tcase 1258: // SB Windows Vietnam\n\n\t\t\t\tcase 932: // DB Windows Japanese Shift-JIS\n\t\t\t\tcase 936: // DB Windows Simplified Chinese GBK\n\t\t\t\tcase 949: // DB Windows Korean\n\t\t\t\tcase 950: // DB Windows Traditional Chinese Big5\n\n\t\t\t\tcase 1200: // UTF16LE\n\t\t\t\tcase 1201: // UTF16BE\n\t\t\t\tcase 65000: case -536: // UTF-7\n\t\t\t\tcase 65001: case -535: // UTF-8\n\t\t\t\t\tset_cp(CodePage = PropH[piddsi.n]); break;\n\t\t\t\tdefault: throw new Error(\"Unsupported CodePage: \" + PropH[piddsi.n]);\n\t\t\t}\n\t\t} else {\n\t\t\tif(Props[i][0] === 0x1) {\n\t\t\t\tCodePage = PropH.CodePage = parse_TypedPropertyValue(blob, VT_I2);\n\t\t\t\tset_cp(CodePage);\n\t\t\t\tif(Dictionary !== -1) {\n\t\t\t\t\tvar oldpos = blob.l;\n\t\t\t\t\tblob.l = Props[Dictionary][1];\n\t\t\t\t\tDictObj = parse_dictionary(blob,CodePage);\n\t\t\t\t\tblob.l = oldpos;\n\t\t\t\t}\n\t\t\t} else if(Props[i][0] === 0) {\n\t\t\t\tif(CodePage === 0) { Dictionary = i; blob.l = Props[i+1][1]; continue; }\n\t\t\t\tDictObj = parse_dictionary(blob,CodePage);\n\t\t\t} else {\n\t\t\t\tvar name = DictObj[Props[i][0]];\n\t\t\t\tvar val;\n\t\t\t\t/* [MS-OSHARED] 2.3.3.2.3.1.2 + PROPVARIANT */\n\t\t\t\tswitch(blob[blob.l]) {\n\t\t\t\t\tcase 0x41 /*VT_BLOB*/: blob.l += 4; val = parse_BLOB(blob); break;\n\t\t\t\t\tcase 0x1E /*VT_LPSTR*/: blob.l += 4; val = parse_VtString(blob, blob[blob.l-4]); break;\n\t\t\t\t\tcase 0x1F /*VT_LPWSTR*/: blob.l += 4; val = parse_VtString(blob, blob[blob.l-4]); break;\n\t\t\t\t\tcase 0x03 /*VT_I4*/: blob.l += 4; val = blob.read_shift(4, 'i'); break;\n\t\t\t\t\tcase 0x13 /*VT_UI4*/: blob.l += 4; val = blob.read_shift(4); break;\n\t\t\t\t\tcase 0x05 /*VT_R8*/: blob.l += 4; val = blob.read_shift(8, 'f'); break;\n\t\t\t\t\tcase 0x0B /*VT_BOOL*/: blob.l += 4; val = parsebool(blob, 4); break;\n\t\t\t\t\tcase 0x40 /*VT_FILETIME*/: blob.l += 4; val = new Date(parse_FILETIME(blob)); break;\n\t\t\t\t\tdefault: throw new Error(\"unparsed value: \" + blob[blob.l]);\n\t\t\t\t}\n\t\t\t\tPropH[name] = val;\n\t\t\t}\n\t\t}\n\t}\n\tblob.l = start_addr + size; /* step ahead to skip padding */\n\treturn PropH;\n}\n\n/* [MS-OLEPS] 2.21 PropertySetStream */\nfunction parse_PropertySetStream(file, PIDSI) {\n\tvar blob = file.content;\n\tprep_blob(blob, 0);\n\n\tvar NumSets, FMTID0, FMTID1, Offset0, Offset1;\n\tblob.chk('feff', 'Byte Order: ');\n\n\tvar vers = blob.read_shift(2); // TODO: check version\n\tvar SystemIdentifier = blob.read_shift(4);\n\tblob.chk(CFB.utils.consts.HEADER_CLSID, 'CLSID: ');\n\tNumSets = blob.read_shift(4);\n\tif(NumSets !== 1 && NumSets !== 2) throw \"Unrecognized #Sets: \" + NumSets;\n\tFMTID0 = blob.read_shift(16); Offset0 = blob.read_shift(4);\n\n\tif(NumSets === 1 && Offset0 !== blob.l) throw \"Length mismatch\";\n\telse if(NumSets === 2) { FMTID1 = blob.read_shift(16); Offset1 = blob.read_shift(4); }\n\tvar PSet0 = parse_PropertySet(blob, PIDSI);\n\n\tvar rval = { SystemIdentifier: SystemIdentifier };\n\tfor(var y in PSet0) rval[y] = PSet0[y];\n\t//rval.blob = blob;\n\trval.FMTID = FMTID0;\n\t//rval.PSet0 = PSet0;\n\tif(NumSets === 1) return rval;\n\tif(blob.l !== Offset1) throw \"Length mismatch 2: \" + blob.l + \" !== \" + Offset1;\n\tvar PSet1;\n\ttry { PSet1 = parse_PropertySet(blob, null); } catch(e) { }\n\tfor(y in PSet1) rval[y] = PSet1[y];\n\trval.FMTID = [FMTID0, FMTID1]; // TODO: verify FMTID0/1\n\treturn rval;\n}\n\n\nfunction parsenoop2(blob, length) { blob.read_shift(length); return null; }\n\nfunction parslurp(blob, length, cb) {\n\tvar arr = [], target = blob.l + length;\n\twhile(blob.l < target) arr.push(cb(blob, target - blob.l));\n\tif(target !== blob.l) throw new Error(\"Slurp error\");\n\treturn arr;\n}\n\nfunction parslurp2(blob, length, cb) {\n\tvar arr = [], target = blob.l + length, len = blob.read_shift(2);\n\twhile(len-- !== 0) arr.push(cb(blob, target - blob.l));\n\tif(target !== blob.l) throw new Error(\"Slurp error\");\n\treturn arr;\n}\n\nfunction parsebool(blob, length) { return blob.read_shift(length) === 0x1; }\n\nfunction parseuint16(blob) { return blob.read_shift(2, 'u'); }\nfunction parseuint16a(blob, length) { return parslurp(blob,length,parseuint16);}\n\n/* --- 2.5 Structures --- */\n\n/* [MS-XLS] 2.5.14 Boolean */\nvar parse_Boolean = parsebool;\n\n/* [MS-XLS] 2.5.10 Bes (boolean or error) */\nfunction parse_Bes(blob) {\n\tvar v = blob.read_shift(1), t = blob.read_shift(1);\n\treturn t === 0x01 ? v : v === 0x01;\n}\n\n/* [MS-XLS] 2.5.240 ShortXLUnicodeString */\nfunction parse_ShortXLUnicodeString(blob, length, opts) {\n\tvar cch = blob.read_shift(1);\n\tvar width = 1, encoding = 'sbcs-cont';\n\tvar cp = current_codepage;\n\tif(opts && opts.biff >= 8) current_codepage = 1200;\n\tif(opts === undefined || opts.biff !== 5) {\n\t\tvar fHighByte = blob.read_shift(1);\n\t\tif(fHighByte) { width = 2; encoding = 'dbcs-cont'; }\n\t}\n\tvar o = cch ? blob.read_shift(cch, encoding) : \"\";\n\tcurrent_codepage = cp;\n\treturn o;\n}\n\n/* 2.5.293 XLUnicodeRichExtendedString */\nfunction parse_XLUnicodeRichExtendedString(blob) {\n\tvar cp = current_codepage;\n\tcurrent_codepage = 1200;\n\tvar cch = blob.read_shift(2), flags = blob.read_shift(1);\n\tvar fHighByte = flags & 0x1, fExtSt = flags & 0x4, fRichSt = flags & 0x8;\n\tvar width = 1 + (flags & 0x1); // 0x0 -> utf8, 0x1 -> dbcs\n\tvar cRun, cbExtRst;\n\tvar z = {};\n\tif(fRichSt) cRun = blob.read_shift(2);\n\tif(fExtSt) cbExtRst = blob.read_shift(4);\n\tvar encoding = (flags & 0x1) ? 'dbcs-cont' : 'sbcs-cont';\n\tvar msg = cch === 0 ? \"\" : blob.read_shift(cch, encoding);\n\tif(fRichSt) blob.l += 4 * cRun; //TODO: parse this\n\tif(fExtSt) blob.l += cbExtRst; //TODO: parse this\n\tz.t = msg;\n\tif(!fRichSt) { z.raw = \"<t>\" + z.t + \"</t>\"; z.r = z.t; }\n\tcurrent_codepage = cp;\n\treturn z;\n}\n\n/* 2.5.296 XLUnicodeStringNoCch */\nfunction parse_XLUnicodeStringNoCch(blob, cch, opts) {\n\tvar retval;\n\tvar fHighByte = blob.read_shift(1);\n\tif(fHighByte===0) { retval = blob.read_shift(cch, 'sbcs-cont'); }\n\telse { retval = blob.read_shift(cch, 'dbcs-cont'); }\n\treturn retval;\n}\n\n/* 2.5.294 XLUnicodeString */\nfunction parse_XLUnicodeString(blob, length, opts) {\n\tvar cch = blob.read_shift(opts !== undefined && opts.biff > 0 && opts.biff < 8 ? 1 : 2);\n\tif(cch === 0) { blob.l++; return \"\"; }\n\treturn parse_XLUnicodeStringNoCch(blob, cch, opts);\n}\n/* BIFF5 override */\nfunction parse_XLUnicodeString2(blob, length, opts) {\n\tif(opts.biff !== 5 && opts.biff !== 2) return parse_XLUnicodeString(blob, length, opts);\n\tvar cch = blob.read_shift(1);\n\tif(cch === 0) { blob.l++; return \"\"; }\n\treturn blob.read_shift(cch, 'sbcs-cont');\n}\n\n/* [MS-XLS] 2.5.61 ControlInfo */\nvar parse_ControlInfo = parsenoop;\n\n/* [MS-OSHARED] 2.3.7.6 URLMoniker TODO: flags */\nvar parse_URLMoniker = function(blob, length) {\n\tvar len = blob.read_shift(4), start = blob.l;\n\tvar extra = false;\n\tif(len > 24) {\n\t\t/* look ahead */\n\t\tblob.l += len - 24;\n\t\tif(blob.read_shift(16) === \"795881f43b1d7f48af2c825dc4852763\") extra = true;\n\t\tblob.l = start;\n\t}\n\tvar url = blob.read_shift((extra?len-24:len)>>1, 'utf16le').replace(chr0,\"\");\n\tif(extra) blob.l += 24;\n\treturn url;\n};\n\n/* [MS-OSHARED] 2.3.7.8 FileMoniker TODO: all fields */\nvar parse_FileMoniker = function(blob, length) {\n\tvar cAnti = blob.read_shift(2);\n\tvar ansiLength = blob.read_shift(4);\n\tvar ansiPath = blob.read_shift(ansiLength, 'cstr');\n\tvar endServer = blob.read_shift(2);\n\tvar versionNumber = blob.read_shift(2);\n\tvar cbUnicodePathSize = blob.read_shift(4);\n\tif(cbUnicodePathSize === 0) return ansiPath.replace(/\\\\/g,\"/\");\n\tvar cbUnicodePathBytes = blob.read_shift(4);\n\tvar usKeyValue = blob.read_shift(2);\n\tvar unicodePath = blob.read_shift(cbUnicodePathBytes>>1, 'utf16le').replace(chr0,\"\");\n\treturn unicodePath;\n};\n\n/* [MS-OSHARED] 2.3.7.2 HyperlinkMoniker TODO: all the monikers */\nvar parse_HyperlinkMoniker = function(blob, length) {\n\tvar clsid = blob.read_shift(16); length -= 16;\n\tswitch(clsid) {\n\t\tcase \"e0c9ea79f9bace118c8200aa004ba90b\": return parse_URLMoniker(blob, length);\n\t\tcase \"0303000000000000c000000000000046\": return parse_FileMoniker(blob, length);\n\t\tdefault: throw \"unsupported moniker \" + clsid;\n\t}\n};\n\n/* [MS-OSHARED] 2.3.7.9 HyperlinkString */\nvar parse_HyperlinkString = function(blob, length) {\n\tvar len = blob.read_shift(4);\n\tvar o = blob.read_shift(len, 'utf16le').replace(chr0, \"\");\n\treturn o;\n};\n\n/* [MS-OSHARED] 2.3.7.1 Hyperlink Object TODO: unify params with XLSX */\nvar parse_Hyperlink = function(blob, length) {\n\tvar end = blob.l + length;\n\tvar sVer = blob.read_shift(4);\n\tif(sVer !== 2) throw new Error(\"Unrecognized streamVersion: \" + sVer);\n\tvar flags = blob.read_shift(2);\n\tblob.l += 2;\n\tvar displayName, targetFrameName, moniker, oleMoniker, location, guid, fileTime;\n\tif(flags & 0x0010) displayName = parse_HyperlinkString(blob, end - blob.l);\n\tif(flags & 0x0080) targetFrameName = parse_HyperlinkString(blob, end - blob.l);\n\tif((flags & 0x0101) === 0x0101) moniker = parse_HyperlinkString(blob, end - blob.l);\n\tif((flags & 0x0101) === 0x0001) oleMoniker = parse_HyperlinkMoniker(blob, end - blob.l);\n\tif(flags & 0x0008) location = parse_HyperlinkString(blob, end - blob.l);\n\tif(flags & 0x0020) guid = blob.read_shift(16);\n\tif(flags & 0x0040) fileTime = parse_FILETIME(blob, 8);\n\tblob.l = end;\n\tvar target = (targetFrameName||moniker||oleMoniker);\n\tif(location) target+=\"#\"+location;\n\treturn {Target: target};\n};\n\n/* 2.5.178 LongRGBA */\nfunction parse_LongRGBA(blob, length) { var r = blob.read_shift(1), g = blob.read_shift(1), b = blob.read_shift(1), a = blob.read_shift(1); return [r,g,b,a]; }\n\n/* 2.5.177 LongRGB */\nfunction parse_LongRGB(blob, length) { var x = parse_LongRGBA(blob, length); x[3] = 0; return x; }\n\n\n/* --- MS-XLS --- */\n\n/* 2.5.19 */\nfunction parse_XLSCell(blob, length) {\n\tvar rw = blob.read_shift(2); // 0-indexed\n\tvar col = blob.read_shift(2);\n\tvar ixfe = blob.read_shift(2);\n\treturn {r:rw, c:col, ixfe:ixfe};\n}\n\n/* 2.5.134 */\nfunction parse_frtHeader(blob) {\n\tvar rt = blob.read_shift(2);\n\tvar flags = blob.read_shift(2); // TODO: parse these flags\n\tblob.l += 8;\n\treturn {type: rt, flags: flags};\n}\n\n\n\nfunction parse_OptXLUnicodeString(blob, length, opts) { return length === 0 ? \"\" : parse_XLUnicodeString2(blob, length, opts); }\n\n/* 2.5.158 */\nvar HIDEOBJENUM = ['SHOWALL', 'SHOWPLACEHOLDER', 'HIDEALL'];\nvar parse_HideObjEnum = parseuint16;\n\n/* 2.5.344 */\nfunction parse_XTI(blob, length) {\n\tvar iSupBook = blob.read_shift(2), itabFirst = blob.read_shift(2,'i'), itabLast = blob.read_shift(2,'i');\n\treturn [iSupBook, itabFirst, itabLast];\n}\n\n/* 2.5.218 */\nfunction parse_RkRec(blob, length) {\n\tvar ixfe = blob.read_shift(2);\n\tvar RK = parse_RkNumber(blob);\n\t//console.log(\"::\", ixfe, RK,\";;\");\n\treturn [ixfe, RK];\n}\n\n/* 2.5.1 */\nfunction parse_AddinUdf(blob, length) {\n\tblob.l += 4; length -= 4;\n\tvar l = blob.l + length;\n\tvar udfName = parse_ShortXLUnicodeString(blob, length);\n\tvar cb = blob.read_shift(2);\n\tl -= blob.l;\n\tif(cb !== l) throw \"Malformed AddinUdf: padding = \" + l + \" != \" + cb;\n\tblob.l += cb;\n\treturn udfName;\n}\n\n/* 2.5.209 TODO: Check sizes */\nfunction parse_Ref8U(blob, length) {\n\tvar rwFirst = blob.read_shift(2);\n\tvar rwLast = blob.read_shift(2);\n\tvar colFirst = blob.read_shift(2);\n\tvar colLast = blob.read_shift(2);\n\treturn {s:{c:colFirst, r:rwFirst}, e:{c:colLast,r:rwLast}};\n}\n\n/* 2.5.211 */\nfunction parse_RefU(blob, length) {\n\tvar rwFirst = blob.read_shift(2);\n\tvar rwLast = blob.read_shift(2);\n\tvar colFirst = blob.read_shift(1);\n\tvar colLast = blob.read_shift(1);\n\treturn {s:{c:colFirst, r:rwFirst}, e:{c:colLast,r:rwLast}};\n}\n\n/* 2.5.207 */\nvar parse_Ref = parse_RefU;\n\n/* 2.5.143 */\nfunction parse_FtCmo(blob, length) {\n\tblob.l += 4;\n\tvar ot = blob.read_shift(2);\n\tvar id = blob.read_shift(2);\n\tvar flags = blob.read_shift(2);\n\tblob.l+=12;\n\treturn [id, ot, flags];\n}\n\n/* 2.5.149 */\nfunction parse_FtNts(blob, length) {\n\tvar out = {};\n\tblob.l += 4;\n\tblob.l += 16; // GUID TODO\n\tout.fSharedNote = blob.read_shift(2);\n\tblob.l += 4;\n\treturn out;\n}\n\n/* 2.5.142 */\nfunction parse_FtCf(blob, length) {\n\tvar out = {};\n\tblob.l += 4;\n\tblob.cf = blob.read_shift(2);\n\treturn out;\n}\n\n/* 2.5.140 - 2.5.154 and friends */\nvar FtTab = {\n\t0x15: parse_FtCmo,\n\t0x13: parsenoop,                                /* FtLbsData */\n\t0x12: function(blob, length) { blob.l += 12; }, /* FtCblsData */\n\t0x11: function(blob, length) { blob.l += 8; },  /* FtRboData */\n\t0x10: parsenoop,                                /* FtEdoData */\n\t0x0F: parsenoop,                                /* FtGboData */\n\t0x0D: parse_FtNts,                              /* FtNts */\n\t0x0C: function(blob, length) { blob.l += 24; }, /* FtSbs */\n\t0x0B: function(blob, length) { blob.l += 10; }, /* FtRbo */\n\t0x0A: function(blob, length) { blob.l += 16; }, /* FtCbls */\n\t0x09: parsenoop,                                /* FtPictFmla */\n\t0x08: function(blob, length) { blob.l += 6; },  /* FtPioGrbit */\n\t0x07: parse_FtCf,                               /* FtCf */\n\t0x06: function(blob, length) { blob.l += 6; },  /* FtGmo */\n\t0x04: parsenoop,                                /* FtMacro */\n\t0x00: function(blob, length) { blob.l += 4; }   /* FtEnding */\n};\nfunction parse_FtArray(blob, length, ot) {\n\tvar s = blob.l;\n\tvar fts = [];\n\twhile(blob.l < s + length) {\n\t\tvar ft = blob.read_shift(2);\n\t\tblob.l-=2;\n\t\ttry {\n\t\t\tfts.push(FtTab[ft](blob, s + length - blob.l));\n\t\t} catch(e) { blob.l = s + length; return fts; }\n\t}\n\tif(blob.l != s + length) blob.l = s + length; //throw \"bad Object Ft-sequence\";\n\treturn fts;\n}\n\n/* 2.5.129 */\nvar parse_FontIndex = parseuint16;\n\n/* --- 2.4 Records --- */\n\n/* 2.4.21 */\nfunction parse_BOF(blob, length) {\n\tvar o = {};\n\to.BIFFVer = blob.read_shift(2); length -= 2;\n\tswitch(o.BIFFVer) {\n\t\tcase 0x0600: /* BIFF8 */\n\t\tcase 0x0500: /* BIFF5 */\n\t\tcase 0x0002: case 0x0007: /* BIFF2 */\n\t\t\tbreak;\n\t\tdefault: throw \"Unexpected BIFF Ver \" + o.BIFFVer;\n\t}\n\tblob.read_shift(length);\n\treturn o;\n}\n\n\n/* 2.4.146 */\nfunction parse_InterfaceHdr(blob, length) {\n\tif(length === 0) return 0x04b0;\n\tvar q;\n\tif((q=blob.read_shift(2))!==0x04b0) throw 'InterfaceHdr codePage ' + q;\n\treturn 0x04b0;\n}\n\n\n/* 2.4.349 */\nfunction parse_WriteAccess(blob, length, opts) {\n\tif(opts.enc) { blob.l += length; return \"\"; }\n\tvar l = blob.l;\n\t// TODO: make sure XLUnicodeString doesnt overrun\n\tvar UserName = parse_XLUnicodeString(blob, 0, opts);\n\tblob.read_shift(length + l - blob.l);\n\treturn UserName;\n}\n\n/* 2.4.28 */\nfunction parse_BoundSheet8(blob, length, opts) {\n\tvar pos = blob.read_shift(4);\n\tvar hidden = blob.read_shift(1) >> 6;\n\tvar dt = blob.read_shift(1);\n\tswitch(dt) {\n\t\tcase 0: dt = 'Worksheet'; break;\n\t\tcase 1: dt = 'Macrosheet'; break;\n\t\tcase 2: dt = 'Chartsheet'; break;\n\t\tcase 6: dt = 'VBAModule'; break;\n\t}\n\tvar name = parse_ShortXLUnicodeString(blob, 0, opts);\n\tif(name.length === 0) name = \"Sheet1\";\n\treturn { pos:pos, hs:hidden, dt:dt, name:name };\n}\n\n/* 2.4.265 TODO */\nfunction parse_SST(blob, length) {\n\tvar cnt = blob.read_shift(4);\n\tvar ucnt = blob.read_shift(4);\n\tvar strs = [];\n\tfor(var i = 0; i != ucnt; ++i) {\n\t\tstrs.push(parse_XLUnicodeRichExtendedString(blob));\n\t}\n\tstrs.Count = cnt; strs.Unique = ucnt;\n\treturn strs;\n}\n\n/* 2.4.107 */\nfunction parse_ExtSST(blob, length) {\n\tvar extsst = {};\n\textsst.dsst = blob.read_shift(2);\n\tblob.l += length-2;\n\treturn extsst;\n}\n\n\n/* 2.4.221 TODO*/\nfunction parse_Row(blob, length) {\n\tvar rw = blob.read_shift(2), col = blob.read_shift(2), Col = blob.read_shift(2), rht = blob.read_shift(2);\n\tblob.read_shift(4); // reserved(2), unused(2)\n\tvar flags = blob.read_shift(1); // various flags\n\tblob.read_shift(1); // reserved\n\tblob.read_shift(2); //ixfe, other flags\n\treturn {r:rw, c:col, cnt:Col-col};\n}\n\n\n/* 2.4.125 */\nfunction parse_ForceFullCalculation(blob, length) {\n\tvar header = parse_frtHeader(blob);\n\tif(header.type != 0x08A3) throw \"Invalid Future Record \" + header.type;\n\tvar fullcalc = blob.read_shift(4);\n\treturn fullcalc !== 0x0;\n}\n\n\nvar parse_CompressPictures = parsenoop2; /* 2.4.55 Not interesting */\n\n\n\n/* 2.4.215 rt */\nfunction parse_RecalcId(blob, length) {\n\tblob.read_shift(2);\n\treturn blob.read_shift(4);\n}\n\n/* 2.4.87 */\nfunction parse_DefaultRowHeight (blob, length) {\n\tvar f = blob.read_shift(2), miyRw;\n\tmiyRw = blob.read_shift(2); // flags & 0x02 -> hidden, else empty\n\tvar fl = {Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};\n\treturn [fl, miyRw];\n}\n\n/* 2.4.345 TODO */\nfunction parse_Window1(blob, length) {\n\tvar xWn = blob.read_shift(2), yWn = blob.read_shift(2), dxWn = blob.read_shift(2), dyWn = blob.read_shift(2);\n\tvar flags = blob.read_shift(2), iTabCur = blob.read_shift(2), iTabFirst = blob.read_shift(2);\n\tvar ctabSel = blob.read_shift(2), wTabRatio = blob.read_shift(2);\n\treturn { Pos: [xWn, yWn], Dim: [dxWn, dyWn], Flags: flags, CurTab: iTabCur,\n\t\tFirstTab: iTabFirst, Selected: ctabSel, TabRatio: wTabRatio };\n}\n\n/* 2.4.122 TODO */\nfunction parse_Font(blob, length, opts) {\n\tblob.l += 14;\n\tvar name = parse_ShortXLUnicodeString(blob, 0, opts);\n\treturn name;\n}\n\n/* 2.4.149 */\nfunction parse_LabelSst(blob, length) {\n\tvar cell = parse_XLSCell(blob);\n\tcell.isst = blob.read_shift(4);\n\treturn cell;\n}\n\n/* 2.4.148 */\nfunction parse_Label(blob, length, opts) {\n\tvar cell = parse_XLSCell(blob, 6);\n\tvar str = parse_XLUnicodeString(blob, length-6, opts);\n\tcell.val = str;\n\treturn cell;\n}\n\n/* 2.4.126 Number Formats */\nfunction parse_Format(blob, length, opts) {\n\tvar ifmt = blob.read_shift(2);\n\tvar fmtstr = parse_XLUnicodeString2(blob, 0, opts);\n\treturn [ifmt, fmtstr];\n}\n\n/* 2.4.90 */\nfunction parse_Dimensions(blob, length) {\n\tvar w = length === 10 ? 2 : 4;\n\tvar r = blob.read_shift(w), R = blob.read_shift(w),\n\t    c = blob.read_shift(2), C = blob.read_shift(2);\n\tblob.l += 2;\n\treturn {s: {r:r, c:c}, e: {r:R, c:C}};\n}\n\n/* 2.4.220 */\nfunction parse_RK(blob, length) {\n\tvar rw = blob.read_shift(2), col = blob.read_shift(2);\n\tvar rkrec = parse_RkRec(blob);\n\treturn {r:rw, c:col, ixfe:rkrec[0], rknum:rkrec[1]};\n}\n\n/* 2.4.175 */\nfunction parse_MulRk(blob, length) {\n\tvar target = blob.l + length - 2;\n\tvar rw = blob.read_shift(2), col = blob.read_shift(2);\n\tvar rkrecs = [];\n\twhile(blob.l < target) rkrecs.push(parse_RkRec(blob));\n\tif(blob.l !== target) throw \"MulRK read error\";\n\tvar lastcol = blob.read_shift(2);\n\tif(rkrecs.length != lastcol - col + 1) throw \"MulRK length mismatch\";\n\treturn {r:rw, c:col, C:lastcol, rkrec:rkrecs};\n}\n\n/* 2.5.20 2.5.249 TODO */\nfunction parse_CellStyleXF(blob, length, style) {\n\tvar o = {};\n\tvar a = blob.read_shift(4), b = blob.read_shift(4);\n\tvar c = blob.read_shift(4), d = blob.read_shift(2);\n\to.patternType = XLSFillPattern[c >> 26];\n\to.icvFore = d & 0x7F;\n\to.icvBack = (d >> 7) & 0x7F;\n\treturn o;\n}\nfunction parse_CellXF(blob, length) {return parse_CellStyleXF(blob,length,0);}\nfunction parse_StyleXF(blob, length) {return parse_CellStyleXF(blob,length,1);}\n\n/* 2.4.353 TODO: actually do this right */\nfunction parse_XF(blob, length) {\n\tvar o = {};\n\to.ifnt = blob.read_shift(2); o.ifmt = blob.read_shift(2); o.flags = blob.read_shift(2);\n\to.fStyle = (o.flags >> 2) & 0x01;\n\tlength -= 6;\n\to.data = parse_CellStyleXF(blob, length, o.fStyle);\n\treturn o;\n}\n\n/* 2.4.134 */\nfunction parse_Guts(blob, length) {\n\tblob.l += 4;\n\tvar out = [blob.read_shift(2), blob.read_shift(2)];\n\tif(out[0] !== 0) out[0]--;\n\tif(out[1] !== 0) out[1]--;\n\tif(out[0] > 7 || out[1] > 7) throw \"Bad Gutters: \" + out;\n\treturn out;\n}\n\n/* 2.4.24 */\nfunction parse_BoolErr(blob, length) {\n\tvar cell = parse_XLSCell(blob, 6);\n\tvar val = parse_Bes(blob, 2);\n\tcell.val = val;\n\tcell.t = (val === true || val === false) ? 'b' : 'e';\n\treturn cell;\n}\n\n/* 2.4.180 Number */\nfunction parse_Number(blob, length) {\n\tvar cell = parse_XLSCell(blob, 6);\n\tvar xnum = parse_Xnum(blob, 8);\n\tcell.val = xnum;\n\treturn cell;\n}\n\nvar parse_XLHeaderFooter = parse_OptXLUnicodeString; // TODO: parse 2.4.136\n\n/* 2.4.271 */\nfunction parse_SupBook(blob, length, opts) {\n\tvar end = blob.l + length;\n\tvar ctab = blob.read_shift(2);\n\tvar cch = blob.read_shift(2);\n\tvar virtPath;\n\tif(cch >=0x01 && cch <=0xff) virtPath = parse_XLUnicodeStringNoCch(blob, cch);\n\tvar rgst = blob.read_shift(end - blob.l);\n\topts.sbcch = cch;\n\treturn [cch, ctab, virtPath, rgst];\n}\n\n/* 2.4.105 TODO */\nfunction parse_ExternName(blob, length, opts) {\n\tvar flags = blob.read_shift(2);\n\tvar body;\n\tvar o = {\n\t\tfBuiltIn: flags & 0x01,\n\t\tfWantAdvise: (flags >>> 1) & 0x01,\n\t\tfWantPict: (flags >>> 2) & 0x01,\n\t\tfOle: (flags >>> 3) & 0x01,\n\t\tfOleLink: (flags >>> 4) & 0x01,\n\t\tcf: (flags >>> 5) & 0x3FF,\n\t\tfIcon: flags >>> 15 & 0x01\n\t};\n\tif(opts.sbcch === 0x3A01) body = parse_AddinUdf(blob, length-2);\n\t//else throw new Error(\"unsupported SupBook cch: \" + opts.sbcch);\n\to.body = body || blob.read_shift(length-2);\n\treturn o;\n}\n\n/* 2.4.150 TODO */\nfunction parse_Lbl(blob, length, opts) {\n\tif(opts.biff < 8) return parse_Label(blob, length, opts);\n\tvar target = blob.l + length;\n\tvar flags = blob.read_shift(2);\n\tvar chKey = blob.read_shift(1);\n\tvar cch = blob.read_shift(1);\n\tvar cce = blob.read_shift(2);\n\tblob.l += 2;\n\tvar itab = blob.read_shift(2);\n\tblob.l += 4;\n\tvar name = parse_XLUnicodeStringNoCch(blob, cch, opts);\n\tvar rgce = parse_NameParsedFormula(blob, target - blob.l, opts, cce);\n\treturn {\n\t\tchKey: chKey,\n\t\tName: name,\n\t\trgce: rgce\n\t};\n}\n\n/* 2.4.106 TODO: verify supbook manipulation */\nfunction parse_ExternSheet(blob, length, opts) {\n\tif(opts.biff < 8) return parse_ShortXLUnicodeString(blob, length, opts);\n\tvar o = parslurp2(blob,length,parse_XTI);\n\tvar oo = [];\n\tif(opts.sbcch === 0x0401) {\n\t\tfor(var i = 0; i != o.length; ++i) oo.push(opts.snames[o[i][1]]);\n\t\treturn oo;\n\t}\n\telse return o;\n}\n\n/* 2.4.260 */\nfunction parse_ShrFmla(blob, length, opts) {\n\tvar ref = parse_RefU(blob, 6);\n\tblob.l++;\n\tvar cUse = blob.read_shift(1);\n\tlength -= 8;\n\treturn [parse_SharedParsedFormula(blob, length, opts), cUse];\n}\n\n/* 2.4.4 TODO */\nfunction parse_Array(blob, length, opts) {\n\tvar ref = parse_Ref(blob, 6);\n\tblob.l += 6; length -= 12; /* TODO: fAlwaysCalc */\n\treturn [ref, parse_ArrayParsedFormula(blob, length, opts, ref)];\n}\n\n/* 2.4.173 */\nfunction parse_MTRSettings(blob, length) {\n\tvar fMTREnabled = blob.read_shift(4) !== 0x00;\n\tvar fUserSetThreadCount = blob.read_shift(4) !== 0x00;\n\tvar cUserThreadCount = blob.read_shift(4);\n\treturn [fMTREnabled, fUserSetThreadCount, cUserThreadCount];\n}\n\n/* 2.5.186 TODO: BIFF5 */\nfunction parse_NoteSh(blob, length, opts) {\n\tif(opts.biff < 8) return;\n\tvar row = blob.read_shift(2), col = blob.read_shift(2);\n\tvar flags = blob.read_shift(2), idObj = blob.read_shift(2);\n\tvar stAuthor = parse_XLUnicodeString2(blob, 0, opts);\n\tif(opts.biff < 8) blob.read_shift(1);\n\treturn [{r:row,c:col}, stAuthor, idObj, flags];\n}\n\n/* 2.4.179 */\nfunction parse_Note(blob, length, opts) {\n\t/* TODO: Support revisions */\n\treturn parse_NoteSh(blob, length, opts);\n}\n\n/* 2.4.168 */\nfunction parse_MergeCells(blob, length) {\n\tvar merges = [];\n\tvar cmcs = blob.read_shift(2);\n\twhile (cmcs--) merges.push(parse_Ref8U(blob,length));\n\treturn merges;\n}\n\n/* 2.4.181 TODO: parse all the things! */\nfunction parse_Obj(blob, length) {\n\tvar cmo = parse_FtCmo(blob, 22); // id, ot, flags\n\tvar fts = parse_FtArray(blob, length-22, cmo[1]);\n\treturn { cmo: cmo, ft:fts };\n}\n\n/* 2.4.329 TODO: parse properly */\nfunction parse_TxO(blob, length, opts) {\n\tvar s = blob.l;\ntry {\n\tblob.l += 4;\n\tvar ot = (opts.lastobj||{cmo:[0,0]}).cmo[1];\n\tvar controlInfo;\n\tif([0,5,7,11,12,14].indexOf(ot) == -1) blob.l += 6;\n\telse controlInfo = parse_ControlInfo(blob, 6, opts);\n\tvar cchText = blob.read_shift(2);\n\tvar cbRuns = blob.read_shift(2);\n\tvar ifntEmpty = parse_FontIndex(blob, 2);\n\tvar len = blob.read_shift(2);\n\tblob.l += len;\n\t//var fmla = parse_ObjFmla(blob, s + length - blob.l);\n\n\tvar texts = \"\";\n\tfor(var i = 1; i < blob.lens.length-1; ++i) {\n\t\tif(blob.l-s != blob.lens[i]) throw \"TxO: bad continue record\";\n\t\tvar hdr = blob[blob.l];\n\t\tvar t = parse_XLUnicodeStringNoCch(blob, blob.lens[i+1]-blob.lens[i]-1);\n\t\ttexts += t;\n\t\tif(texts.length >= (hdr ? cchText : 2*cchText)) break;\n\t}\n\tif(texts.length !== cchText && texts.length !== cchText*2) {\n\t\tthrow \"cchText: \" + cchText + \" != \" + texts.length;\n\t}\n\n\tblob.l = s + length;\n\t/* 2.5.272 TxORuns */\n//\tvar rgTxoRuns = [];\n//\tfor(var j = 0; j != cbRuns/8-1; ++j) blob.l += 8;\n//\tvar cchText2 = blob.read_shift(2);\n//\tif(cchText2 !== cchText) throw \"TxOLastRun mismatch: \" + cchText2 + \" \" + cchText;\n//\tblob.l += 6;\n//\tif(s + length != blob.l) throw \"TxO \" + (s + length) + \", at \" + blob.l;\n\treturn { t: texts };\n} catch(e) { blob.l = s + length; return { t: texts||\"\" }; }\n}\n\n/* 2.4.140 */\nvar parse_HLink = function(blob, length) {\n\tvar ref = parse_Ref8U(blob, 8);\n\tblob.l += 16; /* CLSID */\n\tvar hlink = parse_Hyperlink(blob, length-24);\n\treturn [ref, hlink];\n};\n\n/* 2.4.141 */\nvar parse_HLinkTooltip = function(blob, length) {\n\tvar end = blob.l + length;\n\tblob.read_shift(2);\n\tvar ref = parse_Ref8U(blob, 8);\n\tvar wzTooltip = blob.read_shift((length-10)/2, 'dbcs-cont');\n\twzTooltip = wzTooltip.replace(chr0,\"\");\n\treturn [ref, wzTooltip];\n};\n\n/* 2.4.63 */\nfunction parse_Country(blob, length) {\n\tvar o = [], d;\n\td = blob.read_shift(2); o[0] = CountryEnum[d] || d;\n\td = blob.read_shift(2); o[1] = CountryEnum[d] || d;\n\treturn o;\n}\n\n/* 2.4.50 ClrtClient */\nfunction parse_ClrtClient(blob, length) {\n\tvar ccv = blob.read_shift(2);\n\tvar o = [];\n\twhile(ccv-->0) o.push(parse_LongRGB(blob, 8));\n\treturn o;\n}\n\n/* 2.4.188 */\nfunction parse_Palette(blob, length) {\n\tvar ccv = blob.read_shift(2);\n\tvar o = [];\n\twhile(ccv-->0) o.push(parse_LongRGB(blob, 8));\n\treturn o;\n}\n\n/* 2.4.354 */\nfunction parse_XFCRC(blob, length) {\n\tblob.l += 2;\n\tvar o = {cxfs:0, crc:0};\n\to.cxfs = blob.read_shift(2);\n\to.crc = blob.read_shift(4);\n\treturn o;\n}\n\n\nvar parse_Style = parsenoop;\nvar parse_StyleExt = parsenoop;\n\nvar parse_ColInfo = parsenoop;\n\nvar parse_Window2 = parsenoop;\n\n\nvar parse_Backup = parsebool; /* 2.4.14 */\nvar parse_Blank = parse_XLSCell; /* 2.4.20 Just the cell */\nvar parse_BottomMargin = parse_Xnum; /* 2.4.27 */\nvar parse_BuiltInFnGroupCount = parseuint16; /* 2.4.30 0x0E or 0x10 but excel 2011 generates 0x11? */\nvar parse_CalcCount = parseuint16; /* 2.4.31 #Iterations */\nvar parse_CalcDelta = parse_Xnum; /* 2.4.32 */\nvar parse_CalcIter = parsebool;  /* 2.4.33 1=iterative calc */\nvar parse_CalcMode = parseuint16; /* 2.4.34 0=manual, 1=auto (def), 2=table */\nvar parse_CalcPrecision = parsebool; /* 2.4.35 */\nvar parse_CalcRefMode = parsenoop2; /* 2.4.36 */\nvar parse_CalcSaveRecalc = parsebool; /* 2.4.37 */\nvar parse_CodePage = parseuint16; /* 2.4.52 */\nvar parse_Compat12 = parsebool; /* 2.4.54 true = no compatibility check */\nvar parse_Date1904 = parsebool; /* 2.4.77 - 1=1904,0=1900 */\nvar parse_DefColWidth = parseuint16; /* 2.4.89 */\nvar parse_DSF = parsenoop2; /* 2.4.94 -- MUST be ignored */\nvar parse_EntExU2 = parsenoop2; /* 2.4.102 -- Explicitly says to ignore */\nvar parse_EOF = parsenoop2; /* 2.4.103 */\nvar parse_Excel9File = parsenoop2; /* 2.4.104 -- Optional and unused */\nvar parse_FeatHdr = parsenoop2; /* 2.4.112 */\nvar parse_FontX = parseuint16; /* 2.4.123 */\nvar parse_Footer = parse_XLHeaderFooter; /* 2.4.124 */\nvar parse_GridSet = parseuint16; /* 2.4.132, =1 */\nvar parse_HCenter = parsebool; /* 2.4.135 sheet centered horizontal on print */\nvar parse_Header = parse_XLHeaderFooter; /* 2.4.136 */\nvar parse_HideObj = parse_HideObjEnum; /* 2.4.139 */\nvar parse_InterfaceEnd = parsenoop2; /* 2.4.145 -- noop */\nvar parse_LeftMargin = parse_Xnum; /* 2.4.151 */\nvar parse_Mms = parsenoop2; /* 2.4.169 -- Explicitly says to ignore */\nvar parse_ObjProtect = parsebool; /* 2.4.183 -- must be 1 if present */\nvar parse_Password = parseuint16; /* 2.4.191 */\nvar parse_PrintGrid = parsebool; /* 2.4.202 */\nvar parse_PrintRowCol = parsebool; /* 2.4.203 */\nvar parse_PrintSize = parseuint16; /* 2.4.204 0:3 */\nvar parse_Prot4Rev = parsebool; /* 2.4.205 */\nvar parse_Prot4RevPass = parseuint16; /* 2.4.206 */\nvar parse_Protect = parsebool; /* 2.4.207 */\nvar parse_RefreshAll = parsebool; /* 2.4.217 -- must be 0 if not template */\nvar parse_RightMargin = parse_Xnum; /* 2.4.219 */\nvar parse_RRTabId = parseuint16a; /* 2.4.241 */\nvar parse_ScenarioProtect = parsebool; /* 2.4.245 */\nvar parse_Scl = parseuint16a; /* 2.4.247 num, den */\nvar parse_String = parse_XLUnicodeString; /* 2.4.268 */\nvar parse_SxBool = parsebool; /* 2.4.274 */\nvar parse_TopMargin = parse_Xnum; /* 2.4.328 */\nvar parse_UsesELFs = parsebool; /* 2.4.337 -- should be 0 */\nvar parse_VCenter = parsebool; /* 2.4.342 */\nvar parse_WinProtect = parsebool; /* 2.4.347 */\nvar parse_WriteProtect = parsenoop; /* 2.4.350 empty record */\n\n\n/* ---- */\nvar parse_VerticalPageBreaks = parsenoop;\nvar parse_HorizontalPageBreaks = parsenoop;\nvar parse_Selection = parsenoop;\nvar parse_Continue = parsenoop;\nvar parse_Pane = parsenoop;\nvar parse_Pls = parsenoop;\nvar parse_DCon = parsenoop;\nvar parse_DConRef = parsenoop;\nvar parse_DConName = parsenoop;\nvar parse_XCT = parsenoop;\nvar parse_CRN = parsenoop;\nvar parse_FileSharing = parsenoop;\nvar parse_Uncalced = parsenoop;\nvar parse_Template = parsenoop;\nvar parse_Intl = parsenoop;\nvar parse_WsBool = parsenoop;\nvar parse_Sort = parsenoop;\nvar parse_Sync = parsenoop;\nvar parse_LPr = parsenoop;\nvar parse_DxGCol = parsenoop;\nvar parse_FnGroupName = parsenoop;\nvar parse_FilterMode = parsenoop;\nvar parse_AutoFilterInfo = parsenoop;\nvar parse_AutoFilter = parsenoop;\nvar parse_Setup = parsenoop;\nvar parse_ScenMan = parsenoop;\nvar parse_SCENARIO = parsenoop;\nvar parse_SxView = parsenoop;\nvar parse_Sxvd = parsenoop;\nvar parse_SXVI = parsenoop;\nvar parse_SxIvd = parsenoop;\nvar parse_SXLI = parsenoop;\nvar parse_SXPI = parsenoop;\nvar parse_DocRoute = parsenoop;\nvar parse_RecipName = parsenoop;\nvar parse_MulBlank = parsenoop;\nvar parse_SXDI = parsenoop;\nvar parse_SXDB = parsenoop;\nvar parse_SXFDB = parsenoop;\nvar parse_SXDBB = parsenoop;\nvar parse_SXNum = parsenoop;\nvar parse_SxErr = parsenoop;\nvar parse_SXInt = parsenoop;\nvar parse_SXString = parsenoop;\nvar parse_SXDtr = parsenoop;\nvar parse_SxNil = parsenoop;\nvar parse_SXTbl = parsenoop;\nvar parse_SXTBRGIITM = parsenoop;\nvar parse_SxTbpg = parsenoop;\nvar parse_ObProj = parsenoop;\nvar parse_SXStreamID = parsenoop;\nvar parse_DBCell = parsenoop;\nvar parse_SXRng = parsenoop;\nvar parse_SxIsxoper = parsenoop;\nvar parse_BookBool = parsenoop;\nvar parse_DbOrParamQry = parsenoop;\nvar parse_OleObjectSize = parsenoop;\nvar parse_SXVS = parsenoop;\nvar parse_BkHim = parsenoop;\nvar parse_MsoDrawingGroup = parsenoop;\nvar parse_MsoDrawing = parsenoop;\nvar parse_MsoDrawingSelection = parsenoop;\nvar parse_PhoneticInfo = parsenoop;\nvar parse_SxRule = parsenoop;\nvar parse_SXEx = parsenoop;\nvar parse_SxFilt = parsenoop;\nvar parse_SxDXF = parsenoop;\nvar parse_SxItm = parsenoop;\nvar parse_SxName = parsenoop;\nvar parse_SxSelect = parsenoop;\nvar parse_SXPair = parsenoop;\nvar parse_SxFmla = parsenoop;\nvar parse_SxFormat = parsenoop;\nvar parse_SXVDEx = parsenoop;\nvar parse_SXFormula = parsenoop;\nvar parse_SXDBEx = parsenoop;\nvar parse_RRDInsDel = parsenoop;\nvar parse_RRDHead = parsenoop;\nvar parse_RRDChgCell = parsenoop;\nvar parse_RRDRenSheet = parsenoop;\nvar parse_RRSort = parsenoop;\nvar parse_RRDMove = parsenoop;\nvar parse_RRFormat = parsenoop;\nvar parse_RRAutoFmt = parsenoop;\nvar parse_RRInsertSh = parsenoop;\nvar parse_RRDMoveBegin = parsenoop;\nvar parse_RRDMoveEnd = parsenoop;\nvar parse_RRDInsDelBegin = parsenoop;\nvar parse_RRDInsDelEnd = parsenoop;\nvar parse_RRDConflict = parsenoop;\nvar parse_RRDDefName = parsenoop;\nvar parse_RRDRstEtxp = parsenoop;\nvar parse_LRng = parsenoop;\nvar parse_CUsr = parsenoop;\nvar parse_CbUsr = parsenoop;\nvar parse_UsrInfo = parsenoop;\nvar parse_UsrExcl = parsenoop;\nvar parse_FileLock = parsenoop;\nvar parse_RRDInfo = parsenoop;\nvar parse_BCUsrs = parsenoop;\nvar parse_UsrChk = parsenoop;\nvar parse_UserBView = parsenoop;\nvar parse_UserSViewBegin = parsenoop; // overloaded\nvar parse_UserSViewEnd = parsenoop;\nvar parse_RRDUserView = parsenoop;\nvar parse_Qsi = parsenoop;\nvar parse_CondFmt = parsenoop;\nvar parse_CF = parsenoop;\nvar parse_DVal = parsenoop;\nvar parse_DConBin = parsenoop;\nvar parse_Lel = parsenoop;\nvar parse_XLSCodeName = parse_XLUnicodeString;\nvar parse_SXFDBType = parsenoop;\nvar parse_ObNoMacros = parsenoop;\nvar parse_Dv = parsenoop;\nvar parse_Index = parsenoop;\nvar parse_Table = parsenoop;\nvar parse_BigName = parsenoop;\nvar parse_ContinueBigName = parsenoop;\nvar parse_WebPub = parsenoop;\nvar parse_QsiSXTag = parsenoop;\nvar parse_DBQueryExt = parsenoop;\nvar parse_ExtString = parsenoop;\nvar parse_TxtQry = parsenoop;\nvar parse_Qsir = parsenoop;\nvar parse_Qsif = parsenoop;\nvar parse_RRDTQSIF = parsenoop;\nvar parse_OleDbConn = parsenoop;\nvar parse_WOpt = parsenoop;\nvar parse_SXViewEx = parsenoop;\nvar parse_SXTH = parsenoop;\nvar parse_SXPIEx = parsenoop;\nvar parse_SXVDTEx = parsenoop;\nvar parse_SXViewEx9 = parsenoop;\nvar parse_ContinueFrt = parsenoop;\nvar parse_RealTimeData = parsenoop;\nvar parse_ChartFrtInfo = parsenoop;\nvar parse_FrtWrapper = parsenoop;\nvar parse_StartBlock = parsenoop;\nvar parse_EndBlock = parsenoop;\nvar parse_StartObject = parsenoop;\nvar parse_EndObject = parsenoop;\nvar parse_CatLab = parsenoop;\nvar parse_YMult = parsenoop;\nvar parse_SXViewLink = parsenoop;\nvar parse_PivotChartBits = parsenoop;\nvar parse_FrtFontList = parsenoop;\nvar parse_SheetExt = parsenoop;\nvar parse_BookExt = parsenoop;\nvar parse_SXAddl = parsenoop;\nvar parse_CrErr = parsenoop;\nvar parse_HFPicture = parsenoop;\nvar parse_Feat = parsenoop;\nvar parse_DataLabExt = parsenoop;\nvar parse_DataLabExtContents = parsenoop;\nvar parse_CellWatch = parsenoop;\nvar parse_FeatHdr11 = parsenoop;\nvar parse_Feature11 = parsenoop;\nvar parse_DropDownObjIds = parsenoop;\nvar parse_ContinueFrt11 = parsenoop;\nvar parse_DConn = parsenoop;\nvar parse_List12 = parsenoop;\nvar parse_Feature12 = parsenoop;\nvar parse_CondFmt12 = parsenoop;\nvar parse_CF12 = parsenoop;\nvar parse_CFEx = parsenoop;\nvar parse_AutoFilter12 = parsenoop;\nvar parse_ContinueFrt12 = parsenoop;\nvar parse_MDTInfo = parsenoop;\nvar parse_MDXStr = parsenoop;\nvar parse_MDXTuple = parsenoop;\nvar parse_MDXSet = parsenoop;\nvar parse_MDXProp = parsenoop;\nvar parse_MDXKPI = parsenoop;\nvar parse_MDB = parsenoop;\nvar parse_PLV = parsenoop;\nvar parse_DXF = parsenoop;\nvar parse_TableStyles = parsenoop;\nvar parse_TableStyle = parsenoop;\nvar parse_TableStyleElement = parsenoop;\nvar parse_NamePublish = parsenoop;\nvar parse_NameCmt = parsenoop;\nvar parse_SortData = parsenoop;\nvar parse_GUIDTypeLib = parsenoop;\nvar parse_FnGrp12 = parsenoop;\nvar parse_NameFnGrp12 = parsenoop;\nvar parse_HeaderFooter = parsenoop;\nvar parse_CrtLayout12 = parsenoop;\nvar parse_CrtMlFrt = parsenoop;\nvar parse_CrtMlFrtContinue = parsenoop;\nvar parse_ShapePropsStream = parsenoop;\nvar parse_TextPropsStream = parsenoop;\nvar parse_RichTextStream = parsenoop;\nvar parse_CrtLayout12A = parsenoop;\nvar parse_Units = parsenoop;\nvar parse_Chart = parsenoop;\nvar parse_Series = parsenoop;\nvar parse_DataFormat = parsenoop;\nvar parse_LineFormat = parsenoop;\nvar parse_MarkerFormat = parsenoop;\nvar parse_AreaFormat = parsenoop;\nvar parse_PieFormat = parsenoop;\nvar parse_AttachedLabel = parsenoop;\nvar parse_SeriesText = parsenoop;\nvar parse_ChartFormat = parsenoop;\nvar parse_Legend = parsenoop;\nvar parse_SeriesList = parsenoop;\nvar parse_Bar = parsenoop;\nvar parse_Line = parsenoop;\nvar parse_Pie = parsenoop;\nvar parse_Area = parsenoop;\nvar parse_Scatter = parsenoop;\nvar parse_CrtLine = parsenoop;\nvar parse_Axis = parsenoop;\nvar parse_Tick = parsenoop;\nvar parse_ValueRange = parsenoop;\nvar parse_CatSerRange = parsenoop;\nvar parse_AxisLine = parsenoop;\nvar parse_CrtLink = parsenoop;\nvar parse_DefaultText = parsenoop;\nvar parse_Text = parsenoop;\nvar parse_ObjectLink = parsenoop;\nvar parse_Frame = parsenoop;\nvar parse_Begin = parsenoop;\nvar parse_End = parsenoop;\nvar parse_PlotArea = parsenoop;\nvar parse_Chart3d = parsenoop;\nvar parse_PicF = parsenoop;\nvar parse_DropBar = parsenoop;\nvar parse_Radar = parsenoop;\nvar parse_Surf = parsenoop;\nvar parse_RadarArea = parsenoop;\nvar parse_AxisParent = parsenoop;\nvar parse_LegendException = parsenoop;\nvar parse_ShtProps = parsenoop;\nvar parse_SerToCrt = parsenoop;\nvar parse_AxesUsed = parsenoop;\nvar parse_SBaseRef = parsenoop;\nvar parse_SerParent = parsenoop;\nvar parse_SerAuxTrend = parsenoop;\nvar parse_IFmtRecord = parsenoop;\nvar parse_Pos = parsenoop;\nvar parse_AlRuns = parsenoop;\nvar parse_BRAI = parsenoop;\nvar parse_SerAuxErrBar = parsenoop;\nvar parse_SerFmt = parsenoop;\nvar parse_Chart3DBarShape = parsenoop;\nvar parse_Fbi = parsenoop;\nvar parse_BopPop = parsenoop;\nvar parse_AxcExt = parsenoop;\nvar parse_Dat = parsenoop;\nvar parse_PlotGrowth = parsenoop;\nvar parse_SIIndex = parsenoop;\nvar parse_GelFrame = parsenoop;\nvar parse_BopPopCustom = parsenoop;\nvar parse_Fbi2 = parsenoop;\n\n/* --- Specific to versions before BIFF8 --- */\nfunction parse_BIFF5String(blob) {\n\tvar len = blob.read_shift(1);\n\treturn blob.read_shift(len, 'sbcs-cont');\n}\n\n/* BIFF2_??? where ??? is the name from [XLS] */\nfunction parse_BIFF2STR(blob, length, opts) {\n\tvar cell = parse_XLSCell(blob, 6);\n\t++blob.l;\n\tvar str = parse_XLUnicodeString2(blob, length-7, opts);\n\tcell.val = str;\n\treturn cell;\n}\n\nfunction parse_BIFF2NUM(blob, length, opts) {\n\tvar cell = parse_XLSCell(blob, 6);\n\t++blob.l;\n\tvar num = parse_Xnum(blob, 8);\n\tcell.val = num;\n\treturn cell;\n}\n\n/* 18.4.1 charset to codepage mapping */\nvar CS2CP = {\n\t0:    1252, /* ANSI */\n\t1:   65001, /* DEFAULT */\n\t2:   65001, /* SYMBOL */\n\t77:  10000, /* MAC */\n\t128:   932, /* SHIFTJIS */\n\t129:   949, /* HANGUL */\n\t130:  1361, /* JOHAB */\n\t134:   936, /* GB2312 */\n\t136:   950, /* CHINESEBIG5 */\n\t161:  1253, /* GREEK */\n\t162:  1254, /* TURKISH */\n\t163:  1258, /* VIETNAMESE */\n\t177:  1255, /* HEBREW */\n\t178:  1256, /* ARABIC */\n\t186:  1257, /* BALTIC */\n\t204:  1251, /* RUSSIAN */\n\t222:   874, /* THAI */\n\t238:  1250, /* EASTEUROPE */\n\t255:  1252, /* OEM */\n\t69:   6969  /* MISC */\n};\n\n/* Parse a list of <r> tags */\nvar parse_rs = (function parse_rs_factory() {\n\tvar tregex = matchtag(\"t\"), rpregex = matchtag(\"rPr\"), rregex = /<r>/g, rend = /<\\/r>/, nlregex = /\\r\\n/g;\n\t/* 18.4.7 rPr CT_RPrElt */\n\tvar parse_rpr = function parse_rpr(rpr, intro, outro) {\n\t\tvar font = {}, cp = 65001;\n\t\tvar m = rpr.match(tagregex), i = 0;\n\t\tif(m) for(;i!=m.length; ++i) {\n\t\t\tvar y = parsexmltag(m[i]);\n\t\t\tswitch(y[0]) {\n\t\t\t\t/* 18.8.12 condense CT_BooleanProperty */\n\t\t\t\t/* ** not required . */\n\t\t\t\tcase '<condense': break;\n\t\t\t\t/* 18.8.17 extend CT_BooleanProperty */\n\t\t\t\t/* ** not required . */\n\t\t\t\tcase '<extend': break;\n\t\t\t\t/* 18.8.36 shadow CT_BooleanProperty */\n\t\t\t\t/* ** not required . */\n\t\t\t\tcase '<shadow':\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<shadow/>': break;\n\n\t\t\t\t/* 18.4.1 charset CT_IntProperty TODO */\n\t\t\t\tcase '<charset':\n\t\t\t\t\tif(y.val == '1') break;\n\t\t\t\t\tcp = CS2CP[parseInt(y.val, 10)];\n\t\t\t\t\tbreak;\n\n\t\t\t\t/* 18.4.2 outline CT_BooleanProperty TODO */\n\t\t\t\tcase '<outline':\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<outline/>': break;\n\n\t\t\t\t/* 18.4.5 rFont CT_FontName */\n\t\t\t\tcase '<rFont': font.name = y.val; break;\n\n\t\t\t\t/* 18.4.11 sz CT_FontSize */\n\t\t\t\tcase '<sz': font.sz = y.val; break;\n\n\t\t\t\t/* 18.4.10 strike CT_BooleanProperty */\n\t\t\t\tcase '<strike':\n\t\t\t\t\tif(!y.val) break;\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<strike/>': font.strike = 1; break;\n\t\t\t\tcase '</strike>': break;\n\n\t\t\t\t/* 18.4.13 u CT_UnderlineProperty */\n\t\t\t\tcase '<u':\n\t\t\t\t\tif(!y.val) break;\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<u/>': font.u = 1; break;\n\t\t\t\tcase '</u>': break;\n\n\t\t\t\t/* 18.8.2 b */\n\t\t\t\tcase '<b':\n\t\t\t\t\tif(!y.val) break;\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<b/>': font.b = 1; break;\n\t\t\t\tcase '</b>': break;\n\n\t\t\t\t/* 18.8.26 i */\n\t\t\t\tcase '<i':\n\t\t\t\t\tif(!y.val) break;\n\t\t\t\t\t/* falls through */\n\t\t\t\tcase '<i/>': font.i = 1; break;\n\t\t\t\tcase '</i>': break;\n\n\t\t\t\t/* 18.3.1.15 color CT_Color TODO: tint, theme, auto, indexed */\n\t\t\t\tcase '<color':\n\t\t\t\t\tif(y.rgb) font.color = y.rgb.substr(2,6);\n\t\t\t\t\tbreak;\n\n\t\t\t\t/* 18.8.18 family ST_FontFamily */\n\t\t\t\tcase '<family': font.family = y.val; break;\n\n\t\t\t\t/* 18.4.14 vertAlign CT_VerticalAlignFontProperty TODO */\n\t\t\t\tcase '<vertAlign': break;\n\n\t\t\t\t/* 18.8.35 scheme CT_FontScheme TODO */\n\t\t\t\tcase '<scheme': break;\n\n\t\t\t\tdefault:\n\t\t\t\t\tif(y[0].charCodeAt(1) !== 47) throw 'Unrecognized rich format ' + y[0];\n\t\t\t}\n\t\t}\n\t\t/* TODO: These should be generated styles, not inline */\n\t\tvar style = [];\n\t\tif(font.b) style.push(\"font-weight: bold;\");\n\t\tif(font.i) style.push(\"font-style: italic;\");\n\t\tintro.push('<span style=\"' + style.join(\"\") + '\">');\n\t\toutro.push(\"</span>\");\n\t\treturn cp;\n\t};\n\n\t/* 18.4.4 r CT_RElt */\n\tfunction parse_r(r) {\n\t\tvar terms = [[],\"\",[]];\n\t\t/* 18.4.12 t ST_Xstring */\n\t\tvar t = r.match(tregex), cp = 65001;\n\t\tif(!isval(t)) return \"\";\n\t\tterms[1] = t[1];\n\n\t\tvar rpr = r.match(rpregex);\n\t\tif(isval(rpr)) cp = parse_rpr(rpr[1], terms[0], terms[2]);\n\n\t\treturn terms[0].join(\"\") + terms[1].replace(nlregex,'<br/>') + terms[2].join(\"\");\n\t}\n\treturn function parse_rs(rs) {\n\t\treturn rs.replace(rregex,\"\").split(rend).map(parse_r).join(\"\");\n\t};\n})();\n\n/* 18.4.8 si CT_Rst */\nvar sitregex = /<t[^>]*>([^<]*)<\\/t>/g, sirregex = /<r>/;\nfunction parse_si(x, opts) {\n\tvar html = opts ? opts.cellHTML : true;\n\tvar z = {};\n\tif(!x) return null;\n\tvar y;\n\t/* 18.4.12 t ST_Xstring (Plaintext String) */\n\tif(x.charCodeAt(1) === 116) {\n\t\tz.t = utf8read(unescapexml(x.substr(x.indexOf(\">\")+1).split(/<\\/t>/)[0]));\n\t\tz.r = x;\n\t\tif(html) z.h = z.t;\n\t}\n\t/* 18.4.4 r CT_RElt (Rich Text Run) */\n\telse if((y = x.match(sirregex))) {\n\t\tz.r = x;\n\t\tz.t = utf8read(unescapexml(x.match(sitregex).join(\"\").replace(tagregex,\"\")));\n\t\tif(html) z.h = parse_rs(x);\n\t}\n\t/* 18.4.3 phoneticPr CT_PhoneticPr (TODO: needed for Asian support) */\n\t/* 18.4.6 rPh CT_PhoneticRun (TODO: needed for Asian support) */\n\treturn z;\n}\n\n/* 18.4 Shared String Table */\nvar sstr0 = /<sst([^>]*)>([\\s\\S]*)<\\/sst>/;\nvar sstr1 = /<(?:si|sstItem)>/g;\nvar sstr2 = /<\\/(?:si|sstItem)>/;\nfunction parse_sst_xml(data, opts) {\n\tvar s = [], ss;\n\t/* 18.4.9 sst CT_Sst */\n\tvar sst = data.match(sstr0);\n\tif(isval(sst)) {\n\t\tss = sst[2].replace(sstr1,\"\").split(sstr2);\n\t\tfor(var i = 0; i != ss.length; ++i) {\n\t\t\tvar o = parse_si(ss[i], opts);\n\t\t\tif(o != null) s[s.length] = o;\n\t\t}\n\t\tsst = parsexmltag(sst[1]); s.Count = sst.count; s.Unique = sst.uniqueCount;\n\t}\n\treturn s;\n}\n\nRELS.SST = \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings\";\nvar straywsregex = /^\\s|\\s$|[\\t\\n\\r]/;\nfunction write_sst_xml(sst, opts) {\n\tif(!opts.bookSST) return \"\";\n\tvar o = [XML_HEADER];\n\to[o.length] = (writextag('sst', null, {\n\t\txmlns: XMLNS.main[0],\n\t\tcount: sst.Count,\n\t\tuniqueCount: sst.Unique\n\t}));\n\tfor(var i = 0; i != sst.length; ++i) { if(sst[i] == null) continue;\n\t\tvar s = sst[i];\n\t\tvar sitag = \"<si>\";\n\t\tif(s.r) sitag += s.r;\n\t\telse {\n\t\t\tsitag += \"<t\";\n\t\t\tif(s.t.match(straywsregex)) sitag += ' xml:space=\"preserve\"';\n\t\t\tsitag += \">\" + escapexml(s.t) + \"</t>\";\n\t\t}\n\t\tsitag += \"</si>\";\n\t\to[o.length] = (sitag);\n\t}\n\tif(o.length>2){ o[o.length] = ('</sst>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* [MS-XLSB] 2.4.219 BrtBeginSst */\nfunction parse_BrtBeginSst(data, length) {\n\treturn [data.read_shift(4), data.read_shift(4)];\n}\n\n/* [MS-XLSB] 2.1.7.45 Shared Strings */\nfunction parse_sst_bin(data, opts) {\n\tvar s = [];\n\tvar pass = false;\n\trecordhopper(data, function hopper_sst(val, R, RT) {\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtBeginSst': s.Count = val[0]; s.Unique = val[1]; break;\n\t\t\tcase 'BrtSSTItem': s.push(val); break;\n\t\t\tcase 'BrtEndSst': return true;\n\t\t\t/* TODO: produce a test case with a future record */\n\t\t\tcase 'BrtFRTBegin': pass = true; break;\n\t\t\tcase 'BrtFRTEnd': pass = false; break;\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + RT + \" \" + R.n);\n\t\t}\n\t});\n\treturn s;\n}\n\nfunction write_BrtBeginSst(sst, o) {\n\tif(!o) o = new_buf(8);\n\to.write_shift(4, sst.Count);\n\to.write_shift(4, sst.Unique);\n\treturn o;\n}\n\nvar write_BrtSSTItem = write_RichStr;\n\nfunction write_sst_bin(sst, opts) {\n\tvar ba = buf_array();\n\twrite_record(ba, \"BrtBeginSst\", write_BrtBeginSst(sst));\n\tfor(var i = 0; i < sst.length; ++i) write_record(ba, \"BrtSSTItem\", write_BrtSSTItem(sst[i]));\n\twrite_record(ba, \"BrtEndSst\");\n\treturn ba.end();\n}\nfunction _JS2ANSI(str) { if(typeof cptable !== 'undefined') return cptable.utils.encode(1252, str); return str.split(\"\").map(function(x) { return x.charCodeAt(0); }); }\n\n/* [MS-OFFCRYPTO] 2.1.4 Version */\nfunction parse_Version(blob, length) {\n\tvar o = {};\n\to.Major = blob.read_shift(2);\n\to.Minor = blob.read_shift(2);\n\treturn o;\n}\n/* [MS-OFFCRYPTO] 2.3.2 Encryption Header */\nfunction parse_EncryptionHeader(blob, length) {\n\tvar o = {};\n\to.Flags = blob.read_shift(4);\n\n\t// Check if SizeExtra is 0x00000000\n\tvar tmp = blob.read_shift(4);\n\tif(tmp !== 0) throw 'Unrecognized SizeExtra: ' + tmp;\n\n\to.AlgID = blob.read_shift(4);\n\tswitch(o.AlgID) {\n\t\tcase 0: case 0x6801: case 0x660E: case 0x660F: case 0x6610: break;\n\t\tdefault: throw 'Unrecognized encryption algorithm: ' + o.AlgID;\n\t}\n\tparsenoop(blob, length-12);\n\treturn o;\n}\n\n/* [MS-OFFCRYPTO] 2.3.3 Encryption Verifier */\nfunction parse_EncryptionVerifier(blob, length) {\n\treturn parsenoop(blob, length);\n}\n/* [MS-OFFCRYPTO] 2.3.5.1 RC4 CryptoAPI Encryption Header */\nfunction parse_RC4CryptoHeader(blob, length) {\n\tvar o = {};\n\tvar vers = o.EncryptionVersionInfo = parse_Version(blob, 4); length -= 4;\n\tif(vers.Minor != 2) throw 'unrecognized minor version code: ' + vers.Minor;\n\tif(vers.Major > 4 || vers.Major < 2) throw 'unrecognized major version code: ' + vers.Major;\n\to.Flags = blob.read_shift(4); length -= 4;\n\tvar sz = blob.read_shift(4); length -= 4;\n\to.EncryptionHeader = parse_EncryptionHeader(blob, sz); length -= sz;\n\to.EncryptionVerifier = parse_EncryptionVerifier(blob, length);\n\treturn o;\n}\n/* [MS-OFFCRYPTO] 2.3.6.1 RC4 Encryption Header */\nfunction parse_RC4Header(blob, length) {\n\tvar o = {};\n\tvar vers = o.EncryptionVersionInfo = parse_Version(blob, 4); length -= 4;\n\tif(vers.Major != 1 || vers.Minor != 1) throw 'unrecognized version code ' + vers.Major + ' : ' + vers.Minor;\n\to.Salt = blob.read_shift(16);\n\to.EncryptedVerifier = blob.read_shift(16);\n\to.EncryptedVerifierHash = blob.read_shift(16);\n\treturn o;\n}\n\n/* [MS-OFFCRYPTO] 2.3.7.1 Binary Document Password Verifier Derivation */\nfunction crypto_CreatePasswordVerifier_Method1(Password) {\n\tvar Verifier = 0x0000, PasswordArray;\n\tvar PasswordDecoded = _JS2ANSI(Password);\n\tvar len = PasswordDecoded.length + 1, i, PasswordByte;\n\tvar Intermediate1, Intermediate2, Intermediate3;\n\tPasswordArray = new_raw_buf(len);\n\tPasswordArray[0] = PasswordDecoded.length;\n\tfor(i = 1; i != len; ++i) PasswordArray[i] = PasswordDecoded[i-1];\n\tfor(i = len-1; i >= 0; --i) {\n\t\tPasswordByte = PasswordArray[i];\n\t\tIntermediate1 = ((Verifier & 0x4000) === 0x0000) ? 0 : 1;\n\t\tIntermediate2 = (Verifier << 1) & 0x7FFF;\n\t\tIntermediate3 = Intermediate1 | Intermediate2;\n\t\tVerifier = Intermediate3 ^ PasswordByte;\n\t}\n\treturn Verifier ^ 0xCE4B;\n}\n\n/* [MS-OFFCRYPTO] 2.3.7.2 Binary Document XOR Array Initialization */\nvar crypto_CreateXorArray_Method1 = (function() {\n\tvar PadArray = [0xBB, 0xFF, 0xFF, 0xBA, 0xFF, 0xFF, 0xB9, 0x80, 0x00, 0xBE, 0x0F, 0x00, 0xBF, 0x0F, 0x00];\n\tvar InitialCode = [0xE1F0, 0x1D0F, 0xCC9C, 0x84C0, 0x110C, 0x0E10, 0xF1CE, 0x313E, 0x1872, 0xE139, 0xD40F, 0x84F9, 0x280C, 0xA96A, 0x4EC3];\n\tvar XorMatrix = [0xAEFC, 0x4DD9, 0x9BB2, 0x2745, 0x4E8A, 0x9D14, 0x2A09, 0x7B61, 0xF6C2, 0xFDA5, 0xEB6B, 0xC6F7, 0x9DCF, 0x2BBF, 0x4563, 0x8AC6, 0x05AD, 0x0B5A, 0x16B4, 0x2D68, 0x5AD0, 0x0375, 0x06EA, 0x0DD4, 0x1BA8, 0x3750, 0x6EA0, 0xDD40, 0xD849, 0xA0B3, 0x5147, 0xA28E, 0x553D, 0xAA7A, 0x44D5, 0x6F45, 0xDE8A, 0xAD35, 0x4A4B, 0x9496, 0x390D, 0x721A, 0xEB23, 0xC667, 0x9CEF, 0x29FF, 0x53FE, 0xA7FC, 0x5FD9, 0x47D3, 0x8FA6, 0x0F6D, 0x1EDA, 0x3DB4, 0x7B68, 0xF6D0, 0xB861, 0x60E3, 0xC1C6, 0x93AD, 0x377B, 0x6EF6, 0xDDEC, 0x45A0, 0x8B40, 0x06A1, 0x0D42, 0x1A84, 0x3508, 0x6A10, 0xAA51, 0x4483, 0x8906, 0x022D, 0x045A, 0x08B4, 0x1168, 0x76B4, 0xED68, 0xCAF1, 0x85C3, 0x1BA7, 0x374E, 0x6E9C, 0x3730, 0x6E60, 0xDCC0, 0xA9A1, 0x4363, 0x86C6, 0x1DAD, 0x3331, 0x6662, 0xCCC4, 0x89A9, 0x0373, 0x06E6, 0x0DCC, 0x1021, 0x2042, 0x4084, 0x8108, 0x1231, 0x2462, 0x48C4];\n\tvar Ror = function(Byte) { return ((Byte/2) | (Byte*128)) & 0xFF; };\n\tvar XorRor = function(byte1, byte2) { return Ror(byte1 ^ byte2); };\n\tvar CreateXorKey_Method1 = function(Password) {\n\t\tvar XorKey = InitialCode[Password.length - 1];\n\t\tvar CurrentElement = 0x68;\n\t\tfor(var i = Password.length-1; i >= 0; --i) {\n\t\t\tvar Char = Password[i];\n\t\t\tfor(var j = 0; j != 7; ++j) {\n\t\t\t\tif(Char & 0x40) XorKey ^= XorMatrix[CurrentElement];\n\t\t\t\tChar *= 2; --CurrentElement;\n\t\t\t}\n\t\t}\n\t\treturn XorKey;\n\t};\n\treturn function(password) {\n\t\tvar Password = _JS2ANSI(password);\n\t\tvar XorKey = CreateXorKey_Method1(Password);\n\t\tvar Index = Password.length;\n\t\tvar ObfuscationArray = new_raw_buf(16);\n\t\tfor(var i = 0; i != 16; ++i) ObfuscationArray[i] = 0x00;\n\t\tvar Temp, PasswordLastChar, PadIndex;\n\t\tif((Index & 1) === 1) {\n\t\t\tTemp = XorKey >> 8;\n\t\t\tObfuscationArray[Index] = XorRor(PadArray[0], Temp);\n\t\t\t--Index;\n\t\t\tTemp = XorKey & 0xFF;\n\t\t\tPasswordLastChar = Password[Password.length - 1];\n\t\t\tObfuscationArray[Index] = XorRor(PasswordLastChar, Temp);\n\t\t}\n\t\twhile(Index > 0) {\n\t\t\t--Index;\n\t\t\tTemp = XorKey >> 8;\n\t\t\tObfuscationArray[Index] = XorRor(Password[Index], Temp);\n\t\t\t--Index;\n\t\t\tTemp = XorKey & 0xFF;\n\t\t\tObfuscationArray[Index] = XorRor(Password[Index], Temp);\n\t\t}\n\t\tIndex = 15;\n\t\tPadIndex = 15 - Password.length;\n\t\twhile(PadIndex > 0) {\n\t\t\tTemp = XorKey >> 8;\n\t\t\tObfuscationArray[Index] = XorRor(PadArray[PadIndex], Temp);\n\t\t\t--Index;\n\t\t\t--PadIndex;\n\t\t\tTemp = XorKey & 0xFF;\n\t\t\tObfuscationArray[Index] = XorRor(Password[Index], Temp);\n\t\t\t--Index;\n\t\t\t--PadIndex;\n\t\t}\n\t\treturn ObfuscationArray;\n\t};\n})();\n\n/* [MS-OFFCRYPTO] 2.3.7.3 Binary Document XOR Data Transformation Method 1 */\nvar crypto_DecryptData_Method1 = function(password, Data, XorArrayIndex, XorArray, O) {\n\t/* If XorArray is set, use it; if O is not set, make changes in-place */\n\tif(!O) O = Data;\n\tif(!XorArray) XorArray = crypto_CreateXorArray_Method1(password);\n\tvar Index, Value;\n\tfor(Index = 0; Index != Data.length; ++Index) {\n\t\tValue = Data[Index];\n\t\tValue ^= XorArray[XorArrayIndex];\n\t\tValue = ((Value>>5) | (Value<<3)) & 0xFF;\n\t\tO[Index] = Value;\n\t\t++XorArrayIndex;\n\t}\n\treturn [O, XorArrayIndex, XorArray];\n};\n\nvar crypto_MakeXorDecryptor = function(password) {\n\tvar XorArrayIndex = 0, XorArray = crypto_CreateXorArray_Method1(password);\n\treturn function(Data) {\n\t\tvar O = crypto_DecryptData_Method1(null, Data, XorArrayIndex, XorArray);\n\t\tXorArrayIndex = O[1];\n\t\treturn O[0];\n\t};\n};\n\n/* 2.5.343 */\nfunction parse_XORObfuscation(blob, length, opts, out) {\n\tvar o = { key: parseuint16(blob), verificationBytes: parseuint16(blob) };\n\tif(opts.password) o.verifier = crypto_CreatePasswordVerifier_Method1(opts.password);\n\tout.valid = o.verificationBytes === o.verifier;\n\tif(out.valid) out.insitu_decrypt = crypto_MakeXorDecryptor(opts.password);\n\treturn o;\n}\n\n/* 2.4.117 */\nfunction parse_FilePassHeader(blob, length, oo) {\n\tvar o = oo || {}; o.Info = blob.read_shift(2); blob.l -= 2;\n\tif(o.Info === 1) o.Data = parse_RC4Header(blob, length);\n\telse o.Data = parse_RC4CryptoHeader(blob, length);\n\treturn o;\n}\nfunction parse_FilePass(blob, length, opts) {\n\tvar o = { Type: blob.read_shift(2) }; /* wEncryptionType */\n\tif(o.Type) parse_FilePassHeader(blob, length-2, o);\n\telse parse_XORObfuscation(blob, length-2, opts, o);\n\treturn o;\n}\n\n\nfunction hex2RGB(h) {\n\tvar o = h.substr(h[0]===\"#\"?1:0,6);\n\treturn [parseInt(o.substr(0,2),16),parseInt(o.substr(0,2),16),parseInt(o.substr(0,2),16)];\n}\nfunction rgb2Hex(rgb) {\n\tfor(var i=0,o=1; i!=3; ++i) o = o*256 + (rgb[i]>255?255:rgb[i]<0?0:rgb[i]);\n\treturn o.toString(16).toUpperCase().substr(1);\n}\n\nfunction rgb2HSL(rgb) {\n\tvar R = rgb[0]/255, G = rgb[1]/255, B=rgb[2]/255;\n\tvar M = Math.max(R, G, B), m = Math.min(R, G, B), C = M - m;\n\tif(C === 0) return [0, 0, R];\n\n\tvar H6 = 0, S = 0, L2 = (M + m);\n\tS = C / (L2 > 1 ? 2 - L2 : L2);\n\tswitch(M){\n\t\tcase R: H6 = ((G - B) / C + 6)%6; break;\n\t\tcase G: H6 = ((B - R) / C + 2); break;\n\t\tcase B: H6 = ((R - G) / C + 4); break;\n\t}\n\treturn [H6 / 6, S, L2 / 2];\n}\n\nfunction hsl2RGB(hsl){\n\tvar H = hsl[0], S = hsl[1], L = hsl[2];\n\tvar C = S * 2 * (L < 0.5 ? L : 1 - L), m = L - C/2;\n\tvar rgb = [m,m,m], h6 = 6*H;\n\n\tvar X;\n\tif(S !== 0) switch(h6|0) {\n\t\tcase 0: case 6: X = C * h6; rgb[0] += C; rgb[1] += X; break;\n\t\tcase 1: X = C * (2 - h6);   rgb[0] += X; rgb[1] += C; break;\n\t\tcase 2: X = C * (h6 - 2);   rgb[1] += C; rgb[2] += X; break;\n\t\tcase 3: X = C * (4 - h6);   rgb[1] += X; rgb[2] += C; break;\n\t\tcase 4: X = C * (h6 - 4);   rgb[2] += C; rgb[0] += X; break;\n\t\tcase 5: X = C * (6 - h6);   rgb[2] += X; rgb[0] += C; break;\n\t}\n\tfor(var i = 0; i != 3; ++i) rgb[i] = Math.round(rgb[i]*255);\n\treturn rgb;\n}\n\n/* 18.8.3 bgColor tint algorithm */\nfunction rgb_tint(hex, tint) {\n\tif(tint === 0) return hex;\n\tvar hsl = rgb2HSL(hex2RGB(hex));\n\tif (tint < 0) hsl[2] = hsl[2] * (1 + tint);\n\telse hsl[2] = 1 - (1 - hsl[2]) * (1 - tint);\n\treturn rgb2Hex(hsl2RGB(hsl));\n}\n\n/* 18.3.1.13 width calculations */\nvar DEF_MDW = 7, MAX_MDW = 15, MIN_MDW = 1, MDW = DEF_MDW;\nfunction width2px(width) { return (( width + ((128/MDW)|0)/256 )* MDW )|0; }\nfunction px2char(px) { return (((px - 5)/MDW * 100 + 0.5)|0)/100; }\nfunction char2width(chr) { return (((chr * MDW + 5)/MDW*256)|0)/256; }\nfunction cycle_width(collw) { return char2width(px2char(width2px(collw))); }\nfunction find_mdw(collw, coll) {\n\tif(cycle_width(collw) != collw) {\n\t\tfor(MDW=DEF_MDW; MDW>MIN_MDW; --MDW) if(cycle_width(collw) === collw) break;\n\t\tif(MDW === MIN_MDW) for(MDW=DEF_MDW+1; MDW<MAX_MDW; ++MDW) if(cycle_width(collw) === collw) break;\n\t\tif(MDW === MAX_MDW) MDW = DEF_MDW;\n\t}\n}\n\n/* [MS-EXSPXML3] 2.4.54 ST_enmPattern */\nvar XLMLPatternTypeMap = {\n\t\"None\": \"none\",\n\t\"Solid\": \"solid\",\n\t\"Gray50\": \"mediumGray\",\n\t\"Gray75\": \"darkGray\",\n\t\"Gray25\": \"lightGray\",\n\t\"HorzStripe\": \"darkHorizontal\",\n\t\"VertStripe\": \"darkVertical\",\n\t\"ReverseDiagStripe\": \"darkDown\",\n\t\"DiagStripe\": \"darkUp\",\n\t\"DiagCross\": \"darkGrid\",\n\t\"ThickDiagCross\": \"darkTrellis\",\n\t\"ThinHorzStripe\": \"lightHorizontal\",\n\t\"ThinVertStripe\": \"lightVertical\",\n\t\"ThinReverseDiagStripe\": \"lightDown\",\n\t\"ThinHorzCross\": \"lightGrid\"\n};\n\nvar styles = {}; // shared styles\n\nvar themes = {}; // shared themes\n\n/* 18.8.21 fills CT_Fills */\nfunction parse_fills(t, opts) {\n\tstyles.Fills = [];\n\tvar fill = {};\n\tt[0].match(tagregex).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(y[0]) {\n\t\t\tcase '<fills': case '<fills>': case '</fills>': break;\n\n\t\t\t/* 18.8.20 fill CT_Fill */\n\t\t\tcase '<fill>': break;\n\t\t\tcase '</fill>': styles.Fills.push(fill); fill = {}; break;\n\n\t\t\t/* 18.8.32 patternFill CT_PatternFill */\n\t\t\tcase '<patternFill':\n\t\t\t\tif(y.patternType) fill.patternType = y.patternType;\n\t\t\t\tbreak;\n\t\t\tcase '<patternFill/>': case '</patternFill>': break;\n\n\t\t\t/* 18.8.3 bgColor CT_Color */\n\t\t\tcase '<bgColor':\n\t\t\t\tif(!fill.bgColor) fill.bgColor = {};\n\t\t\t\tif(y.indexed) fill.bgColor.indexed = parseInt(y.indexed, 10);\n\t\t\t\tif(y.theme) fill.bgColor.theme = parseInt(y.theme, 10);\n\t\t\t\tif(y.tint) fill.bgColor.tint = parseFloat(y.tint);\n\t\t\t\t/* Excel uses ARGB strings */\n\t\t\t\tif(y.rgb) fill.bgColor.rgb = y.rgb.substring(y.rgb.length - 6);\n\t\t\t\tbreak;\n\t\t\tcase '<bgColor/>': case '</bgColor>': break;\n\n\t\t\t/* 18.8.19 fgColor CT_Color */\n\t\t\tcase '<fgColor':\n\t\t\t\tif(!fill.fgColor) fill.fgColor = {};\n\t\t\t\tif(y.theme) fill.fgColor.theme = parseInt(y.theme, 10);\n\t\t\t\tif(y.tint) fill.fgColor.tint = parseFloat(y.tint);\n\t\t\t\t/* Excel uses ARGB strings */\n\t\t\t\tif(y.rgb) fill.fgColor.rgb = y.rgb.substring(y.rgb.length - 6);\n\t\t\t\tbreak;\n\t\t\tcase '<fgColor/>': case '</fgColor>': break;\n\n\t\t\tdefault: if(opts.WTF) throw 'unrecognized ' + y[0] + ' in fills';\n\t\t}\n\t});\n}\n\n/* 18.8.31 numFmts CT_NumFmts */\nfunction parse_numFmts(t, opts) {\n\tstyles.NumberFmt = [];\n\tvar k = keys(SSF._table);\n\tfor(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = SSF._table[k[i]];\n\tvar m = t[0].match(tagregex);\n\tfor(i=0; i < m.length; ++i) {\n\t\tvar y = parsexmltag(m[i]);\n\t\tswitch(y[0]) {\n\t\t\tcase '<numFmts': case '</numFmts>': case '<numFmts/>': case '<numFmts>': break;\n\t\t\tcase '<numFmt': {\n\t\t\t\tvar f=unescapexml(utf8read(y.formatCode)), j=parseInt(y.numFmtId,10);\n\t\t\t\tstyles.NumberFmt[j] = f; if(j>0) SSF.load(f,j);\n\t\t\t} break;\n\t\t\tdefault: if(opts.WTF) throw 'unrecognized ' + y[0] + ' in numFmts';\n\t\t}\n\t}\n}\n\nfunction write_numFmts(NF, opts) {\n\tvar o = [\"<numFmts>\"];\n\t[[5,8],[23,26],[41,44],[63,66],[164,392]].forEach(function(r) {\n\t\tfor(var i = r[0]; i <= r[1]; ++i) if(NF[i] !== undefined) o[o.length] = (writextag('numFmt',null,{numFmtId:i,formatCode:escapexml(NF[i])}));\n\t});\n\tif(o.length === 1) return \"\";\n\to[o.length] = (\"</numFmts>\");\n\to[0] = writextag('numFmts', null, { count:o.length-2 }).replace(\"/>\", \">\");\n\treturn o.join(\"\");\n}\n\n/* 18.8.10 cellXfs CT_CellXfs */\nfunction parse_cellXfs(t, opts) {\n\tstyles.CellXf = [];\n\tt[0].match(tagregex).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(y[0]) {\n\t\t\tcase '<cellXfs': case '<cellXfs>': case '<cellXfs/>': case '</cellXfs>': break;\n\n\t\t\t/* 18.8.45 xf CT_Xf */\n\t\t\tcase '<xf': delete y[0];\n\t\t\t\tif(y.numFmtId) y.numFmtId = parseInt(y.numFmtId, 10);\n\t\t\t\tif(y.fillId) y.fillId = parseInt(y.fillId, 10);\n\t\t\t\tstyles.CellXf.push(y); break;\n\t\t\tcase '</xf>': break;\n\n\t\t\t/* 18.8.1 alignment CT_CellAlignment */\n\t\t\tcase '<alignment': case '<alignment/>': break;\n\n\t\t\t/* 18.8.33 protection CT_CellProtection */\n\t\t\tcase '<protection': case '</protection>': case '<protection/>': break;\n\n\t\t\tcase '<extLst': case '</extLst>': break;\n\t\t\tcase '<ext': break;\n\t\t\tdefault: if(opts.WTF) throw 'unrecognized ' + y[0] + ' in cellXfs';\n\t\t}\n\t});\n}\n\nfunction write_cellXfs(cellXfs) {\n\tvar o = [];\n\to[o.length] = (writextag('cellXfs',null));\n\tcellXfs.forEach(function(c) { o[o.length] = (writextag('xf', null, c)); });\n\to[o.length] = (\"</cellXfs>\");\n\tif(o.length === 2) return \"\";\n\to[0] = writextag('cellXfs',null, {count:o.length-2}).replace(\"/>\",\">\");\n\treturn o.join(\"\");\n}\n\n/* 18.8 Styles CT_Stylesheet*/\nvar parse_sty_xml= (function make_pstyx() {\nvar numFmtRegex = /<numFmts([^>]*)>.*<\\/numFmts>/;\nvar cellXfRegex = /<cellXfs([^>]*)>.*<\\/cellXfs>/;\nvar fillsRegex = /<fills([^>]*)>.*<\\/fills>/;\n\nreturn function parse_sty_xml(data, opts) {\n\t/* 18.8.39 styleSheet CT_Stylesheet */\n\tvar t;\n\n\t/* numFmts CT_NumFmts ? */\n\tif((t=data.match(numFmtRegex))) parse_numFmts(t, opts);\n\n\t/* fonts CT_Fonts ? */\n\t/*if((t=data.match(/<fonts([^>]*)>.*<\\/fonts>/))) parse_fonts(t, opts);*/\n\n\t/* fills CT_Fills */\n\tif((t=data.match(fillsRegex))) parse_fills(t, opts);\n\n\t/* borders CT_Borders ? */\n\t/* cellStyleXfs CT_CellStyleXfs ? */\n\n\t/* cellXfs CT_CellXfs ? */\n\tif((t=data.match(cellXfRegex))) parse_cellXfs(t, opts);\n\n\t/* dxfs CT_Dxfs ? */\n\t/* tableStyles CT_TableStyles ? */\n\t/* colors CT_Colors ? */\n\t/* extLst CT_ExtensionList ? */\n\n\treturn styles;\n};\n})();\n\nvar STYLES_XML_ROOT = writextag('styleSheet', null, {\n\t'xmlns': XMLNS.main[0],\n\t'xmlns:vt': XMLNS.vt\n});\n\nRELS.STY = \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles\";\n\nfunction write_sty_xml(wb, opts) {\n\tvar o = [XML_HEADER, STYLES_XML_ROOT], w;\n\tif((w = write_numFmts(wb.SSF)) != null) o[o.length] = w;\n\to[o.length] = ('<fonts count=\"1\"><font><sz val=\"12\"/><color theme=\"1\"/><name val=\"Calibri\"/><family val=\"2\"/><scheme val=\"minor\"/></font></fonts>');\n\to[o.length] = ('<fills count=\"2\"><fill><patternFill patternType=\"none\"/></fill><fill><patternFill patternType=\"gray125\"/></fill></fills>');\n\to[o.length] = ('<borders count=\"1\"><border><left/><right/><top/><bottom/><diagonal/></border></borders>');\n\to[o.length] = ('<cellStyleXfs count=\"1\"><xf numFmtId=\"0\" fontId=\"0\" fillId=\"0\" borderId=\"0\"/></cellStyleXfs>');\n\tif((w = write_cellXfs(opts.cellXfs))) o[o.length] = (w);\n\to[o.length] = ('<cellStyles count=\"1\"><cellStyle name=\"Normal\" xfId=\"0\" builtinId=\"0\"/></cellStyles>');\n\to[o.length] = ('<dxfs count=\"0\"/>');\n\to[o.length] = ('<tableStyles count=\"0\" defaultTableStyle=\"TableStyleMedium9\" defaultPivotStyle=\"PivotStyleMedium4\"/>');\n\n\tif(o.length>2){ o[o.length] = ('</styleSheet>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* [MS-XLSB] 2.4.651 BrtFmt */\nfunction parse_BrtFmt(data, length) {\n\tvar ifmt = data.read_shift(2);\n\tvar stFmtCode = parse_XLWideString(data,length-2);\n\treturn [ifmt, stFmtCode];\n}\n\n/* [MS-XLSB] 2.4.653 BrtFont TODO */\nfunction parse_BrtFont(data, length) {\n\tvar out = {flags:{}};\n\tout.dyHeight = data.read_shift(2);\n\tout.grbit = parse_FontFlags(data, 2);\n\tout.bls = data.read_shift(2);\n\tout.sss = data.read_shift(2);\n\tout.uls = data.read_shift(1);\n\tout.bFamily = data.read_shift(1);\n\tout.bCharSet = data.read_shift(1);\n\tdata.l++;\n\tout.brtColor = parse_BrtColor(data, 8);\n\tout.bFontScheme = data.read_shift(1);\n\tout.name = parse_XLWideString(data, length - 21);\n\n\tout.flags.Bold = out.bls === 0x02BC;\n\tout.flags.Italic = out.grbit.fItalic;\n\tout.flags.Strikeout = out.grbit.fStrikeout;\n\tout.flags.Outline = out.grbit.fOutline;\n\tout.flags.Shadow = out.grbit.fShadow;\n\tout.flags.Condense = out.grbit.fCondense;\n\tout.flags.Extend = out.grbit.fExtend;\n\tout.flags.Sub = out.sss & 0x2;\n\tout.flags.Sup = out.sss & 0x1;\n\treturn out;\n}\n\n/* [MS-XLSB] 2.4.816 BrtXF */\nfunction parse_BrtXF(data, length) {\n\tvar ixfeParent = data.read_shift(2);\n\tvar ifmt = data.read_shift(2);\n\tparsenoop(data, length-4);\n\treturn {ixfe:ixfeParent, ifmt:ifmt };\n}\n\n/* [MS-XLSB] 2.1.7.50 Styles */\nfunction parse_sty_bin(data, opts) {\n\tstyles.NumberFmt = [];\n\tfor(var y in SSF._table) styles.NumberFmt[y] = SSF._table[y];\n\n\tstyles.CellXf = [];\n\tvar state = \"\"; /* TODO: this should be a stack */\n\tvar pass = false;\n\trecordhopper(data, function hopper_sty(val, R, RT) {\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtFmt':\n\t\t\t\tstyles.NumberFmt[val[0]] = val[1]; SSF.load(val[1], val[0]);\n\t\t\t\tbreak;\n\t\t\tcase 'BrtFont': break; /* TODO */\n\t\t\tcase 'BrtKnownFonts': break; /* TODO */\n\t\t\tcase 'BrtFill': break; /* TODO */\n\t\t\tcase 'BrtBorder': break; /* TODO */\n\t\t\tcase 'BrtXF':\n\t\t\t\tif(state === \"CELLXFS\") {\n\t\t\t\t\tstyles.CellXf.push(val);\n\t\t\t\t}\n\t\t\t\tbreak; /* TODO */\n\t\t\tcase 'BrtStyle': break; /* TODO */\n\t\t\tcase 'BrtDXF': break; /* TODO */\n\t\t\tcase 'BrtMRUColor': break; /* TODO */\n\t\t\tcase 'BrtIndexedColor': break; /* TODO */\n\t\t\tcase 'BrtBeginStyleSheet': break;\n\t\t\tcase 'BrtEndStyleSheet': break;\n\t\t\tcase 'BrtBeginTableStyle': break;\n\t\t\tcase 'BrtTableStyleElement': break;\n\t\t\tcase 'BrtEndTableStyle': break;\n\t\t\tcase 'BrtBeginFmts': state = \"FMTS\"; break;\n\t\t\tcase 'BrtEndFmts': state = \"\"; break;\n\t\t\tcase 'BrtBeginFonts': state = \"FONTS\"; break;\n\t\t\tcase 'BrtEndFonts': state = \"\"; break;\n\t\t\tcase 'BrtACBegin': state = \"ACFONTS\"; break;\n\t\t\tcase 'BrtACEnd': state = \"\"; break;\n\t\t\tcase 'BrtBeginFills': state = \"FILLS\"; break;\n\t\t\tcase 'BrtEndFills': state = \"\"; break;\n\t\t\tcase 'BrtBeginBorders': state = \"BORDERS\"; break;\n\t\t\tcase 'BrtEndBorders': state = \"\"; break;\n\t\t\tcase 'BrtBeginCellStyleXFs': state = \"CELLSTYLEXFS\"; break;\n\t\t\tcase 'BrtEndCellStyleXFs': state = \"\"; break;\n\t\t\tcase 'BrtBeginCellXFs': state = \"CELLXFS\"; break;\n\t\t\tcase 'BrtEndCellXFs': state = \"\"; break;\n\t\t\tcase 'BrtBeginStyles': state = \"STYLES\"; break;\n\t\t\tcase 'BrtEndStyles': state = \"\"; break;\n\t\t\tcase 'BrtBeginDXFs': state = \"DXFS\"; break;\n\t\t\tcase 'BrtEndDXFs': state = \"\"; break;\n\t\t\tcase 'BrtBeginTableStyles': state = \"TABLESTYLES\"; break;\n\t\t\tcase 'BrtEndTableStyles': state = \"\"; break;\n\t\t\tcase 'BrtBeginColorPalette': state = \"COLORPALETTE\"; break;\n\t\t\tcase 'BrtEndColorPalette': state = \"\"; break;\n\t\t\tcase 'BrtBeginIndexedColors': state = \"INDEXEDCOLORS\"; break;\n\t\t\tcase 'BrtEndIndexedColors': state = \"\"; break;\n\t\t\tcase 'BrtBeginMRUColors': state = \"MRUCOLORS\"; break;\n\t\t\tcase 'BrtEndMRUColors': state = \"\"; break;\n\t\t\tcase 'BrtFRTBegin': pass = true; break;\n\t\t\tcase 'BrtFRTEnd': pass = false; break;\n\t\t\tcase 'BrtBeginStyleSheetExt14': break;\n\t\t\tcase 'BrtBeginSlicerStyles': break;\n\t\t\tcase 'BrtEndSlicerStyles': break;\n\t\t\tcase 'BrtBeginTimelineStylesheetExt15': break;\n\t\t\tcase 'BrtEndTimelineStylesheetExt15': break;\n\t\t\tcase 'BrtBeginTimelineStyles': break;\n\t\t\tcase 'BrtEndTimelineStyles': break;\n\t\t\tcase 'BrtEndStyleSheetExt14': break;\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + RT + \" \" + R.n);\n\t\t}\n\t});\n\treturn styles;\n}\n\n/* [MS-XLSB] 2.1.7.50 Styles */\nfunction write_sty_bin(data, opts) {\n\tvar ba = buf_array();\n\twrite_record(ba, \"BrtBeginStyleSheet\");\n\t/* [FMTS] */\n\t/* [FONTS] */\n\t/* [FILLS] */\n\t/* [BORDERS] */\n\t/* CELLSTYLEXFS */\n\t/* CELLXFS*/\n\t/* STYLES */\n\t/* DXFS */\n\t/* TABLESTYLES */\n\t/* [COLORPALETTE] */\n\t/* FRTSTYLESHEET*/\n\twrite_record(ba, \"BrtEndStyleSheet\");\n\treturn ba.end();\n}\nRELS.THEME = \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme\";\n\n/* 20.1.6.2 clrScheme CT_ColorScheme */\nfunction parse_clrScheme(t, opts) {\n\tthemes.themeElements.clrScheme = [];\n\tvar color = {};\n\tt[0].match(tagregex).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(y[0]) {\n\t\t\tcase '<a:clrScheme': case '</a:clrScheme>': break;\n\n\t\t\t/* 20.1.2.3.32 srgbClr CT_SRgbColor */\n\t\t\tcase '<a:srgbClr': color.rgb = y.val; break;\n\n\t\t\t/* 20.1.2.3.33 sysClr CT_SystemColor */\n\t\t\tcase '<a:sysClr': color.rgb = y.lastClr; break;\n\n\t\t\t/* 20.1.4.1.9 dk1 (Dark 1) */\n\t\t\tcase '<a:dk1>':\n\t\t\tcase '</a:dk1>':\n\t\t\t/* 20.1.4.1.10 dk2 (Dark 2) */\n\t\t\tcase '<a:dk2>':\n\t\t\tcase '</a:dk2>':\n\t\t\t/* 20.1.4.1.22 lt1 (Light 1) */\n\t\t\tcase '<a:lt1>':\n\t\t\tcase '</a:lt1>':\n\t\t\t/* 20.1.4.1.23 lt2 (Light 2) */\n\t\t\tcase '<a:lt2>':\n\t\t\tcase '</a:lt2>':\n\t\t\t/* 20.1.4.1.1 accent1 (Accent 1) */\n\t\t\tcase '<a:accent1>':\n\t\t\tcase '</a:accent1>':\n\t\t\t/* 20.1.4.1.2 accent2 (Accent 2) */\n\t\t\tcase '<a:accent2>':\n\t\t\tcase '</a:accent2>':\n\t\t\t/* 20.1.4.1.3 accent3 (Accent 3) */\n\t\t\tcase '<a:accent3>':\n\t\t\tcase '</a:accent3>':\n\t\t\t/* 20.1.4.1.4 accent4 (Accent 4) */\n\t\t\tcase '<a:accent4>':\n\t\t\tcase '</a:accent4>':\n\t\t\t/* 20.1.4.1.5 accent5 (Accent 5) */\n\t\t\tcase '<a:accent5>':\n\t\t\tcase '</a:accent5>':\n\t\t\t/* 20.1.4.1.6 accent6 (Accent 6) */\n\t\t\tcase '<a:accent6>':\n\t\t\tcase '</a:accent6>':\n\t\t\t/* 20.1.4.1.19 hlink (Hyperlink) */\n\t\t\tcase '<a:hlink>':\n\t\t\tcase '</a:hlink>':\n\t\t\t/* 20.1.4.1.15 folHlink (Followed Hyperlink) */\n\t\t\tcase '<a:folHlink>':\n\t\t\tcase '</a:folHlink>':\n\t\t\t\tif (y[0][1] === '/') {\n\t\t\t\t\tthemes.themeElements.clrScheme.push(color);\n\t\t\t\t\tcolor = {};\n\t\t\t\t} else {\n\t\t\t\t\tcolor.name = y[0].substring(3, y[0].length - 1);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tdefault: if(opts.WTF) throw 'unrecognized ' + y[0] + ' in clrScheme';\n\t\t}\n\t});\n}\n\n/* 20.1.4.1.18 fontScheme CT_FontScheme */\nfunction parse_fontScheme(t, opts) { }\n\n/* 20.1.4.1.15 fmtScheme CT_StyleMatrix */\nfunction parse_fmtScheme(t, opts) { }\n\nvar clrsregex = /<a:clrScheme([^>]*)>[^\\u2603]*<\\/a:clrScheme>/;\nvar fntsregex = /<a:fontScheme([^>]*)>[^\\u2603]*<\\/a:fontScheme>/;\nvar fmtsregex = /<a:fmtScheme([^>]*)>[^\\u2603]*<\\/a:fmtScheme>/;\n\n/* 20.1.6.10 themeElements CT_BaseStyles */\nfunction parse_themeElements(data, opts) {\n\tthemes.themeElements = {};\n\n\tvar t;\n\n\t[\n\t\t/* clrScheme CT_ColorScheme */\n\t\t['clrScheme', clrsregex, parse_clrScheme],\n\t\t/* fontScheme CT_FontScheme */\n\t\t['fontScheme', fntsregex, parse_fontScheme],\n\t\t/* fmtScheme CT_StyleMatrix */\n\t\t['fmtScheme', fmtsregex, parse_fmtScheme]\n\t].forEach(function(m) {\n\t\tif(!(t=data.match(m[1]))) throw m[0] + ' not found in themeElements';\n\t\tm[2](t, opts);\n\t});\n}\n\nvar themeltregex = /<a:themeElements([^>]*)>[^\\u2603]*<\\/a:themeElements>/;\n\n/* 14.2.7 Theme Part */\nfunction parse_theme_xml(data, opts) {\n\t/* 20.1.6.9 theme CT_OfficeStyleSheet */\n\tif(!data || data.length === 0) return themes;\n\n\tvar t;\n\n\t/* themeElements CT_BaseStyles */\n\tif(!(t=data.match(themeltregex))) throw 'themeElements not found in theme';\n\tparse_themeElements(t[0], opts);\n\n\treturn themes;\n}\n\nfunction write_theme() { return '<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\\n<a:theme xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" name=\"Office Theme\"><a:themeElements><a:clrScheme name=\"Office\"><a:dk1><a:sysClr val=\"windowText\" lastClr=\"000000\"/></a:dk1><a:lt1><a:sysClr val=\"window\" lastClr=\"FFFFFF\"/></a:lt1><a:dk2><a:srgbClr val=\"1F497D\"/></a:dk2><a:lt2><a:srgbClr val=\"EEECE1\"/></a:lt2><a:accent1><a:srgbClr val=\"4F81BD\"/></a:accent1><a:accent2><a:srgbClr val=\"C0504D\"/></a:accent2><a:accent3><a:srgbClr val=\"9BBB59\"/></a:accent3><a:accent4><a:srgbClr val=\"8064A2\"/></a:accent4><a:accent5><a:srgbClr val=\"4BACC6\"/></a:accent5><a:accent6><a:srgbClr val=\"F79646\"/></a:accent6><a:hlink><a:srgbClr val=\"0000FF\"/></a:hlink><a:folHlink><a:srgbClr val=\"800080\"/></a:folHlink></a:clrScheme><a:fontScheme name=\"Office\"><a:majorFont><a:latin typeface=\"Cambria\"/><a:ea typeface=\"\"/><a:cs typeface=\"\"/><a:font script=\"Jpan\" typeface=\"MS Pゴシック\"/><a:font script=\"Hang\" typeface=\"맑은 고딕\"/><a:font script=\"Hans\" typeface=\"宋体\"/><a:font script=\"Hant\" typeface=\"新細明體\"/><a:font script=\"Arab\" typeface=\"Times New Roman\"/><a:font script=\"Hebr\" typeface=\"Times New Roman\"/><a:font script=\"Thai\" typeface=\"Tahoma\"/><a:font script=\"Ethi\" typeface=\"Nyala\"/><a:font script=\"Beng\" typeface=\"Vrinda\"/><a:font script=\"Gujr\" typeface=\"Shruti\"/><a:font script=\"Khmr\" typeface=\"MoolBoran\"/><a:font script=\"Knda\" typeface=\"Tunga\"/><a:font script=\"Guru\" typeface=\"Raavi\"/><a:font script=\"Cans\" typeface=\"Euphemia\"/><a:font script=\"Cher\" typeface=\"Plantagenet Cherokee\"/><a:font script=\"Yiii\" typeface=\"Microsoft Yi Baiti\"/><a:font script=\"Tibt\" typeface=\"Microsoft Himalaya\"/><a:font script=\"Thaa\" typeface=\"MV Boli\"/><a:font script=\"Deva\" typeface=\"Mangal\"/><a:font script=\"Telu\" typeface=\"Gautami\"/><a:font script=\"Taml\" typeface=\"Latha\"/><a:font script=\"Syrc\" typeface=\"Estrangelo Edessa\"/><a:font script=\"Orya\" typeface=\"Kalinga\"/><a:font script=\"Mlym\" typeface=\"Kartika\"/><a:font script=\"Laoo\" typeface=\"DokChampa\"/><a:font script=\"Sinh\" typeface=\"Iskoola Pota\"/><a:font script=\"Mong\" typeface=\"Mongolian Baiti\"/><a:font script=\"Viet\" typeface=\"Times New Roman\"/><a:font script=\"Uigh\" typeface=\"Microsoft Uighur\"/><a:font script=\"Geor\" typeface=\"Sylfaen\"/></a:majorFont><a:minorFont><a:latin typeface=\"Calibri\"/><a:ea typeface=\"\"/><a:cs typeface=\"\"/><a:font script=\"Jpan\" typeface=\"MS Pゴシック\"/><a:font script=\"Hang\" typeface=\"맑은 고딕\"/><a:font script=\"Hans\" typeface=\"宋体\"/><a:font script=\"Hant\" typeface=\"新細明體\"/><a:font script=\"Arab\" typeface=\"Arial\"/><a:font script=\"Hebr\" typeface=\"Arial\"/><a:font script=\"Thai\" typeface=\"Tahoma\"/><a:font script=\"Ethi\" typeface=\"Nyala\"/><a:font script=\"Beng\" typeface=\"Vrinda\"/><a:font script=\"Gujr\" typeface=\"Shruti\"/><a:font script=\"Khmr\" typeface=\"DaunPenh\"/><a:font script=\"Knda\" typeface=\"Tunga\"/><a:font script=\"Guru\" typeface=\"Raavi\"/><a:font script=\"Cans\" typeface=\"Euphemia\"/><a:font script=\"Cher\" typeface=\"Plantagenet Cherokee\"/><a:font script=\"Yiii\" typeface=\"Microsoft Yi Baiti\"/><a:font script=\"Tibt\" typeface=\"Microsoft Himalaya\"/><a:font script=\"Thaa\" typeface=\"MV Boli\"/><a:font script=\"Deva\" typeface=\"Mangal\"/><a:font script=\"Telu\" typeface=\"Gautami\"/><a:font script=\"Taml\" typeface=\"Latha\"/><a:font script=\"Syrc\" typeface=\"Estrangelo Edessa\"/><a:font script=\"Orya\" typeface=\"Kalinga\"/><a:font script=\"Mlym\" typeface=\"Kartika\"/><a:font script=\"Laoo\" typeface=\"DokChampa\"/><a:font script=\"Sinh\" typeface=\"Iskoola Pota\"/><a:font script=\"Mong\" typeface=\"Mongolian Baiti\"/><a:font script=\"Viet\" typeface=\"Arial\"/><a:font script=\"Uigh\" typeface=\"Microsoft Uighur\"/><a:font script=\"Geor\" typeface=\"Sylfaen\"/></a:minorFont></a:fontScheme><a:fmtScheme name=\"Office\"><a:fillStyleLst><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"50000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs><a:gs pos=\"35000\"><a:schemeClr val=\"phClr\"><a:tint val=\"37000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:tint val=\"15000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs></a:gsLst><a:lin ang=\"16200000\" scaled=\"1\"/></a:gradFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"100000\"/><a:shade val=\"100000\"/><a:satMod val=\"130000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:tint val=\"50000\"/><a:shade val=\"100000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs></a:gsLst><a:lin ang=\"16200000\" scaled=\"0\"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w=\"9525\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"><a:shade val=\"95000\"/><a:satMod val=\"105000\"/></a:schemeClr></a:solidFill><a:prstDash val=\"solid\"/></a:ln><a:ln w=\"25400\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/></a:ln><a:ln w=\"38100\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst><a:outerShdw blurRad=\"40000\" dist=\"20000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"38000\"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad=\"40000\" dist=\"23000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"35000\"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad=\"40000\" dist=\"23000\" dir=\"5400000\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"35000\"/></a:srgbClr></a:outerShdw></a:effectLst><a:scene3d><a:camera prst=\"orthographicFront\"><a:rot lat=\"0\" lon=\"0\" rev=\"0\"/></a:camera><a:lightRig rig=\"threePt\" dir=\"t\"><a:rot lat=\"0\" lon=\"0\" rev=\"1200000\"/></a:lightRig></a:scene3d><a:sp3d><a:bevelT w=\"63500\" h=\"25400\"/></a:sp3d></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"40000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs><a:gs pos=\"40000\"><a:schemeClr val=\"phClr\"><a:tint val=\"45000\"/><a:shade val=\"99000\"/><a:satMod val=\"350000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:shade val=\"20000\"/><a:satMod val=\"255000\"/></a:schemeClr></a:gs></a:gsLst><a:path path=\"circle\"><a:fillToRect l=\"50000\" t=\"-80000\" r=\"50000\" b=\"180000\"/></a:path></a:gradFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"80000\"/><a:satMod val=\"300000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:shade val=\"30000\"/><a:satMod val=\"200000\"/></a:schemeClr></a:gs></a:gsLst><a:path path=\"circle\"><a:fillToRect l=\"50000\" t=\"50000\" r=\"50000\" b=\"50000\"/></a:path></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements><a:objectDefaults><a:spDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx=\"1\"><a:schemeClr val=\"accent1\"/></a:lnRef><a:fillRef idx=\"3\"><a:schemeClr val=\"accent1\"/></a:fillRef><a:effectRef idx=\"2\"><a:schemeClr val=\"accent1\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></a:style></a:spDef><a:lnDef><a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx=\"2\"><a:schemeClr val=\"accent1\"/></a:lnRef><a:fillRef idx=\"0\"><a:schemeClr val=\"accent1\"/></a:fillRef><a:effectRef idx=\"1\"><a:schemeClr val=\"accent1\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"tx1\"/></a:fontRef></a:style></a:lnDef></a:objectDefaults><a:extraClrSchemeLst/></a:theme>'; }\n/* [MS-XLS] 2.4.326 TODO: payload is a zip file */\nfunction parse_Theme(blob, length) {\n\tvar dwThemeVersion = blob.read_shift(4);\n\tif(dwThemeVersion === 124226) return;\n\tblob.l += length-4;\n}\n\n/* 2.5.49 */\nfunction parse_ColorTheme(blob, length) { return blob.read_shift(4); }\n\n/* 2.5.155 */\nfunction parse_FullColorExt(blob, length) {\n\tvar o = {};\n\to.xclrType = blob.read_shift(2);\n\to.nTintShade = blob.read_shift(2);\n\tswitch(o.xclrType) {\n\t\tcase 0: blob.l += 4; break;\n\t\tcase 1: o.xclrValue = parse_IcvXF(blob, 4); break;\n\t\tcase 2: o.xclrValue = parse_LongRGBA(blob, 4); break;\n\t\tcase 3: o.xclrValue = parse_ColorTheme(blob, 4); break;\n\t\tcase 4: blob.l += 4; break;\n\t}\n\tblob.l += 8;\n\treturn o;\n}\n\n/* 2.5.164 TODO: read 7 bits*/\nfunction parse_IcvXF(blob, length) {\n\treturn parsenoop(blob, length);\n}\n\n/* 2.5.280 */\nfunction parse_XFExtGradient(blob, length) {\n\treturn parsenoop(blob, length);\n}\n\n/* 2.5.108 */\nfunction parse_ExtProp(blob, length) {\n\tvar extType = blob.read_shift(2);\n\tvar cb = blob.read_shift(2);\n\tvar o = [extType];\n\tswitch(extType) {\n\t\tcase 0x04: case 0x05: case 0x07: case 0x08:\n\t\tcase 0x09: case 0x0A: case 0x0B: case 0x0D:\n\t\t\to[1] = parse_FullColorExt(blob, cb); break;\n\t\tcase 0x06: o[1] = parse_XFExtGradient(blob, cb); break;\n\t\tcase 0x0E: case 0x0F: o[1] = blob.read_shift(cb === 5 ? 1 : 2); break;\n\t\tdefault: throw new Error(\"Unrecognized ExtProp type: \" + extType + \" \" + cb);\n\t}\n\treturn o;\n}\n\n/* 2.4.355 */\nfunction parse_XFExt(blob, length) {\n\tvar end = blob.l + length;\n\tblob.l += 2;\n\tvar ixfe = blob.read_shift(2);\n\tblob.l += 2;\n\tvar cexts = blob.read_shift(2);\n\tvar ext = [];\n\twhile(cexts-- > 0) ext.push(parse_ExtProp(blob, end-blob.l));\n\treturn {ixfe:ixfe, ext:ext};\n}\n\n/* xf is an XF, see parse_XFExt for xfext */\nfunction update_xfext(xf, xfext) {\n\txfext.forEach(function(xfe) {\n\t\tswitch(xfe[0]) { /* 2.5.108 extPropData */\n\t\t\tcase 0x04: break; /* foreground color */\n\t\t\tcase 0x05: break; /* background color */\n\t\t\tcase 0x07: case 0x08: case 0x09: case 0x0a: break;\n\t\t\tcase 0x0d: break; /* text color */\n\t\t\tcase 0x0e: break; /* font scheme */\n\t\t\tdefault: throw \"bafuq\" + xfe[0].toString(16);\n\t\t}\n\t});\n}\n\n/* 18.6 Calculation Chain */\nfunction parse_cc_xml(data, opts) {\n\tvar d = [];\n\tvar l = 0, i = 1;\n\t(data.match(tagregex)||[]).forEach(function(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(y[0]) {\n\t\t\tcase '<?xml': break;\n\t\t\t/* 18.6.2  calcChain CT_CalcChain 1 */\n\t\t\tcase '<calcChain': case '<calcChain>': case '</calcChain>': break;\n\t\t\t/* 18.6.1  c CT_CalcCell 1 */\n\t\t\tcase '<c': delete y[0]; if(y.i) i = y.i; else y.i = i; d.push(y); break;\n\t\t}\n\t});\n\treturn d;\n}\n\nfunction write_cc_xml(data, opts) { }\n/* [MS-XLSB] 2.6.4.1 */\nfunction parse_BrtCalcChainItem$(data, length) {\n\tvar out = {};\n\tout.i = data.read_shift(4);\n\tvar cell = {};\n\tcell.r = data.read_shift(4);\n\tcell.c = data.read_shift(4);\n\tout.r = encode_cell(cell);\n\tvar flags = data.read_shift(1);\n\tif(flags & 0x2) out.l = '1';\n\tif(flags & 0x8) out.a = '1';\n\treturn out;\n}\n\n/* 18.6 Calculation Chain */\nfunction parse_cc_bin(data, opts) {\n\tvar out = [];\n\tvar pass = false;\n\trecordhopper(data, function hopper_cc(val, R, RT) {\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtCalcChainItem$': out.push(val); break;\n\t\t\tcase 'BrtBeginCalcChain$': break;\n\t\t\tcase 'BrtEndCalcChain$': break;\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + RT + \" \" + R.n);\n\t\t}\n\t});\n\treturn out;\n}\n\nfunction write_cc_bin(data, opts) { }\n\nfunction parse_comments(zip, dirComments, sheets, sheetRels, opts) {\n\tfor(var i = 0; i != dirComments.length; ++i) {\n\t\tvar canonicalpath=dirComments[i];\n\t\tvar comments=parse_cmnt(getzipdata(zip, canonicalpath.replace(/^\\//,''), true), canonicalpath, opts);\n\t\tif(!comments || !comments.length) continue;\n\t\t// find the sheets targeted by these comments\n\t\tvar sheetNames = keys(sheets);\n\t\tfor(var j = 0; j != sheetNames.length; ++j) {\n\t\t\tvar sheetName = sheetNames[j];\n\t\t\tvar rels = sheetRels[sheetName];\n\t\t\tif(rels) {\n\t\t\t\tvar rel = rels[canonicalpath];\n\t\t\t\tif(rel) insertCommentsIntoSheet(sheetName, sheets[sheetName], comments);\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction insertCommentsIntoSheet(sheetName, sheet, comments) {\n\tcomments.forEach(function(comment) {\n\t\tvar cell = sheet[comment.ref];\n\t\tif (!cell) {\n\t\t\tcell = {};\n\t\t\tsheet[comment.ref] = cell;\n\t\t\tvar range = safe_decode_range(sheet[\"!ref\"]||\"BDWGO1000001:A1\");\n\t\t\tvar thisCell = decode_cell(comment.ref);\n\t\t\tif(range.s.r > thisCell.r) range.s.r = thisCell.r;\n\t\t\tif(range.e.r < thisCell.r) range.e.r = thisCell.r;\n\t\t\tif(range.s.c > thisCell.c) range.s.c = thisCell.c;\n\t\t\tif(range.e.c < thisCell.c) range.e.c = thisCell.c;\n\t\t\tvar encoded = encode_range(range);\n\t\t\tif (encoded !== sheet[\"!ref\"]) sheet[\"!ref\"] = encoded;\n\t\t}\n\n\t\tif (!cell.c) cell.c = [];\n\t\tvar o = {a: comment.author, t: comment.t, r: comment.r};\n\t\tif(comment.h) o.h = comment.h;\n\t\tcell.c.push(o);\n\t});\n}\n\n/* 18.7.3 CT_Comment */\nfunction parse_comments_xml(data, opts) {\n\tif(data.match(/<(?:\\w+:)?comments *\\/>/)) return [];\n\tvar authors = [];\n\tvar commentList = [];\n\tdata.match(/<(?:\\w+:)?authors>([^\\u2603]*)<\\/(?:\\w+:)?authors>/)[1].split(/<\\/\\w*:?author>/).forEach(function(x) {\n\t\tif(x === \"\" || x.trim() === \"\") return;\n\t\tauthors.push(x.match(/<(?:\\w+:)?author[^>]*>(.*)/)[1]);\n\t});\n\t(data.match(/<(?:\\w+:)?commentList>([^\\u2603]*)<\\/(?:\\w+:)?commentList>/)||[\"\",\"\"])[1].split(/<\\/\\w*:?comment>/).forEach(function(x, index) {\n\t\tif(x === \"\" || x.trim() === \"\") return;\n\t\tvar y = parsexmltag(x.match(/<(?:\\w+:)?comment[^>]*>/)[0]);\n\t\tvar comment = { author: y.authorId && authors[y.authorId] ? authors[y.authorId] : undefined, ref: y.ref, guid: y.guid };\n\t\tvar cell = decode_cell(y.ref);\n\t\tif(opts.sheetRows && opts.sheetRows <= cell.r) return;\n\t\tvar textMatch = x.match(/<text>([^\\u2603]*)<\\/text>/);\n\t\tif (!textMatch || !textMatch[1]) return; // a comment may contain an empty text tag.\n\t\tvar rt = parse_si(textMatch[1]);\n\t\tcomment.r = rt.r;\n\t\tcomment.t = rt.t;\n\t\tif(opts.cellHTML) comment.h = rt.h;\n\t\tcommentList.push(comment);\n\t});\n\treturn commentList;\n}\n\nfunction write_comments_xml(data, opts) { }\n/* [MS-XLSB] 2.4.28 BrtBeginComment */\nfunction parse_BrtBeginComment(data, length) {\n\tvar out = {};\n\tout.iauthor = data.read_shift(4);\n\tvar rfx = parse_UncheckedRfX(data, 16);\n\tout.rfx = rfx.s;\n\tout.ref = encode_cell(rfx.s);\n\tdata.l += 16; /*var guid = parse_GUID(data); */\n\treturn out;\n}\n\n/* [MS-XLSB] 2.4.324 BrtCommentAuthor */\nvar parse_BrtCommentAuthor = parse_XLWideString;\n\n/* [MS-XLSB] 2.4.325 BrtCommentText */\nvar parse_BrtCommentText = parse_RichStr;\n\n/* [MS-XLSB] 2.1.7.8 Comments */\nfunction parse_comments_bin(data, opts) {\n\tvar out = [];\n\tvar authors = [];\n\tvar c = {};\n\tvar pass = false;\n\trecordhopper(data, function hopper_cmnt(val, R, RT) {\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtCommentAuthor': authors.push(val); break;\n\t\t\tcase 'BrtBeginComment': c = val; break;\n\t\t\tcase 'BrtCommentText': c.t = val.t; c.h = val.h; c.r = val.r; break;\n\t\t\tcase 'BrtEndComment':\n\t\t\t\tc.author = authors[c.iauthor];\n\t\t\t\tdelete c.iauthor;\n\t\t\t\tif(opts.sheetRows && opts.sheetRows <= c.rfx.r) break;\n\t\t\t\tdelete c.rfx; out.push(c); break;\n\t\t\tcase 'BrtBeginComments': break;\n\t\t\tcase 'BrtEndComments': break;\n\t\t\tcase 'BrtBeginCommentAuthors': break;\n\t\t\tcase 'BrtEndCommentAuthors': break;\n\t\t\tcase 'BrtBeginCommentList': break;\n\t\t\tcase 'BrtEndCommentList': break;\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + RT + \" \" + R.n);\n\t\t}\n\t});\n\treturn out;\n}\n\nfunction write_comments_bin(data, opts) { }\n/* TODO: it will be useful to parse the function str */\nvar rc_to_a1 = (function(){\n\tvar rcregex = /(^|[^A-Za-z])R(\\[?)(-?\\d+|)\\]?C(\\[?)(-?\\d+|)\\]?/g;\n\tvar rcbase;\n\tfunction rcfunc($$,$1,$2,$3,$4,$5) {\n\t\tvar R = $3.length>0?parseInt($3,10)|0:0, C = $5.length>0?parseInt($5,10)|0:0;\n\t\tif(C<0 && $4.length === 0) C=0;\n\t\tif($4.length > 0) C += rcbase.c;\n\t\tif($2.length > 0) R += rcbase.r;\n\t\treturn $1 + encode_col(C) + encode_row(R);\n\t}\n\treturn function rc_to_a1(fstr, base) {\n\t\trcbase = base;\n\t\treturn fstr.replace(rcregex, rcfunc);\n\t};\n})();\n\n/* --- formula references point to MS-XLS --- */\n/* Small helpers */\nfunction parseread(l) { return function(blob, length) { blob.l+=l; return; }; }\nfunction parseread1(blob, length) { blob.l+=1; return; }\n\n/* Rgce Helpers */\n\n/* 2.5.51 */\nfunction parse_ColRelU(blob, length) {\n\tvar c = blob.read_shift(2);\n\treturn [c & 0x3FFF, (c >> 14) & 1, (c >> 15) & 1];\n}\n\n/* 2.5.198.105 */\nfunction parse_RgceArea(blob, length) {\n\tvar r=blob.read_shift(2), R=blob.read_shift(2);\n\tvar c=parse_ColRelU(blob, 2);\n\tvar C=parse_ColRelU(blob, 2);\n\treturn { s:{r:r, c:c[0], cRel:c[1], rRel:c[2]}, e:{r:R, c:C[0], cRel:C[1], rRel:C[2]} };\n}\n\n/* 2.5.198.105 TODO */\nfunction parse_RgceAreaRel(blob, length) {\n\tvar r=blob.read_shift(2), R=blob.read_shift(2);\n\tvar c=parse_ColRelU(blob, 2);\n\tvar C=parse_ColRelU(blob, 2);\n\treturn { s:{r:r, c:c[0], cRel:c[1], rRel:c[2]}, e:{r:R, c:C[0], cRel:C[1], rRel:C[2]} };\n}\n\n/* 2.5.198.109 */\nfunction parse_RgceLoc(blob, length) {\n\tvar r = blob.read_shift(2);\n\tvar c = parse_ColRelU(blob, 2);\n\treturn {r:r, c:c[0], cRel:c[1], rRel:c[2]};\n}\n\n/* 2.5.198.111 */\nfunction parse_RgceLocRel(blob, length) {\n\tvar r = blob.read_shift(2);\n\tvar cl = blob.read_shift(2);\n\tvar cRel = (cl & 0x8000) >> 15, rRel = (cl & 0x4000) >> 14;\n\tcl &= 0x3FFF;\n\tif(cRel !== 0) while(cl >= 0x100) cl -= 0x100;\n\treturn {r:r,c:cl,cRel:cRel,rRel:rRel};\n}\n\n/* Ptg Tokens */\n\n/* 2.5.198.27 */\nfunction parse_PtgArea(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tvar area = parse_RgceArea(blob, 8);\n\treturn [type, area];\n}\n\n/* 2.5.198.28 */\nfunction parse_PtgArea3d(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tvar ixti = blob.read_shift(2);\n\tvar area = parse_RgceArea(blob, 8);\n\treturn [type, ixti, area];\n}\n\n/* 2.5.198.29 */\nfunction parse_PtgAreaErr(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tblob.l += 8;\n\treturn [type];\n}\n/* 2.5.198.30 */\nfunction parse_PtgAreaErr3d(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tvar ixti = blob.read_shift(2);\n\tblob.l += 8;\n\treturn [type, ixti];\n}\n\n/* 2.5.198.31 */\nfunction parse_PtgAreaN(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tvar area = parse_RgceAreaRel(blob, 8);\n\treturn [type, area];\n}\n\n/* 2.5.198.32 -- ignore this and look in PtgExtraArray for shape + values */\nfunction parse_PtgArray(blob, length) {\n\tvar type = (blob[blob.l++] & 0x60) >> 5;\n\tblob.l += 7;\n\treturn [type];\n}\n\n/* 2.5.198.33 */\nfunction parse_PtgAttrBaxcel(blob, length) {\n\tvar bitSemi = blob[blob.l+1] & 0x01; /* 1 = volatile */\n\tvar bitBaxcel = 1;\n\tblob.l += 4;\n\treturn [bitSemi, bitBaxcel];\n}\n\n/* 2.5.198.34 */\nfunction parse_PtgAttrChoose(blob, length) {\n\tblob.l +=2;\n\tvar offset = blob.read_shift(2);\n\tvar o = [];\n\t/* offset is 1 less than the number of elements */\n\tfor(var i = 0; i <= offset; ++i) o.push(blob.read_shift(2));\n\treturn o;\n}\n\n/* 2.5.198.35 */\nfunction parse_PtgAttrGoto(blob, length) {\n\tvar bitGoto = (blob[blob.l+1] & 0xFF) ? 1 : 0;\n\tblob.l += 2;\n\treturn [bitGoto, blob.read_shift(2)];\n}\n\n/* 2.5.198.36 */\nfunction parse_PtgAttrIf(blob, length) {\n\tvar bitIf = (blob[blob.l+1] & 0xFF) ? 1 : 0;\n\tblob.l += 2;\n\treturn [bitIf, blob.read_shift(2)];\n}\n\n/* 2.5.198.37 */\nfunction parse_PtgAttrSemi(blob, length) {\n\tvar bitSemi = (blob[blob.l+1] & 0xFF) ? 1 : 0;\n\tblob.l += 4;\n\treturn [bitSemi];\n}\n\n/* 2.5.198.40 (used by PtgAttrSpace and PtgAttrSpaceSemi) */\nfunction parse_PtgAttrSpaceType(blob, length) {\n\tvar type = blob.read_shift(1), cch = blob.read_shift(1);\n\treturn [type, cch];\n}\n\n/* 2.5.198.38 */\nfunction parse_PtgAttrSpace(blob, length) {\n\tblob.read_shift(2);\n\treturn parse_PtgAttrSpaceType(blob, 2);\n}\n\n/* 2.5.198.39 */\nfunction parse_PtgAttrSpaceSemi(blob, length) {\n\tblob.read_shift(2);\n\treturn parse_PtgAttrSpaceType(blob, 2);\n}\n\n/* 2.5.198.84 TODO */\nfunction parse_PtgRef(blob, length) {\n\tvar ptg = blob[blob.l] & 0x1F;\n\tvar type = (blob[blob.l] & 0x60)>>5;\n\tblob.l += 1;\n\tvar loc = parse_RgceLoc(blob,4);\n\treturn [type, loc];\n}\n\n/* 2.5.198.88 TODO */\nfunction parse_PtgRefN(blob, length) {\n\tvar ptg = blob[blob.l] & 0x1F;\n\tvar type = (blob[blob.l] & 0x60)>>5;\n\tblob.l += 1;\n\tvar loc = parse_RgceLocRel(blob,4);\n\treturn [type, loc];\n}\n\n/* 2.5.198.85 TODO */\nfunction parse_PtgRef3d(blob, length) {\n\tvar ptg = blob[blob.l] & 0x1F;\n\tvar type = (blob[blob.l] & 0x60)>>5;\n\tblob.l += 1;\n\tvar ixti = blob.read_shift(2); // XtiIndex\n\tvar loc = parse_RgceLoc(blob,4);\n\treturn [type, ixti, loc];\n}\n\n\n/* 2.5.198.62 TODO */\nfunction parse_PtgFunc(blob, length) {\n\tvar ptg = blob[blob.l] & 0x1F;\n\tvar type = (blob[blob.l] & 0x60)>>5;\n\tblob.l += 1;\n\tvar iftab = blob.read_shift(2);\n\treturn [FtabArgc[iftab], Ftab[iftab]];\n}\n/* 2.5.198.63 TODO */\nfunction parse_PtgFuncVar(blob, length) {\n\tblob.l++;\n\tvar cparams = blob.read_shift(1), tab = parsetab(blob);\n\treturn [cparams, (tab[0] === 0 ? Ftab : Cetab)[tab[1]]];\n}\n\nfunction parsetab(blob, length) {\n\treturn [blob[blob.l+1]>>7, blob.read_shift(2) & 0x7FFF];\n}\n\n/* 2.5.198.41 */\nvar parse_PtgAttrSum = parseread(4);\n/* 2.5.198.43 */\nvar parse_PtgConcat = parseread1;\n\n/* 2.5.198.58 */\nfunction parse_PtgExp(blob, length) {\n\tblob.l++;\n\tvar row = blob.read_shift(2);\n\tvar col = blob.read_shift(2);\n\treturn [row, col];\n}\n\n/* 2.5.198.57 */\nfunction parse_PtgErr(blob, length) { blob.l++; return BErr[blob.read_shift(1)]; }\n\n/* 2.5.198.66 TODO */\nfunction parse_PtgInt(blob, length) { blob.l++; return blob.read_shift(2); }\n\n/* 2.5.198.42 */\nfunction parse_PtgBool(blob, length) { blob.l++; return blob.read_shift(1)!==0;}\n\n/* 2.5.198.79 */\nfunction parse_PtgNum(blob, length) { blob.l++; return parse_Xnum(blob, 8); }\n\n/* 2.5.198.89 */\nfunction parse_PtgStr(blob, length) { blob.l++; return parse_ShortXLUnicodeString(blob); }\n\n/* 2.5.192.112 + 2.5.192.11{3,4,5,6,7} */\nfunction parse_SerAr(blob) {\n\tvar val = [];\n\tswitch((val[0] = blob.read_shift(1))) {\n\t\t/* 2.5.192.113 */\n\t\tcase 0x04: /* SerBool -- boolean */\n\t\t\tval[1] = parsebool(blob, 1) ? 'TRUE' : 'FALSE';\n\t\t\tblob.l += 7; break;\n\t\t/* 2.5.192.114 */\n\t\tcase 0x10: /* SerErr -- error */\n\t\t\tval[1] = BErr[blob[blob.l]];\n\t\t\tblob.l += 8; break;\n\t\t/* 2.5.192.115 */\n\t\tcase 0x00: /* SerNil -- honestly, I'm not sure how to reproduce this */\n\t\t\tblob.l += 8; break;\n\t\t/* 2.5.192.116 */\n\t\tcase 0x01: /* SerNum -- Xnum */\n\t\t\tval[1] = parse_Xnum(blob, 8); break;\n\t\t/* 2.5.192.117 */\n\t\tcase 0x02: /* SerStr -- XLUnicodeString (<256 chars) */\n\t\t\tval[1] = parse_XLUnicodeString(blob); break;\n\t\t// default: throw \"Bad SerAr: \" + val[0]; /* Unreachable */\n\t}\n\treturn val;\n}\n\n/* 2.5.198.61 */\nfunction parse_PtgExtraMem(blob, cce) {\n\tvar count = blob.read_shift(2);\n\tvar out = [];\n\tfor(var i = 0; i != count; ++i) out.push(parse_Ref8U(blob, 8));\n\treturn out;\n}\n\n/* 2.5.198.59 */\nfunction parse_PtgExtraArray(blob) {\n\tvar cols = 1 + blob.read_shift(1); //DColByteU\n\tvar rows = 1 + blob.read_shift(2); //DRw\n\tfor(var i = 0, o=[]; i != rows && (o[i] = []); ++i)\n\t\tfor(var j = 0; j != cols; ++j) o[i][j] = parse_SerAr(blob);\n\treturn o;\n}\n\n/* 2.5.198.76 */\nfunction parse_PtgName(blob, length) {\n\tvar type = (blob.read_shift(1) >>> 5) & 0x03;\n\tvar nameindex = blob.read_shift(4);\n\treturn [type, 0, nameindex];\n}\n\n/* 2.5.198.77 */\nfunction parse_PtgNameX(blob, length) {\n\tvar type = (blob.read_shift(1) >>> 5) & 0x03;\n\tvar ixti = blob.read_shift(2); // XtiIndex\n\tvar nameindex = blob.read_shift(4);\n\treturn [type, ixti, nameindex];\n}\n\n/* 2.5.198.70 */\nfunction parse_PtgMemArea(blob, length) {\n\tvar type = (blob.read_shift(1) >>> 5) & 0x03;\n\tblob.l += 4;\n\tvar cce = blob.read_shift(2);\n\treturn [type, cce];\n}\n\n/* 2.5.198.72 */\nfunction parse_PtgMemFunc(blob, length) {\n\tvar type = (blob.read_shift(1) >>> 5) & 0x03;\n\tvar cce = blob.read_shift(2);\n\treturn [type, cce];\n}\n\n\n/* 2.5.198.86 */\nfunction parse_PtgRefErr(blob, length) {\n\tvar type = (blob.read_shift(1) >>> 5) & 0x03;\n\tblob.l += 4;\n\treturn [type];\n}\n\n/* 2.5.198.26 */\nvar parse_PtgAdd = parseread1;\n/* 2.5.198.45 */\nvar parse_PtgDiv = parseread1;\n/* 2.5.198.56 */\nvar parse_PtgEq = parseread1;\n/* 2.5.198.64 */\nvar parse_PtgGe = parseread1;\n/* 2.5.198.65 */\nvar parse_PtgGt = parseread1;\n/* 2.5.198.67 */\nvar parse_PtgIsect = parseread1;\n/* 2.5.198.68 */\nvar parse_PtgLe = parseread1;\n/* 2.5.198.69 */\nvar parse_PtgLt = parseread1;\n/* 2.5.198.74 */\nvar parse_PtgMissArg = parseread1;\n/* 2.5.198.75 */\nvar parse_PtgMul = parseread1;\n/* 2.5.198.78 */\nvar parse_PtgNe = parseread1;\n/* 2.5.198.80 */\nvar parse_PtgParen = parseread1;\n/* 2.5.198.81 */\nvar parse_PtgPercent = parseread1;\n/* 2.5.198.82 */\nvar parse_PtgPower = parseread1;\n/* 2.5.198.83 */\nvar parse_PtgRange = parseread1;\n/* 2.5.198.90 */\nvar parse_PtgSub = parseread1;\n/* 2.5.198.93 */\nvar parse_PtgUminus = parseread1;\n/* 2.5.198.94 */\nvar parse_PtgUnion = parseread1;\n/* 2.5.198.95 */\nvar parse_PtgUplus = parseread1;\n\n/* 2.5.198.71 */\nvar parse_PtgMemErr = parsenoop;\n/* 2.5.198.73 */\nvar parse_PtgMemNoMem = parsenoop;\n/* 2.5.198.87 */\nvar parse_PtgRefErr3d = parsenoop;\n/* 2.5.198.92 */\nvar parse_PtgTbl = parsenoop;\n\n/* 2.5.198.25 */\nvar PtgTypes = {\n\t0x01: { n:'PtgExp', f:parse_PtgExp },\n\t0x02: { n:'PtgTbl', f:parse_PtgTbl },\n\t0x03: { n:'PtgAdd', f:parse_PtgAdd },\n\t0x04: { n:'PtgSub', f:parse_PtgSub },\n\t0x05: { n:'PtgMul', f:parse_PtgMul },\n\t0x06: { n:'PtgDiv', f:parse_PtgDiv },\n\t0x07: { n:'PtgPower', f:parse_PtgPower },\n\t0x08: { n:'PtgConcat', f:parse_PtgConcat },\n\t0x09: { n:'PtgLt', f:parse_PtgLt },\n\t0x0A: { n:'PtgLe', f:parse_PtgLe },\n\t0x0B: { n:'PtgEq', f:parse_PtgEq },\n\t0x0C: { n:'PtgGe', f:parse_PtgGe },\n\t0x0D: { n:'PtgGt', f:parse_PtgGt },\n\t0x0E: { n:'PtgNe', f:parse_PtgNe },\n\t0x0F: { n:'PtgIsect', f:parse_PtgIsect },\n\t0x10: { n:'PtgUnion', f:parse_PtgUnion },\n\t0x11: { n:'PtgRange', f:parse_PtgRange },\n\t0x12: { n:'PtgUplus', f:parse_PtgUplus },\n\t0x13: { n:'PtgUminus', f:parse_PtgUminus },\n\t0x14: { n:'PtgPercent', f:parse_PtgPercent },\n\t0x15: { n:'PtgParen', f:parse_PtgParen },\n\t0x16: { n:'PtgMissArg', f:parse_PtgMissArg },\n\t0x17: { n:'PtgStr', f:parse_PtgStr },\n\t0x1C: { n:'PtgErr', f:parse_PtgErr },\n\t0x1D: { n:'PtgBool', f:parse_PtgBool },\n\t0x1E: { n:'PtgInt', f:parse_PtgInt },\n\t0x1F: { n:'PtgNum', f:parse_PtgNum },\n\t0x20: { n:'PtgArray', f:parse_PtgArray },\n\t0x21: { n:'PtgFunc', f:parse_PtgFunc },\n\t0x22: { n:'PtgFuncVar', f:parse_PtgFuncVar },\n\t0x23: { n:'PtgName', f:parse_PtgName },\n\t0x24: { n:'PtgRef', f:parse_PtgRef },\n\t0x25: { n:'PtgArea', f:parse_PtgArea },\n\t0x26: { n:'PtgMemArea', f:parse_PtgMemArea },\n\t0x27: { n:'PtgMemErr', f:parse_PtgMemErr },\n\t0x28: { n:'PtgMemNoMem', f:parse_PtgMemNoMem },\n\t0x29: { n:'PtgMemFunc', f:parse_PtgMemFunc },\n\t0x2A: { n:'PtgRefErr', f:parse_PtgRefErr },\n\t0x2B: { n:'PtgAreaErr', f:parse_PtgAreaErr },\n\t0x2C: { n:'PtgRefN', f:parse_PtgRefN },\n\t0x2D: { n:'PtgAreaN', f:parse_PtgAreaN },\n\t0x39: { n:'PtgNameX', f:parse_PtgNameX },\n\t0x3A: { n:'PtgRef3d', f:parse_PtgRef3d },\n\t0x3B: { n:'PtgArea3d', f:parse_PtgArea3d },\n\t0x3C: { n:'PtgRefErr3d', f:parse_PtgRefErr3d },\n\t0x3D: { n:'PtgAreaErr3d', f:parse_PtgAreaErr3d },\n\t0xFF: {}\n};\n/* These are duplicated in the PtgTypes table */\nvar PtgDupes = {\n\t0x40: 0x20, 0x60: 0x20,\n\t0x41: 0x21, 0x61: 0x21,\n\t0x42: 0x22, 0x62: 0x22,\n\t0x43: 0x23, 0x63: 0x23,\n\t0x44: 0x24, 0x64: 0x24,\n\t0x45: 0x25, 0x65: 0x25,\n\t0x46: 0x26, 0x66: 0x26,\n\t0x47: 0x27, 0x67: 0x27,\n\t0x48: 0x28, 0x68: 0x28,\n\t0x49: 0x29, 0x69: 0x29,\n\t0x4A: 0x2A, 0x6A: 0x2A,\n\t0x4B: 0x2B, 0x6B: 0x2B,\n\t0x4C: 0x2C, 0x6C: 0x2C,\n\t0x4D: 0x2D, 0x6D: 0x2D,\n\t0x59: 0x39, 0x79: 0x39,\n\t0x5A: 0x3A, 0x7A: 0x3A,\n\t0x5B: 0x3B, 0x7B: 0x3B,\n\t0x5C: 0x3C, 0x7C: 0x3C,\n\t0x5D: 0x3D, 0x7D: 0x3D\n};\n(function(){for(var y in PtgDupes) PtgTypes[y] = PtgTypes[PtgDupes[y]];})();\n\nvar Ptg18 = {};\nvar Ptg19 = {\n\t0x01: { n:'PtgAttrSemi', f:parse_PtgAttrSemi },\n\t0x02: { n:'PtgAttrIf', f:parse_PtgAttrIf },\n\t0x04: { n:'PtgAttrChoose', f:parse_PtgAttrChoose },\n\t0x08: { n:'PtgAttrGoto', f:parse_PtgAttrGoto },\n\t0x10: { n:'PtgAttrSum', f:parse_PtgAttrSum },\n\t0x20: { n:'PtgAttrBaxcel', f:parse_PtgAttrBaxcel },\n\t0x40: { n:'PtgAttrSpace', f:parse_PtgAttrSpace },\n\t0x41: { n:'PtgAttrSpaceSemi', f:parse_PtgAttrSpaceSemi },\n\t0xFF: {}\n};\n\n/* 2.4.127 TODO */\nfunction parse_Formula(blob, length, opts) {\n\tvar cell = parse_XLSCell(blob, 6);\n\tvar val = parse_FormulaValue(blob,8);\n\tvar flags = blob.read_shift(1);\n\tblob.read_shift(1);\n\tvar chn = blob.read_shift(4);\n\tvar cbf = \"\";\n\tif(opts.biff === 5) blob.l += length-20;\n\telse cbf = parse_XLSCellParsedFormula(blob, length-20, opts);\n\treturn {cell:cell, val:val[0], formula:cbf, shared: (flags >> 3) & 1, tt:val[1]};\n}\n\n/* 2.5.133 TODO: how to emit empty strings? */\nfunction parse_FormulaValue(blob) {\n\tvar b;\n\tif(__readUInt16LE(blob,blob.l + 6) !== 0xFFFF) return [parse_Xnum(blob),'n'];\n\tswitch(blob[blob.l]) {\n\t\tcase 0x00: blob.l += 8; return [\"String\", 's'];\n\t\tcase 0x01: b = blob[blob.l+2] === 0x1; blob.l += 8; return [b,'b'];\n\t\tcase 0x02: b = blob[blob.l+2]; blob.l += 8; return [b,'e'];\n\t\tcase 0x03: blob.l += 8; return [\"\",'s'];\n\t}\n}\n\n/* 2.5.198.103 */\nfunction parse_RgbExtra(blob, length, rgce, opts) {\n\tif(opts.biff < 8) return parsenoop(blob, length);\n\tvar target = blob.l + length;\n\tvar o = [];\n\tfor(var i = 0; i !== rgce.length; ++i) {\n\t\tswitch(rgce[i][0]) {\n\t\t\tcase 'PtgArray': /* PtgArray -> PtgExtraArray */\n\t\t\t\trgce[i][1] = parse_PtgExtraArray(blob);\n\t\t\t\to.push(rgce[i][1]);\n\t\t\t\tbreak;\n\t\t\tcase 'PtgMemArea': /* PtgMemArea -> PtgExtraMem */\n\t\t\t\trgce[i][2] = parse_PtgExtraMem(blob, rgce[i][1]);\n\t\t\t\to.push(rgce[i][2]);\n\t\t\t\tbreak;\n\t\t\tdefault: break;\n\t\t}\n\t}\n\tlength = target - blob.l;\n\tif(length !== 0) o.push(parsenoop(blob, length));\n\treturn o;\n}\n\n/* 2.5.198.21 */\nfunction parse_NameParsedFormula(blob, length, opts, cce) {\n\tvar target = blob.l + length;\n\tvar rgce = parse_Rgce(blob, cce);\n\tvar rgcb;\n\tif(target !== blob.l) rgcb = parse_RgbExtra(blob, target - blob.l, rgce, opts);\n\treturn [rgce, rgcb];\n}\n\n/* 2.5.198.3 TODO */\nfunction parse_XLSCellParsedFormula(blob, length, opts) {\n\tvar target = blob.l + length;\n\tvar rgcb, cce = blob.read_shift(2); // length of rgce\n\tif(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];\n\tvar rgce = parse_Rgce(blob, cce);\n\tif(length !== cce + 2) rgcb = parse_RgbExtra(blob, length - cce - 2, rgce, opts);\n\treturn [rgce, rgcb];\n}\n\n/* 2.5.198.118 TODO */\nfunction parse_SharedParsedFormula(blob, length, opts) {\n\tvar target = blob.l + length;\n\tvar rgcb, cce = blob.read_shift(2); // length of rgce\n\tvar rgce = parse_Rgce(blob, cce);\n\tif(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];\n\tif(length !== cce + 2) rgcb = parse_RgbExtra(blob, target - cce - 2, rgce, opts);\n\treturn [rgce, rgcb];\n}\n\n/* 2.5.198.1 TODO */\nfunction parse_ArrayParsedFormula(blob, length, opts, ref) {\n\tvar target = blob.l + length;\n\tvar rgcb, cce = blob.read_shift(2); // length of rgce\n\tif(cce == 0xFFFF) return [[],parsenoop(blob, length-2)];\n\tvar rgce = parse_Rgce(blob, cce);\n\tif(length !== cce + 2) rgcb = parse_RgbExtra(blob, target - cce - 2, rgce, opts);\n\treturn [rgce, rgcb];\n}\n\n/* 2.5.198.104 */\nfunction parse_Rgce(blob, length) {\n\tvar target = blob.l + length;\n\tvar R, id, ptgs = [];\n\twhile(target != blob.l) {\n\t\tlength = target - blob.l;\n\t\tid = blob[blob.l];\n\t\tR = PtgTypes[id];\n\t\t//console.log(\"ptg\", id, R)\n\t\tif(id === 0x18 || id === 0x19) {\n\t\t\tid = blob[blob.l + 1];\n\t\t\tR = (id === 0x18 ? Ptg18 : Ptg19)[id];\n\t\t}\n\t\tif(!R || !R.f) { ptgs.push(parsenoop(blob, length)); }\n\t\telse { ptgs.push([R.n, R.f(blob, length)]); }\n\t}\n\treturn ptgs;\n}\n\nfunction mapper(x) { return x.map(function f2(y) { return y[1];}).join(\",\");}\n\n/* 2.2.2 + Magic TODO */\nfunction stringify_formula(formula, range, cell, supbooks, opts) {\n\tif(opts !== undefined && opts.biff === 5) return \"BIFF5??\";\n\tvar _range = range !== undefined ? range : {s:{c:0, r:0}};\n\tvar stack = [], e1, e2, type, c, ixti, nameidx, r;\n\tif(!formula[0] || !formula[0][0]) return \"\";\n\t//console.log(\"--\",cell,formula[0])\n\tfor(var ff = 0, fflen = formula[0].length; ff < fflen; ++ff) {\n\t\tvar f = formula[0][ff];\n\t\t//console.log(\"++\",f, stack)\n\t\tswitch(f[0]) {\n\t\t/* 2.2.2.1 Unary Operator Tokens */\n\t\t\t/* 2.5.198.93 */\n\t\t\tcase 'PtgUminus': stack.push(\"-\" + stack.pop()); break;\n\t\t\t/* 2.5.198.95 */\n\t\t\tcase 'PtgUplus': stack.push(\"+\" + stack.pop()); break;\n\t\t\t/* 2.5.198.81 */\n\t\t\tcase 'PtgPercent': stack.push(stack.pop() + \"%\"); break;\n\n\t\t/* 2.2.2.1 Binary Value Operator Token */\n\t\t\t/* 2.5.198.26 */\n\t\t\tcase 'PtgAdd':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"+\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.90 */\n\t\t\tcase 'PtgSub':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"-\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.75 */\n\t\t\tcase 'PtgMul':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"*\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.45 */\n\t\t\tcase 'PtgDiv':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"/\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.82 */\n\t\t\tcase 'PtgPower':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"^\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.43 */\n\t\t\tcase 'PtgConcat':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"&\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.69 */\n\t\t\tcase 'PtgLt':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"<\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.68 */\n\t\t\tcase 'PtgLe':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"<=\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.56 */\n\t\t\tcase 'PtgEq':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"=\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.64 */\n\t\t\tcase 'PtgGe':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\">=\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.65 */\n\t\t\tcase 'PtgGt':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\">\"+e1);\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.78 */\n\t\t\tcase 'PtgNe':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\"<>\"+e1);\n\t\t\t\tbreak;\n\n\t\t/* 2.2.2.1 Binary Reference Operator Token */\n\t\t\t/* 2.5.198.67 */\n\t\t\tcase 'PtgIsect':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\" \"+e1);\n\t\t\t\tbreak;\n\t\t\tcase 'PtgUnion':\n\t\t\t\te1 = stack.pop(); e2 = stack.pop();\n\t\t\t\tstack.push(e2+\",\"+e1);\n\t\t\t\tbreak;\n\t\t\tcase 'PtgRange': break;\n\n\t\t/* 2.2.2.3 Control Tokens \"can be ignored\" */\n\t\t\t/* 2.5.198.34 */\n\t\t\tcase 'PtgAttrChoose': break;\n\t\t\t/* 2.5.198.35 */\n\t\t\tcase 'PtgAttrGoto': break;\n\t\t\t/* 2.5.198.36 */\n\t\t\tcase 'PtgAttrIf': break;\n\n\n\t\t\t/* 2.5.198.84 */\n\t\t\tcase 'PtgRef':\n\t\t\t\ttype = f[1][0]; c = shift_cell_xls(decode_cell(encode_cell(f[1][1])), _range);\n\t\t\t\tstack.push(encode_cell(c));\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.88 */\n\t\t\tcase 'PtgRefN':\n\t\t\t\ttype = f[1][0]; c = shift_cell_xls(decode_cell(encode_cell(f[1][1])), cell);\n\t\t\t\tstack.push(encode_cell(c));\n\t\t\t\tbreak;\n\t\t\tcase 'PtgRef3d': // TODO: lots of stuff\n\t\t\t\ttype = f[1][0]; ixti = f[1][1]; c = shift_cell_xls(f[1][2], _range);\n\t\t\t\tstack.push(supbooks[1][ixti+1]+\"!\"+encode_cell(c));\n\t\t\t\tbreak;\n\n\t\t/* Function Call */\n\t\t\t/* 2.5.198.62 */\n\t\t\tcase 'PtgFunc':\n\t\t\t/* 2.5.198.63 */\n\t\t\tcase 'PtgFuncVar':\n\t\t\t\t/* f[1] = [argc, func] */\n\t\t\t\tvar argc = f[1][0], func = f[1][1];\n\t\t\t\tif(!argc) argc = 0;\n\t\t\t\tvar args = stack.slice(-argc);\n\t\t\t\tstack.length -= argc;\n\t\t\t\tif(func === 'User') func = args.shift();\n\t\t\t\tstack.push(func + \"(\" + args.join(\",\") + \")\");\n\t\t\t\tbreak;\n\n\t\t\t/* 2.5.198.42 */\n\t\t\tcase 'PtgBool': stack.push(f[1] ? \"TRUE\" : \"FALSE\"); break;\n\t\t\t/* 2.5.198.66 */\n\t\t\tcase 'PtgInt': stack.push(f[1]); break;\n\t\t\t/* 2.5.198.79 TODO: precision? */\n\t\t\tcase 'PtgNum': stack.push(String(f[1])); break;\n\t\t\t/* 2.5.198.89 */\n\t\t\tcase 'PtgStr': stack.push('\"' + f[1] + '\"'); break;\n\t\t\t/* 2.5.198.57 */\n\t\t\tcase 'PtgErr': stack.push(f[1]); break;\n\t\t\t/* 2.5.198.27 TODO: fixed points */\n\t\t\tcase 'PtgArea':\n\t\t\t\ttype = f[1][0]; r = shift_range_xls(f[1][1], _range);\n\t\t\t\tstack.push(encode_range(r));\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.28 */\n\t\t\tcase 'PtgArea3d': // TODO: lots of stuff\n\t\t\t\ttype = f[1][0]; ixti = f[1][1]; r = f[1][2];\n\t\t\t\tstack.push(supbooks[1][ixti+1]+\"!\"+encode_range(r));\n\t\t\t\tbreak;\n\t\t\t/* 2.5.198.41 */\n\t\t\tcase 'PtgAttrSum':\n\t\t\t\tstack.push(\"SUM(\" + stack.pop() + \")\");\n\t\t\t\tbreak;\n\n\t\t/* Expression Prefixes */\n\t\t\t/* 2.5.198.37 */\n\t\t\tcase 'PtgAttrSemi': break;\n\n\t\t\t/* 2.5.97.60 TODO: do something different for revisions */\n\t\t\tcase 'PtgName':\n\t\t\t\t/* f[1] = type, 0, nameindex */\n\t\t\t\tnameidx = f[1][2];\n\t\t\t\tvar lbl = supbooks[0][nameidx];\n\t\t\t\tvar name = lbl.Name;\n\t\t\t\tif(name in XLSXFutureFunctions) name = XLSXFutureFunctions[name];\n\t\t\t\tstack.push(name);\n\t\t\t\tbreak;\n\n\t\t\t/* 2.5.97.61 TODO: do something different for revisions */\n\t\t\tcase 'PtgNameX':\n\t\t\t\t/* f[1] = type, ixti, nameindex */\n\t\t\t\tvar bookidx = f[1][1]; nameidx = f[1][2]; var externbook;\n\t\t\t\t/* TODO: Properly handle missing values */\n\t\t\t\tif(supbooks[bookidx+1]) externbook = supbooks[bookidx+1][nameidx];\n\t\t\t\telse if(supbooks[bookidx-1]) externbook = supbooks[bookidx-1][nameidx];\n\t\t\t\tif(!externbook) externbook = {body: \"??NAMEX??\"};\n\t\t\t\tstack.push(externbook.body);\n\t\t\t\tbreak;\n\n\t\t/* 2.2.2.4 Display Tokens */\n\t\t\t/* 2.5.198.80 */\n\t\t\tcase 'PtgParen': stack.push('(' + stack.pop() + ')'); break;\n\n\t\t\t/* 2.5.198.86 */\n\t\t\tcase 'PtgRefErr': stack.push('#REF!'); break;\n\n\t\t/* */\n\t\t\t/* 2.5.198.58 TODO */\n\t\t\tcase 'PtgExp':\n\t\t\t\tc = {c:f[1][1],r:f[1][0]};\n\t\t\t\tvar q = {c: cell.c, r:cell.r};\n\t\t\t\tif(supbooks.sharedf[encode_cell(c)]) {\n\t\t\t\t\tvar parsedf = (supbooks.sharedf[encode_cell(c)]);\n\t\t\t\t\tstack.push(stringify_formula(parsedf, _range, q, supbooks, opts));\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tvar fnd = false;\n\t\t\t\t\tfor(e1=0;e1!=supbooks.arrayf.length; ++e1) {\n\t\t\t\t\t\t/* TODO: should be something like range_has */\n\t\t\t\t\t\te2 = supbooks.arrayf[e1];\n\t\t\t\t\t\tif(c.c < e2[0].s.c || c.c > e2[0].e.c) continue;\n\t\t\t\t\t\tif(c.r < e2[0].s.r || c.r > e2[0].e.r) continue;\n\t\t\t\t\t\tstack.push(stringify_formula(e2[1], _range, q, supbooks, opts));\n\t\t\t\t\t}\n\t\t\t\t\tif(!fnd) stack.push(f[1]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\t/* 2.5.198.32 TODO */\n\t\t\tcase 'PtgArray':\n\t\t\t\tstack.push(\"{\" + f[1].map(mapper).join(\";\") + \"}\");\n\t\t\t\tbreak;\n\n\t\t/* 2.2.2.5 Mem Tokens */\n\t\t\t/* 2.5.198.70 TODO: confirm this is a non-display */\n\t\t\tcase 'PtgMemArea':\n\t\t\t\t//stack.push(\"(\" + f[2].map(encode_range).join(\",\") + \")\");\n\t\t\t\tbreak;\n\n\t\t\t/* 2.5.198.38 TODO */\n\t\t\tcase 'PtgAttrSpace': break;\n\n\t\t\t/* 2.5.198.92 TODO */\n\t\t\tcase 'PtgTbl': break;\n\n\t\t\t/* 2.5.198.71 */\n\t\t\tcase 'PtgMemErr': break;\n\n\t\t\t/* 2.5.198.74 */\n\t\t\tcase 'PtgMissArg':\n\t\t\t\tstack.push(\"\");\n\t\t\t\tbreak;\n\n\t\t\t/* 2.5.198.29 TODO */\n\t\t\tcase 'PtgAreaErr': break;\n\n\t\t\t/* 2.5.198.31 TODO */\n\t\t\tcase 'PtgAreaN': stack.push(\"\"); break;\n\n\t\t\t/* 2.5.198.87 TODO */\n\t\t\tcase 'PtgRefErr3d': break;\n\n\t\t\t/* 2.5.198.72 TODO */\n\t\t\tcase 'PtgMemFunc': break;\n\n\t\t\tdefault: throw 'Unrecognized Formula Token: ' + f;\n\t\t}\n\t\t//console.log(\"::\",f, stack)\n\t}\n\t//console.log(\"--\",stack);\n\treturn stack[0];\n}\n\n/* [MS-XLSB] 2.5.97.4 CellParsedFormula TODO: use similar logic to js-xls */\nfunction parse_XLSBCellParsedFormula(data, length) {\n\tvar cce = data.read_shift(4);\n\treturn parsenoop(data, length-4);\n}\n/* [MS-XLS] 2.5.198.44 */\nvar PtgDataType = {\n\t0x1: \"REFERENCE\", // reference to range\n\t0x2: \"VALUE\", // single value\n\t0x3: \"ARRAY\" // array of values\n};\n\n/* [MS-XLS] 2.5.198.4 */\nvar Cetab = {\n\t0x0000: 'BEEP',\n\t0x0001: 'OPEN',\n\t0x0002: 'OPEN.LINKS',\n\t0x0003: 'CLOSE.ALL',\n\t0x0004: 'SAVE',\n\t0x0005: 'SAVE.AS',\n\t0x0006: 'FILE.DELETE',\n\t0x0007: 'PAGE.SETUP',\n\t0x0008: 'PRINT',\n\t0x0009: 'PRINTER.SETUP',\n\t0x000A: 'QUIT',\n\t0x000B: 'NEW.WINDOW',\n\t0x000C: 'ARRANGE.ALL',\n\t0x000D: 'WINDOW.SIZE',\n\t0x000E: 'WINDOW.MOVE',\n\t0x000F: 'FULL',\n\t0x0010: 'CLOSE',\n\t0x0011: 'RUN',\n\t0x0016: 'SET.PRINT.AREA',\n\t0x0017: 'SET.PRINT.TITLES',\n\t0x0018: 'SET.PAGE.BREAK',\n\t0x0019: 'REMOVE.PAGE.BREAK',\n\t0x001A: 'FONT',\n\t0x001B: 'DISPLAY',\n\t0x001C: 'PROTECT.DOCUMENT',\n\t0x001D: 'PRECISION',\n\t0x001E: 'A1.R1C1',\n\t0x001F: 'CALCULATE.NOW',\n\t0x0020: 'CALCULATION',\n\t0x0022: 'DATA.FIND',\n\t0x0023: 'EXTRACT',\n\t0x0024: 'DATA.DELETE',\n\t0x0025: 'SET.DATABASE',\n\t0x0026: 'SET.CRITERIA',\n\t0x0027: 'SORT',\n\t0x0028: 'DATA.SERIES',\n\t0x0029: 'TABLE',\n\t0x002A: 'FORMAT.NUMBER',\n\t0x002B: 'ALIGNMENT',\n\t0x002C: 'STYLE',\n\t0x002D: 'BORDER',\n\t0x002E: 'CELL.PROTECTION',\n\t0x002F: 'COLUMN.WIDTH',\n\t0x0030: 'UNDO',\n\t0x0031: 'CUT',\n\t0x0032: 'COPY',\n\t0x0033: 'PASTE',\n\t0x0034: 'CLEAR',\n\t0x0035: 'PASTE.SPECIAL',\n\t0x0036: 'EDIT.DELETE',\n\t0x0037: 'INSERT',\n\t0x0038: 'FILL.RIGHT',\n\t0x0039: 'FILL.DOWN',\n\t0x003D: 'DEFINE.NAME',\n\t0x003E: 'CREATE.NAMES',\n\t0x003F: 'FORMULA.GOTO',\n\t0x0040: 'FORMULA.FIND',\n\t0x0041: 'SELECT.LAST.CELL',\n\t0x0042: 'SHOW.ACTIVE.CELL',\n\t0x0043: 'GALLERY.AREA',\n\t0x0044: 'GALLERY.BAR',\n\t0x0045: 'GALLERY.COLUMN',\n\t0x0046: 'GALLERY.LINE',\n\t0x0047: 'GALLERY.PIE',\n\t0x0048: 'GALLERY.SCATTER',\n\t0x0049: 'COMBINATION',\n\t0x004A: 'PREFERRED',\n\t0x004B: 'ADD.OVERLAY',\n\t0x004C: 'GRIDLINES',\n\t0x004D: 'SET.PREFERRED',\n\t0x004E: 'AXES',\n\t0x004F: 'LEGEND',\n\t0x0050: 'ATTACH.TEXT',\n\t0x0051: 'ADD.ARROW',\n\t0x0052: 'SELECT.CHART',\n\t0x0053: 'SELECT.PLOT.AREA',\n\t0x0054: 'PATTERNS',\n\t0x0055: 'MAIN.CHART',\n\t0x0056: 'OVERLAY',\n\t0x0057: 'SCALE',\n\t0x0058: 'FORMAT.LEGEND',\n\t0x0059: 'FORMAT.TEXT',\n\t0x005A: 'EDIT.REPEAT',\n\t0x005B: 'PARSE',\n\t0x005C: 'JUSTIFY',\n\t0x005D: 'HIDE',\n\t0x005E: 'UNHIDE',\n\t0x005F: 'WORKSPACE',\n\t0x0060: 'FORMULA',\n\t0x0061: 'FORMULA.FILL',\n\t0x0062: 'FORMULA.ARRAY',\n\t0x0063: 'DATA.FIND.NEXT',\n\t0x0064: 'DATA.FIND.PREV',\n\t0x0065: 'FORMULA.FIND.NEXT',\n\t0x0066: 'FORMULA.FIND.PREV',\n\t0x0067: 'ACTIVATE',\n\t0x0068: 'ACTIVATE.NEXT',\n\t0x0069: 'ACTIVATE.PREV',\n\t0x006A: 'UNLOCKED.NEXT',\n\t0x006B: 'UNLOCKED.PREV',\n\t0x006C: 'COPY.PICTURE',\n\t0x006D: 'SELECT',\n\t0x006E: 'DELETE.NAME',\n\t0x006F: 'DELETE.FORMAT',\n\t0x0070: 'VLINE',\n\t0x0071: 'HLINE',\n\t0x0072: 'VPAGE',\n\t0x0073: 'HPAGE',\n\t0x0074: 'VSCROLL',\n\t0x0075: 'HSCROLL',\n\t0x0076: 'ALERT',\n\t0x0077: 'NEW',\n\t0x0078: 'CANCEL.COPY',\n\t0x0079: 'SHOW.CLIPBOARD',\n\t0x007A: 'MESSAGE',\n\t0x007C: 'PASTE.LINK',\n\t0x007D: 'APP.ACTIVATE',\n\t0x007E: 'DELETE.ARROW',\n\t0x007F: 'ROW.HEIGHT',\n\t0x0080: 'FORMAT.MOVE',\n\t0x0081: 'FORMAT.SIZE',\n\t0x0082: 'FORMULA.REPLACE',\n\t0x0083: 'SEND.KEYS',\n\t0x0084: 'SELECT.SPECIAL',\n\t0x0085: 'APPLY.NAMES',\n\t0x0086: 'REPLACE.FONT',\n\t0x0087: 'FREEZE.PANES',\n\t0x0088: 'SHOW.INFO',\n\t0x0089: 'SPLIT',\n\t0x008A: 'ON.WINDOW',\n\t0x008B: 'ON.DATA',\n\t0x008C: 'DISABLE.INPUT',\n\t0x008E: 'OUTLINE',\n\t0x008F: 'LIST.NAMES',\n\t0x0090: 'FILE.CLOSE',\n\t0x0091: 'SAVE.WORKBOOK',\n\t0x0092: 'DATA.FORM',\n\t0x0093: 'COPY.CHART',\n\t0x0094: 'ON.TIME',\n\t0x0095: 'WAIT',\n\t0x0096: 'FORMAT.FONT',\n\t0x0097: 'FILL.UP',\n\t0x0098: 'FILL.LEFT',\n\t0x0099: 'DELETE.OVERLAY',\n\t0x009B: 'SHORT.MENUS',\n\t0x009F: 'SET.UPDATE.STATUS',\n\t0x00A1: 'COLOR.PALETTE',\n\t0x00A2: 'DELETE.STYLE',\n\t0x00A3: 'WINDOW.RESTORE',\n\t0x00A4: 'WINDOW.MAXIMIZE',\n\t0x00A6: 'CHANGE.LINK',\n\t0x00A7: 'CALCULATE.DOCUMENT',\n\t0x00A8: 'ON.KEY',\n\t0x00A9: 'APP.RESTORE',\n\t0x00AA: 'APP.MOVE',\n\t0x00AB: 'APP.SIZE',\n\t0x00AC: 'APP.MINIMIZE',\n\t0x00AD: 'APP.MAXIMIZE',\n\t0x00AE: 'BRING.TO.FRONT',\n\t0x00AF: 'SEND.TO.BACK',\n\t0x00B9: 'MAIN.CHART.TYPE',\n\t0x00BA: 'OVERLAY.CHART.TYPE',\n\t0x00BB: 'SELECT.END',\n\t0x00BC: 'OPEN.MAIL',\n\t0x00BD: 'SEND.MAIL',\n\t0x00BE: 'STANDARD.FONT',\n\t0x00BF: 'CONSOLIDATE',\n\t0x00C0: 'SORT.SPECIAL',\n\t0x00C1: 'GALLERY.3D.AREA',\n\t0x00C2: 'GALLERY.3D.COLUMN',\n\t0x00C3: 'GALLERY.3D.LINE',\n\t0x00C4: 'GALLERY.3D.PIE',\n\t0x00C5: 'VIEW.3D',\n\t0x00C6: 'GOAL.SEEK',\n\t0x00C7: 'WORKGROUP',\n\t0x00C8: 'FILL.GROUP',\n\t0x00C9: 'UPDATE.LINK',\n\t0x00CA: 'PROMOTE',\n\t0x00CB: 'DEMOTE',\n\t0x00CC: 'SHOW.DETAIL',\n\t0x00CE: 'UNGROUP',\n\t0x00CF: 'OBJECT.PROPERTIES',\n\t0x00D0: 'SAVE.NEW.OBJECT',\n\t0x00D1: 'SHARE',\n\t0x00D2: 'SHARE.NAME',\n\t0x00D3: 'DUPLICATE',\n\t0x00D4: 'APPLY.STYLE',\n\t0x00D5: 'ASSIGN.TO.OBJECT',\n\t0x00D6: 'OBJECT.PROTECTION',\n\t0x00D7: 'HIDE.OBJECT',\n\t0x00D8: 'SET.EXTRACT',\n\t0x00D9: 'CREATE.PUBLISHER',\n\t0x00DA: 'SUBSCRIBE.TO',\n\t0x00DB: 'ATTRIBUTES',\n\t0x00DC: 'SHOW.TOOLBAR',\n\t0x00DE: 'PRINT.PREVIEW',\n\t0x00DF: 'EDIT.COLOR',\n\t0x00E0: 'SHOW.LEVELS',\n\t0x00E1: 'FORMAT.MAIN',\n\t0x00E2: 'FORMAT.OVERLAY',\n\t0x00E3: 'ON.RECALC',\n\t0x00E4: 'EDIT.SERIES',\n\t0x00E5: 'DEFINE.STYLE',\n\t0x00F0: 'LINE.PRINT',\n\t0x00F3: 'ENTER.DATA',\n\t0x00F9: 'GALLERY.RADAR',\n\t0x00FA: 'MERGE.STYLES',\n\t0x00FB: 'EDITION.OPTIONS',\n\t0x00FC: 'PASTE.PICTURE',\n\t0x00FD: 'PASTE.PICTURE.LINK',\n\t0x00FE: 'SPELLING',\n\t0x0100: 'ZOOM',\n\t0x0103: 'INSERT.OBJECT',\n\t0x0104: 'WINDOW.MINIMIZE',\n\t0x0109: 'SOUND.NOTE',\n\t0x010A: 'SOUND.PLAY',\n\t0x010B: 'FORMAT.SHAPE',\n\t0x010C: 'EXTEND.POLYGON',\n\t0x010D: 'FORMAT.AUTO',\n\t0x0110: 'GALLERY.3D.BAR',\n\t0x0111: 'GALLERY.3D.SURFACE',\n\t0x0112: 'FILL.AUTO',\n\t0x0114: 'CUSTOMIZE.TOOLBAR',\n\t0x0115: 'ADD.TOOL',\n\t0x0116: 'EDIT.OBJECT',\n\t0x0117: 'ON.DOUBLECLICK',\n\t0x0118: 'ON.ENTRY',\n\t0x0119: 'WORKBOOK.ADD',\n\t0x011A: 'WORKBOOK.MOVE',\n\t0x011B: 'WORKBOOK.COPY',\n\t0x011C: 'WORKBOOK.OPTIONS',\n\t0x011D: 'SAVE.WORKSPACE',\n\t0x0120: 'CHART.WIZARD',\n\t0x0121: 'DELETE.TOOL',\n\t0x0122: 'MOVE.TOOL',\n\t0x0123: 'WORKBOOK.SELECT',\n\t0x0124: 'WORKBOOK.ACTIVATE',\n\t0x0125: 'ASSIGN.TO.TOOL',\n\t0x0127: 'COPY.TOOL',\n\t0x0128: 'RESET.TOOL',\n\t0x0129: 'CONSTRAIN.NUMERIC',\n\t0x012A: 'PASTE.TOOL',\n\t0x012E: 'WORKBOOK.NEW',\n\t0x0131: 'SCENARIO.CELLS',\n\t0x0132: 'SCENARIO.DELETE',\n\t0x0133: 'SCENARIO.ADD',\n\t0x0134: 'SCENARIO.EDIT',\n\t0x0135: 'SCENARIO.SHOW',\n\t0x0136: 'SCENARIO.SHOW.NEXT',\n\t0x0137: 'SCENARIO.SUMMARY',\n\t0x0138: 'PIVOT.TABLE.WIZARD',\n\t0x0139: 'PIVOT.FIELD.PROPERTIES',\n\t0x013A: 'PIVOT.FIELD',\n\t0x013B: 'PIVOT.ITEM',\n\t0x013C: 'PIVOT.ADD.FIELDS',\n\t0x013E: 'OPTIONS.CALCULATION',\n\t0x013F: 'OPTIONS.EDIT',\n\t0x0140: 'OPTIONS.VIEW',\n\t0x0141: 'ADDIN.MANAGER',\n\t0x0142: 'MENU.EDITOR',\n\t0x0143: 'ATTACH.TOOLBARS',\n\t0x0144: 'VBAActivate',\n\t0x0145: 'OPTIONS.CHART',\n\t0x0148: 'VBA.INSERT.FILE',\n\t0x014A: 'VBA.PROCEDURE.DEFINITION',\n\t0x0150: 'ROUTING.SLIP',\n\t0x0152: 'ROUTE.DOCUMENT',\n\t0x0153: 'MAIL.LOGON',\n\t0x0156: 'INSERT.PICTURE',\n\t0x0157: 'EDIT.TOOL',\n\t0x0158: 'GALLERY.DOUGHNUT',\n\t0x015E: 'CHART.TREND',\n\t0x0160: 'PIVOT.ITEM.PROPERTIES',\n\t0x0162: 'WORKBOOK.INSERT',\n\t0x0163: 'OPTIONS.TRANSITION',\n\t0x0164: 'OPTIONS.GENERAL',\n\t0x0172: 'FILTER.ADVANCED',\n\t0x0175: 'MAIL.ADD.MAILER',\n\t0x0176: 'MAIL.DELETE.MAILER',\n\t0x0177: 'MAIL.REPLY',\n\t0x0178: 'MAIL.REPLY.ALL',\n\t0x0179: 'MAIL.FORWARD',\n\t0x017A: 'MAIL.NEXT.LETTER',\n\t0x017B: 'DATA.LABEL',\n\t0x017C: 'INSERT.TITLE',\n\t0x017D: 'FONT.PROPERTIES',\n\t0x017E: 'MACRO.OPTIONS',\n\t0x017F: 'WORKBOOK.HIDE',\n\t0x0180: 'WORKBOOK.UNHIDE',\n\t0x0181: 'WORKBOOK.DELETE',\n\t0x0182: 'WORKBOOK.NAME',\n\t0x0184: 'GALLERY.CUSTOM',\n\t0x0186: 'ADD.CHART.AUTOFORMAT',\n\t0x0187: 'DELETE.CHART.AUTOFORMAT',\n\t0x0188: 'CHART.ADD.DATA',\n\t0x0189: 'AUTO.OUTLINE',\n\t0x018A: 'TAB.ORDER',\n\t0x018B: 'SHOW.DIALOG',\n\t0x018C: 'SELECT.ALL',\n\t0x018D: 'UNGROUP.SHEETS',\n\t0x018E: 'SUBTOTAL.CREATE',\n\t0x018F: 'SUBTOTAL.REMOVE',\n\t0x0190: 'RENAME.OBJECT',\n\t0x019C: 'WORKBOOK.SCROLL',\n\t0x019D: 'WORKBOOK.NEXT',\n\t0x019E: 'WORKBOOK.PREV',\n\t0x019F: 'WORKBOOK.TAB.SPLIT',\n\t0x01A0: 'FULL.SCREEN',\n\t0x01A1: 'WORKBOOK.PROTECT',\n\t0x01A4: 'SCROLLBAR.PROPERTIES',\n\t0x01A5: 'PIVOT.SHOW.PAGES',\n\t0x01A6: 'TEXT.TO.COLUMNS',\n\t0x01A7: 'FORMAT.CHARTTYPE',\n\t0x01A8: 'LINK.FORMAT',\n\t0x01A9: 'TRACER.DISPLAY',\n\t0x01AE: 'TRACER.NAVIGATE',\n\t0x01AF: 'TRACER.CLEAR',\n\t0x01B0: 'TRACER.ERROR',\n\t0x01B1: 'PIVOT.FIELD.GROUP',\n\t0x01B2: 'PIVOT.FIELD.UNGROUP',\n\t0x01B3: 'CHECKBOX.PROPERTIES',\n\t0x01B4: 'LABEL.PROPERTIES',\n\t0x01B5: 'LISTBOX.PROPERTIES',\n\t0x01B6: 'EDITBOX.PROPERTIES',\n\t0x01B7: 'PIVOT.REFRESH',\n\t0x01B8: 'LINK.COMBO',\n\t0x01B9: 'OPEN.TEXT',\n\t0x01BA: 'HIDE.DIALOG',\n\t0x01BB: 'SET.DIALOG.FOCUS',\n\t0x01BC: 'ENABLE.OBJECT',\n\t0x01BD: 'PUSHBUTTON.PROPERTIES',\n\t0x01BE: 'SET.DIALOG.DEFAULT',\n\t0x01BF: 'FILTER',\n\t0x01C0: 'FILTER.SHOW.ALL',\n\t0x01C1: 'CLEAR.OUTLINE',\n\t0x01C2: 'FUNCTION.WIZARD',\n\t0x01C3: 'ADD.LIST.ITEM',\n\t0x01C4: 'SET.LIST.ITEM',\n\t0x01C5: 'REMOVE.LIST.ITEM',\n\t0x01C6: 'SELECT.LIST.ITEM',\n\t0x01C7: 'SET.CONTROL.VALUE',\n\t0x01C8: 'SAVE.COPY.AS',\n\t0x01CA: 'OPTIONS.LISTS.ADD',\n\t0x01CB: 'OPTIONS.LISTS.DELETE',\n\t0x01CC: 'SERIES.AXES',\n\t0x01CD: 'SERIES.X',\n\t0x01CE: 'SERIES.Y',\n\t0x01CF: 'ERRORBAR.X',\n\t0x01D0: 'ERRORBAR.Y',\n\t0x01D1: 'FORMAT.CHART',\n\t0x01D2: 'SERIES.ORDER',\n\t0x01D3: 'MAIL.LOGOFF',\n\t0x01D4: 'CLEAR.ROUTING.SLIP',\n\t0x01D5: 'APP.ACTIVATE.MICROSOFT',\n\t0x01D6: 'MAIL.EDIT.MAILER',\n\t0x01D7: 'ON.SHEET',\n\t0x01D8: 'STANDARD.WIDTH',\n\t0x01D9: 'SCENARIO.MERGE',\n\t0x01DA: 'SUMMARY.INFO',\n\t0x01DB: 'FIND.FILE',\n\t0x01DC: 'ACTIVE.CELL.FONT',\n\t0x01DD: 'ENABLE.TIPWIZARD',\n\t0x01DE: 'VBA.MAKE.ADDIN',\n\t0x01E0: 'INSERTDATATABLE',\n\t0x01E1: 'WORKGROUP.OPTIONS',\n\t0x01E2: 'MAIL.SEND.MAILER',\n\t0x01E5: 'AUTOCORRECT',\n\t0x01E9: 'POST.DOCUMENT',\n\t0x01EB: 'PICKLIST',\n\t0x01ED: 'VIEW.SHOW',\n\t0x01EE: 'VIEW.DEFINE',\n\t0x01EF: 'VIEW.DELETE',\n\t0x01FD: 'SHEET.BACKGROUND',\n\t0x01FE: 'INSERT.MAP.OBJECT',\n\t0x01FF: 'OPTIONS.MENONO',\n\t0x0205: 'MSOCHECKS',\n\t0x0206: 'NORMAL',\n\t0x0207: 'LAYOUT',\n\t0x0208: 'RM.PRINT.AREA',\n\t0x0209: 'CLEAR.PRINT.AREA',\n\t0x020A: 'ADD.PRINT.AREA',\n\t0x020B: 'MOVE.BRK',\n\t0x0221: 'HIDECURR.NOTE',\n\t0x0222: 'HIDEALL.NOTES',\n\t0x0223: 'DELETE.NOTE',\n\t0x0224: 'TRAVERSE.NOTES',\n\t0x0225: 'ACTIVATE.NOTES',\n\t0x026C: 'PROTECT.REVISIONS',\n\t0x026D: 'UNPROTECT.REVISIONS',\n\t0x0287: 'OPTIONS.ME',\n\t0x028D: 'WEB.PUBLISH',\n\t0x029B: 'NEWWEBQUERY',\n\t0x02A1: 'PIVOT.TABLE.CHART',\n\t0x02F1: 'OPTIONS.SAVE',\n\t0x02F3: 'OPTIONS.SPELL',\n\t0x0328: 'HIDEALL.INKANNOTS'\n};\n\n/* [MS-XLS] 2.5.198.17 */\nvar Ftab = {\n\t0x0000: 'COUNT',\n\t0x0001: 'IF',\n\t0x0002: 'ISNA',\n\t0x0003: 'ISERROR',\n\t0x0004: 'SUM',\n\t0x0005: 'AVERAGE',\n\t0x0006: 'MIN',\n\t0x0007: 'MAX',\n\t0x0008: 'ROW',\n\t0x0009: 'COLUMN',\n\t0x000A: 'NA',\n\t0x000B: 'NPV',\n\t0x000C: 'STDEV',\n\t0x000D: 'DOLLAR',\n\t0x000E: 'FIXED',\n\t0x000F: 'SIN',\n\t0x0010: 'COS',\n\t0x0011: 'TAN',\n\t0x0012: 'ATAN',\n\t0x0013: 'PI',\n\t0x0014: 'SQRT',\n\t0x0015: 'EXP',\n\t0x0016: 'LN',\n\t0x0017: 'LOG10',\n\t0x0018: 'ABS',\n\t0x0019: 'INT',\n\t0x001A: 'SIGN',\n\t0x001B: 'ROUND',\n\t0x001C: 'LOOKUP',\n\t0x001D: 'INDEX',\n\t0x001E: 'REPT',\n\t0x001F: 'MID',\n\t0x0020: 'LEN',\n\t0x0021: 'VALUE',\n\t0x0022: 'TRUE',\n\t0x0023: 'FALSE',\n\t0x0024: 'AND',\n\t0x0025: 'OR',\n\t0x0026: 'NOT',\n\t0x0027: 'MOD',\n\t0x0028: 'DCOUNT',\n\t0x0029: 'DSUM',\n\t0x002A: 'DAVERAGE',\n\t0x002B: 'DMIN',\n\t0x002C: 'DMAX',\n\t0x002D: 'DSTDEV',\n\t0x002E: 'VAR',\n\t0x002F: 'DVAR',\n\t0x0030: 'TEXT',\n\t0x0031: 'LINEST',\n\t0x0032: 'TREND',\n\t0x0033: 'LOGEST',\n\t0x0034: 'GROWTH',\n\t0x0035: 'GOTO',\n\t0x0036: 'HALT',\n\t0x0037: 'RETURN',\n\t0x0038: 'PV',\n\t0x0039: 'FV',\n\t0x003A: 'NPER',\n\t0x003B: 'PMT',\n\t0x003C: 'RATE',\n\t0x003D: 'MIRR',\n\t0x003E: 'IRR',\n\t0x003F: 'RAND',\n\t0x0040: 'MATCH',\n\t0x0041: 'DATE',\n\t0x0042: 'TIME',\n\t0x0043: 'DAY',\n\t0x0044: 'MONTH',\n\t0x0045: 'YEAR',\n\t0x0046: 'WEEKDAY',\n\t0x0047: 'HOUR',\n\t0x0048: 'MINUTE',\n\t0x0049: 'SECOND',\n\t0x004A: 'NOW',\n\t0x004B: 'AREAS',\n\t0x004C: 'ROWS',\n\t0x004D: 'COLUMNS',\n\t0x004E: 'OFFSET',\n\t0x004F: 'ABSREF',\n\t0x0050: 'RELREF',\n\t0x0051: 'ARGUMENT',\n\t0x0052: 'SEARCH',\n\t0x0053: 'TRANSPOSE',\n\t0x0054: 'ERROR',\n\t0x0055: 'STEP',\n\t0x0056: 'TYPE',\n\t0x0057: 'ECHO',\n\t0x0058: 'SET.NAME',\n\t0x0059: 'CALLER',\n\t0x005A: 'DEREF',\n\t0x005B: 'WINDOWS',\n\t0x005C: 'SERIES',\n\t0x005D: 'DOCUMENTS',\n\t0x005E: 'ACTIVE.CELL',\n\t0x005F: 'SELECTION',\n\t0x0060: 'RESULT',\n\t0x0061: 'ATAN2',\n\t0x0062: 'ASIN',\n\t0x0063: 'ACOS',\n\t0x0064: 'CHOOSE',\n\t0x0065: 'HLOOKUP',\n\t0x0066: 'VLOOKUP',\n\t0x0067: 'LINKS',\n\t0x0068: 'INPUT',\n\t0x0069: 'ISREF',\n\t0x006A: 'GET.FORMULA',\n\t0x006B: 'GET.NAME',\n\t0x006C: 'SET.VALUE',\n\t0x006D: 'LOG',\n\t0x006E: 'EXEC',\n\t0x006F: 'CHAR',\n\t0x0070: 'LOWER',\n\t0x0071: 'UPPER',\n\t0x0072: 'PROPER',\n\t0x0073: 'LEFT',\n\t0x0074: 'RIGHT',\n\t0x0075: 'EXACT',\n\t0x0076: 'TRIM',\n\t0x0077: 'REPLACE',\n\t0x0078: 'SUBSTITUTE',\n\t0x0079: 'CODE',\n\t0x007A: 'NAMES',\n\t0x007B: 'DIRECTORY',\n\t0x007C: 'FIND',\n\t0x007D: 'CELL',\n\t0x007E: 'ISERR',\n\t0x007F: 'ISTEXT',\n\t0x0080: 'ISNUMBER',\n\t0x0081: 'ISBLANK',\n\t0x0082: 'T',\n\t0x0083: 'N',\n\t0x0084: 'FOPEN',\n\t0x0085: 'FCLOSE',\n\t0x0086: 'FSIZE',\n\t0x0087: 'FREADLN',\n\t0x0088: 'FREAD',\n\t0x0089: 'FWRITELN',\n\t0x008A: 'FWRITE',\n\t0x008B: 'FPOS',\n\t0x008C: 'DATEVALUE',\n\t0x008D: 'TIMEVALUE',\n\t0x008E: 'SLN',\n\t0x008F: 'SYD',\n\t0x0090: 'DDB',\n\t0x0091: 'GET.DEF',\n\t0x0092: 'REFTEXT',\n\t0x0093: 'TEXTREF',\n\t0x0094: 'INDIRECT',\n\t0x0095: 'REGISTER',\n\t0x0096: 'CALL',\n\t0x0097: 'ADD.BAR',\n\t0x0098: 'ADD.MENU',\n\t0x0099: 'ADD.COMMAND',\n\t0x009A: 'ENABLE.COMMAND',\n\t0x009B: 'CHECK.COMMAND',\n\t0x009C: 'RENAME.COMMAND',\n\t0x009D: 'SHOW.BAR',\n\t0x009E: 'DELETE.MENU',\n\t0x009F: 'DELETE.COMMAND',\n\t0x00A0: 'GET.CHART.ITEM',\n\t0x00A1: 'DIALOG.BOX',\n\t0x00A2: 'CLEAN',\n\t0x00A3: 'MDETERM',\n\t0x00A4: 'MINVERSE',\n\t0x00A5: 'MMULT',\n\t0x00A6: 'FILES',\n\t0x00A7: 'IPMT',\n\t0x00A8: 'PPMT',\n\t0x00A9: 'COUNTA',\n\t0x00AA: 'CANCEL.KEY',\n\t0x00AB: 'FOR',\n\t0x00AC: 'WHILE',\n\t0x00AD: 'BREAK',\n\t0x00AE: 'NEXT',\n\t0x00AF: 'INITIATE',\n\t0x00B0: 'REQUEST',\n\t0x00B1: 'POKE',\n\t0x00B2: 'EXECUTE',\n\t0x00B3: 'TERMINATE',\n\t0x00B4: 'RESTART',\n\t0x00B5: 'HELP',\n\t0x00B6: 'GET.BAR',\n\t0x00B7: 'PRODUCT',\n\t0x00B8: 'FACT',\n\t0x00B9: 'GET.CELL',\n\t0x00BA: 'GET.WORKSPACE',\n\t0x00BB: 'GET.WINDOW',\n\t0x00BC: 'GET.DOCUMENT',\n\t0x00BD: 'DPRODUCT',\n\t0x00BE: 'ISNONTEXT',\n\t0x00BF: 'GET.NOTE',\n\t0x00C0: 'NOTE',\n\t0x00C1: 'STDEVP',\n\t0x00C2: 'VARP',\n\t0x00C3: 'DSTDEVP',\n\t0x00C4: 'DVARP',\n\t0x00C5: 'TRUNC',\n\t0x00C6: 'ISLOGICAL',\n\t0x00C7: 'DCOUNTA',\n\t0x00C8: 'DELETE.BAR',\n\t0x00C9: 'UNREGISTER',\n\t0x00CC: 'USDOLLAR',\n\t0x00CD: 'FINDB',\n\t0x00CE: 'SEARCHB',\n\t0x00CF: 'REPLACEB',\n\t0x00D0: 'LEFTB',\n\t0x00D1: 'RIGHTB',\n\t0x00D2: 'MIDB',\n\t0x00D3: 'LENB',\n\t0x00D4: 'ROUNDUP',\n\t0x00D5: 'ROUNDDOWN',\n\t0x00D6: 'ASC',\n\t0x00D7: 'DBCS',\n\t0x00D8: 'RANK',\n\t0x00DB: 'ADDRESS',\n\t0x00DC: 'DAYS360',\n\t0x00DD: 'TODAY',\n\t0x00DE: 'VDB',\n\t0x00DF: 'ELSE',\n\t0x00E0: 'ELSE.IF',\n\t0x00E1: 'END.IF',\n\t0x00E2: 'FOR.CELL',\n\t0x00E3: 'MEDIAN',\n\t0x00E4: 'SUMPRODUCT',\n\t0x00E5: 'SINH',\n\t0x00E6: 'COSH',\n\t0x00E7: 'TANH',\n\t0x00E8: 'ASINH',\n\t0x00E9: 'ACOSH',\n\t0x00EA: 'ATANH',\n\t0x00EB: 'DGET',\n\t0x00EC: 'CREATE.OBJECT',\n\t0x00ED: 'VOLATILE',\n\t0x00EE: 'LAST.ERROR',\n\t0x00EF: 'CUSTOM.UNDO',\n\t0x00F0: 'CUSTOM.REPEAT',\n\t0x00F1: 'FORMULA.CONVERT',\n\t0x00F2: 'GET.LINK.INFO',\n\t0x00F3: 'TEXT.BOX',\n\t0x00F4: 'INFO',\n\t0x00F5: 'GROUP',\n\t0x00F6: 'GET.OBJECT',\n\t0x00F7: 'DB',\n\t0x00F8: 'PAUSE',\n\t0x00FB: 'RESUME',\n\t0x00FC: 'FREQUENCY',\n\t0x00FD: 'ADD.TOOLBAR',\n\t0x00FE: 'DELETE.TOOLBAR',\n\t0x00FF: 'User',\n\t0x0100: 'RESET.TOOLBAR',\n\t0x0101: 'EVALUATE',\n\t0x0102: 'GET.TOOLBAR',\n\t0x0103: 'GET.TOOL',\n\t0x0104: 'SPELLING.CHECK',\n\t0x0105: 'ERROR.TYPE',\n\t0x0106: 'APP.TITLE',\n\t0x0107: 'WINDOW.TITLE',\n\t0x0108: 'SAVE.TOOLBAR',\n\t0x0109: 'ENABLE.TOOL',\n\t0x010A: 'PRESS.TOOL',\n\t0x010B: 'REGISTER.ID',\n\t0x010C: 'GET.WORKBOOK',\n\t0x010D: 'AVEDEV',\n\t0x010E: 'BETADIST',\n\t0x010F: 'GAMMALN',\n\t0x0110: 'BETAINV',\n\t0x0111: 'BINOMDIST',\n\t0x0112: 'CHIDIST',\n\t0x0113: 'CHIINV',\n\t0x0114: 'COMBIN',\n\t0x0115: 'CONFIDENCE',\n\t0x0116: 'CRITBINOM',\n\t0x0117: 'EVEN',\n\t0x0118: 'EXPONDIST',\n\t0x0119: 'FDIST',\n\t0x011A: 'FINV',\n\t0x011B: 'FISHER',\n\t0x011C: 'FISHERINV',\n\t0x011D: 'FLOOR',\n\t0x011E: 'GAMMADIST',\n\t0x011F: 'GAMMAINV',\n\t0x0120: 'CEILING',\n\t0x0121: 'HYPGEOMDIST',\n\t0x0122: 'LOGNORMDIST',\n\t0x0123: 'LOGINV',\n\t0x0124: 'NEGBINOMDIST',\n\t0x0125: 'NORMDIST',\n\t0x0126: 'NORMSDIST',\n\t0x0127: 'NORMINV',\n\t0x0128: 'NORMSINV',\n\t0x0129: 'STANDARDIZE',\n\t0x012A: 'ODD',\n\t0x012B: 'PERMUT',\n\t0x012C: 'POISSON',\n\t0x012D: 'TDIST',\n\t0x012E: 'WEIBULL',\n\t0x012F: 'SUMXMY2',\n\t0x0130: 'SUMX2MY2',\n\t0x0131: 'SUMX2PY2',\n\t0x0132: 'CHITEST',\n\t0x0133: 'CORREL',\n\t0x0134: 'COVAR',\n\t0x0135: 'FORECAST',\n\t0x0136: 'FTEST',\n\t0x0137: 'INTERCEPT',\n\t0x0138: 'PEARSON',\n\t0x0139: 'RSQ',\n\t0x013A: 'STEYX',\n\t0x013B: 'SLOPE',\n\t0x013C: 'TTEST',\n\t0x013D: 'PROB',\n\t0x013E: 'DEVSQ',\n\t0x013F: 'GEOMEAN',\n\t0x0140: 'HARMEAN',\n\t0x0141: 'SUMSQ',\n\t0x0142: 'KURT',\n\t0x0143: 'SKEW',\n\t0x0144: 'ZTEST',\n\t0x0145: 'LARGE',\n\t0x0146: 'SMALL',\n\t0x0147: 'QUARTILE',\n\t0x0148: 'PERCENTILE',\n\t0x0149: 'PERCENTRANK',\n\t0x014A: 'MODE',\n\t0x014B: 'TRIMMEAN',\n\t0x014C: 'TINV',\n\t0x014E: 'MOVIE.COMMAND',\n\t0x014F: 'GET.MOVIE',\n\t0x0150: 'CONCATENATE',\n\t0x0151: 'POWER',\n\t0x0152: 'PIVOT.ADD.DATA',\n\t0x0153: 'GET.PIVOT.TABLE',\n\t0x0154: 'GET.PIVOT.FIELD',\n\t0x0155: 'GET.PIVOT.ITEM',\n\t0x0156: 'RADIANS',\n\t0x0157: 'DEGREES',\n\t0x0158: 'SUBTOTAL',\n\t0x0159: 'SUMIF',\n\t0x015A: 'COUNTIF',\n\t0x015B: 'COUNTBLANK',\n\t0x015C: 'SCENARIO.GET',\n\t0x015D: 'OPTIONS.LISTS.GET',\n\t0x015E: 'ISPMT',\n\t0x015F: 'DATEDIF',\n\t0x0160: 'DATESTRING',\n\t0x0161: 'NUMBERSTRING',\n\t0x0162: 'ROMAN',\n\t0x0163: 'OPEN.DIALOG',\n\t0x0164: 'SAVE.DIALOG',\n\t0x0165: 'VIEW.GET',\n\t0x0166: 'GETPIVOTDATA',\n\t0x0167: 'HYPERLINK',\n\t0x0168: 'PHONETIC',\n\t0x0169: 'AVERAGEA',\n\t0x016A: 'MAXA',\n\t0x016B: 'MINA',\n\t0x016C: 'STDEVPA',\n\t0x016D: 'VARPA',\n\t0x016E: 'STDEVA',\n\t0x016F: 'VARA',\n\t0x0170: 'BAHTTEXT',\n\t0x0171: 'THAIDAYOFWEEK',\n\t0x0172: 'THAIDIGIT',\n\t0x0173: 'THAIMONTHOFYEAR',\n\t0x0174: 'THAINUMSOUND',\n\t0x0175: 'THAINUMSTRING',\n\t0x0176: 'THAISTRINGLENGTH',\n\t0x0177: 'ISTHAIDIGIT',\n\t0x0178: 'ROUNDBAHTDOWN',\n\t0x0179: 'ROUNDBAHTUP',\n\t0x017A: 'THAIYEAR',\n\t0x017B: 'RTD'\n};\nvar FtabArgc = {\n\t0x0002: 1, /* ISNA */\n\t0x0003: 1, /* ISERROR */\n\t0x000F: 1, /* SIN */\n\t0x0010: 1, /* COS */\n\t0x0011: 1, /* TAN */\n\t0x0012: 1, /* ATAN */\n\t0x0014: 1, /* SQRT */\n\t0x0015: 1, /* EXP */\n\t0x0016: 1, /* LN */\n\t0x0017: 1, /* LOG10 */\n\t0x0018: 1, /* ABS */\n\t0x0019: 1, /* INT */\n\t0x001A: 1, /* SIGN */\n\t0x001B: 2, /* ROUND */\n\t0x001E: 2, /* REPT */\n\t0x001F: 3, /* MID */\n\t0x0020: 1, /* LEN */\n\t0x0021: 1, /* VALUE */\n\t0x0026: 1, /* NOT */\n\t0x0027: 2, /* MOD */\n\t0x0028: 3, /* DCOUNT */\n\t0x0029: 3, /* DSUM */\n\t0x002A: 3, /* DAVERAGE */\n\t0x002B: 3, /* DMIN */\n\t0x002C: 3, /* DMAX */\n\t0x002D: 3, /* DSTDEV */\n\t0x002F: 3, /* DVAR */\n\t0x0030: 2, /* TEXT */\n\t0x0035: 1, /* GOTO */\n\t0x003D: 3, /* MIRR */\n\t0x0041: 3, /* DATE */\n\t0x0042: 3, /* TIME */\n\t0x0043: 1, /* DAY */\n\t0x0044: 1, /* MONTH */\n\t0x0045: 1, /* YEAR */\n\t0x0047: 1, /* HOUR */\n\t0x0048: 1, /* MINUTE */\n\t0x0049: 1, /* SECOND */\n\t0x004B: 1, /* AREAS */\n\t0x004C: 1, /* ROWS */\n\t0x004D: 1, /* COLUMNS */\n\t0x004F: 2, /* ABSREF */\n\t0x0050: 2, /* RELREF */\n\t0x0053: 1, /* TRANSPOSE */\n\t0x0056: 1, /* TYPE */\n\t0x005A: 1, /* DEREF */\n\t0x0061: 2, /* ATAN2 */\n\t0x0062: 1, /* ASIN */\n\t0x0063: 1, /* ACOS */\n\t0x0069: 1, /* ISREF */\n\t0x006F: 1, /* CHAR */\n\t0x0070: 1, /* LOWER */\n\t0x0071: 1, /* UPPER */\n\t0x0072: 1, /* PROPER */\n\t0x0075: 2, /* EXACT */\n\t0x0076: 1, /* TRIM */\n\t0x0077: 4, /* REPLACE */\n\t0x0079: 1, /* CODE */\n\t0x007E: 1, /* ISERR */\n\t0x007F: 1, /* ISTEXT */\n\t0x0080: 1, /* ISNUMBER */\n\t0x0081: 1, /* ISBLANK */\n\t0x0082: 1, /* T */\n\t0x0083: 1, /* N */\n\t0x0085: 1, /* FCLOSE */\n\t0x0086: 1, /* FSIZE */\n\t0x0087: 1, /* FREADLN */\n\t0x0088: 2, /* FREAD */\n\t0x0089: 2, /* FWRITELN */\n\t0x008A: 2, /* FWRITE */\n\t0x008C: 1, /* DATEVALUE */\n\t0x008D: 1, /* TIMEVALUE */\n\t0x008E: 3, /* SLN */\n\t0x008F: 4, /* SYD */\n\t0x00A2: 1, /* CLEAN */\n\t0x00A3: 1, /* MDETERM */\n\t0x00A4: 1, /* MINVERSE */\n\t0x00A5: 2, /* MMULT */\n\t0x00AC: 1, /* WHILE */\n\t0x00AF: 2, /* INITIATE */\n\t0x00B0: 2, /* REQUEST */\n\t0x00B1: 3, /* POKE */\n\t0x00B2: 2, /* EXECUTE */\n\t0x00B3: 1, /* TERMINATE */\n\t0x00B8: 1, /* FACT */\n\t0x00BD: 3, /* DPRODUCT */\n\t0x00BE: 1, /* ISNONTEXT */\n\t0x00C3: 3, /* DSTDEVP */\n\t0x00C4: 3, /* DVARP */\n\t0x00C6: 1, /* ISLOGICAL */\n\t0x00C7: 3, /* DCOUNTA */\n\t0x00C9: 1, /* UNREGISTER */\n\t0x00CF: 4, /* REPLACEB */\n\t0x00D2: 3, /* MIDB */\n\t0x00D3: 1, /* LENB */\n\t0x00D4: 2, /* ROUNDUP */\n\t0x00D5: 2, /* ROUNDDOWN */\n\t0x00D6: 1, /* ASC */\n\t0x00D7: 1, /* DBCS */\n\t0x00E5: 1, /* SINH */\n\t0x00E6: 1, /* COSH */\n\t0x00E7: 1, /* TANH */\n\t0x00E8: 1, /* ASINH */\n\t0x00E9: 1, /* ACOSH */\n\t0x00EA: 1, /* ATANH */\n\t0x00EB: 3, /* DGET */\n\t0x00F4: 1, /* INFO */\n\t0x00FC: 2, /* FREQUENCY */\n\t0x0101: 1, /* EVALUATE */\n\t0x0105: 1, /* ERROR.TYPE */\n\t0x010F: 1, /* GAMMALN */\n\t0x0111: 4, /* BINOMDIST */\n\t0x0112: 2, /* CHIDIST */\n\t0x0113: 2, /* CHIINV */\n\t0x0114: 2, /* COMBIN */\n\t0x0115: 3, /* CONFIDENCE */\n\t0x0116: 3, /* CRITBINOM */\n\t0x0117: 1, /* EVEN */\n\t0x0118: 3, /* EXPONDIST */\n\t0x0119: 3, /* FDIST */\n\t0x011A: 3, /* FINV */\n\t0x011B: 1, /* FISHER */\n\t0x011C: 1, /* FISHERINV */\n\t0x011D: 2, /* FLOOR */\n\t0x011E: 4, /* GAMMADIST */\n\t0x011F: 3, /* GAMMAINV */\n\t0x0120: 2, /* CEILING */\n\t0x0121: 4, /* HYPGEOMDIST */\n\t0x0122: 3, /* LOGNORMDIST */\n\t0x0123: 3, /* LOGINV */\n\t0x0124: 3, /* NEGBINOMDIST */\n\t0x0125: 4, /* NORMDIST */\n\t0x0126: 1, /* NORMSDIST */\n\t0x0127: 3, /* NORMINV */\n\t0x0128: 1, /* NORMSINV */\n\t0x0129: 3, /* STANDARDIZE */\n\t0x012A: 1, /* ODD */\n\t0x012B: 2, /* PERMUT */\n\t0x012C: 3, /* POISSON */\n\t0x012D: 3, /* TDIST */\n\t0x012E: 4, /* WEIBULL */\n\t0x012F: 2, /* SUMXMY2 */\n\t0x0130: 2, /* SUMX2MY2 */\n\t0x0131: 2, /* SUMX2PY2 */\n\t0x0132: 2, /* CHITEST */\n\t0x0133: 2, /* CORREL */\n\t0x0134: 2, /* COVAR */\n\t0x0135: 3, /* FORECAST */\n\t0x0136: 2, /* FTEST */\n\t0x0137: 2, /* INTERCEPT */\n\t0x0138: 2, /* PEARSON */\n\t0x0139: 2, /* RSQ */\n\t0x013A: 2, /* STEYX */\n\t0x013B: 2, /* SLOPE */\n\t0x013C: 4, /* TTEST */\n\t0x0145: 2, /* LARGE */\n\t0x0146: 2, /* SMALL */\n\t0x0147: 2, /* QUARTILE */\n\t0x0148: 2, /* PERCENTILE */\n\t0x014B: 2, /* TRIMMEAN */\n\t0x014C: 2, /* TINV */\n\t0x0151: 2, /* POWER */\n\t0x0156: 1, /* RADIANS */\n\t0x0157: 1, /* DEGREES */\n\t0x015A: 2, /* COUNTIF */\n\t0x015B: 1, /* COUNTBLANK */\n\t0x015E: 4, /* ISPMT */\n\t0x015F: 3, /* DATEDIF */\n\t0x0160: 1, /* DATESTRING */\n\t0x0161: 2, /* NUMBERSTRING */\n\t0x0168: 1, /* PHONETIC */\n\t0x0170: 1, /* BAHTTEXT */\n\t0x0171: 1, /* THAIDAYOFWEEK */\n\t0x0172: 1, /* THAIDIGIT */\n\t0x0173: 1, /* THAIMONTHOFYEAR */\n\t0x0174: 1, /* THAINUMSOUND */\n\t0x0175: 1, /* THAINUMSTRING */\n\t0x0176: 1, /* THAISTRINGLENGTH */\n\t0x0177: 1, /* ISTHAIDIGIT */\n\t0x0178: 1, /* ROUNDBAHTDOWN */\n\t0x0179: 1, /* ROUNDBAHTUP */\n\t0x017A: 1, /* THAIYEAR */\n\t0xFFFF: 0\n};\n/* [MS-XLSX] 2.2.3 Functions */\nvar XLSXFutureFunctions = {\n\t\"_xlfn.ACOT\": \"ACOT\",\n\t\"_xlfn.ACOTH\": \"ACOTH\",\n\t\"_xlfn.AGGREGATE\": \"AGGREGATE\",\n\t\"_xlfn.ARABIC\": \"ARABIC\",\n\t\"_xlfn.AVERAGEIF\": \"AVERAGEIF\",\n\t\"_xlfn.AVERAGEIFS\": \"AVERAGEIFS\",\n\t\"_xlfn.BASE\": \"BASE\",\n\t\"_xlfn.BETA.DIST\": \"BETA.DIST\",\n\t\"_xlfn.BETA.INV\": \"BETA.INV\",\n\t\"_xlfn.BINOM.DIST\": \"BINOM.DIST\",\n\t\"_xlfn.BINOM.DIST.RANGE\": \"BINOM.DIST.RANGE\",\n\t\"_xlfn.BINOM.INV\": \"BINOM.INV\",\n\t\"_xlfn.BITAND\": \"BITAND\",\n\t\"_xlfn.BITLSHIFT\": \"BITLSHIFT\",\n\t\"_xlfn.BITOR\": \"BITOR\",\n\t\"_xlfn.BITRSHIFT\": \"BITRSHIFT\",\n\t\"_xlfn.BITXOR\": \"BITXOR\",\n\t\"_xlfn.CEILING.MATH\": \"CEILING.MATH\",\n\t\"_xlfn.CEILING.PRECISE\": \"CEILING.PRECISE\",\n\t\"_xlfn.CHISQ.DIST\": \"CHISQ.DIST\",\n\t\"_xlfn.CHISQ.DIST.RT\": \"CHISQ.DIST.RT\",\n\t\"_xlfn.CHISQ.INV\": \"CHISQ.INV\",\n\t\"_xlfn.CHISQ.INV.RT\": \"CHISQ.INV.RT\",\n\t\"_xlfn.CHISQ.TEST\": \"CHISQ.TEST\",\n\t\"_xlfn.COMBINA\": \"COMBINA\",\n\t\"_xlfn.CONFIDENCE.NORM\": \"CONFIDENCE.NORM\",\n\t\"_xlfn.CONFIDENCE.T\": \"CONFIDENCE.T\",\n\t\"_xlfn.COT\": \"COT\",\n\t\"_xlfn.COTH\": \"COTH\",\n\t\"_xlfn.COUNTIFS\": \"COUNTIFS\",\n\t\"_xlfn.COVARIANCE.P\": \"COVARIANCE.P\",\n\t\"_xlfn.COVARIANCE.S\": \"COVARIANCE.S\",\n\t\"_xlfn.CSC\": \"CSC\",\n\t\"_xlfn.CSCH\": \"CSCH\",\n\t\"_xlfn.DAYS\": \"DAYS\",\n\t\"_xlfn.DECIMAL\": \"DECIMAL\",\n\t\"_xlfn.ECMA.CEILING\": \"ECMA.CEILING\",\n\t\"_xlfn.ERF.PRECISE\": \"ERF.PRECISE\",\n\t\"_xlfn.ERFC.PRECISE\": \"ERFC.PRECISE\",\n\t\"_xlfn.EXPON.DIST\": \"EXPON.DIST\",\n\t\"_xlfn.F.DIST\": \"F.DIST\",\n\t\"_xlfn.F.DIST.RT\": \"F.DIST.RT\",\n\t\"_xlfn.F.INV\": \"F.INV\",\n\t\"_xlfn.F.INV.RT\": \"F.INV.RT\",\n\t\"_xlfn.F.TEST\": \"F.TEST\",\n\t\"_xlfn.FILTERXML\": \"FILTERXML\",\n\t\"_xlfn.FLOOR.MATH\": \"FLOOR.MATH\",\n\t\"_xlfn.FLOOR.PRECISE\": \"FLOOR.PRECISE\",\n\t\"_xlfn.FORMULATEXT\": \"FORMULATEXT\",\n\t\"_xlfn.GAMMA\": \"GAMMA\",\n\t\"_xlfn.GAMMA.DIST\": \"GAMMA.DIST\",\n\t\"_xlfn.GAMMA.INV\": \"GAMMA.INV\",\n\t\"_xlfn.GAMMALN.PRECISE\": \"GAMMALN.PRECISE\",\n\t\"_xlfn.GAUSS\": \"GAUSS\",\n\t\"_xlfn.HYPGEOM.DIST\": \"HYPGEOM.DIST\",\n\t\"_xlfn.IFNA\": \"IFNA\",\n\t\"_xlfn.IFERROR\": \"IFERROR\",\n\t\"_xlfn.IMCOSH\": \"IMCOSH\",\n\t\"_xlfn.IMCOT\": \"IMCOT\",\n\t\"_xlfn.IMCSC\": \"IMCSC\",\n\t\"_xlfn.IMCSCH\": \"IMCSCH\",\n\t\"_xlfn.IMSEC\": \"IMSEC\",\n\t\"_xlfn.IMSECH\": \"IMSECH\",\n\t\"_xlfn.IMSINH\": \"IMSINH\",\n\t\"_xlfn.IMTAN\": \"IMTAN\",\n\t\"_xlfn.ISFORMULA\": \"ISFORMULA\",\n\t\"_xlfn.ISO.CEILING\": \"ISO.CEILING\",\n\t\"_xlfn.ISOWEEKNUM\": \"ISOWEEKNUM\",\n\t\"_xlfn.LOGNORM.DIST\": \"LOGNORM.DIST\",\n\t\"_xlfn.LOGNORM.INV\": \"LOGNORM.INV\",\n\t\"_xlfn.MODE.MULT\": \"MODE.MULT\",\n\t\"_xlfn.MODE.SNGL\": \"MODE.SNGL\",\n\t\"_xlfn.MUNIT\": \"MUNIT\",\n\t\"_xlfn.NEGBINOM.DIST\": \"NEGBINOM.DIST\",\n\t\"_xlfn.NETWORKDAYS.INTL\": \"NETWORKDAYS.INTL\",\n\t\"_xlfn.NIGBINOM\": \"NIGBINOM\",\n\t\"_xlfn.NORM.DIST\": \"NORM.DIST\",\n\t\"_xlfn.NORM.INV\": \"NORM.INV\",\n\t\"_xlfn.NORM.S.DIST\": \"NORM.S.DIST\",\n\t\"_xlfn.NORM.S.INV\": \"NORM.S.INV\",\n\t\"_xlfn.NUMBERVALUE\": \"NUMBERVALUE\",\n\t\"_xlfn.PDURATION\": \"PDURATION\",\n\t\"_xlfn.PERCENTILE.EXC\": \"PERCENTILE.EXC\",\n\t\"_xlfn.PERCENTILE.INC\": \"PERCENTILE.INC\",\n\t\"_xlfn.PERCENTRANK.EXC\": \"PERCENTRANK.EXC\",\n\t\"_xlfn.PERCENTRANK.INC\": \"PERCENTRANK.INC\",\n\t\"_xlfn.PERMUTATIONA\": \"PERMUTATIONA\",\n\t\"_xlfn.PHI\": \"PHI\",\n\t\"_xlfn.POISSON.DIST\": \"POISSON.DIST\",\n\t\"_xlfn.QUARTILE.EXC\": \"QUARTILE.EXC\",\n\t\"_xlfn.QUARTILE.INC\": \"QUARTILE.INC\",\n\t\"_xlfn.QUERYSTRING\": \"QUERYSTRING\",\n\t\"_xlfn.RANK.AVG\": \"RANK.AVG\",\n\t\"_xlfn.RANK.EQ\": \"RANK.EQ\",\n\t\"_xlfn.RRI\": \"RRI\",\n\t\"_xlfn.SEC\": \"SEC\",\n\t\"_xlfn.SECH\": \"SECH\",\n\t\"_xlfn.SHEET\": \"SHEET\",\n\t\"_xlfn.SHEETS\": \"SHEETS\",\n\t\"_xlfn.SKEW.P\": \"SKEW.P\",\n\t\"_xlfn.STDEV.P\": \"STDEV.P\",\n\t\"_xlfn.STDEV.S\": \"STDEV.S\",\n\t\"_xlfn.SUMIFS\": \"SUMIFS\",\n\t\"_xlfn.T.DIST\": \"T.DIST\",\n\t\"_xlfn.T.DIST.2T\": \"T.DIST.2T\",\n\t\"_xlfn.T.DIST.RT\": \"T.DIST.RT\",\n\t\"_xlfn.T.INV\": \"T.INV\",\n\t\"_xlfn.T.INV.2T\": \"T.INV.2T\",\n\t\"_xlfn.T.TEST\": \"T.TEST\",\n\t\"_xlfn.UNICHAR\": \"UNICHAR\",\n\t\"_xlfn.UNICODE\": \"UNICODE\",\n\t\"_xlfn.VAR.P\": \"VAR.P\",\n\t\"_xlfn.VAR.S\": \"VAR.S\",\n\t\"_xlfn.WEBSERVICE\": \"WEBSERVICE\",\n\t\"_xlfn.WEIBULL.DIST\": \"WEIBULL.DIST\",\n\t\"_xlfn.WORKDAY.INTL\": \"WORKDAY.INTL\",\n\t\"_xlfn.XOR\": \"XOR\",\n\t\"_xlfn.Z.TEST\": \"Z.TEST\"\n};\n\nvar strs = {}; // shared strings\nvar _ssfopts = {}; // spreadsheet formatting options\n\nRELS.WS = \"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet\";\n\nfunction get_sst_id(sst, str) {\n\tfor(var i = 0, len = sst.length; i < len; ++i) if(sst[i].t === str) { sst.Count ++; return i; }\n\tsst[len] = {t:str}; sst.Count ++; sst.Unique ++; return len;\n}\n\nfunction get_cell_style(styles, cell, opts) {\n\tvar z = opts.revssf[cell.z != null ? cell.z : \"General\"];\n\tfor(var i = 0, len = styles.length; i != len; ++i) if(styles[i].numFmtId === z) return i;\n\tstyles[len] = {\n\t\tnumFmtId:z,\n\t\tfontId:0,\n\t\tfillId:0,\n\t\tborderId:0,\n\t\txfId:0,\n\t\tapplyNumberFormat:1\n\t};\n\treturn len;\n}\n\nfunction safe_format(p, fmtid, fillid, opts) {\n\ttry {\n\t\tif(p.t === 'e') p.w = p.w || BErr[p.v];\n\t\telse if(fmtid === 0) {\n\t\t\tif(p.t === 'n') {\n\t\t\t\tif((p.v|0) === p.v) p.w = SSF._general_int(p.v,_ssfopts);\n\t\t\t\telse p.w = SSF._general_num(p.v,_ssfopts);\n\t\t\t}\n\t\t\telse if(p.t === 'd') {\n\t\t\t\tvar dd = datenum(p.v);\n\t\t\t\tif((dd|0) === dd) p.w = SSF._general_int(dd,_ssfopts);\n\t\t\t\telse p.w = SSF._general_num(dd,_ssfopts);\n\t\t\t}\n\t\t\telse if(p.v === undefined) return \"\";\n\t\t\telse p.w = SSF._general(p.v,_ssfopts);\n\t\t}\n\t\telse if(p.t === 'd') p.w = SSF.format(fmtid,datenum(p.v),_ssfopts);\n\t\telse p.w = SSF.format(fmtid,p.v,_ssfopts);\n\t\tif(opts.cellNF) p.z = SSF._table[fmtid];\n\t} catch(e) { if(opts.WTF) throw e; }\n\tif(fillid) try {\n\t\tp.s = styles.Fills[fillid];\n\t\tif (p.s.fgColor && p.s.fgColor.theme) {\n\t\t\tp.s.fgColor.rgb = rgb_tint(themes.themeElements.clrScheme[p.s.fgColor.theme].rgb, p.s.fgColor.tint || 0);\n\t\t\tif(opts.WTF) p.s.fgColor.raw_rgb = themes.themeElements.clrScheme[p.s.fgColor.theme].rgb;\n\t\t}\n\t\tif (p.s.bgColor && p.s.bgColor.theme) {\n\t\t\tp.s.bgColor.rgb = rgb_tint(themes.themeElements.clrScheme[p.s.bgColor.theme].rgb, p.s.bgColor.tint || 0);\n\t\t\tif(opts.WTF) p.s.bgColor.raw_rgb = themes.themeElements.clrScheme[p.s.bgColor.theme].rgb;\n\t\t}\n\t} catch(e) { if(opts.WTF) throw e; }\n}\nfunction parse_ws_xml_dim(ws, s) {\n\tvar d = safe_decode_range(s);\n\tif(d.s.r<=d.e.r && d.s.c<=d.e.c && d.s.r>=0 && d.s.c>=0) ws[\"!ref\"] = encode_range(d);\n}\nvar mergecregex = /<mergeCell ref=\"[A-Z0-9:]+\"\\s*\\/>/g;\nvar sheetdataregex = /<(?:\\w+:)?sheetData>([^\\u2603]*)<\\/(?:\\w+:)?sheetData>/;\nvar hlinkregex = /<hyperlink[^>]*\\/>/g;\nvar dimregex = /\"(\\w*:\\w*)\"/;\nvar colregex = /<col[^>]*\\/>/g;\n/* 18.3 Worksheets */\nfunction parse_ws_xml(data, opts, rels) {\n\tif(!data) return data;\n\t/* 18.3.1.99 worksheet CT_Worksheet */\n\tvar s = {};\n\n\t/* 18.3.1.35 dimension CT_SheetDimension ? */\n\tvar ridx = data.indexOf(\"<dimension\");\n\tif(ridx > 0) {\n\t\tvar ref = data.substr(ridx,50).match(dimregex);\n\t\tif(ref != null) parse_ws_xml_dim(s, ref[1]);\n\t}\n\n\t/* 18.3.1.55 mergeCells CT_MergeCells */\n\tvar mergecells = [];\n\tif(data.indexOf(\"</mergeCells>\")!==-1) {\n\t\tvar merges = data.match(mergecregex);\n\t\tfor(ridx = 0; ridx != merges.length; ++ridx)\n\t\t\tmergecells[ridx] = safe_decode_range(merges[ridx].substr(merges[ridx].indexOf(\"\\\"\")+1));\n\t}\n\n\t/* 18.3.1.17 cols CT_Cols */\n\tvar columns = [];\n\tif(opts.cellStyles && data.indexOf(\"</cols>\")!==-1) {\n\t\t/* 18.3.1.13 col CT_Col */\n\t\tvar cols = data.match(colregex);\n\t\tparse_ws_xml_cols(columns, cols);\n\t}\n\n\tvar refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };\n\n\t/* 18.3.1.80 sheetData CT_SheetData ? */\n\tvar mtch=data.match(sheetdataregex);\n\tif(mtch) parse_ws_xml_data(mtch[1], s, opts, refguess);\n\n\t/* 18.3.1.48 hyperlinks CT_Hyperlinks */\n\tif(data.indexOf(\"</hyperlinks>\")!==-1) parse_ws_xml_hlinks(s, data.match(hlinkregex), rels);\n\n\tif(!s[\"!ref\"] && refguess.e.c >= refguess.s.c && refguess.e.r >= refguess.s.r) s[\"!ref\"] = encode_range(refguess);\n\tif(opts.sheetRows > 0 && s[\"!ref\"]) {\n\t\tvar tmpref = safe_decode_range(s[\"!ref\"]);\n\t\tif(opts.sheetRows < +tmpref.e.r) {\n\t\t\ttmpref.e.r = opts.sheetRows - 1;\n\t\t\tif(tmpref.e.r > refguess.e.r) tmpref.e.r = refguess.e.r;\n\t\t\tif(tmpref.e.r < tmpref.s.r) tmpref.s.r = tmpref.e.r;\n\t\t\tif(tmpref.e.c > refguess.e.c) tmpref.e.c = refguess.e.c;\n\t\t\tif(tmpref.e.c < tmpref.s.c) tmpref.s.c = tmpref.e.c;\n\t\t\ts[\"!fullref\"] = s[\"!ref\"];\n\t\t\ts[\"!ref\"] = encode_range(tmpref);\n\t\t}\n\t}\n\tif(mergecells.length > 0) s[\"!merges\"] = mergecells;\n\tif(columns.length > 0) s[\"!cols\"] = columns;\n\treturn s;\n}\n\nfunction write_ws_xml_merges(merges) {\n\tif(merges.length == 0) return \"\";\n\tvar o = '<mergeCells count=\"' + merges.length + '\">';\n\tfor(var i = 0; i != merges.length; ++i) o += '<mergeCell ref=\"' + encode_range(merges[i]) + '\"/>';\n\treturn o + '</mergeCells>';\n}\n\nfunction parse_ws_xml_hlinks(s, data, rels) {\n\tfor(var i = 0; i != data.length; ++i) {\n\t\tvar val = parsexmltag(data[i], true);\n\t\tif(!val.ref) return;\n\t\tvar rel = rels ? rels['!id'][val.id] : null;\n\t\tif(rel) {\n\t\t\tval.Target = rel.Target;\n\t\t\tif(val.location) val.Target += \"#\"+val.location;\n\t\t\tval.Rel = rel;\n\t\t} else {\n\t\t\tval.Target = val.location;\n\t\t\trel = {Target: val.location, TargetMode: 'Internal'};\n\t\t\tval.Rel = rel;\n\t\t}\n\t\tvar rng = safe_decode_range(val.ref);\n\t\tfor(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) {\n\t\t\tvar addr = encode_cell({c:C,r:R});\n\t\t\tif(!s[addr]) s[addr] = {t:\"stub\",v:undefined};\n\t\t\ts[addr].l = val;\n\t\t}\n\t}\n}\n\nfunction parse_ws_xml_cols(columns, cols) {\n\tvar seencol = false;\n\tfor(var coli = 0; coli != cols.length; ++coli) {\n\t\tvar coll = parsexmltag(cols[coli], true);\n\t\tvar colm=parseInt(coll.min, 10)-1, colM=parseInt(coll.max,10)-1;\n\t\tdelete coll.min; delete coll.max;\n\t\tif(!seencol && coll.width) { seencol = true; find_mdw(+coll.width, coll); }\n\t\tif(coll.width) {\n\t\t\tcoll.wpx = width2px(+coll.width);\n\t\t\tcoll.wch = px2char(coll.wpx);\n\t\t\tcoll.MDW = MDW;\n\t\t}\n\t\twhile(colm <= colM) columns[colm++] = coll;\n\t}\n}\n\nfunction write_ws_xml_cols(ws, cols) {\n\tvar o = [\"<cols>\"], col, width;\n\tfor(var i = 0; i != cols.length; ++i) {\n\t\tif(!(col = cols[i])) continue;\n\t\tvar p = {min:i+1,max:i+1};\n\t\t/* wch (chars), wpx (pixels) */\n\t\twidth = -1;\n\t\tif(col.wpx) width = px2char(col.wpx);\n\t\telse if(col.wch) width = col.wch;\n\t\tif(width > -1) { p.width = char2width(width); p.customWidth= 1; }\n\t\to[o.length] = (writextag('col', null, p));\n\t}\n\to[o.length] = \"</cols>\";\n\treturn o.join(\"\");\n}\n\nfunction write_ws_xml_cell(cell, ref, ws, opts, idx, wb) {\n\tif(cell.v === undefined) return \"\";\n\tvar vv = \"\";\n\tvar oldt = cell.t, oldv = cell.v;\n\tswitch(cell.t) {\n\t\tcase 'b': vv = cell.v ? \"1\" : \"0\"; break;\n\t\tcase 'n': vv = ''+cell.v; break;\n\t\tcase 'e': vv = BErr[cell.v]; break;\n\t\tcase 'd':\n\t\t\tif(opts.cellDates) vv = new Date(cell.v).toISOString();\n\t\t\telse {\n\t\t\t\tcell.t = 'n';\n\t\t\t\tvv = ''+(cell.v = datenum(cell.v));\n\t\t\t\tif(typeof cell.z === 'undefined') cell.z = SSF._table[14];\n\t\t\t}\n\t\t\tbreak;\n\t\tdefault: vv = cell.v; break;\n\t}\n\tvar v = writetag('v', escapexml(vv)), o = {r:ref};\n\t/* TODO: cell style */\n\tvar os = get_cell_style(opts.cellXfs, cell, opts);\n\tif(os !== 0) o.s = os;\n\tswitch(cell.t) {\n\t\tcase 'n': break;\n\t\tcase 'd': o.t = \"d\"; break;\n\t\tcase 'b': o.t = \"b\"; break;\n\t\tcase 'e': o.t = \"e\"; break;\n\t\tdefault:\n\t\t\tif(opts.bookSST) {\n\t\t\t\tv = writetag('v', ''+get_sst_id(opts.Strings, cell.v));\n\t\t\t\to.t = \"s\"; break;\n\t\t\t}\n\t\t\to.t = \"str\"; break;\n\t}\n\tif(cell.t != oldt) { cell.t = oldt; cell.v = oldv; }\n\treturn writextag('c', v, o);\n}\n\nvar parse_ws_xml_data = (function parse_ws_xml_data_factory() {\n\tvar cellregex = /<(?:\\w+:)?c[ >]/, rowregex = /<\\/(?:\\w+:)?row>/;\n\tvar rregex = /r=[\"']([^\"']*)[\"']/, isregex = /<is>([\\S\\s]*?)<\\/is>/;\n\tvar match_v = matchtag(\"v\"), match_f = matchtag(\"f\");\n\nreturn function parse_ws_xml_data(sdata, s, opts, guess) {\n\tvar ri = 0, x = \"\", cells = [], cref = [], idx = 0, i=0, cc=0, d=\"\", p;\n\tvar tag, tagr = 0, tagc = 0;\n\tvar sstr;\n\tvar fmtid = 0, fillid = 0, do_format = Array.isArray(styles.CellXf), cf;\n\tfor(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) {\n\t\tx = marr[mt].trim();\n\t\tvar xlen = x.length;\n\t\tif(xlen === 0) continue;\n\n\t\t/* 18.3.1.73 row CT_Row */\n\t\tfor(ri = 0; ri < xlen; ++ri) if(x.charCodeAt(ri) === 62) break; ++ri;\n\t\ttag = parsexmltag(x.substr(0,ri), true);\n\t\t/* SpreadSheetGear uses implicit r/c */\n\t\ttagr = typeof tag.r !== 'undefined' ? parseInt(tag.r, 10) : tagr+1; tagc = -1;\n\t\tif(opts.sheetRows && opts.sheetRows < tagr) continue;\n\t\tif(guess.s.r > tagr - 1) guess.s.r = tagr - 1;\n\t\tif(guess.e.r < tagr - 1) guess.e.r = tagr - 1;\n\n\t\t/* 18.3.1.4 c CT_Cell */\n\t\tcells = x.substr(ri).split(cellregex);\n\t\tfor(ri = typeof tag.r === 'undefined' ? 0 : 1; ri != cells.length; ++ri) {\n\t\t\tx = cells[ri].trim();\n\t\t\tif(x.length === 0) continue;\n\t\t\tcref = x.match(rregex); idx = ri; i=0; cc=0;\n\t\t\tx = \"<c \" + (x.substr(0,1)==\"<\"?\">\":\"\") + x;\n\t\t\tif(cref !== null && cref.length === 2) {\n\t\t\t\tidx = 0; d=cref[1];\n\t\t\t\tfor(i=0; i != d.length; ++i) {\n\t\t\t\t\tif((cc=d.charCodeAt(i)-64) < 1 || cc > 26) break;\n\t\t\t\t\tidx = 26*idx + cc;\n\t\t\t\t}\n\t\t\t\t--idx;\n\t\t\t\ttagc = idx;\n\t\t\t} else ++tagc;\n\t\t\tfor(i = 0; i != x.length; ++i) if(x.charCodeAt(i) === 62) break; ++i;\n\t\t\ttag = parsexmltag(x.substr(0,i), true);\n\t\t\tif(!tag.r) tag.r = utils.encode_cell({r:tagr-1, c:tagc});\n\t\t\td = x.substr(i);\n\t\t\tp = {t:\"\"};\n\n\t\t\tif((cref=d.match(match_v))!== null && cref[1] !== '') p.v=unescapexml(cref[1]);\n\t\t\tif(opts.cellFormula && (cref=d.match(match_f))!== null) p.f=unescapexml(cref[1]);\n\n\t\t\t/* SCHEMA IS ACTUALLY INCORRECT HERE.  IF A CELL HAS NO T, EMIT \"\" */\n\t\t\tif(tag.t === undefined && p.v === undefined) {\n\t\t\t\tif(!opts.sheetStubs) continue;\n\t\t\t\tp.t = \"stub\";\n\t\t\t}\n\t\t\telse p.t = tag.t || \"n\";\n\t\t\tif(guess.s.c > idx) guess.s.c = idx;\n\t\t\tif(guess.e.c < idx) guess.e.c = idx;\n\t\t\t/* 18.18.11 t ST_CellType */\n\t\t\tswitch(p.t) {\n\t\t\t\tcase 'n': p.v = parseFloat(p.v); break;\n\t\t\t\tcase 's':\n\t\t\t\t\tsstr = strs[parseInt(p.v, 10)];\n\t\t\t\t\tp.v = sstr.t;\n\t\t\t\t\tp.r = sstr.r;\n\t\t\t\t\tif(opts.cellHTML) p.h = sstr.h;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'str':\n\t\t\t\t\tp.t = \"s\";\n\t\t\t\t\tp.v = (p.v!=null) ? utf8read(p.v) : '';\n\t\t\t\t\tif(opts.cellHTML) p.h = p.v;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'inlineStr':\n\t\t\t\t\tcref = d.match(isregex);\n\t\t\t\t\tp.t = 's';\n\t\t\t\t\tif(cref !== null) { sstr = parse_si(cref[1]); p.v = sstr.t; } else p.v = \"\";\n\t\t\t\t\tbreak; // inline string\n\t\t\t\tcase 'b': p.v = parsexmlbool(p.v); break;\n\t\t\t\tcase 'd':\n\t\t\t\t\tif(!opts.cellDates) { p.v = datenum(p.v); p.t = 'n'; }\n\t\t\t\t\tbreak;\n\t\t\t\t/* error string in .v, number in .v */\n\t\t\t\tcase 'e': p.w = p.v; p.v = RBErr[p.v]; break;\n\t\t\t}\n\t\t\t/* formatting */\n\t\t\tfmtid = fillid = 0;\n\t\t\tif(do_format && tag.s !== undefined) {\n\t\t\t\tcf = styles.CellXf[tag.s];\n\t\t\t\tif(cf != null) {\n\t\t\t\t\tif(cf.numFmtId != null) fmtid = cf.numFmtId;\n\t\t\t\t\tif(opts.cellStyles && cf.fillId != null) fillid = cf.fillId;\n\t\t\t\t}\n\t\t\t}\n\t\t\tsafe_format(p, fmtid, fillid, opts);\n\t\t\ts[tag.r] = p;\n\t\t}\n\t}\n}; })();\n\nfunction write_ws_xml_data(ws, opts, idx, wb) {\n\tvar o = [], r = [], range = safe_decode_range(ws['!ref']), cell, ref, rr = \"\", cols = [], R, C;\n\tfor(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C);\n\tfor(R = range.s.r; R <= range.e.r; ++R) {\n\t\tr = [];\n\t\trr = encode_row(R);\n\t\tfor(C = range.s.c; C <= range.e.c; ++C) {\n\t\t\tref = cols[C] + rr;\n\t\t\tif(ws[ref] === undefined) continue;\n\t\t\tif((cell = write_ws_xml_cell(ws[ref], ref, ws, opts, idx, wb)) != null) r.push(cell);\n\t\t}\n\t\tif(r.length > 0) o[o.length] = (writextag('row', r.join(\"\"), {r:rr}));\n\t}\n\treturn o.join(\"\");\n}\n\nvar WS_XML_ROOT = writextag('worksheet', null, {\n\t'xmlns': XMLNS.main[0],\n\t'xmlns:r': XMLNS.r\n});\n\nfunction write_ws_xml(idx, opts, wb) {\n\tvar o = [XML_HEADER, WS_XML_ROOT];\n\tvar s = wb.SheetNames[idx], sidx = 0, rdata = \"\";\n\tvar ws = wb.Sheets[s];\n\tif(ws === undefined) ws = {};\n\tvar ref = ws['!ref']; if(ref === undefined) ref = 'A1';\n\to[o.length] = (writextag('dimension', null, {'ref': ref}));\n\n\tif(ws['!cols'] !== undefined && ws['!cols'].length > 0) o[o.length] = (write_ws_xml_cols(ws, ws['!cols']));\n\to[sidx = o.length] = '<sheetData/>';\n\tif(ws['!ref'] !== undefined) {\n\t\trdata = write_ws_xml_data(ws, opts, idx, wb);\n\t\tif(rdata.length > 0) o[o.length] = (rdata);\n\t}\n\tif(o.length>sidx+1) { o[o.length] = ('</sheetData>'); o[sidx]=o[sidx].replace(\"/>\",\">\"); }\n\n\tif(ws['!merges'] !== undefined && ws['!merges'].length > 0) o[o.length] = (write_ws_xml_merges(ws['!merges']));\n\n\tif(o.length>2) { o[o.length] = ('</worksheet>'); o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n\n/* [MS-XLSB] 2.4.718 BrtRowHdr */\nfunction parse_BrtRowHdr(data, length) {\n\tvar z = [];\n\tz.r = data.read_shift(4);\n\tdata.l += length-4;\n\treturn z;\n}\n\n/* [MS-XLSB] 2.4.812 BrtWsDim */\nvar parse_BrtWsDim = parse_UncheckedRfX;\nvar write_BrtWsDim = write_UncheckedRfX;\n\n/* [MS-XLSB] 2.4.815 BrtWsProp */\nfunction parse_BrtWsProp(data, length) {\n\tvar z = {};\n\t/* TODO: pull flags */\n\tdata.l += 19;\n\tz.name = parse_XLSBCodeName(data, length - 19);\n\treturn z;\n}\n\n/* [MS-XLSB] 2.4.303 BrtCellBlank */\nfunction parse_BrtCellBlank(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\treturn [cell];\n}\nfunction write_BrtCellBlank(cell, val, o) {\n\tif(o == null) o = new_buf(8);\n\treturn write_XLSBCell(val, o);\n}\n\n\n/* [MS-XLSB] 2.4.304 BrtCellBool */\nfunction parse_BrtCellBool(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar fBool = data.read_shift(1);\n\treturn [cell, fBool, 'b'];\n}\n\n/* [MS-XLSB] 2.4.305 BrtCellError */\nfunction parse_BrtCellError(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar fBool = data.read_shift(1);\n\treturn [cell, fBool, 'e'];\n}\n\n/* [MS-XLSB] 2.4.308 BrtCellIsst */\nfunction parse_BrtCellIsst(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar isst = data.read_shift(4);\n\treturn [cell, isst, 's'];\n}\n\n/* [MS-XLSB] 2.4.310 BrtCellReal */\nfunction parse_BrtCellReal(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = parse_Xnum(data);\n\treturn [cell, value, 'n'];\n}\n\n/* [MS-XLSB] 2.4.311 BrtCellRk */\nfunction parse_BrtCellRk(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = parse_RkNumber(data);\n\treturn [cell, value, 'n'];\n}\n\n/* [MS-XLSB] 2.4.314 BrtCellSt */\nfunction parse_BrtCellSt(data, length) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = parse_XLWideString(data);\n\treturn [cell, value, 'str'];\n}\n\n/* [MS-XLSB] 2.4.647 BrtFmlaBool */\nfunction parse_BrtFmlaBool(data, length, opts) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = data.read_shift(1);\n\tvar o = [cell, value, 'b'];\n\tif(opts.cellFormula) {\n\t\tvar formula = parse_XLSBCellParsedFormula(data, length-9);\n\t\to[3] = \"\"; /* TODO */\n\t}\n\telse data.l += length-9;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.4.648 BrtFmlaError */\nfunction parse_BrtFmlaError(data, length, opts) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = data.read_shift(1);\n\tvar o = [cell, value, 'e'];\n\tif(opts.cellFormula) {\n\t\tvar formula = parse_XLSBCellParsedFormula(data, length-9);\n\t\to[3] = \"\"; /* TODO */\n\t}\n\telse data.l += length-9;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.4.649 BrtFmlaNum */\nfunction parse_BrtFmlaNum(data, length, opts) {\n\tvar cell = parse_XLSBCell(data);\n\tvar value = parse_Xnum(data);\n\tvar o = [cell, value, 'n'];\n\tif(opts.cellFormula) {\n\t\tvar formula = parse_XLSBCellParsedFormula(data, length - 16);\n\t\to[3] = \"\"; /* TODO */\n\t}\n\telse data.l += length-16;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.4.650 BrtFmlaString */\nfunction parse_BrtFmlaString(data, length, opts) {\n\tvar start = data.l;\n\tvar cell = parse_XLSBCell(data);\n\tvar value = parse_XLWideString(data);\n\tvar o = [cell, value, 'str'];\n\tif(opts.cellFormula) {\n\t\tvar formula = parse_XLSBCellParsedFormula(data, start + length - data.l);\n\t}\n\telse data.l = start + length;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.4.676 BrtMergeCell */\nvar parse_BrtMergeCell = parse_UncheckedRfX;\n\n/* [MS-XLSB] 2.4.656 BrtHLink */\nfunction parse_BrtHLink(data, length, opts) {\n\tvar end = data.l + length;\n\tvar rfx = parse_UncheckedRfX(data, 16);\n\tvar relId = parse_XLNullableWideString(data);\n\tvar loc = parse_XLWideString(data);\n\tvar tooltip = parse_XLWideString(data);\n\tvar display = parse_XLWideString(data);\n\tdata.l = end;\n\treturn {rfx:rfx, relId:relId, loc:loc, tooltip:tooltip, display:display};\n}\n\n/* [MS-XLSB] 2.1.7.61 Worksheet */\nfunction parse_ws_bin(data, opts, rels) {\n\tif(!data) return data;\n\tif(!rels) rels = {'!id':{}};\n\tvar s = {};\n\n\tvar ref;\n\tvar refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };\n\n\tvar pass = false, end = false;\n\tvar row, p, cf, R, C, addr, sstr, rr;\n\tvar mergecells = [];\n\trecordhopper(data, function ws_parse(val, R) {\n\t\tif(end) return;\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtWsDim': ref = val; break;\n\t\t\tcase 'BrtRowHdr':\n\t\t\t\trow = val;\n\t\t\t\tif(opts.sheetRows && opts.sheetRows <= row.r) end=true;\n\t\t\t\trr = encode_row(row.r);\n\t\t\t\tbreak;\n\n\t\t\tcase 'BrtFmlaBool':\n\t\t\tcase 'BrtFmlaError':\n\t\t\tcase 'BrtFmlaNum':\n\t\t\tcase 'BrtFmlaString':\n\t\t\tcase 'BrtCellBool':\n\t\t\tcase 'BrtCellError':\n\t\t\tcase 'BrtCellIsst':\n\t\t\tcase 'BrtCellReal':\n\t\t\tcase 'BrtCellRk':\n\t\t\tcase 'BrtCellSt':\n\t\t\t\tp = {t:val[2]};\n\t\t\t\tswitch(val[2]) {\n\t\t\t\t\tcase 'n': p.v = val[1]; break;\n\t\t\t\t\tcase 's': sstr = strs[val[1]]; p.v = sstr.t; p.r = sstr.r; break;\n\t\t\t\t\tcase 'b': p.v = val[1] ? true : false; break;\n\t\t\t\t\tcase 'e': p.v = val[1]; p.w = BErr[p.v]; break;\n\t\t\t\t\tcase 'str': p.t = 's'; p.v = utf8read(val[1]); break;\n\t\t\t\t}\n\t\t\t\tif(opts.cellFormula && val.length > 3) p.f = val[3];\n\t\t\t\tif((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.ifmt,null,opts);\n\t\t\t\ts[encode_col(C=val[0].c) + rr] = p;\n\t\t\t\tif(refguess.s.r > row.r) refguess.s.r = row.r;\n\t\t\t\tif(refguess.s.c > C) refguess.s.c = C;\n\t\t\t\tif(refguess.e.r < row.r) refguess.e.r = row.r;\n\t\t\t\tif(refguess.e.c < C) refguess.e.c = C;\n\t\t\t\tbreak;\n\n\t\t\tcase 'BrtCellBlank': if(!opts.sheetStubs) break;\n\t\t\t\tp = {t:'s',v:undefined};\n\t\t\t\ts[encode_col(C=val[0].c) + rr] = p;\n\t\t\t\tif(refguess.s.r > row.r) refguess.s.r = row.r;\n\t\t\t\tif(refguess.s.c > C) refguess.s.c = C;\n\t\t\t\tif(refguess.e.r < row.r) refguess.e.r = row.r;\n\t\t\t\tif(refguess.e.c < C) refguess.e.c = C;\n\t\t\t\tbreak;\n\n\t\t\t/* Merge Cells */\n\t\t\tcase 'BrtBeginMergeCells': break;\n\t\t\tcase 'BrtEndMergeCells': break;\n\t\t\tcase 'BrtMergeCell': mergecells.push(val); break;\n\n\t\t\tcase 'BrtHLink':\n\t\t\t\tvar rel = rels['!id'][val.relId];\n\t\t\t\tif(rel) {\n\t\t\t\t\tval.Target = rel.Target;\n\t\t\t\t\tif(val.loc) val.Target += \"#\"+val.loc;\n\t\t\t\t\tval.Rel = rel;\n\t\t\t\t}\n\t\t\t\tfor(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) {\n\t\t\t\t\taddr = encode_cell({c:C,r:R});\n\t\t\t\t\tif(!s[addr]) s[addr] = {t:'s',v:undefined};\n\t\t\t\t\ts[addr].l = val;\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase 'BrtArrFmla': break; // TODO\n\t\t\tcase 'BrtShrFmla': break; // TODO\n\t\t\tcase 'BrtBeginSheet': break;\n\t\t\tcase 'BrtWsProp': break; // TODO\n\t\t\tcase 'BrtSheetCalcProp': break; // TODO\n\t\t\tcase 'BrtBeginWsViews': break; // TODO\n\t\t\tcase 'BrtBeginWsView': break; // TODO\n\t\t\tcase 'BrtPane': break; // TODO\n\t\t\tcase 'BrtSel': break; // TODO\n\t\t\tcase 'BrtEndWsView': break; // TODO\n\t\t\tcase 'BrtEndWsViews': break; // TODO\n\t\t\tcase 'BrtACBegin': break; // TODO\n\t\t\tcase 'BrtRwDescent': break; // TODO\n\t\t\tcase 'BrtACEnd': break; // TODO\n\t\t\tcase 'BrtWsFmtInfoEx14': break; // TODO\n\t\t\tcase 'BrtWsFmtInfo': break; // TODO\n\t\t\tcase 'BrtBeginColInfos': break; // TODO\n\t\t\tcase 'BrtColInfo': break; // TODO\n\t\t\tcase 'BrtEndColInfos': break; // TODO\n\t\t\tcase 'BrtBeginSheetData': break; // TODO\n\t\t\tcase 'BrtEndSheetData': break; // TODO\n\t\t\tcase 'BrtSheetProtection': break; // TODO\n\t\t\tcase 'BrtPrintOptions': break; // TODO\n\t\t\tcase 'BrtMargins': break; // TODO\n\t\t\tcase 'BrtPageSetup': break; // TODO\n\t\t\tcase 'BrtFRTBegin': pass = true; break;\n\t\t\tcase 'BrtFRTEnd': pass = false; break;\n\t\t\tcase 'BrtEndSheet': break; // TODO\n\t\t\tcase 'BrtDrawing': break; // TODO\n\t\t\tcase 'BrtLegacyDrawing': break; // TODO\n\t\t\tcase 'BrtLegacyDrawingHF': break; // TODO\n\t\t\tcase 'BrtPhoneticInfo': break; // TODO\n\t\t\tcase 'BrtBeginHeaderFooter': break; // TODO\n\t\t\tcase 'BrtEndHeaderFooter': break; // TODO\n\t\t\tcase 'BrtBrk': break; // TODO\n\t\t\tcase 'BrtBeginRwBrk': break; // TODO\n\t\t\tcase 'BrtEndRwBrk': break; // TODO\n\t\t\tcase 'BrtBeginColBrk': break; // TODO\n\t\t\tcase 'BrtEndColBrk': break; // TODO\n\t\t\tcase 'BrtBeginUserShViews': break; // TODO\n\t\t\tcase 'BrtBeginUserShView': break; // TODO\n\t\t\tcase 'BrtEndUserShView': break; // TODO\n\t\t\tcase 'BrtEndUserShViews': break; // TODO\n\t\t\tcase 'BrtBkHim': break; // TODO\n\t\t\tcase 'BrtBeginOleObjects': break; // TODO\n\t\t\tcase 'BrtOleObject': break; // TODO\n\t\t\tcase 'BrtEndOleObjects': break; // TODO\n\t\t\tcase 'BrtBeginListParts': break; // TODO\n\t\t\tcase 'BrtListPart': break; // TODO\n\t\t\tcase 'BrtEndListParts': break; // TODO\n\t\t\tcase 'BrtBeginSortState': break; // TODO\n\t\t\tcase 'BrtBeginSortCond': break; // TODO\n\t\t\tcase 'BrtEndSortCond': break; // TODO\n\t\t\tcase 'BrtEndSortState': break; // TODO\n\t\t\tcase 'BrtBeginConditionalFormatting': break; // TODO\n\t\t\tcase 'BrtEndConditionalFormatting': break; // TODO\n\t\t\tcase 'BrtBeginCFRule': break; // TODO\n\t\t\tcase 'BrtEndCFRule': break; // TODO\n\t\t\tcase 'BrtBeginDVals': break; // TODO\n\t\t\tcase 'BrtDVal': break; // TODO\n\t\t\tcase 'BrtEndDVals': break; // TODO\n\t\t\tcase 'BrtRangeProtection': break; // TODO\n\t\t\tcase 'BrtBeginDCon': break; // TODO\n\t\t\tcase 'BrtEndDCon': break; // TODO\n\t\t\tcase 'BrtBeginDRefs': break;\n\t\t\tcase 'BrtDRef': break;\n\t\t\tcase 'BrtEndDRefs': break;\n\n\t\t\t/* ActiveX */\n\t\t\tcase 'BrtBeginActiveXControls': break;\n\t\t\tcase 'BrtActiveX': break;\n\t\t\tcase 'BrtEndActiveXControls': break;\n\n\t\t\t/* AutoFilter */\n\t\t\tcase 'BrtBeginAFilter': break;\n\t\t\tcase 'BrtEndAFilter': break;\n\t\t\tcase 'BrtBeginFilterColumn': break;\n\t\t\tcase 'BrtBeginFilters': break;\n\t\t\tcase 'BrtFilter': break;\n\t\t\tcase 'BrtEndFilters': break;\n\t\t\tcase 'BrtEndFilterColumn': break;\n\t\t\tcase 'BrtDynamicFilter': break;\n\t\t\tcase 'BrtTop10Filter': break;\n\t\t\tcase 'BrtBeginCustomFilters': break;\n\t\t\tcase 'BrtCustomFilter': break;\n\t\t\tcase 'BrtEndCustomFilters': break;\n\n\t\t\t/* Smart Tags */\n\t\t\tcase 'BrtBeginSmartTags': break;\n\t\t\tcase 'BrtBeginCellSmartTags': break;\n\t\t\tcase 'BrtBeginCellSmartTag': break;\n\t\t\tcase 'BrtCellSmartTagProperty': break;\n\t\t\tcase 'BrtEndCellSmartTag': break;\n\t\t\tcase 'BrtEndCellSmartTags': break;\n\t\t\tcase 'BrtEndSmartTags': break;\n\n\t\t\t/* Cell Watch */\n\t\t\tcase 'BrtBeginCellWatches': break;\n\t\t\tcase 'BrtCellWatch': break;\n\t\t\tcase 'BrtEndCellWatches': break;\n\n\t\t\t/* Table */\n\t\t\tcase 'BrtTable': break;\n\n\t\t\t/* Ignore Cell Errors */\n\t\t\tcase 'BrtBeginCellIgnoreECs': break;\n\t\t\tcase 'BrtCellIgnoreEC': break;\n\t\t\tcase 'BrtEndCellIgnoreECs': break;\n\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + R.n);\n\t\t}\n\t}, opts);\n\tif(!s[\"!ref\"] && (refguess.s.r < 1000000 || ref.e.r > 0 || ref.e.c > 0 || ref.s.r > 0 || ref.s.c > 0)) s[\"!ref\"] = encode_range(ref);\n\tif(opts.sheetRows && s[\"!ref\"]) {\n\t\tvar tmpref = safe_decode_range(s[\"!ref\"]);\n\t\tif(opts.sheetRows < +tmpref.e.r) {\n\t\t\ttmpref.e.r = opts.sheetRows - 1;\n\t\t\tif(tmpref.e.r > refguess.e.r) tmpref.e.r = refguess.e.r;\n\t\t\tif(tmpref.e.r < tmpref.s.r) tmpref.s.r = tmpref.e.r;\n\t\t\tif(tmpref.e.c > refguess.e.c) tmpref.e.c = refguess.e.c;\n\t\t\tif(tmpref.e.c < tmpref.s.c) tmpref.s.c = tmpref.e.c;\n\t\t\ts[\"!fullref\"] = s[\"!ref\"];\n\t\t\ts[\"!ref\"] = encode_range(tmpref);\n\t\t}\n\t}\n\tif(mergecells.length > 0) s[\"!merges\"] = mergecells;\n\treturn s;\n}\n\n/* TODO: something useful -- this is a stub */\nfunction write_ws_bin_cell(ba, cell, R, C, opts) {\n\tif(cell.v === undefined) return \"\";\n\tvar vv = \"\";\n\tswitch(cell.t) {\n\t\tcase 'b': vv = cell.v ? \"1\" : \"0\"; break;\n\t\tcase 'n': case 'e': vv = ''+cell.v; break;\n\t\tdefault: vv = cell.v; break;\n\t}\n\tvar o = {r:R, c:C};\n\t/* TODO: cell style */\n\to.s = get_cell_style(opts.cellXfs, cell, opts);\n\tswitch(cell.t) {\n\t\tcase 's': case 'str':\n\t\t\tif(opts.bookSST) {\n\t\t\t\tvv = get_sst_id(opts.Strings, cell.v);\n\t\t\t\to.t = \"s\"; break;\n\t\t\t}\n\t\t\to.t = \"str\"; break;\n\t\tcase 'n': break;\n\t\tcase 'b': o.t = \"b\"; break;\n\t\tcase 'e': o.t = \"e\"; break;\n\t}\n\twrite_record(ba, \"BrtCellBlank\", write_BrtCellBlank(cell, o));\n}\n\nfunction write_CELLTABLE(ba, ws, idx, opts, wb) {\n\tvar range = safe_decode_range(ws['!ref'] || \"A1\"), ref, rr = \"\", cols = [];\n\twrite_record(ba, 'BrtBeginSheetData');\n\tfor(var R = range.s.r; R <= range.e.r; ++R) {\n\t\trr = encode_row(R);\n\t\t/* [ACCELLTABLE] */\n\t\t/* BrtRowHdr */\n\t\tfor(var C = range.s.c; C <= range.e.c; ++C) {\n\t\t\t/* *16384CELL */\n\t\t\tif(R === range.s.r) cols[C] = encode_col(C);\n\t\t\tref = cols[C] + rr;\n\t\t\tif(!ws[ref]) continue;\n\t\t\t/* write cell */\n\t\t\twrite_ws_bin_cell(ba, ws[ref], R, C, opts);\n\t\t}\n\t}\n\twrite_record(ba, 'BrtEndSheetData');\n}\n\nfunction write_ws_bin(idx, opts, wb) {\n\tvar ba = buf_array();\n\tvar s = wb.SheetNames[idx], ws = wb.Sheets[s] || {};\n\tvar r = safe_decode_range(ws['!ref'] || \"A1\");\n\twrite_record(ba, \"BrtBeginSheet\");\n\t/* [BrtWsProp] */\n\twrite_record(ba, \"BrtWsDim\", write_BrtWsDim(r));\n\t/* [WSVIEWS2] */\n\t/* [WSFMTINFO] */\n\t/* *COLINFOS */\n\twrite_CELLTABLE(ba, ws, idx, opts, wb);\n\t/* [BrtSheetCalcProp] */\n\t/* [[BrtSheetProtectionIso] BrtSheetProtection] */\n\t/* *([BrtRangeProtectionIso] BrtRangeProtection) */\n\t/* [SCENMAN] */\n\t/* [AUTOFILTER] */\n\t/* [SORTSTATE] */\n\t/* [DCON] */\n\t/* [USERSHVIEWS] */\n\t/* [MERGECELLS] */\n\t/* [BrtPhoneticInfo] */\n\t/* *CONDITIONALFORMATTING */\n\t/* [DVALS] */\n\t/* *BrtHLink */\n\t/* [BrtPrintOptions] */\n\t/* [BrtMargins] */\n\t/* [BrtPageSetup] */\n\t/* [HEADERFOOTER] */\n\t/* [RWBRK] */\n\t/* [COLBRK] */\n\t/* *BrtBigName */\n\t/* [CELLWATCHES] */\n\t/* [IGNOREECS] */\n\t/* [SMARTTAGS] */\n\t/* [BrtDrawing] */\n\t/* [BrtLegacyDrawing] */\n\t/* [BrtLegacyDrawingHF] */\n\t/* [BrtBkHim] */\n\t/* [OLEOBJECTS] */\n\t/* [ACTIVEXCONTROLS] */\n\t/* [WEBPUBITEMS] */\n\t/* [LISTPARTS] */\n\t/* FRTWORKSHEET */\n\twrite_record(ba, \"BrtEndSheet\");\n\treturn ba.end();\n}\n/* 18.2.28 (CT_WorkbookProtection) Defaults */\nvar WBPropsDef = [\n\t['allowRefreshQuery', '0'],\n\t['autoCompressPictures', '1'],\n\t['backupFile', '0'],\n\t['checkCompatibility', '0'],\n\t['codeName', ''],\n\t['date1904', '0'],\n\t['dateCompatibility', '1'],\n\t//['defaultThemeVersion', '0'],\n\t['filterPrivacy', '0'],\n\t['hidePivotFieldList', '0'],\n\t['promptedSolutions', '0'],\n\t['publishItems', '0'],\n\t['refreshAllConnections', false],\n\t['saveExternalLinkValues', '1'],\n\t['showBorderUnselectedTables', '1'],\n\t['showInkAnnotation', '1'],\n\t['showObjects', 'all'],\n\t['showPivotChartFilter', '0']\n\t//['updateLinks', 'userSet']\n];\n\n/* 18.2.30 (CT_BookView) Defaults */\nvar WBViewDef = [\n\t['activeTab', '0'],\n\t['autoFilterDateGrouping', '1'],\n\t['firstSheet', '0'],\n\t['minimized', '0'],\n\t['showHorizontalScroll', '1'],\n\t['showSheetTabs', '1'],\n\t['showVerticalScroll', '1'],\n\t['tabRatio', '600'],\n\t['visibility', 'visible']\n\t//window{Height,Width}, {x,y}Window\n];\n\n/* 18.2.19 (CT_Sheet) Defaults */\nvar SheetDef = [\n\t['state', 'visible']\n];\n\n/* 18.2.2  (CT_CalcPr) Defaults */\nvar CalcPrDef = [\n\t['calcCompleted', 'true'],\n\t['calcMode', 'auto'],\n\t['calcOnSave', 'true'],\n\t['concurrentCalc', 'true'],\n\t['fullCalcOnLoad', 'false'],\n\t['fullPrecision', 'true'],\n\t['iterate', 'false'],\n\t['iterateCount', '100'],\n\t['iterateDelta', '0.001'],\n\t['refMode', 'A1']\n];\n\n/* 18.2.3 (CT_CustomWorkbookView) Defaults */\nvar CustomWBViewDef = [\n\t['autoUpdate', 'false'],\n\t['changesSavedWin', 'false'],\n\t['includeHiddenRowCol', 'true'],\n\t['includePrintSettings', 'true'],\n\t['maximized', 'false'],\n\t['minimized', 'false'],\n\t['onlySync', 'false'],\n\t['personalView', 'false'],\n\t['showComments', 'commIndicator'],\n\t['showFormulaBar', 'true'],\n\t['showHorizontalScroll', 'true'],\n\t['showObjects', 'all'],\n\t['showSheetTabs', 'true'],\n\t['showStatusbar', 'true'],\n\t['showVerticalScroll', 'true'],\n\t['tabRatio', '600'],\n\t['xWindow', '0'],\n\t['yWindow', '0']\n];\n\nfunction push_defaults_array(target, defaults) {\n\tfor(var j = 0; j != target.length; ++j) { var w = target[j];\n\t\tfor(var i=0; i != defaults.length; ++i) { var z = defaults[i];\n\t\t\tif(w[z[0]] == null) w[z[0]] = z[1];\n\t\t}\n\t}\n}\nfunction push_defaults(target, defaults) {\n\tfor(var i = 0; i != defaults.length; ++i) { var z = defaults[i];\n\t\tif(target[z[0]] == null) target[z[0]] = z[1];\n\t}\n}\n\nfunction parse_wb_defaults(wb) {\n\tpush_defaults(wb.WBProps, WBPropsDef);\n\tpush_defaults(wb.CalcPr, CalcPrDef);\n\n\tpush_defaults_array(wb.WBView, WBViewDef);\n\tpush_defaults_array(wb.Sheets, SheetDef);\n\n\t_ssfopts.date1904 = parsexmlbool(wb.WBProps.date1904, 'date1904');\n}\n/* 18.2 Workbook */\nvar wbnsregex = /<\\w+:workbook/;\nfunction parse_wb_xml(data, opts) {\n\tvar wb = { AppVersion:{}, WBProps:{}, WBView:[], Sheets:[], CalcPr:{}, xmlns: \"\" };\n\tvar pass = false, xmlns = \"xmlns\";\n\tdata.match(tagregex).forEach(function xml_wb(x) {\n\t\tvar y = parsexmltag(x);\n\t\tswitch(strip_ns(y[0])) {\n\t\t\tcase '<?xml': break;\n\n\t\t\t/* 18.2.27 workbook CT_Workbook 1 */\n\t\t\tcase '<workbook':\n\t\t\t\tif(x.match(wbnsregex)) xmlns = \"xmlns\" + x.match(/<(\\w+):/)[1];\n\t\t\t\twb.xmlns = y[xmlns];\n\t\t\t\tbreak;\n\t\t\tcase '</workbook>': break;\n\n\t\t\t/* 18.2.13 fileVersion CT_FileVersion ? */\n\t\t\tcase '<fileVersion': delete y[0]; wb.AppVersion = y; break;\n\t\t\tcase '<fileVersion/>': break;\n\n\t\t\t/* 18.2.12 fileSharing CT_FileSharing ? */\n\t\t\tcase '<fileSharing': case '<fileSharing/>': break;\n\n\t\t\t/* 18.2.28 workbookPr CT_WorkbookPr ? */\n\t\t\tcase '<workbookPr': delete y[0]; wb.WBProps = y; break;\n\t\t\tcase '<workbookPr/>': delete y[0]; wb.WBProps = y; break;\n\n\t\t\t/* 18.2.29 workbookProtection CT_WorkbookProtection ? */\n\t\t\tcase '<workbookProtection': break;\n\t\t\tcase '<workbookProtection/>': break;\n\n\t\t\t/* 18.2.1  bookViews CT_BookViews ? */\n\t\t\tcase '<bookViews>': case '</bookViews>': break;\n\t\t\t/* 18.2.30   workbookView CT_BookView + */\n\t\t\tcase '<workbookView': delete y[0]; wb.WBView.push(y); break;\n\n\t\t\t/* 18.2.20 sheets CT_Sheets 1 */\n\t\t\tcase '<sheets>': case '</sheets>': break; // aggregate sheet\n\t\t\t/* 18.2.19   sheet CT_Sheet + */\n\t\t\tcase '<sheet': delete y[0]; y.name = utf8read(y.name); wb.Sheets.push(y); break;\n\n\t\t\t/* 18.2.15 functionGroups CT_FunctionGroups ? */\n\t\t\tcase '<functionGroups': case '<functionGroups/>': break;\n\t\t\t/* 18.2.14   functionGroup CT_FunctionGroup + */\n\t\t\tcase '<functionGroup': break;\n\n\t\t\t/* 18.2.9  externalReferences CT_ExternalReferences ? */\n\t\t\tcase '<externalReferences': case '</externalReferences>': case '<externalReferences>': break;\n\t\t\t/* 18.2.8    externalReference CT_ExternalReference + */\n\t\t\tcase '<externalReference': break;\n\n\t\t\t/* 18.2.6  definedNames CT_DefinedNames ? */\n\t\t\tcase '<definedNames/>': break;\n\t\t\tcase '<definedNames>': case '<definedNames': pass=true; break;\n\t\t\tcase '</definedNames>': pass=false; break;\n\t\t\t/* 18.2.5    definedName CT_DefinedName + */\n\t\t\tcase '<definedName': case '<definedName/>': case '</definedName>': break;\n\n\t\t\t/* 18.2.2  calcPr CT_CalcPr ? */\n\t\t\tcase '<calcPr': delete y[0]; wb.CalcPr = y; break;\n\t\t\tcase '<calcPr/>': delete y[0]; wb.CalcPr = y; break;\n\n\t\t\t/* 18.2.16 oleSize CT_OleSize ? (ref required) */\n\t\t\tcase '<oleSize': break;\n\n\t\t\t/* 18.2.4  customWorkbookViews CT_CustomWorkbookViews ? */\n\t\t\tcase '<customWorkbookViews>': case '</customWorkbookViews>': case '<customWorkbookViews': break;\n\t\t\t/* 18.2.3    customWorkbookView CT_CustomWorkbookView + */\n\t\t\tcase '<customWorkbookView': case '</customWorkbookView>': break;\n\n\t\t\t/* 18.2.18 pivotCaches CT_PivotCaches ? */\n\t\t\tcase '<pivotCaches>': case '</pivotCaches>': case '<pivotCaches': break;\n\t\t\t/* 18.2.17 pivotCache CT_PivotCache ? */\n\t\t\tcase '<pivotCache': break;\n\n\t\t\t/* 18.2.21 smartTagPr CT_SmartTagPr ? */\n\t\t\tcase '<smartTagPr': case '<smartTagPr/>': break;\n\n\t\t\t/* 18.2.23 smartTagTypes CT_SmartTagTypes ? */\n\t\t\tcase '<smartTagTypes': case '<smartTagTypes>': case '</smartTagTypes>': break;\n\t\t\t/* 18.2.22   smartTagType CT_SmartTagType ? */\n\t\t\tcase '<smartTagType': break;\n\n\t\t\t/* 18.2.24 webPublishing CT_WebPublishing ? */\n\t\t\tcase '<webPublishing': case '<webPublishing/>': break;\n\n\t\t\t/* 18.2.11 fileRecoveryPr CT_FileRecoveryPr ? */\n\t\t\tcase '<fileRecoveryPr': case '<fileRecoveryPr/>': break;\n\n\t\t\t/* 18.2.26 webPublishObjects CT_WebPublishObjects ? */\n\t\t\tcase '<webPublishObjects>': case '<webPublishObjects': case '</webPublishObjects>': break;\n\t\t\t/* 18.2.25 webPublishObject CT_WebPublishObject ? */\n\t\t\tcase '<webPublishObject': break;\n\n\t\t\t/* 18.2.10 extLst CT_ExtensionList ? */\n\t\t\tcase '<extLst>': case '</extLst>': case '<extLst/>': break;\n\t\t\t/* 18.2.7    ext CT_Extension + */\n\t\t\tcase '<ext': pass=true; break; //TODO: check with versions of excel\n\t\t\tcase '</ext>': pass=false; break;\n\n\t\t\t/* Others */\n\t\t\tcase '<ArchID': break;\n\t\t\tcase '<AlternateContent': pass=true; break;\n\t\t\tcase '</AlternateContent>': pass=false; break;\n\n\t\t\tdefault: if(!pass && opts.WTF) throw 'unrecognized ' + y[0] + ' in workbook';\n\t\t}\n\t});\n\tif(XMLNS.main.indexOf(wb.xmlns) === -1) throw new Error(\"Unknown Namespace: \" + wb.xmlns);\n\n\tparse_wb_defaults(wb);\n\n\treturn wb;\n}\n\nvar WB_XML_ROOT = writextag('workbook', null, {\n\t'xmlns': XMLNS.main[0],\n\t//'xmlns:mx': XMLNS.mx,\n\t//'xmlns:s': XMLNS.main[0],\n\t'xmlns:r': XMLNS.r\n});\n\nfunction safe1904(wb) {\n\t/* TODO: store date1904 somewhere else */\n\ttry { return parsexmlbool(wb.Workbook.WBProps.date1904) ? \"true\" : \"false\"; } catch(e) { return \"false\"; }\n}\n\nfunction write_wb_xml(wb, opts) {\n\tvar o = [XML_HEADER];\n\to[o.length] = WB_XML_ROOT;\n\to[o.length] = (writextag('workbookPr', null, {date1904:safe1904(wb)}));\n\to[o.length] = \"<sheets>\";\n\tfor(var i = 0; i != wb.SheetNames.length; ++i)\n\t\to[o.length] = (writextag('sheet',null,{name:wb.SheetNames[i].substr(0,31), sheetId:\"\"+(i+1), \"r:id\":\"rId\"+(i+1)}));\n\to[o.length] = \"</sheets>\";\n\tif(o.length>2){ o[o.length] = '</workbook>'; o[1]=o[1].replace(\"/>\",\">\"); }\n\treturn o.join(\"\");\n}\n/* [MS-XLSB] 2.4.301 BrtBundleSh */\nfunction parse_BrtBundleSh(data, length) {\n\tvar z = {};\n\tz.hsState = data.read_shift(4); //ST_SheetState\n\tz.iTabID = data.read_shift(4);\n\tz.strRelID = parse_RelID(data,length-8);\n\tz.name = parse_XLWideString(data);\n\treturn z;\n}\nfunction write_BrtBundleSh(data, o) {\n\tif(!o) o = new_buf(127);\n\to.write_shift(4, data.hsState);\n\to.write_shift(4, data.iTabID);\n\twrite_RelID(data.strRelID, o);\n\twrite_XLWideString(data.name.substr(0,31), o);\n\treturn o;\n}\n\n/* [MS-XLSB] 2.4.807 BrtWbProp */\nfunction parse_BrtWbProp(data, length) {\n\tdata.read_shift(4);\n\tvar dwThemeVersion = data.read_shift(4);\n\tvar strName = (length > 8) ? parse_XLWideString(data) : \"\";\n\treturn [dwThemeVersion, strName];\n}\nfunction write_BrtWbProp(data, o) {\n\tif(!o) o = new_buf(8);\n\to.write_shift(4, 0);\n\to.write_shift(4, 0);\n\treturn o;\n}\n\nfunction parse_BrtFRTArchID$(data, length) {\n\tvar o = {};\n\tdata.read_shift(4);\n\to.ArchID = data.read_shift(4);\n\tdata.l += length - 8;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.1.7.60 Workbook */\nfunction parse_wb_bin(data, opts) {\n\tvar wb = { AppVersion:{}, WBProps:{}, WBView:[], Sheets:[], CalcPr:{}, xmlns: \"\" };\n\tvar pass = false, z;\n\n\trecordhopper(data, function hopper_wb(val, R) {\n\t\tswitch(R.n) {\n\t\t\tcase 'BrtBundleSh': wb.Sheets.push(val); break;\n\n\t\t\tcase 'BrtBeginBook': break;\n\t\t\tcase 'BrtFileVersion': break;\n\t\t\tcase 'BrtWbProp': break;\n\t\t\tcase 'BrtACBegin': break;\n\t\t\tcase 'BrtAbsPath15': break;\n\t\t\tcase 'BrtACEnd': break;\n\t\t\tcase 'BrtWbFactoid': break;\n\t\t\t/*case 'BrtBookProtectionIso': break;*/\n\t\t\tcase 'BrtBookProtection': break;\n\t\t\tcase 'BrtBeginBookViews': break;\n\t\t\tcase 'BrtBookView': break;\n\t\t\tcase 'BrtEndBookViews': break;\n\t\t\tcase 'BrtBeginBundleShs': break;\n\t\t\tcase 'BrtEndBundleShs': break;\n\t\t\tcase 'BrtBeginFnGroup': break;\n\t\t\tcase 'BrtEndFnGroup': break;\n\t\t\tcase 'BrtBeginExternals': break;\n\t\t\tcase 'BrtSupSelf': break;\n\t\t\tcase 'BrtSupBookSrc': break;\n\t\t\tcase 'BrtExternSheet': break;\n\t\t\tcase 'BrtEndExternals': break;\n\t\t\tcase 'BrtName': break;\n\t\t\tcase 'BrtCalcProp': break;\n\t\t\tcase 'BrtUserBookView': break;\n\t\t\tcase 'BrtBeginPivotCacheIDs': break;\n\t\t\tcase 'BrtBeginPivotCacheID': break;\n\t\t\tcase 'BrtEndPivotCacheID': break;\n\t\t\tcase 'BrtEndPivotCacheIDs': break;\n\t\t\tcase 'BrtWebOpt': break;\n\t\t\tcase 'BrtFileRecover': break;\n\t\t\tcase 'BrtFileSharing': break;\n\t\t\t/*case 'BrtBeginWebPubItems': break;\n\t\t\tcase 'BrtBeginWebPubItem': break;\n\t\t\tcase 'BrtEndWebPubItem': break;\n\t\t\tcase 'BrtEndWebPubItems': break;*/\n\n\t\t\t/* Smart Tags */\n\t\t\tcase 'BrtBeginSmartTagTypes': break;\n\t\t\tcase 'BrtSmartTagType': break;\n\t\t\tcase 'BrtEndSmartTagTypes': break;\n\n\t\t\tcase 'BrtFRTBegin': pass = true; break;\n\t\t\tcase 'BrtFRTArchID$': break;\n\t\t\tcase 'BrtWorkBookPr15': break;\n\t\t\tcase 'BrtFRTEnd': pass = false; break;\n\t\t\tcase 'BrtEndBook': break;\n\t\t\tdefault: if(!pass || opts.WTF) throw new Error(\"Unexpected record \" + R.n);\n\t\t}\n\t});\n\n\tparse_wb_defaults(wb);\n\n\treturn wb;\n}\n\n/* [MS-XLSB] 2.1.7.60 Workbook */\nfunction write_BUNDLESHS(ba, wb, opts) {\n\twrite_record(ba, \"BrtBeginBundleShs\");\n\tfor(var idx = 0; idx != wb.SheetNames.length; ++idx) {\n\t\tvar d = { hsState: 0, iTabID: idx+1, strRelID: 'rId' + (idx+1), name: wb.SheetNames[idx] };\n\t\twrite_record(ba, \"BrtBundleSh\", write_BrtBundleSh(d));\n\t}\n\twrite_record(ba, \"BrtEndBundleShs\");\n}\n\n/* [MS-XLSB] 2.4.643 BrtFileVersion */\nfunction write_BrtFileVersion(data, o) {\n\tif(!o) o = new_buf(127);\n\tfor(var i = 0; i != 4; ++i) o.write_shift(4, 0);\n\twrite_XLWideString(\"SheetJS\", o);\n\twrite_XLWideString(XLSX.version, o);\n\twrite_XLWideString(XLSX.version, o);\n\twrite_XLWideString(\"7262\", o);\n\to.length = o.l;\n\treturn o;\n}\n\n/* [MS-XLSB] 2.1.7.60 Workbook */\nfunction write_BOOKVIEWS(ba, wb, opts) {\n\twrite_record(ba, \"BrtBeginBookViews\");\n\t/* 1*(BrtBookView *FRT) */\n\twrite_record(ba, \"BrtEndBookViews\");\n}\n\n/* [MS-XLSB] 2.4.302 BrtCalcProp */\nfunction write_BrtCalcProp(data, o) {\n\tif(!o) o = new_buf(26);\n\to.write_shift(4,0); /* force recalc */\n\to.write_shift(4,1);\n\to.write_shift(4,0);\n\twrite_Xnum(0, o);\n\to.write_shift(-4, 1023);\n\to.write_shift(1, 0x33);\n\to.write_shift(1, 0x00);\n\treturn o;\n}\n\nfunction write_BrtFileRecover(data, o) {\n\tif(!o) o = new_buf(1);\n\to.write_shift(1,0);\n\treturn o;\n}\n\n/* [MS-XLSB] 2.1.7.60 Workbook */\nfunction write_wb_bin(wb, opts) {\n\tvar ba = buf_array();\n\twrite_record(ba, \"BrtBeginBook\");\n\twrite_record(ba, \"BrtFileVersion\", write_BrtFileVersion());\n\t/* [[BrtFileSharingIso] BrtFileSharing] */\n\twrite_record(ba, \"BrtWbProp\", write_BrtWbProp());\n\t/* [ACABSPATH] */\n\t/* [[BrtBookProtectionIso] BrtBookProtection] */\n\twrite_BOOKVIEWS(ba, wb, opts);\n\twrite_BUNDLESHS(ba, wb, opts);\n\t/* [FNGROUP] */\n\t/* [EXTERNALS] */\n\t/* *BrtName */\n\twrite_record(ba, \"BrtCalcProp\", write_BrtCalcProp());\n\t/* [BrtOleSize] */\n\t/* *(BrtUserBookView *FRT) */\n\t/* [PIVOTCACHEIDS] */\n\t/* [BrtWbFactoid] */\n\t/* [SMARTTAGTYPES] */\n\t/* [BrtWebOpt] */\n\twrite_record(ba, \"BrtFileRecover\", write_BrtFileRecover());\n\t/* [WEBPUBITEMS] */\n\t/* [CRERRS] */\n\t/* FRTWORKBOOK */\n\twrite_record(ba, \"BrtEndBook\");\n\n\treturn ba.end();\n}\nfunction parse_wb(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? parse_wb_bin : parse_wb_xml)(data, opts);\n}\n\nfunction parse_ws(data, name, opts, rels) {\n\treturn (name.substr(-4)===\".bin\" ? parse_ws_bin : parse_ws_xml)(data, opts, rels);\n}\n\nfunction parse_sty(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? parse_sty_bin : parse_sty_xml)(data, opts);\n}\n\nfunction parse_theme(data, name, opts) {\n\treturn parse_theme_xml(data, opts);\n}\n\nfunction parse_sst(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? parse_sst_bin : parse_sst_xml)(data, opts);\n}\n\nfunction parse_cmnt(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? parse_comments_bin : parse_comments_xml)(data, opts);\n}\n\nfunction parse_cc(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? parse_cc_bin : parse_cc_xml)(data, opts);\n}\n\nfunction write_wb(wb, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? write_wb_bin : write_wb_xml)(wb, opts);\n}\n\nfunction write_ws(data, name, opts, wb) {\n\treturn (name.substr(-4)===\".bin\" ? write_ws_bin : write_ws_xml)(data, opts, wb);\n}\n\nfunction write_sty(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? write_sty_bin : write_sty_xml)(data, opts);\n}\n\nfunction write_sst(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? write_sst_bin : write_sst_xml)(data, opts);\n}\n/*\nfunction write_cmnt(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? write_comments_bin : write_comments_xml)(data, opts);\n}\n\nfunction write_cc(data, name, opts) {\n\treturn (name.substr(-4)===\".bin\" ? write_cc_bin : write_cc_xml)(data, opts);\n}\n*/\nvar attregexg2=/([\\w:]+)=((?:\")([^\"]*)(?:\")|(?:')([^']*)(?:'))/g;\nvar attregex2=/([\\w:]+)=((?:\")(?:[^\"]*)(?:\")|(?:')(?:[^']*)(?:'))/;\nvar _chr = function(c) { return String.fromCharCode(c); };\nfunction xlml_parsexmltag(tag, skip_root) {\n\tvar words = tag.split(/\\s+/);\n\tvar z = []; if(!skip_root) z[0] = words[0];\n\tif(words.length === 1) return z;\n\tvar m = tag.match(attregexg2), y, j, w, i;\n\tif(m) for(i = 0; i != m.length; ++i) {\n\t\ty = m[i].match(attregex2);\n\t\tif((j=y[1].indexOf(\":\")) === -1) z[y[1]] = y[2].substr(1,y[2].length-2);\n\t\telse {\n\t\t\tif(y[1].substr(0,6) === \"xmlns:\") w = \"xmlns\"+y[1].substr(6);\n\t\t\telse w = y[1].substr(j+1);\n\t\t\tz[w] = y[2].substr(1,y[2].length-2);\n\t\t}\n\t}\n\treturn z;\n}\nfunction xlml_parsexmltagobj(tag) {\n\tvar words = tag.split(/\\s+/);\n\tvar z = {};\n\tif(words.length === 1) return z;\n\tvar m = tag.match(attregexg2), y, j, w, i;\n\tif(m) for(i = 0; i != m.length; ++i) {\n\t\ty = m[i].match(attregex2);\n\t\tif((j=y[1].indexOf(\":\")) === -1) z[y[1]] = y[2].substr(1,y[2].length-2);\n\t\telse {\n\t\t\tif(y[1].substr(0,6) === \"xmlns:\") w = \"xmlns\"+y[1].substr(6);\n\t\t\telse w = y[1].substr(j+1);\n\t\t\tz[w] = y[2].substr(1,y[2].length-2);\n\t\t}\n\t}\n\treturn z;\n}\n\n// ----\n\nfunction xlml_format(format, value) {\n\tvar fmt = XLMLFormatMap[format] || unescapexml(format);\n\tif(fmt === \"General\") return SSF._general(value);\n\treturn SSF.format(fmt, value);\n}\n\nfunction xlml_set_custprop(Custprops, Rn, cp, val) {\n\tswitch((cp[0].match(/dt:dt=\"([\\w.]+)\"/)||[\"\",\"\"])[1]) {\n\t\tcase \"boolean\": val = parsexmlbool(val); break;\n\t\tcase \"i2\": case \"int\": val = parseInt(val, 10); break;\n\t\tcase \"r4\": case \"float\": val = parseFloat(val); break;\n\t\tcase \"date\": case \"dateTime.tz\": val = new Date(val); break;\n\t\tcase \"i8\": case \"string\": case \"fixed\": case \"uuid\": case \"bin.base64\": break;\n\t\tdefault: throw \"bad custprop:\" + cp[0];\n\t}\n\tCustprops[unescapexml(Rn[3])] = val;\n}\n\nfunction safe_format_xlml(cell, nf, o) {\n\ttry {\n\t\tif(cell.t === 'e') { cell.w = cell.w || BErr[cell.v]; }\n\t\telse if(nf === \"General\") {\n\t\t\tif(cell.t === 'n') {\n\t\t\t\tif((cell.v|0) === cell.v) cell.w = SSF._general_int(cell.v);\n\t\t\t\telse cell.w = SSF._general_num(cell.v);\n\t\t\t}\n\t\t\telse cell.w = SSF._general(cell.v);\n\t\t}\n\t\telse cell.w = xlml_format(nf||\"General\", cell.v);\n\t\tif(o.cellNF) cell.z = XLMLFormatMap[nf]||nf||\"General\";\n\t} catch(e) { if(o.WTF) throw e; }\n}\n\nfunction process_style_xlml(styles, stag, opts) {\n\tif(opts.cellStyles) {\n\t\tif(stag.Interior) {\n\t\t\tvar I = stag.Interior;\n\t\t\tif(I.Pattern) I.patternType = XLMLPatternTypeMap[I.Pattern] || I.Pattern;\n\t\t}\n\t}\n\tstyles[stag.ID] = stag;\n}\n\n/* TODO: there must exist some form of OSP-blessed spec */\nfunction parse_xlml_data(xml, ss, data, cell, base, styles, csty, row, o) {\n\tvar nf = \"General\", sid = cell.StyleID, S = {}; o = o || {};\n\tvar interiors = [];\n\tif(sid === undefined && row) sid = row.StyleID;\n\tif(sid === undefined && csty) sid = csty.StyleID;\n\twhile(styles[sid] !== undefined) {\n\t\tif(styles[sid].nf) nf = styles[sid].nf;\n\t\tif(styles[sid].Interior) interiors.push(styles[sid].Interior);\n\t\tif(!styles[sid].Parent) break;\n\t\tsid = styles[sid].Parent;\n\t}\n\tswitch(data.Type) {\n\t\tcase 'Boolean':\n\t\t\tcell.t = 'b';\n\t\t\tcell.v = parsexmlbool(xml);\n\t\t\tbreak;\n\t\tcase 'String':\n\t\t\tcell.t = 's'; cell.r = xlml_fixstr(unescapexml(xml));\n\t\t\tcell.v = xml.indexOf(\"<\") > -1 ? ss : cell.r;\n\t\t\tbreak;\n\t\tcase 'DateTime':\n\t\t\tcell.v = (Date.parse(xml) - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);\n\t\t\tif(cell.v !== cell.v) cell.v = unescapexml(xml);\n\t\t\telse if(cell.v >= 1 && cell.v<60) cell.v = cell.v -1;\n\t\t\tif(!nf || nf == \"General\") nf = \"yyyy-mm-dd\";\n\t\t\t/* falls through */\n\t\tcase 'Number':\n\t\t\tif(cell.v === undefined) cell.v=+xml;\n\t\t\tif(!cell.t) cell.t = 'n';\n\t\t\tbreak;\n\t\tcase 'Error': cell.t = 'e'; cell.v = RBErr[xml]; cell.w = xml; break;\n\t\tdefault: cell.t = 's'; cell.v = xlml_fixstr(ss); break;\n\t}\n\tsafe_format_xlml(cell, nf, o);\n\tif(o.cellFormula != null && cell.Formula) {\n\t\tcell.f = rc_to_a1(unescapexml(cell.Formula), base);\n\t\tcell.Formula = undefined;\n\t}\n\tif(o.cellStyles) {\n\t\tinteriors.forEach(function(x) {\n\t\t\tif(!S.patternType && x.patternType) S.patternType = x.patternType;\n\t\t});\n\t\tcell.s = S;\n\t}\n\tcell.ixfe = cell.StyleID !== undefined ? cell.StyleID : 'Default';\n}\n\nfunction xlml_clean_comment(comment) {\n\tcomment.t = comment.v;\n\tcomment.v = comment.w = comment.ixfe = undefined;\n}\n\nfunction xlml_normalize(d) {\n\tif(has_buf && Buffer.isBuffer(d)) return d.toString('utf8');\n\tif(typeof d === 'string') return d;\n\tthrow \"badf\";\n}\n\n/* TODO: Everything */\nvar xlmlregex = /<(\\/?)([a-z0-9]*:|)(\\w+)[^>]*>/mg;\nfunction parse_xlml_xml(d, opts) {\n\tvar str = xlml_normalize(d);\n\tvar Rn;\n\tvar state = [], tmp;\n\tvar sheets = {}, sheetnames = [], cursheet = {}, sheetname = \"\";\n\tvar table = {}, cell = {}, row = {}, dtag, didx;\n\tvar c = 0, r = 0;\n\tvar refguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };\n\tvar styles = {}, stag = {};\n\tvar ss = \"\", fidx = 0;\n\tvar mergecells = [];\n\tvar Props = {}, Custprops = {}, pidx = 0, cp = {};\n\tvar comments = [], comment = {};\n\tvar cstys = [], csty;\n\txlmlregex.lastIndex = 0;\n\twhile((Rn = xlmlregex.exec(str))) switch(Rn[3]) {\n\t\tcase 'Data':\n\t\t\tif(state[state.length-1][1]) break;\n\t\t\tif(Rn[1]==='/') parse_xlml_data(str.slice(didx, Rn.index), ss, dtag, state[state.length-1][0]==\"Comment\"?comment:cell, {c:c,r:r}, styles, cstys[c], row, opts);\n\t\t\telse { ss = \"\"; dtag = xlml_parsexmltag(Rn[0]); didx = Rn.index + Rn[0].length; }\n\t\t\tbreak;\n\t\tcase 'Cell':\n\t\t\tif(Rn[1]==='/'){\n\t\t\t\tif(comments.length > 0) cell.c = comments;\n\t\t\t\tif((!opts.sheetRows || opts.sheetRows > r) && cell.v !== undefined) cursheet[encode_col(c) + encode_row(r)] = cell;\n\t\t\t\tif(cell.HRef) {\n\t\t\t\t\tcell.l = {Target:cell.HRef, tooltip:cell.HRefScreenTip};\n\t\t\t\t\tcell.HRef = cell.HRefScreenTip = undefined;\n\t\t\t\t}\n\t\t\t\tif(cell.MergeAcross || cell.MergeDown) {\n\t\t\t\t\tvar cc = c + (parseInt(cell.MergeAcross,10)|0);\n\t\t\t\t\tvar rr = r + (parseInt(cell.MergeDown,10)|0);\n\t\t\t\t\tmergecells.push({s:{c:c,r:r},e:{c:cc,r:rr}});\n\t\t\t\t}\n\t\t\t\t++c;\n\t\t\t\tif(cell.MergeAcross) c += +cell.MergeAcross;\n\t\t\t} else {\n\t\t\t\tcell = xlml_parsexmltagobj(Rn[0]);\n\t\t\t\tif(cell.Index) c = +cell.Index - 1;\n\t\t\t\tif(c < refguess.s.c) refguess.s.c = c;\n\t\t\t\tif(c > refguess.e.c) refguess.e.c = c;\n\t\t\t\tif(Rn[0].substr(-2) === \"/>\") ++c;\n\t\t\t\tcomments = [];\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'Row':\n\t\t\tif(Rn[1]==='/' || Rn[0].substr(-2) === \"/>\") {\n\t\t\t\tif(r < refguess.s.r) refguess.s.r = r;\n\t\t\t\tif(r > refguess.e.r) refguess.e.r = r;\n\t\t\t\tif(Rn[0].substr(-2) === \"/>\") {\n\t\t\t\t\trow = xlml_parsexmltag(Rn[0]);\n\t\t\t\t\tif(row.Index) r = +row.Index - 1;\n\t\t\t\t}\n\t\t\t\tc = 0; ++r;\n\t\t\t} else {\n\t\t\t\trow = xlml_parsexmltag(Rn[0]);\n\t\t\t\tif(row.Index) r = +row.Index - 1;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'Worksheet': /* TODO: read range from FullRows/FullColumns */\n\t\t\tif(Rn[1]==='/'){\n\t\t\t\tif((tmp=state.pop())[0]!==Rn[3]) throw \"Bad state: \"+tmp;\n\t\t\t\tsheetnames.push(sheetname);\n\t\t\t\tif(refguess.s.r <= refguess.e.r && refguess.s.c <= refguess.e.c) cursheet[\"!ref\"] = encode_range(refguess);\n\t\t\t\tif(mergecells.length) cursheet[\"!merges\"] = mergecells;\n\t\t\t\tsheets[sheetname] = cursheet;\n\t\t\t} else {\n\t\t\t\trefguess = {s: {r:1000000, c:1000000}, e: {r:0, c:0} };\n\t\t\t\tr = c = 0;\n\t\t\t\tstate.push([Rn[3], false]);\n\t\t\t\ttmp = xlml_parsexmltag(Rn[0]);\n\t\t\t\tsheetname = tmp.Name;\n\t\t\t\tcursheet = {};\n\t\t\t\tmergecells = [];\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'Table':\n\t\t\tif(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw \"Bad state: \"+tmp;}\n\t\t\telse if(Rn[0].slice(-2) == \"/>\") break;\n\t\t\telse {\n\t\t\t\ttable = xlml_parsexmltag(Rn[0]);\n\t\t\t\tstate.push([Rn[3], false]);\n\t\t\t\tcstys = [];\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase 'Style':\n\t\t\tif(Rn[1]==='/') process_style_xlml(styles, stag, opts);\n\t\t\telse stag = xlml_parsexmltag(Rn[0]);\n\t\t\tbreak;\n\n\t\tcase 'NumberFormat':\n\t\t\tstag.nf = xlml_parsexmltag(Rn[0]).Format || \"General\";\n\t\t\tbreak;\n\n\t\tcase 'Column':\n\t\t\tif(state[state.length-1][0] !== 'Table') break;\n\t\t\tcsty = xlml_parsexmltag(Rn[0]);\n\t\t\tcstys[(csty.Index-1||cstys.length)] = csty;\n\t\t\tfor(var i = 0; i < +csty.Span; ++i) cstys[cstys.length] = csty;\n\t\t\tbreak;\n\n\t\tcase 'NamedRange': break;\n\t\tcase 'NamedCell': break;\n\t\tcase 'B': break;\n\t\tcase 'I': break;\n\t\tcase 'U': break;\n\t\tcase 'S': break;\n\t\tcase 'Sub': break;\n\t\tcase 'Sup': break;\n\t\tcase 'Span': break;\n\t\tcase 'Border': break;\n\t\tcase 'Alignment': break;\n\t\tcase 'Borders': break;\n\t\tcase 'Font':\n\t\t\tif(Rn[0].substr(-2) === \"/>\") break;\n\t\t\telse if(Rn[1]===\"/\") ss += str.slice(fidx, Rn.index);\n\t\t\telse fidx = Rn.index + Rn[0].length;\n\t\t\tbreak;\n\t\tcase 'Interior':\n\t\t\tif(!opts.cellStyles) break;\n\t\t\tstag.Interior = xlml_parsexmltag(Rn[0]);\n\t\t\tbreak;\n\t\tcase 'Protection': break;\n\n\t\tcase 'Author':\n\t\tcase 'Title':\n\t\tcase 'Description':\n\t\tcase 'Created':\n\t\tcase 'Keywords':\n\t\tcase 'Subject':\n\t\tcase 'Category':\n\t\tcase 'Company':\n\t\tcase 'LastAuthor':\n\t\tcase 'LastSaved':\n\t\tcase 'LastPrinted':\n\t\tcase 'Version':\n\t\tcase 'Revision':\n\t\tcase 'TotalTime':\n\t\tcase 'HyperlinkBase':\n\t\tcase 'Manager':\n\t\t\tif(Rn[0].substr(-2) === \"/>\") break;\n\t\t\telse if(Rn[1]===\"/\") xlml_set_prop(Props, Rn[3], str.slice(pidx, Rn.index));\n\t\t\telse pidx = Rn.index + Rn[0].length;\n\t\t\tbreak;\n\t\tcase 'Paragraphs': break;\n\n\t\tcase 'Styles':\n\t\tcase 'Workbook':\n\t\t\tif(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw \"Bad state: \"+tmp;}\n\t\t\telse state.push([Rn[3], false]);\n\t\t\tbreak;\n\n\t\tcase 'Comment':\n\t\t\tif(Rn[1]==='/'){\n\t\t\t\tif((tmp=state.pop())[0]!==Rn[3]) throw \"Bad state: \"+tmp;\n\t\t\t\txlml_clean_comment(comment);\n\t\t\t\tcomments.push(comment);\n\t\t\t} else {\n\t\t\t\tstate.push([Rn[3], false]);\n\t\t\t\ttmp = xlml_parsexmltag(Rn[0]);\n\t\t\t\tcomment = {a:tmp.Author};\n\t\t\t}\n\t\t\tbreak;\n\n\t\tcase 'Name': break;\n\n\t\tcase 'ComponentOptions':\n\t\tcase 'DocumentProperties':\n\t\tcase 'CustomDocumentProperties':\n\t\tcase 'OfficeDocumentSettings':\n\t\tcase 'PivotTable':\n\t\tcase 'PivotCache':\n\t\tcase 'Names':\n\t\tcase 'MapInfo':\n\t\tcase 'PageBreaks':\n\t\tcase 'QueryTable':\n\t\tcase 'DataValidation':\n\t\tcase 'AutoFilter':\n\t\tcase 'Sorting':\n\t\tcase 'Schema':\n\t\tcase 'data':\n\t\tcase 'ConditionalFormatting':\n\t\tcase 'SmartTagType':\n\t\tcase 'SmartTags':\n\t\tcase 'ExcelWorkbook':\n\t\tcase 'WorkbookOptions':\n\t\tcase 'WorksheetOptions':\n\t\t\tif(Rn[1]==='/'){if((tmp=state.pop())[0]!==Rn[3]) throw \"Bad state: \"+tmp;}\n\t\t\telse if(Rn[0].charAt(Rn[0].length-2) !== '/') state.push([Rn[3], true]);\n\t\t\tbreak;\n\n\t\tdefault:\n\t\t\tvar seen = true;\n\t\t\tswitch(state[state.length-1][0]) {\n\t\t\t\t/* OfficeDocumentSettings */\n\t\t\t\tcase 'OfficeDocumentSettings': switch(Rn[3]) {\n\t\t\t\t\tcase 'AllowPNG': break;\n\t\t\t\t\tcase 'RemovePersonalInformation': break;\n\t\t\t\t\tcase 'DownloadComponents': break;\n\t\t\t\t\tcase 'LocationOfComponents': break;\n\t\t\t\t\tcase 'Colors': break;\n\t\t\t\t\tcase 'Color': break;\n\t\t\t\t\tcase 'Index': break;\n\t\t\t\t\tcase 'RGB': break;\n\t\t\t\t\tcase 'PixelsPerInch': break;\n\t\t\t\t\tcase 'TargetScreenSize': break;\n\t\t\t\t\tcase 'ReadOnlyRecommended': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* ComponentOptions */\n\t\t\t\tcase 'ComponentOptions': switch(Rn[3]) {\n\t\t\t\t\tcase 'Toolbar': break;\n\t\t\t\t\tcase 'HideOfficeLogo': break;\n\t\t\t\t\tcase 'SpreadsheetAutoFit': break;\n\t\t\t\t\tcase 'Label': break;\n\t\t\t\t\tcase 'Caption': break;\n\t\t\t\t\tcase 'MaxHeight': break;\n\t\t\t\t\tcase 'MaxWidth': break;\n\t\t\t\t\tcase 'NextSheetNumber': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* ExcelWorkbook */\n\t\t\t\tcase 'ExcelWorkbook': switch(Rn[3]) {\n\t\t\t\t\tcase 'WindowHeight': break;\n\t\t\t\t\tcase 'WindowWidth': break;\n\t\t\t\t\tcase 'WindowTopX': break;\n\t\t\t\t\tcase 'WindowTopY': break;\n\t\t\t\t\tcase 'TabRatio': break;\n\t\t\t\t\tcase 'ProtectStructure': break;\n\t\t\t\t\tcase 'ProtectWindows': break;\n\t\t\t\t\tcase 'ActiveSheet': break;\n\t\t\t\t\tcase 'DisplayInkNotes': break;\n\t\t\t\t\tcase 'FirstVisibleSheet': break;\n\t\t\t\t\tcase 'SupBook': break;\n\t\t\t\t\tcase 'SheetName': break;\n\t\t\t\t\tcase 'SheetIndex': break;\n\t\t\t\t\tcase 'SheetIndexFirst': break;\n\t\t\t\t\tcase 'SheetIndexLast': break;\n\t\t\t\t\tcase 'Dll': break;\n\t\t\t\t\tcase 'AcceptLabelsInFormulas': break;\n\t\t\t\t\tcase 'DoNotSaveLinkValues': break;\n\t\t\t\t\tcase 'Date1904': break;\n\t\t\t\t\tcase 'Iteration': break;\n\t\t\t\t\tcase 'MaxIterations': break;\n\t\t\t\t\tcase 'MaxChange': break;\n\t\t\t\t\tcase 'Path': break;\n\t\t\t\t\tcase 'Xct': break;\n\t\t\t\t\tcase 'Count': break;\n\t\t\t\t\tcase 'SelectedSheets': break;\n\t\t\t\t\tcase 'Calculation': break;\n\t\t\t\t\tcase 'Uncalced': break;\n\t\t\t\t\tcase 'StartupPrompt': break;\n\t\t\t\t\tcase 'Crn': break;\n\t\t\t\t\tcase 'ExternName': break;\n\t\t\t\t\tcase 'Formula': break;\n\t\t\t\t\tcase 'ColFirst': break;\n\t\t\t\t\tcase 'ColLast': break;\n\t\t\t\t\tcase 'WantAdvise': break;\n\t\t\t\t\tcase 'Boolean': break;\n\t\t\t\t\tcase 'Error': break;\n\t\t\t\t\tcase 'Text': break;\n\t\t\t\t\tcase 'OLE': break;\n\t\t\t\t\tcase 'NoAutoRecover': break;\n\t\t\t\t\tcase 'PublishObjects': break;\n\t\t\t\t\tcase 'DoNotCalculateBeforeSave': break;\n\t\t\t\t\tcase 'Number': break;\n\t\t\t\t\tcase 'RefModeR1C1': break;\n\t\t\t\t\tcase 'EmbedSaveSmartTags': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* WorkbookOptions */\n\t\t\t\tcase 'WorkbookOptions': switch(Rn[3]) {\n\t\t\t\t\tcase 'OWCVersion': break;\n\t\t\t\t\tcase 'Height': break;\n\t\t\t\t\tcase 'Width': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* WorksheetOptions */\n\t\t\t\tcase 'WorksheetOptions': switch(Rn[3]) {\n\t\t\t\t\tcase 'Unsynced': break;\n\t\t\t\t\tcase 'Visible': break;\n\t\t\t\t\tcase 'Print': break;\n\t\t\t\t\tcase 'Panes': break;\n\t\t\t\t\tcase 'Scale': break;\n\t\t\t\t\tcase 'Pane': break;\n\t\t\t\t\tcase 'Number': break;\n\t\t\t\t\tcase 'Layout': break;\n\t\t\t\t\tcase 'Header': break;\n\t\t\t\t\tcase 'Footer': break;\n\t\t\t\t\tcase 'PageSetup': break;\n\t\t\t\t\tcase 'PageMargins': break;\n\t\t\t\t\tcase 'Selected': break;\n\t\t\t\t\tcase 'ProtectObjects': break;\n\t\t\t\t\tcase 'EnableSelection': break;\n\t\t\t\t\tcase 'ProtectScenarios': break;\n\t\t\t\t\tcase 'ValidPrinterInfo': break;\n\t\t\t\t\tcase 'HorizontalResolution': break;\n\t\t\t\t\tcase 'VerticalResolution': break;\n\t\t\t\t\tcase 'NumberofCopies': break;\n\t\t\t\t\tcase 'ActiveRow': break;\n\t\t\t\t\tcase 'ActiveCol': break;\n\t\t\t\t\tcase 'ActivePane': break;\n\t\t\t\t\tcase 'TopRowVisible': break;\n\t\t\t\t\tcase 'TopRowBottomPane': break;\n\t\t\t\t\tcase 'LeftColumnVisible': break;\n\t\t\t\t\tcase 'LeftColumnRightPane': break;\n\t\t\t\t\tcase 'FitToPage': break;\n\t\t\t\t\tcase 'RangeSelection': break;\n\t\t\t\t\tcase 'PaperSizeIndex': break;\n\t\t\t\t\tcase 'PageLayoutZoom': break;\n\t\t\t\t\tcase 'PageBreakZoom': break;\n\t\t\t\t\tcase 'FilterOn': break;\n\t\t\t\t\tcase 'DoNotDisplayGridlines': break;\n\t\t\t\t\tcase 'SplitHorizontal': break;\n\t\t\t\t\tcase 'SplitVertical': break;\n\t\t\t\t\tcase 'FreezePanes': break;\n\t\t\t\t\tcase 'FrozenNoSplit': break;\n\t\t\t\t\tcase 'FitWidth': break;\n\t\t\t\t\tcase 'FitHeight': break;\n\t\t\t\t\tcase 'CommentsLayout': break;\n\t\t\t\t\tcase 'Zoom': break;\n\t\t\t\t\tcase 'LeftToRight': break;\n\t\t\t\t\tcase 'Gridlines': break;\n\t\t\t\t\tcase 'AllowSort': break;\n\t\t\t\t\tcase 'AllowFilter': break;\n\t\t\t\t\tcase 'AllowInsertRows': break;\n\t\t\t\t\tcase 'AllowDeleteRows': break;\n\t\t\t\t\tcase 'AllowInsertCols': break;\n\t\t\t\t\tcase 'AllowDeleteCols': break;\n\t\t\t\t\tcase 'AllowInsertHyperlinks': break;\n\t\t\t\t\tcase 'AllowFormatCells': break;\n\t\t\t\t\tcase 'AllowSizeCols': break;\n\t\t\t\t\tcase 'AllowSizeRows': break;\n\t\t\t\t\tcase 'NoSummaryRowsBelowDetail': break;\n\t\t\t\t\tcase 'TabColorIndex': break;\n\t\t\t\t\tcase 'DoNotDisplayHeadings': break;\n\t\t\t\t\tcase 'ShowPageLayoutZoom': break;\n\t\t\t\t\tcase 'NoSummaryColumnsRightDetail': break;\n\t\t\t\t\tcase 'BlackAndWhite': break;\n\t\t\t\t\tcase 'DoNotDisplayZeros': break;\n\t\t\t\t\tcase 'DisplayPageBreak': break;\n\t\t\t\t\tcase 'RowColHeadings': break;\n\t\t\t\t\tcase 'DoNotDisplayOutline': break;\n\t\t\t\t\tcase 'NoOrientation': break;\n\t\t\t\t\tcase 'AllowUsePivotTables': break;\n\t\t\t\t\tcase 'ZeroHeight': break;\n\t\t\t\t\tcase 'ViewableRange': break;\n\t\t\t\t\tcase 'Selection': break;\n\t\t\t\t\tcase 'ProtectContents': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* PivotTable */\n\t\t\t\tcase 'PivotTable': case 'PivotCache': switch(Rn[3]) {\n\t\t\t\t\tcase 'ImmediateItemsOnDrop': break;\n\t\t\t\t\tcase 'ShowPageMultipleItemLabel': break;\n\t\t\t\t\tcase 'CompactRowIndent': break;\n\t\t\t\t\tcase 'Location': break;\n\t\t\t\t\tcase 'PivotField': break;\n\t\t\t\t\tcase 'Orientation': break;\n\t\t\t\t\tcase 'LayoutForm': break;\n\t\t\t\t\tcase 'LayoutSubtotalLocation': break;\n\t\t\t\t\tcase 'LayoutCompactRow': break;\n\t\t\t\t\tcase 'Position': break;\n\t\t\t\t\tcase 'PivotItem': break;\n\t\t\t\t\tcase 'DataType': break;\n\t\t\t\t\tcase 'DataField': break;\n\t\t\t\t\tcase 'SourceName': break;\n\t\t\t\t\tcase 'ParentField': break;\n\t\t\t\t\tcase 'PTLineItems': break;\n\t\t\t\t\tcase 'PTLineItem': break;\n\t\t\t\t\tcase 'CountOfSameItems': break;\n\t\t\t\t\tcase 'Item': break;\n\t\t\t\t\tcase 'ItemType': break;\n\t\t\t\t\tcase 'PTSource': break;\n\t\t\t\t\tcase 'CacheIndex': break;\n\t\t\t\t\tcase 'ConsolidationReference': break;\n\t\t\t\t\tcase 'FileName': break;\n\t\t\t\t\tcase 'Reference': break;\n\t\t\t\t\tcase 'NoColumnGrand': break;\n\t\t\t\t\tcase 'NoRowGrand': break;\n\t\t\t\t\tcase 'BlankLineAfterItems': break;\n\t\t\t\t\tcase 'Hidden': break;\n\t\t\t\t\tcase 'Subtotal': break;\n\t\t\t\t\tcase 'BaseField': break;\n\t\t\t\t\tcase 'MapChildItems': break;\n\t\t\t\t\tcase 'Function': break;\n\t\t\t\t\tcase 'RefreshOnFileOpen': break;\n\t\t\t\t\tcase 'PrintSetTitles': break;\n\t\t\t\t\tcase 'MergeLabels': break;\n\t\t\t\t\tcase 'DefaultVersion': break;\n\t\t\t\t\tcase 'RefreshName': break;\n\t\t\t\t\tcase 'RefreshDate': break;\n\t\t\t\t\tcase 'RefreshDateCopy': break;\n\t\t\t\t\tcase 'VersionLastRefresh': break;\n\t\t\t\t\tcase 'VersionLastUpdate': break;\n\t\t\t\t\tcase 'VersionUpdateableMin': break;\n\t\t\t\t\tcase 'VersionRefreshableMin': break;\n\t\t\t\t\tcase 'Calculation': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* PageBreaks */\n\t\t\t\tcase 'PageBreaks': switch(Rn[3]) {\n\t\t\t\t\tcase 'ColBreaks': break;\n\t\t\t\t\tcase 'ColBreak': break;\n\t\t\t\t\tcase 'RowBreaks': break;\n\t\t\t\t\tcase 'RowBreak': break;\n\t\t\t\t\tcase 'ColStart': break;\n\t\t\t\t\tcase 'ColEnd': break;\n\t\t\t\t\tcase 'RowEnd': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* AutoFilter */\n\t\t\t\tcase 'AutoFilter': switch(Rn[3]) {\n\t\t\t\t\tcase 'AutoFilterColumn': break;\n\t\t\t\t\tcase 'AutoFilterCondition': break;\n\t\t\t\t\tcase 'AutoFilterAnd': break;\n\t\t\t\t\tcase 'AutoFilterOr': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* QueryTable */\n\t\t\t\tcase 'QueryTable': switch(Rn[3]) {\n\t\t\t\t\tcase 'Id': break;\n\t\t\t\t\tcase 'AutoFormatFont': break;\n\t\t\t\t\tcase 'AutoFormatPattern': break;\n\t\t\t\t\tcase 'QuerySource': break;\n\t\t\t\t\tcase 'QueryType': break;\n\t\t\t\t\tcase 'EnableRedirections': break;\n\t\t\t\t\tcase 'RefreshedInXl9': break;\n\t\t\t\t\tcase 'URLString': break;\n\t\t\t\t\tcase 'HTMLTables': break;\n\t\t\t\t\tcase 'Connection': break;\n\t\t\t\t\tcase 'CommandText': break;\n\t\t\t\t\tcase 'RefreshInfo': break;\n\t\t\t\t\tcase 'NoTitles': break;\n\t\t\t\t\tcase 'NextId': break;\n\t\t\t\t\tcase 'ColumnInfo': break;\n\t\t\t\t\tcase 'OverwriteCells': break;\n\t\t\t\t\tcase 'DoNotPromptForFile': break;\n\t\t\t\t\tcase 'TextWizardSettings': break;\n\t\t\t\t\tcase 'Source': break;\n\t\t\t\t\tcase 'Number': break;\n\t\t\t\t\tcase 'Decimal': break;\n\t\t\t\t\tcase 'ThousandSeparator': break;\n\t\t\t\t\tcase 'TrailingMinusNumbers': break;\n\t\t\t\t\tcase 'FormatSettings': break;\n\t\t\t\t\tcase 'FieldType': break;\n\t\t\t\t\tcase 'Delimiters': break;\n\t\t\t\t\tcase 'Tab': break;\n\t\t\t\t\tcase 'Comma': break;\n\t\t\t\t\tcase 'AutoFormatName': break;\n\t\t\t\t\tcase 'VersionLastEdit': break;\n\t\t\t\t\tcase 'VersionLastRefresh': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* Sorting */\n\t\t\t\tcase 'Sorting':\n\t\t\t\t/* ConditionalFormatting */\n\t\t\t\tcase 'ConditionalFormatting':\n\t\t\t\t/* DataValidation */\n\t\t\t\tcase 'DataValidation': switch(Rn[3]) {\n\t\t\t\t\tcase 'Range': break;\n\t\t\t\t\tcase 'Type': break;\n\t\t\t\t\tcase 'Min': break;\n\t\t\t\t\tcase 'Max': break;\n\t\t\t\t\tcase 'Sort': break;\n\t\t\t\t\tcase 'Descending': break;\n\t\t\t\t\tcase 'Order': break;\n\t\t\t\t\tcase 'CaseSensitive': break;\n\t\t\t\t\tcase 'Value': break;\n\t\t\t\t\tcase 'ErrorStyle': break;\n\t\t\t\t\tcase 'ErrorMessage': break;\n\t\t\t\t\tcase 'ErrorTitle': break;\n\t\t\t\t\tcase 'CellRangeList': break;\n\t\t\t\t\tcase 'InputMessage': break;\n\t\t\t\t\tcase 'InputTitle': break;\n\t\t\t\t\tcase 'ComboHide': break;\n\t\t\t\t\tcase 'InputHide': break;\n\t\t\t\t\tcase 'Condition': break;\n\t\t\t\t\tcase 'Qualifier': break;\n\t\t\t\t\tcase 'UseBlank': break;\n\t\t\t\t\tcase 'Value1': break;\n\t\t\t\t\tcase 'Value2': break;\n\t\t\t\t\tcase 'Format': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* MapInfo (schema) */\n\t\t\t\tcase 'MapInfo': case 'Schema': case 'data': switch(Rn[3]) {\n\t\t\t\t\tcase 'Map': break;\n\t\t\t\t\tcase 'Entry': break;\n\t\t\t\t\tcase 'Range': break;\n\t\t\t\t\tcase 'XPath': break;\n\t\t\t\t\tcase 'Field': break;\n\t\t\t\t\tcase 'XSDType': break;\n\t\t\t\t\tcase 'FilterOn': break;\n\t\t\t\t\tcase 'Aggregate': break;\n\t\t\t\t\tcase 'ElementType': break;\n\t\t\t\t\tcase 'AttributeType': break;\n\t\t\t\t/* These are from xsd (XML Schema Definition) */\n\t\t\t\t\tcase 'schema':\n\t\t\t\t\tcase 'element':\n\t\t\t\t\tcase 'complexType':\n\t\t\t\t\tcase 'datatype':\n\t\t\t\t\tcase 'all':\n\t\t\t\t\tcase 'attribute':\n\t\t\t\t\tcase 'extends': break;\n\n\t\t\t\t\tcase 'row': break;\n\t\t\t\t\tdefault: seen = false;\n\t\t\t\t} break;\n\n\t\t\t\t/* SmartTags (can be anything) */\n\t\t\t\tcase 'SmartTags': break;\n\n\t\t\t\tdefault: seen = false; break;\n\t\t\t}\n\t\t\tif(seen) break;\n\t\t\t/* CustomDocumentProperties */\n\t\t\tif(!state[state.length-1][1]) throw 'Unrecognized tag: ' + Rn[3] + \"|\" + state.join(\"|\");\n\t\t\tif(state[state.length-1][0]==='CustomDocumentProperties') {\n\t\t\t\tif(Rn[0].substr(-2) === \"/>\") break;\n\t\t\t\telse if(Rn[1]===\"/\") xlml_set_custprop(Custprops, Rn, cp, str.slice(pidx, Rn.index));\n\t\t\t\telse { cp = Rn; pidx = Rn.index + Rn[0].length; }\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif(opts.WTF) throw 'Unrecognized tag: ' + Rn[3] + \"|\" + state.join(\"|\");\n\t}\n\tvar out = {};\n\tif(!opts.bookSheets && !opts.bookProps) out.Sheets = sheets;\n\tout.SheetNames = sheetnames;\n\tout.SSF = SSF.get_table();\n\tout.Props = Props;\n\tout.Custprops = Custprops;\n\treturn out;\n}\n\nfunction parse_xlml(data, opts) {\n\tfix_read_opts(opts=opts||{});\n\tswitch(opts.type||\"base64\") {\n\t\tcase \"base64\": return parse_xlml_xml(Base64.decode(data), opts);\n\t\tcase \"binary\": case \"buffer\": case \"file\": return parse_xlml_xml(data, opts);\n\t\tcase \"array\": return parse_xlml_xml(data.map(_chr).join(\"\"), opts);\n\t}\n}\n\nfunction write_xlml(wb, opts) { }\n\n/* [MS-OLEDS] 2.3.8 CompObjStream */\nfunction parse_compobj(obj) {\n\tvar v = {};\n\tvar o = obj.content;\n\n\t/* [MS-OLEDS] 2.3.7 CompObjHeader -- All fields MUST be ignored */\n\tvar l = 28, m;\n\tm = __lpstr(o, l);\n\tl += 4 + __readUInt32LE(o,l);\n\tv.UserType = m;\n\n\t/* [MS-OLEDS] 2.3.1 ClipboardFormatOrAnsiString */\n\tm = __readUInt32LE(o,l); l+= 4;\n\tswitch(m) {\n\t\tcase 0x00000000: break;\n\t\tcase 0xffffffff: case 0xfffffffe: l+=4; break;\n\t\tdefault:\n\t\t\tif(m > 0x190) throw new Error(\"Unsupported Clipboard: \" + m.toString(16));\n\t\t\tl += m;\n\t}\n\n\tm = __lpstr(o, l); l += m.length === 0 ? 0 : 5 + m.length; v.Reserved1 = m;\n\n\tif((m = __readUInt32LE(o,l)) !== 0x71b2e9f4) return v;\n\tthrow \"Unsupported Unicode Extension\";\n}\n\n/* 2.4.58 Continue logic */\nfunction slurp(R, blob, length, opts) {\n\tvar l = length;\n\tvar bufs = [];\n\tvar d = blob.slice(blob.l,blob.l+l);\n\tif(opts && opts.enc && opts.enc.insitu_decrypt) switch(R.n) {\n\tcase 'BOF': case 'FilePass': case 'FileLock': case 'InterfaceHdr': case 'RRDInfo': case 'RRDHead': case 'UsrExcl': break;\n\tdefault:\n\t\tif(d.length === 0) break;\n\t\topts.enc.insitu_decrypt(d);\n\t}\n\tbufs.push(d);\n\tblob.l += l;\n\tvar next = (XLSRecordEnum[__readUInt16LE(blob,blob.l)]);\n\twhile(next != null && next.n === 'Continue') {\n\t\tl = __readUInt16LE(blob,blob.l+2);\n\t\tbufs.push(blob.slice(blob.l+4,blob.l+4+l));\n\t\tblob.l += 4+l;\n\t\tnext = (XLSRecordEnum[__readUInt16LE(blob, blob.l)]);\n\t}\n\tvar b = bconcat(bufs);\n\tprep_blob(b, 0);\n\tvar ll = 0; b.lens = [];\n\tfor(var j = 0; j < bufs.length; ++j) { b.lens.push(ll); ll += bufs[j].length; }\n\treturn R.f(b, b.length, opts);\n}\n\nfunction safe_format_xf(p, opts, date1904) {\n\tif(!p.XF) return;\n\ttry {\n\t\tvar fmtid = p.XF.ifmt||0;\n\t\tif(p.t === 'e') { p.w = p.w || BErr[p.v]; }\n\t\telse if(fmtid === 0) {\n\t\t\tif(p.t === 'n') {\n\t\t\t\tif((p.v|0) === p.v) p.w = SSF._general_int(p.v);\n\t\t\t\telse p.w = SSF._general_num(p.v);\n\t\t\t}\n\t\t\telse p.w = SSF._general(p.v);\n\t\t}\n\t\telse p.w = SSF.format(fmtid,p.v, {date1904:date1904||false});\n\t\tif(opts.cellNF) p.z = SSF._table[fmtid];\n\t} catch(e) { if(opts.WTF) throw e; }\n}\n\nfunction make_cell(val, ixfe, t) {\n\treturn {v:val, ixfe:ixfe, t:t};\n}\n\n// 2.3.2\nfunction parse_workbook(blob, options) {\n\tvar wb = {opts:{}};\n\tvar Sheets = {};\n\tvar out = {};\n\tvar Directory = {};\n\tvar found_sheet = false;\n\tvar range = {};\n\tvar last_formula = null;\n\tvar sst = [];\n\tvar cur_sheet = \"\";\n\tvar Preamble = {};\n\tvar lastcell, last_cell, cc, cmnt, rng, rngC, rngR;\n\tvar shared_formulae = {};\n\tvar array_formulae = []; /* TODO: something more clever */\n\tvar temp_val;\n\tvar country;\n\tvar cell_valid = true;\n\tvar XFs = []; /* XF records */\n\tvar palette = [];\n\tvar get_rgb = function getrgb(icv) {\n\t\tif(icv < 8) return XLSIcv[icv];\n\t\tif(icv < 64) return palette[icv-8] || XLSIcv[icv];\n\t\treturn XLSIcv[icv];\n\t};\n\tvar process_cell_style = function pcs(cell, line) {\n\t\tvar xfd = line.XF.data;\n\t\tif(!xfd || !xfd.patternType) return;\n\t\tline.s = {};\n\t\tline.s.patternType = xfd.patternType;\n\t\tvar t;\n\t\tif((t = rgb2Hex(get_rgb(xfd.icvFore)))) { line.s.fgColor = {rgb:t}; }\n\t\tif((t = rgb2Hex(get_rgb(xfd.icvBack)))) { line.s.bgColor = {rgb:t}; }\n\t};\n\tvar addcell = function addcell(cell, line, options) {\n\t\tif(!cell_valid) return;\n\t\tif(options.cellStyles && line.XF && line.XF.data) process_cell_style(cell, line);\n\t\tlastcell = cell;\n\t\tlast_cell = encode_cell(cell);\n\t\tif(range.s) {\n\t\t\tif(cell.r < range.s.r) range.s.r = cell.r;\n\t\t\tif(cell.c < range.s.c) range.s.c = cell.c;\n\t\t}\n\t\tif(range.e) {\n\t\t\tif(cell.r + 1 > range.e.r) range.e.r = cell.r + 1;\n\t\t\tif(cell.c + 1 > range.e.c) range.e.c = cell.c + 1;\n\t\t}\n\t\tif(options.sheetRows && lastcell.r >= options.sheetRows) cell_valid = false;\n\t\telse out[last_cell] = line;\n\t};\n\tvar opts = {\n\t\tenc: false, // encrypted\n\t\tsbcch: 0, // cch in the preceding SupBook\n\t\tsnames: [], // sheetnames\n\t\tsharedf: shared_formulae, // shared formulae by address\n\t\tarrayf: array_formulae, // array formulae array\n\t\trrtabid: [], // RRTabId\n\t\tlastuser: \"\", // Last User from WriteAccess\n\t\tbiff: 8, // BIFF version\n\t\tcodepage: 0, // CP from CodePage record\n\t\twinlocked: 0, // fLockWn from WinProtect\n\t\twtf: false\n\t};\n\tif(options.password) opts.password = options.password;\n\tvar mergecells = [];\n\tvar objects = [];\n\tvar supbooks = [[]]; // 1-indexed, will hold extern names\n\tvar sbc = 0, sbci = 0, sbcli = 0;\n\tsupbooks.SheetNames = opts.snames;\n\tsupbooks.sharedf = opts.sharedf;\n\tsupbooks.arrayf = opts.arrayf;\n\tvar last_Rn = '';\n\tvar file_depth = 0; /* TODO: make a real stack */\n\n\t/* explicit override for some broken writers */\n\topts.codepage = 1200;\n\tset_cp(1200);\n\n\twhile(blob.l < blob.length - 1) {\n\t\tvar s = blob.l;\n\t\tvar RecordType = blob.read_shift(2);\n\t\tif(RecordType === 0 && last_Rn === 'EOF') break;\n\t\tvar length = (blob.l === blob.length ? 0 : blob.read_shift(2)), y;\n\t\tvar R = XLSRecordEnum[RecordType];\n\t\tif(R && R.f) {\n\t\t\tif(options.bookSheets) {\n\t\t\t\tif(last_Rn === 'BoundSheet8' && R.n !== 'BoundSheet8') break;\n\t\t\t}\n\t\t\tlast_Rn = R.n;\n\t\t\tif(R.r === 2 || R.r == 12) {\n\t\t\t\tvar rt = blob.read_shift(2); length -= 2;\n\t\t\t\tif(!opts.enc && rt !== RecordType) throw \"rt mismatch\";\n\t\t\t\tif(R.r == 12){ blob.l += 10; length -= 10; } // skip FRT\n\t\t\t}\n\t\t\t//console.error(R,blob.l,length,blob.length);\n\t\t\tvar val;\n\t\t\tif(R.n === 'EOF') val = R.f(blob, length, opts);\n\t\t\telse val = slurp(R, blob, length, opts);\n\t\t\tvar Rn = R.n;\n\t\t\t/* BIFF5 overrides */\n\t\t\tif(opts.biff === 5 || opts.biff === 2) switch(Rn) {\n\t\t\t\tcase 'Lbl': Rn = 'Label'; break;\n\t\t\t}\n\t\t\t/* nested switch statements to workaround V8 128 limit */\n\t\t\tswitch(Rn) {\n\t\t\t\t/* Workbook Options */\n\t\t\t\tcase 'Date1904': wb.opts.Date1904 = val; break;\n\t\t\t\tcase 'WriteProtect': wb.opts.WriteProtect = true; break;\n\t\t\t\tcase 'FilePass':\n\t\t\t\t\tif(!opts.enc) blob.l = 0;\n\t\t\t\t\topts.enc = val;\n\t\t\t\t\tif(opts.WTF) console.error(val);\n\t\t\t\t\tif(!options.password) throw new Error(\"File is password-protected\");\n\t\t\t\t\tif(val.Type !== 0) throw new Error(\"Encryption scheme unsupported\");\n\t\t\t\t\tif(!val.valid) throw new Error(\"Password is incorrect\");\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'WriteAccess': opts.lastuser = val; break;\n\t\t\t\tcase 'FileSharing': break; //TODO\n\t\t\t\tcase 'CodePage':\n\t\t\t\t\t/* overrides based on test cases */\n\t\t\t\t\tif(val === 0x5212) val = 1200;\n\t\t\t\t\telse if(val === 0x8001) val = 1252;\n\t\t\t\t\topts.codepage = val;\n\t\t\t\t\tset_cp(val);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'RRTabId': opts.rrtabid = val; break;\n\t\t\t\tcase 'WinProtect': opts.winlocked = val; break;\n\t\t\t\tcase 'Template': break; // TODO\n\t\t\t\tcase 'RefreshAll': wb.opts.RefreshAll = val; break;\n\t\t\t\tcase 'BookBool': break; // TODO\n\t\t\t\tcase 'UsesELFs': /* if(val) console.error(\"Unsupported ELFs\"); */ break;\n\t\t\t\tcase 'MTRSettings': {\n\t\t\t\t\tif(val[0] && val[1]) throw \"Unsupported threads: \" + val;\n\t\t\t\t} break; // TODO: actually support threads\n\t\t\t\tcase 'CalcCount': wb.opts.CalcCount = val; break;\n\t\t\t\tcase 'CalcDelta': wb.opts.CalcDelta = val; break;\n\t\t\t\tcase 'CalcIter': wb.opts.CalcIter = val; break;\n\t\t\t\tcase 'CalcMode': wb.opts.CalcMode = val; break;\n\t\t\t\tcase 'CalcPrecision': wb.opts.CalcPrecision = val; break;\n\t\t\t\tcase 'CalcSaveRecalc': wb.opts.CalcSaveRecalc = val; break;\n\t\t\t\tcase 'CalcRefMode': opts.CalcRefMode = val; break; // TODO: implement R1C1\n\t\t\t\tcase 'Uncalced': break;\n\t\t\t\tcase 'ForceFullCalculation': wb.opts.FullCalc = val; break;\n\t\t\t\tcase 'WsBool': break; // TODO\n\t\t\t\tcase 'XF': XFs.push(val); break;\n\t\t\t\tcase 'ExtSST': break; // TODO\n\t\t\t\tcase 'BookExt': break; // TODO\n\t\t\t\tcase 'RichTextStream': break;\n\t\t\t\tcase 'BkHim': break;\n\n\t\t\t\tcase 'SupBook': supbooks[++sbc] = [val]; sbci = 0; break;\n\t\t\t\tcase 'ExternName': supbooks[sbc][++sbci] = val; break;\n\t\t\t\tcase 'Index': break; // TODO\n\t\t\t\tcase 'Lbl': supbooks[0][++sbcli] = val; break;\n\t\t\t\tcase 'ExternSheet': supbooks[sbc] = supbooks[sbc].concat(val); sbci += val.length; break;\n\n\t\t\t\tcase 'Protect': out[\"!protect\"] = val; break; /* for sheet or book */\n\t\t\t\tcase 'Password': if(val !== 0 && opts.WTF) console.error(\"Password verifier: \" + val); break;\n\t\t\t\tcase 'Prot4Rev': case 'Prot4RevPass': break; /*TODO: Revision Control*/\n\n\t\t\t\tcase 'BoundSheet8': {\n\t\t\t\t\tDirectory[val.pos] = val;\n\t\t\t\t\topts.snames.push(val.name);\n\t\t\t\t} break;\n\t\t\t\tcase 'EOF': {\n\t\t\t\t\tif(--file_depth) break;\n\t\t\t\t\tif(range.e) {\n\t\t\t\t\t\tout[\"!range\"] = range;\n\t\t\t\t\t\tif(range.e.r > 0 && range.e.c > 0) {\n\t\t\t\t\t\t\trange.e.r--; range.e.c--;\n\t\t\t\t\t\t\tout[\"!ref\"] = encode_range(range);\n\t\t\t\t\t\t\trange.e.r++; range.e.c++;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif(mergecells.length > 0) out[\"!merges\"] = mergecells;\n\t\t\t\t\t\tif(objects.length > 0) out[\"!objects\"] = objects;\n\t\t\t\t\t}\n\t\t\t\t\tif(cur_sheet === \"\") Preamble = out; else Sheets[cur_sheet] = out;\n\t\t\t\t\tout = {};\n\t\t\t\t} break;\n\t\t\t\tcase 'BOF': {\n\t\t\t\t\tif(opts.biff !== 8);\n\t\t\t\t\telse if(val.BIFFVer === 0x0500) opts.biff = 5;\n\t\t\t\t\telse if(val.BIFFVer === 0x0002) opts.biff = 2;\n\t\t\t\t\telse if(val.BIFFVer === 0x0007) opts.biff = 2;\n\t\t\t\t\tif(file_depth++) break;\n\t\t\t\t\tcell_valid = true;\n\t\t\t\t\tout = {};\n\t\t\t\t\tif(opts.biff === 2) {\n\t\t\t\t\t\tif(cur_sheet === \"\") cur_sheet = \"Sheet1\";\n\t\t\t\t\t\trange = {s:{r:0,c:0},e:{r:0,c:0}};\n\t\t\t\t\t}\n\t\t\t\t\telse cur_sheet = (Directory[s] || {name:\"\"}).name;\n\t\t\t\t\tmergecells = [];\n\t\t\t\t\tobjects = [];\n\t\t\t\t} break;\n\t\t\t\tcase 'Number': case 'BIFF2NUM': {\n\t\t\t\t\ttemp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.val, t:'n'};\n\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\taddcell({c:val.c, r:val.r}, temp_val, options);\n\t\t\t\t} break;\n\t\t\t\tcase 'BoolErr': {\n\t\t\t\t\ttemp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.val, t:val.t};\n\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\taddcell({c:val.c, r:val.r}, temp_val, options);\n\t\t\t\t} break;\n\t\t\t\tcase 'RK': {\n\t\t\t\t\ttemp_val = {ixfe: val.ixfe, XF: XFs[val.ixfe], v:val.rknum, t:'n'};\n\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\taddcell({c:val.c, r:val.r}, temp_val, options);\n\t\t\t\t} break;\n\t\t\t\tcase 'MulRk': {\n\t\t\t\t\tfor(var j = val.c; j <= val.C; ++j) {\n\t\t\t\t\t\tvar ixfe = val.rkrec[j-val.c][0];\n\t\t\t\t\t\ttemp_val= {ixfe:ixfe, XF:XFs[ixfe], v:val.rkrec[j-val.c][1], t:'n'};\n\t\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\t\taddcell({c:j, r:val.r}, temp_val, options);\n\t\t\t\t\t}\n\t\t\t\t} break;\n\t\t\t\tcase 'Formula': {\n\t\t\t\t\tswitch(val.val) {\n\t\t\t\t\t\tcase 'String': last_formula = val; break;\n\t\t\t\t\t\tcase 'Array Formula': throw \"Array Formula unsupported\";\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\ttemp_val = {v:val.val, ixfe:val.cell.ixfe, t:val.tt};\n\t\t\t\t\t\t\ttemp_val.XF = XFs[temp_val.ixfe];\n\t\t\t\t\t\t\tif(options.cellFormula) temp_val.f = \"=\"+stringify_formula(val.formula,range,val.cell,supbooks, opts);\n\t\t\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\t\t\taddcell(val.cell, temp_val, options);\n\t\t\t\t\t\t\tlast_formula = val;\n\t\t\t\t\t}\n\t\t\t\t} break;\n\t\t\t\tcase 'String': {\n\t\t\t\t\tif(last_formula) {\n\t\t\t\t\t\tlast_formula.val = val;\n\t\t\t\t\t\ttemp_val = {v:last_formula.val, ixfe:last_formula.cell.ixfe, t:'s'};\n\t\t\t\t\t\ttemp_val.XF = XFs[temp_val.ixfe];\n\t\t\t\t\t\tif(options.cellFormula) temp_val.f = \"=\"+stringify_formula(last_formula.formula, range, last_formula.cell, supbooks, opts);\n\t\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\t\taddcell(last_formula.cell, temp_val, options);\n\t\t\t\t\t\tlast_formula = null;\n\t\t\t\t\t}\n\t\t\t\t} break;\n\t\t\t\tcase 'Array': {\n\t\t\t\t\tarray_formulae.push(val);\n\t\t\t\t} break;\n\t\t\t\tcase 'ShrFmla': {\n\t\t\t\t\tif(!cell_valid) break;\n\t\t\t\t\t//if(options.cellFormula) out[last_cell].f = stringify_formula(val[0], range, lastcell, supbooks, opts);\n\t\t\t\t\t/* TODO: capture range */\n\t\t\t\t\tshared_formulae[encode_cell(last_formula.cell)]= val[0];\n\t\t\t\t} break;\n\t\t\t\tcase 'LabelSst':\n\t\t\t\t\t//temp_val={v:sst[val.isst].t, ixfe:val.ixfe, t:'s'};\n\t\t\t\t\ttemp_val=make_cell(sst[val.isst].t, val.ixfe, 's');\n\t\t\t\t\ttemp_val.XF = XFs[temp_val.ixfe];\n\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\taddcell({c:val.c, r:val.r}, temp_val, options);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Label': case 'BIFF2STR':\n\t\t\t\t\t/* Some writers erroneously write Label */\n\t\t\t\t\ttemp_val=make_cell(val.val, val.ixfe, 's');\n\t\t\t\t\ttemp_val.XF = XFs[temp_val.ixfe];\n\t\t\t\t\tif(temp_val.XF) safe_format_xf(temp_val, options, wb.opts.Date1904);\n\t\t\t\t\taddcell({c:val.c, r:val.r}, temp_val, options);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Dimensions': {\n\t\t\t\t\tif(file_depth === 1) range = val; /* TODO: stack */\n\t\t\t\t} break;\n\t\t\t\tcase 'SST': {\n\t\t\t\t\tsst = val;\n\t\t\t\t} break;\n\t\t\t\tcase 'Format': { /* val = [id, fmt] */\n\t\t\t\t\tSSF.load(val[1], val[0]);\n\t\t\t\t} break;\n\n\t\t\t\tcase 'MergeCells': mergecells = mergecells.concat(val); break;\n\n\t\t\t\tcase 'Obj': objects[val.cmo[0]] = opts.lastobj = val; break;\n\t\t\t\tcase 'TxO': opts.lastobj.TxO = val; break;\n\n\t\t\t\tcase 'HLink': {\n\t\t\t\t\tfor(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR)\n\t\t\t\t\t\tfor(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC)\n\t\t\t\t\t\t\tif(out[encode_cell({c:rngC,r:rngR})])\n\t\t\t\t\t\t\t\tout[encode_cell({c:rngC,r:rngR})].l = val[1];\n\t\t\t\t} break;\n\t\t\t\tcase 'HLinkTooltip': {\n\t\t\t\t\tfor(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR)\n\t\t\t\t\t\tfor(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC)\n\t\t\t\t\t\t\tif(out[encode_cell({c:rngC,r:rngR})])\n\t\t\t\t\t\t\t\tout[encode_cell({c:rngC,r:rngR})].l.tooltip = val[1];\n\t\t\t\t} break;\n\n\t\t\t\t/* Comments */\n\t\t\t\tcase 'Note': {\n\t\t\t\t\tif(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */\n\t\t\t\t\tcc = out[encode_cell(val[0])];\n\t\t\t\t\tvar noteobj = objects[val[2]];\n\t\t\t\t\tif(!cc) break;\n\t\t\t\t\tif(!cc.c) cc.c = [];\n\t\t\t\t\tcmnt = {a:val[1],t:noteobj.TxO.t};\n\t\t\t\t\tcc.c.push(cmnt);\n\t\t\t\t} break;\n\n\t\t\t\tdefault: switch(R.n) { /* nested */\n\t\t\t\tcase 'ClrtClient': break;\n\t\t\t\tcase 'XFExt': update_xfext(XFs[val.ixfe], val.ext); break;\n\n\t\t\t\tcase 'NameCmt': break;\n\t\t\t\tcase 'Header': break; // TODO\n\t\t\t\tcase 'Footer': break; // TODO\n\t\t\t\tcase 'HCenter': break; // TODO\n\t\t\t\tcase 'VCenter': break; // TODO\n\t\t\t\tcase 'Pls': break; // TODO\n\t\t\t\tcase 'Setup': break; // TODO\n\t\t\t\tcase 'DefColWidth': break; // TODO\n\t\t\t\tcase 'GCW': break;\n\t\t\t\tcase 'LHRecord': break;\n\t\t\t\tcase 'ColInfo': break; // TODO\n\t\t\t\tcase 'Row': break; // TODO\n\t\t\t\tcase 'DBCell': break; // TODO\n\t\t\t\tcase 'MulBlank': break; // TODO\n\t\t\t\tcase 'EntExU2': break; // TODO\n\t\t\t\tcase 'SxView': break; // TODO\n\t\t\t\tcase 'Sxvd': break; // TODO\n\t\t\t\tcase 'SXVI': break; // TODO\n\t\t\t\tcase 'SXVDEx': break; // TODO\n\t\t\t\tcase 'SxIvd': break; // TODO\n\t\t\t\tcase 'SXDI': break; // TODO\n\t\t\t\tcase 'SXLI': break; // TODO\n\t\t\t\tcase 'SXEx': break; // TODO\n\t\t\t\tcase 'QsiSXTag': break; // TODO\n\t\t\t\tcase 'Selection': break;\n\t\t\t\tcase 'Feat': break;\n\t\t\t\tcase 'FeatHdr': case 'FeatHdr11': break;\n\t\t\t\tcase 'Feature11': case 'Feature12': case 'List12': break;\n\t\t\t\tcase 'Blank': break;\n\t\t\t\tcase 'Country': country = val; break;\n\t\t\t\tcase 'RecalcId': break;\n\t\t\t\tcase 'DefaultRowHeight': case 'DxGCol': break; // TODO: htmlify\n\t\t\t\tcase 'Fbi': case 'Fbi2': case 'GelFrame': break;\n\t\t\t\tcase 'Font': break; // TODO\n\t\t\t\tcase 'XFCRC': break; // TODO\n\t\t\t\tcase 'Style': break; // TODO\n\t\t\t\tcase 'StyleExt': break; // TODO\n\t\t\t\tcase 'Palette': palette = val; break; // TODO\n\t\t\t\tcase 'Theme': break; // TODO\n\t\t\t\t/* Protection */\n\t\t\t\tcase 'ScenarioProtect': break;\n\t\t\t\tcase 'ObjProtect': break;\n\n\t\t\t\t/* Conditional Formatting */\n\t\t\t\tcase 'CondFmt12': break;\n\n\t\t\t\t/* Table */\n\t\t\t\tcase 'Table': break; // TODO\n\t\t\t\tcase 'TableStyles': break; // TODO\n\t\t\t\tcase 'TableStyle': break; // TODO\n\t\t\t\tcase 'TableStyleElement': break; // TODO\n\n\t\t\t\t/* PivotTable */\n\t\t\t\tcase 'SXStreamID': break; // TODO\n\t\t\t\tcase 'SXVS': break; // TODO\n\t\t\t\tcase 'DConRef': break; // TODO\n\t\t\t\tcase 'SXAddl': break; // TODO\n\t\t\t\tcase 'DConBin': break; // TODO\n\t\t\t\tcase 'DConName': break; // TODO\n\t\t\t\tcase 'SXPI': break; // TODO\n\t\t\t\tcase 'SxFormat': break; // TODO\n\t\t\t\tcase 'SxSelect': break; // TODO\n\t\t\t\tcase 'SxRule': break; // TODO\n\t\t\t\tcase 'SxFilt': break; // TODO\n\t\t\t\tcase 'SxItm': break; // TODO\n\t\t\t\tcase 'SxDXF': break; // TODO\n\n\t\t\t\t/* Scenario Manager */\n\t\t\t\tcase 'ScenMan': break;\n\n\t\t\t\t/* Data Consolidation */\n\t\t\t\tcase 'DCon': break;\n\n\t\t\t\t/* Watched Cell */\n\t\t\t\tcase 'CellWatch': break;\n\n\t\t\t\t/* Print Settings */\n\t\t\t\tcase 'PrintRowCol': break;\n\t\t\t\tcase 'PrintGrid': break;\n\t\t\t\tcase 'PrintSize': break;\n\n\t\t\t\tcase 'XCT': break;\n\t\t\t\tcase 'CRN': break;\n\n\t\t\t\tcase 'Scl': {\n\t\t\t\t\t//console.log(\"Zoom Level:\", val[0]/val[1],val);\n\t\t\t\t} break;\n\t\t\t\tcase 'SheetExt': {\n\n\t\t\t\t} break;\n\t\t\t\tcase 'SheetExtOptional': {\n\n\t\t\t\t} break;\n\n\t\t\t\t/* VBA */\n\t\t\t\tcase 'ObNoMacros': {\n\n\t\t\t\t} break;\n\t\t\t\tcase 'ObProj': {\n\n\t\t\t\t} break;\n\t\t\t\tcase 'CodeName': {\n\n\t\t\t\t} break;\n\t\t\t\tcase 'GUIDTypeLib': {\n\n\t\t\t\t} break;\n\n\t\t\t\tcase 'WOpt': break; // TODO: WTF?\n\t\t\t\tcase 'PhoneticInfo': break;\n\n\t\t\t\tcase 'OleObjectSize': break;\n\n\t\t\t\t/* Differential Formatting */\n\t\t\t\tcase 'DXF': case 'DXFN': case 'DXFN12': case 'DXFN12List': case 'DXFN12NoCB': break;\n\n\t\t\t\t/* Data Validation */\n\t\t\t\tcase 'Dv': case 'DVal': break;\n\n\t\t\t\t/* Data Series */\n\t\t\t\tcase 'BRAI': case 'Series': case 'SeriesText': break;\n\n\t\t\t\t/* Data Connection */\n\t\t\t\tcase 'DConn': break;\n\t\t\t\tcase 'DbOrParamQry': break;\n\t\t\t\tcase 'DBQueryExt': break;\n\n\t\t\t\t/* Formatting */\n\t\t\t\tcase 'IFmtRecord': break;\n\t\t\t\tcase 'CondFmt': case 'CF': case 'CF12': case 'CFEx': break;\n\n\t\t\t\t/* Explicitly Ignored */\n\t\t\t\tcase 'Excel9File': break;\n\t\t\t\tcase 'Units': break;\n\t\t\t\tcase 'InterfaceHdr': case 'Mms': case 'InterfaceEnd': case 'DSF': case 'BuiltInFnGroupCount':\n\t\t\t\t/* View Stuff */\n\t\t\t\tcase 'Window1': case 'Window2': case 'HideObj': case 'GridSet': case 'Guts':\n\t\t\t\tcase 'UserBView': case 'UserSViewBegin': case 'UserSViewEnd':\n\t\t\t\tcase 'Pane': break;\n\t\t\t\tdefault: switch(R.n) { /* nested */\n\t\t\t\t/* Chart */\n\t\t\t\tcase 'Dat':\n\t\t\t\tcase 'Begin': case 'End':\n\t\t\t\tcase 'StartBlock': case 'EndBlock':\n\t\t\t\tcase 'Frame': case 'Area':\n\t\t\t\tcase 'Axis': case 'AxisLine': case 'Tick': break;\n\t\t\t\tcase 'AxesUsed':\n\t\t\t\tcase 'CrtLayout12': case 'CrtLayout12A': case 'CrtLink': case 'CrtLine': case 'CrtMlFrt': case 'CrtMlFrtContinue': break;\n\t\t\t\tcase 'LineFormat': case 'AreaFormat':\n\t\t\t\tcase 'Chart': case 'Chart3d': case 'Chart3DBarShape': case 'ChartFormat': case 'ChartFrtInfo': break;\n\t\t\t\tcase 'PlotArea': case 'PlotGrowth': break;\n\t\t\t\tcase 'SeriesList': case 'SerParent': case 'SerAuxTrend': break;\n\t\t\t\tcase 'DataFormat': case 'SerToCrt': case 'FontX': break;\n\t\t\t\tcase 'CatSerRange': case 'AxcExt': case 'SerFmt': break;\n\t\t\t\tcase 'ShtProps': break;\n\t\t\t\tcase 'DefaultText': case 'Text': case 'CatLab': break;\n\t\t\t\tcase 'DataLabExtContents': break;\n\t\t\t\tcase 'Legend': case 'LegendException': break;\n\t\t\t\tcase 'Pie': case 'Scatter': break;\n\t\t\t\tcase 'PieFormat': case 'MarkerFormat': break;\n\t\t\t\tcase 'StartObject': case 'EndObject': break;\n\t\t\t\tcase 'AlRuns': case 'ObjectLink': break;\n\t\t\t\tcase 'SIIndex': break;\n\t\t\t\tcase 'AttachedLabel': case 'YMult': break;\n\n\t\t\t\t/* Chart Group */\n\t\t\t\tcase 'Line': case 'Bar': break;\n\t\t\t\tcase 'Surf': break;\n\n\t\t\t\t/* Axis Group */\n\t\t\t\tcase 'AxisParent': break;\n\t\t\t\tcase 'Pos': break;\n\t\t\t\tcase 'ValueRange': break;\n\n\t\t\t\t/* Pivot Chart */\n\t\t\t\tcase 'SXViewEx9': break; // TODO\n\t\t\t\tcase 'SXViewLink': break;\n\t\t\t\tcase 'PivotChartBits': break;\n\t\t\t\tcase 'SBaseRef': break;\n\t\t\t\tcase 'TextPropsStream': break;\n\n\t\t\t\t/* Chart Misc */\n\t\t\t\tcase 'LnExt': break;\n\t\t\t\tcase 'MkrExt': break;\n\t\t\t\tcase 'CrtCoopt': break;\n\n\t\t\t\t/* Query Table */\n\t\t\t\tcase 'Qsi': case 'Qsif': case 'Qsir': case 'QsiSXTag': break;\n\t\t\t\tcase 'TxtQry': break;\n\n\t\t\t\t/* Filter */\n\t\t\t\tcase 'FilterMode': break;\n\t\t\t\tcase 'AutoFilter': case 'AutoFilterInfo': break;\n\t\t\t\tcase 'AutoFilter12': break;\n\t\t\t\tcase 'DropDownObjIds': break;\n\t\t\t\tcase 'Sort': break;\n\t\t\t\tcase 'SortData': break;\n\n\t\t\t\t/* Drawing */\n\t\t\t\tcase 'ShapePropsStream': break;\n\t\t\t\tcase 'MsoDrawing': case 'MsoDrawingGroup': case 'MsoDrawingSelection': break;\n\t\t\t\tcase 'ImData': break;\n\t\t\t\t/* Pub Stuff */\n\t\t\t\tcase 'WebPub': case 'AutoWebPub':\n\n\t\t\t\t/* Print Stuff */\n\t\t\t\tcase 'RightMargin': case 'LeftMargin': case 'TopMargin': case 'BottomMargin':\n\t\t\t\tcase 'HeaderFooter': case 'HFPicture': case 'PLV':\n\t\t\t\tcase 'HorizontalPageBreaks': case 'VerticalPageBreaks':\n\t\t\t\t/* Behavioral */\n\t\t\t\tcase 'Backup': case 'CompressPictures': case 'Compat12': break;\n\n\t\t\t\t/* Should not Happen */\n\t\t\t\tcase 'Continue': case 'ContinueFrt12': break;\n\n\t\t\t\t/* Future Records */\n\t\t\t\tcase 'FrtFontList': case 'FrtWrapper': break;\n\n\t\t\t\t/* BIFF5 records */\n\t\t\t\tcase 'ExternCount': break;\n\t\t\t\tcase 'RString': break;\n\t\t\t\tcase 'TabIdConf': case 'Radar': case 'RadarArea': case 'DropBar': case 'Intl': case 'CoordList': case 'SerAuxErrBar': break;\n\n\t\t\t\tdefault: switch(R.n) { /* nested */\n\t\t\t\t/* Miscellaneous */\n\t\t\t\tcase 'SCENARIO': case 'DConBin': case 'PicF': case 'DataLabExt':\n\t\t\t\tcase 'Lel': case 'BopPop': case 'BopPopCustom': case 'RealTimeData':\n\t\t\t\tcase 'Name': break;\n\t\t\t\tdefault: if(options.WTF) throw 'Unrecognized Record ' + R.n;\n\t\t\t}}}}\n\t\t} else blob.l += length;\n\t}\n\tvar sheetnamesraw = opts.biff === 2 ? ['Sheet1'] : Object.keys(Directory).sort(function(a,b) { return Number(a) - Number(b); }).map(function(x){return Directory[x].name;});\n\tvar sheetnames = sheetnamesraw.slice();\n\twb.Directory=sheetnamesraw;\n\twb.SheetNames=sheetnamesraw;\n\tif(!options.bookSheets) wb.Sheets=Sheets;\n\twb.Preamble=Preamble;\n\twb.Strings = sst;\n\twb.SSF = SSF.get_table();\n\tif(opts.enc) wb.Encryption = opts.enc;\n\twb.Metadata = {};\n\tif(country !== undefined) wb.Metadata.Country = country;\n\treturn wb;\n}\n\nfunction parse_xlscfb(cfb, options) {\nif(!options) options = {};\nfix_read_opts(options);\nreset_cp();\nvar CompObj, Summary, Workbook;\nif(cfb.find) {\n\tCompObj = cfb.find('!CompObj');\n\tSummary = cfb.find('!SummaryInformation');\n\tWorkbook = cfb.find('/Workbook');\n} else {\n\tprep_blob(cfb, 0);\n\tWorkbook = {content: cfb};\n}\n\nif(!Workbook) Workbook = cfb.find('/Book');\nvar CompObjP, SummaryP, WorkbookP;\n\nif(CompObj) CompObjP = parse_compobj(CompObj);\nif(options.bookProps && !options.bookSheets) WorkbookP = {};\nelse {\n\tif(Workbook) WorkbookP = parse_workbook(Workbook.content, options, !!Workbook.find);\n\telse throw new Error(\"Cannot find Workbook stream\");\n}\n\nif(cfb.find) parse_props(cfb);\n\nvar props = {};\nfor(var y in cfb.Summary) props[y] = cfb.Summary[y];\nfor(y in cfb.DocSummary) props[y] = cfb.DocSummary[y];\nWorkbookP.Props = WorkbookP.Custprops = props; /* TODO: split up properties */\nif(options.bookFiles) WorkbookP.cfb = cfb;\nWorkbookP.CompObjP = CompObjP;\nreturn WorkbookP;\n}\n\n/* TODO: WTF */\nfunction parse_props(cfb) {\n\t/* [MS-OSHARED] 2.3.3.2.2 Document Summary Information Property Set */\n\tvar DSI = cfb.find('!DocumentSummaryInformation');\n\tif(DSI) try { cfb.DocSummary = parse_PropertySetStream(DSI, DocSummaryPIDDSI); } catch(e) {}\n\n\t/* [MS-OSHARED] 2.3.3.2.1 Summary Information Property Set*/\n\tvar SI = cfb.find('!SummaryInformation');\n\tif(SI) try { cfb.Summary = parse_PropertySetStream(SI, SummaryPIDSI); } catch(e) {}\n}\n\n/* [MS-XLSB] 2.3 Record Enumeration */\nvar XLSBRecordEnum = {\n\t0x0000: { n:\"BrtRowHdr\", f:parse_BrtRowHdr },\n\t0x0001: { n:\"BrtCellBlank\", f:parse_BrtCellBlank },\n\t0x0002: { n:\"BrtCellRk\", f:parse_BrtCellRk },\n\t0x0003: { n:\"BrtCellError\", f:parse_BrtCellError },\n\t0x0004: { n:\"BrtCellBool\", f:parse_BrtCellBool },\n\t0x0005: { n:\"BrtCellReal\", f:parse_BrtCellReal },\n\t0x0006: { n:\"BrtCellSt\", f:parse_BrtCellSt },\n\t0x0007: { n:\"BrtCellIsst\", f:parse_BrtCellIsst },\n\t0x0008: { n:\"BrtFmlaString\", f:parse_BrtFmlaString },\n\t0x0009: { n:\"BrtFmlaNum\", f:parse_BrtFmlaNum },\n\t0x000A: { n:\"BrtFmlaBool\", f:parse_BrtFmlaBool },\n\t0x000B: { n:\"BrtFmlaError\", f:parse_BrtFmlaError },\n\t0x0010: { n:\"BrtFRTArchID$\", f:parse_BrtFRTArchID$ },\n\t0x0013: { n:\"BrtSSTItem\", f:parse_RichStr },\n\t0x0014: { n:\"BrtPCDIMissing\", f:parsenoop },\n\t0x0015: { n:\"BrtPCDINumber\", f:parsenoop },\n\t0x0016: { n:\"BrtPCDIBoolean\", f:parsenoop },\n\t0x0017: { n:\"BrtPCDIError\", f:parsenoop },\n\t0x0018: { n:\"BrtPCDIString\", f:parsenoop },\n\t0x0019: { n:\"BrtPCDIDatetime\", f:parsenoop },\n\t0x001A: { n:\"BrtPCDIIndex\", f:parsenoop },\n\t0x001B: { n:\"BrtPCDIAMissing\", f:parsenoop },\n\t0x001C: { n:\"BrtPCDIANumber\", f:parsenoop },\n\t0x001D: { n:\"BrtPCDIABoolean\", f:parsenoop },\n\t0x001E: { n:\"BrtPCDIAError\", f:parsenoop },\n\t0x001F: { n:\"BrtPCDIAString\", f:parsenoop },\n\t0x0020: { n:\"BrtPCDIADatetime\", f:parsenoop },\n\t0x0021: { n:\"BrtPCRRecord\", f:parsenoop },\n\t0x0022: { n:\"BrtPCRRecordDt\", f:parsenoop },\n\t0x0023: { n:\"BrtFRTBegin\", f:parsenoop },\n\t0x0024: { n:\"BrtFRTEnd\", f:parsenoop },\n\t0x0025: { n:\"BrtACBegin\", f:parsenoop },\n\t0x0026: { n:\"BrtACEnd\", f:parsenoop },\n\t0x0027: { n:\"BrtName\", f:parsenoop },\n\t0x0028: { n:\"BrtIndexRowBlock\", f:parsenoop },\n\t0x002A: { n:\"BrtIndexBlock\", f:parsenoop },\n\t0x002B: { n:\"BrtFont\", f:parse_BrtFont },\n\t0x002C: { n:\"BrtFmt\", f:parse_BrtFmt },\n\t0x002D: { n:\"BrtFill\", f:parsenoop },\n\t0x002E: { n:\"BrtBorder\", f:parsenoop },\n\t0x002F: { n:\"BrtXF\", f:parse_BrtXF },\n\t0x0030: { n:\"BrtStyle\", f:parsenoop },\n\t0x0031: { n:\"BrtCellMeta\", f:parsenoop },\n\t0x0032: { n:\"BrtValueMeta\", f:parsenoop },\n\t0x0033: { n:\"BrtMdb\", f:parsenoop },\n\t0x0034: { n:\"BrtBeginFmd\", f:parsenoop },\n\t0x0035: { n:\"BrtEndFmd\", f:parsenoop },\n\t0x0036: { n:\"BrtBeginMdx\", f:parsenoop },\n\t0x0037: { n:\"BrtEndMdx\", f:parsenoop },\n\t0x0038: { n:\"BrtBeginMdxTuple\", f:parsenoop },\n\t0x0039: { n:\"BrtEndMdxTuple\", f:parsenoop },\n\t0x003A: { n:\"BrtMdxMbrIstr\", f:parsenoop },\n\t0x003B: { n:\"BrtStr\", f:parsenoop },\n\t0x003C: { n:\"BrtColInfo\", f:parsenoop },\n\t0x003E: { n:\"BrtCellRString\", f:parsenoop },\n\t0x003F: { n:\"BrtCalcChainItem$\", f:parse_BrtCalcChainItem$ },\n\t0x0040: { n:\"BrtDVal\", f:parsenoop },\n\t0x0041: { n:\"BrtSxvcellNum\", f:parsenoop },\n\t0x0042: { n:\"BrtSxvcellStr\", f:parsenoop },\n\t0x0043: { n:\"BrtSxvcellBool\", f:parsenoop },\n\t0x0044: { n:\"BrtSxvcellErr\", f:parsenoop },\n\t0x0045: { n:\"BrtSxvcellDate\", f:parsenoop },\n\t0x0046: { n:\"BrtSxvcellNil\", f:parsenoop },\n\t0x0080: { n:\"BrtFileVersion\", f:parsenoop },\n\t0x0081: { n:\"BrtBeginSheet\", f:parsenoop },\n\t0x0082: { n:\"BrtEndSheet\", f:parsenoop },\n\t0x0083: { n:\"BrtBeginBook\", f:parsenoop, p:0 },\n\t0x0084: { n:\"BrtEndBook\", f:parsenoop },\n\t0x0085: { n:\"BrtBeginWsViews\", f:parsenoop },\n\t0x0086: { n:\"BrtEndWsViews\", f:parsenoop },\n\t0x0087: { n:\"BrtBeginBookViews\", f:parsenoop },\n\t0x0088: { n:\"BrtEndBookViews\", f:parsenoop },\n\t0x0089: { n:\"BrtBeginWsView\", f:parsenoop },\n\t0x008A: { n:\"BrtEndWsView\", f:parsenoop },\n\t0x008B: { n:\"BrtBeginCsViews\", f:parsenoop },\n\t0x008C: { n:\"BrtEndCsViews\", f:parsenoop },\n\t0x008D: { n:\"BrtBeginCsView\", f:parsenoop },\n\t0x008E: { n:\"BrtEndCsView\", f:parsenoop },\n\t0x008F: { n:\"BrtBeginBundleShs\", f:parsenoop },\n\t0x0090: { n:\"BrtEndBundleShs\", f:parsenoop },\n\t0x0091: { n:\"BrtBeginSheetData\", f:parsenoop },\n\t0x0092: { n:\"BrtEndSheetData\", f:parsenoop },\n\t0x0093: { n:\"BrtWsProp\", f:parse_BrtWsProp },\n\t0x0094: { n:\"BrtWsDim\", f:parse_BrtWsDim, p:16 },\n\t0x0097: { n:\"BrtPane\", f:parsenoop },\n\t0x0098: { n:\"BrtSel\", f:parsenoop },\n\t0x0099: { n:\"BrtWbProp\", f:parse_BrtWbProp },\n\t0x009A: { n:\"BrtWbFactoid\", f:parsenoop },\n\t0x009B: { n:\"BrtFileRecover\", f:parsenoop },\n\t0x009C: { n:\"BrtBundleSh\", f:parse_BrtBundleSh },\n\t0x009D: { n:\"BrtCalcProp\", f:parsenoop },\n\t0x009E: { n:\"BrtBookView\", f:parsenoop },\n\t0x009F: { n:\"BrtBeginSst\", f:parse_BrtBeginSst },\n\t0x00A0: { n:\"BrtEndSst\", f:parsenoop },\n\t0x00A1: { n:\"BrtBeginAFilter\", f:parsenoop },\n\t0x00A2: { n:\"BrtEndAFilter\", f:parsenoop },\n\t0x00A3: { n:\"BrtBeginFilterColumn\", f:parsenoop },\n\t0x00A4: { n:\"BrtEndFilterColumn\", f:parsenoop },\n\t0x00A5: { n:\"BrtBeginFilters\", f:parsenoop },\n\t0x00A6: { n:\"BrtEndFilters\", f:parsenoop },\n\t0x00A7: { n:\"BrtFilter\", f:parsenoop },\n\t0x00A8: { n:\"BrtColorFilter\", f:parsenoop },\n\t0x00A9: { n:\"BrtIconFilter\", f:parsenoop },\n\t0x00AA: { n:\"BrtTop10Filter\", f:parsenoop },\n\t0x00AB: { n:\"BrtDynamicFilter\", f:parsenoop },\n\t0x00AC: { n:\"BrtBeginCustomFilters\", f:parsenoop },\n\t0x00AD: { n:\"BrtEndCustomFilters\", f:parsenoop },\n\t0x00AE: { n:\"BrtCustomFilter\", f:parsenoop },\n\t0x00AF: { n:\"BrtAFilterDateGroupItem\", f:parsenoop },\n\t0x00B0: { n:\"BrtMergeCell\", f:parse_BrtMergeCell },\n\t0x00B1: { n:\"BrtBeginMergeCells\", f:parsenoop },\n\t0x00B2: { n:\"BrtEndMergeCells\", f:parsenoop },\n\t0x00B3: { n:\"BrtBeginPivotCacheDef\", f:parsenoop },\n\t0x00B4: { n:\"BrtEndPivotCacheDef\", f:parsenoop },\n\t0x00B5: { n:\"BrtBeginPCDFields\", f:parsenoop },\n\t0x00B6: { n:\"BrtEndPCDFields\", f:parsenoop },\n\t0x00B7: { n:\"BrtBeginPCDField\", f:parsenoop },\n\t0x00B8: { n:\"BrtEndPCDField\", f:parsenoop },\n\t0x00B9: { n:\"BrtBeginPCDSource\", f:parsenoop },\n\t0x00BA: { n:\"BrtEndPCDSource\", f:parsenoop },\n\t0x00BB: { n:\"BrtBeginPCDSRange\", f:parsenoop },\n\t0x00BC: { n:\"BrtEndPCDSRange\", f:parsenoop },\n\t0x00BD: { n:\"BrtBeginPCDFAtbl\", f:parsenoop },\n\t0x00BE: { n:\"BrtEndPCDFAtbl\", f:parsenoop },\n\t0x00BF: { n:\"BrtBeginPCDIRun\", f:parsenoop },\n\t0x00C0: { n:\"BrtEndPCDIRun\", f:parsenoop },\n\t0x00C1: { n:\"BrtBeginPivotCacheRecords\", f:parsenoop },\n\t0x00C2: { n:\"BrtEndPivotCacheRecords\", f:parsenoop },\n\t0x00C3: { n:\"BrtBeginPCDHierarchies\", f:parsenoop },\n\t0x00C4: { n:\"BrtEndPCDHierarchies\", f:parsenoop },\n\t0x00C5: { n:\"BrtBeginPCDHierarchy\", f:parsenoop },\n\t0x00C6: { n:\"BrtEndPCDHierarchy\", f:parsenoop },\n\t0x00C7: { n:\"BrtBeginPCDHFieldsUsage\", f:parsenoop },\n\t0x00C8: { n:\"BrtEndPCDHFieldsUsage\", f:parsenoop },\n\t0x00C9: { n:\"BrtBeginExtConnection\", f:parsenoop },\n\t0x00CA: { n:\"BrtEndExtConnection\", f:parsenoop },\n\t0x00CB: { n:\"BrtBeginECDbProps\", f:parsenoop },\n\t0x00CC: { n:\"BrtEndECDbProps\", f:parsenoop },\n\t0x00CD: { n:\"BrtBeginECOlapProps\", f:parsenoop },\n\t0x00CE: { n:\"BrtEndECOlapProps\", f:parsenoop },\n\t0x00CF: { n:\"BrtBeginPCDSConsol\", f:parsenoop },\n\t0x00D0: { n:\"BrtEndPCDSConsol\", f:parsenoop },\n\t0x00D1: { n:\"BrtBeginPCDSCPages\", f:parsenoop },\n\t0x00D2: { n:\"BrtEndPCDSCPages\", f:parsenoop },\n\t0x00D3: { n:\"BrtBeginPCDSCPage\", f:parsenoop },\n\t0x00D4: { n:\"BrtEndPCDSCPage\", f:parsenoop },\n\t0x00D5: { n:\"BrtBeginPCDSCPItem\", f:parsenoop },\n\t0x00D6: { n:\"BrtEndPCDSCPItem\", f:parsenoop },\n\t0x00D7: { n:\"BrtBeginPCDSCSets\", f:parsenoop },\n\t0x00D8: { n:\"BrtEndPCDSCSets\", f:parsenoop },\n\t0x00D9: { n:\"BrtBeginPCDSCSet\", f:parsenoop },\n\t0x00DA: { n:\"BrtEndPCDSCSet\", f:parsenoop },\n\t0x00DB: { n:\"BrtBeginPCDFGroup\", f:parsenoop },\n\t0x00DC: { n:\"BrtEndPCDFGroup\", f:parsenoop },\n\t0x00DD: { n:\"BrtBeginPCDFGItems\", f:parsenoop },\n\t0x00DE: { n:\"BrtEndPCDFGItems\", f:parsenoop },\n\t0x00DF: { n:\"BrtBeginPCDFGRange\", f:parsenoop },\n\t0x00E0: { n:\"BrtEndPCDFGRange\", f:parsenoop },\n\t0x00E1: { n:\"BrtBeginPCDFGDiscrete\", f:parsenoop },\n\t0x00E2: { n:\"BrtEndPCDFGDiscrete\", f:parsenoop },\n\t0x00E3: { n:\"BrtBeginPCDSDTupleCache\", f:parsenoop },\n\t0x00E4: { n:\"BrtEndPCDSDTupleCache\", f:parsenoop },\n\t0x00E5: { n:\"BrtBeginPCDSDTCEntries\", f:parsenoop },\n\t0x00E6: { n:\"BrtEndPCDSDTCEntries\", f:parsenoop },\n\t0x00E7: { n:\"BrtBeginPCDSDTCEMembers\", f:parsenoop },\n\t0x00E8: { n:\"BrtEndPCDSDTCEMembers\", f:parsenoop },\n\t0x00E9: { n:\"BrtBeginPCDSDTCEMember\", f:parsenoop },\n\t0x00EA: { n:\"BrtEndPCDSDTCEMember\", f:parsenoop },\n\t0x00EB: { n:\"BrtBeginPCDSDTCQueries\", f:parsenoop },\n\t0x00EC: { n:\"BrtEndPCDSDTCQueries\", f:parsenoop },\n\t0x00ED: { n:\"BrtBeginPCDSDTCQuery\", f:parsenoop },\n\t0x00EE: { n:\"BrtEndPCDSDTCQuery\", f:parsenoop },\n\t0x00EF: { n:\"BrtBeginPCDSDTCSets\", f:parsenoop },\n\t0x00F0: { n:\"BrtEndPCDSDTCSets\", f:parsenoop },\n\t0x00F1: { n:\"BrtBeginPCDSDTCSet\", f:parsenoop },\n\t0x00F2: { n:\"BrtEndPCDSDTCSet\", f:parsenoop },\n\t0x00F3: { n:\"BrtBeginPCDCalcItems\", f:parsenoop },\n\t0x00F4: { n:\"BrtEndPCDCalcItems\", f:parsenoop },\n\t0x00F5: { n:\"BrtBeginPCDCalcItem\", f:parsenoop },\n\t0x00F6: { n:\"BrtEndPCDCalcItem\", f:parsenoop },\n\t0x00F7: { n:\"BrtBeginPRule\", f:parsenoop },\n\t0x00F8: { n:\"BrtEndPRule\", f:parsenoop },\n\t0x00F9: { n:\"BrtBeginPRFilters\", f:parsenoop },\n\t0x00FA: { n:\"BrtEndPRFilters\", f:parsenoop },\n\t0x00FB: { n:\"BrtBeginPRFilter\", f:parsenoop },\n\t0x00FC: { n:\"BrtEndPRFilter\", f:parsenoop },\n\t0x00FD: { n:\"BrtBeginPNames\", f:parsenoop },\n\t0x00FE: { n:\"BrtEndPNames\", f:parsenoop },\n\t0x00FF: { n:\"BrtBeginPName\", f:parsenoop },\n\t0x0100: { n:\"BrtEndPName\", f:parsenoop },\n\t0x0101: { n:\"BrtBeginPNPairs\", f:parsenoop },\n\t0x0102: { n:\"BrtEndPNPairs\", f:parsenoop },\n\t0x0103: { n:\"BrtBeginPNPair\", f:parsenoop },\n\t0x0104: { n:\"BrtEndPNPair\", f:parsenoop },\n\t0x0105: { n:\"BrtBeginECWebProps\", f:parsenoop },\n\t0x0106: { n:\"BrtEndECWebProps\", f:parsenoop },\n\t0x0107: { n:\"BrtBeginEcWpTables\", f:parsenoop },\n\t0x0108: { n:\"BrtEndECWPTables\", f:parsenoop },\n\t0x0109: { n:\"BrtBeginECParams\", f:parsenoop },\n\t0x010A: { n:\"BrtEndECParams\", f:parsenoop },\n\t0x010B: { n:\"BrtBeginECParam\", f:parsenoop },\n\t0x010C: { n:\"BrtEndECParam\", f:parsenoop },\n\t0x010D: { n:\"BrtBeginPCDKPIs\", f:parsenoop },\n\t0x010E: { n:\"BrtEndPCDKPIs\", f:parsenoop },\n\t0x010F: { n:\"BrtBeginPCDKPI\", f:parsenoop },\n\t0x0110: { n:\"BrtEndPCDKPI\", f:parsenoop },\n\t0x0111: { n:\"BrtBeginDims\", f:parsenoop },\n\t0x0112: { n:\"BrtEndDims\", f:parsenoop },\n\t0x0113: { n:\"BrtBeginDim\", f:parsenoop },\n\t0x0114: { n:\"BrtEndDim\", f:parsenoop },\n\t0x0115: { n:\"BrtIndexPartEnd\", f:parsenoop },\n\t0x0116: { n:\"BrtBeginStyleSheet\", f:parsenoop },\n\t0x0117: { n:\"BrtEndStyleSheet\", f:parsenoop },\n\t0x0118: { n:\"BrtBeginSXView\", f:parsenoop },\n\t0x0119: { n:\"BrtEndSXVI\", f:parsenoop },\n\t0x011A: { n:\"BrtBeginSXVI\", f:parsenoop },\n\t0x011B: { n:\"BrtBeginSXVIs\", f:parsenoop },\n\t0x011C: { n:\"BrtEndSXVIs\", f:parsenoop },\n\t0x011D: { n:\"BrtBeginSXVD\", f:parsenoop },\n\t0x011E: { n:\"BrtEndSXVD\", f:parsenoop },\n\t0x011F: { n:\"BrtBeginSXVDs\", f:parsenoop },\n\t0x0120: { n:\"BrtEndSXVDs\", f:parsenoop },\n\t0x0121: { n:\"BrtBeginSXPI\", f:parsenoop },\n\t0x0122: { n:\"BrtEndSXPI\", f:parsenoop },\n\t0x0123: { n:\"BrtBeginSXPIs\", f:parsenoop },\n\t0x0124: { n:\"BrtEndSXPIs\", f:parsenoop },\n\t0x0125: { n:\"BrtBeginSXDI\", f:parsenoop },\n\t0x0126: { n:\"BrtEndSXDI\", f:parsenoop },\n\t0x0127: { n:\"BrtBeginSXDIs\", f:parsenoop },\n\t0x0128: { n:\"BrtEndSXDIs\", f:parsenoop },\n\t0x0129: { n:\"BrtBeginSXLI\", f:parsenoop },\n\t0x012A: { n:\"BrtEndSXLI\", f:parsenoop },\n\t0x012B: { n:\"BrtBeginSXLIRws\", f:parsenoop },\n\t0x012C: { n:\"BrtEndSXLIRws\", f:parsenoop },\n\t0x012D: { n:\"BrtBeginSXLICols\", f:parsenoop },\n\t0x012E: { n:\"BrtEndSXLICols\", f:parsenoop },\n\t0x012F: { n:\"BrtBeginSXFormat\", f:parsenoop },\n\t0x0130: { n:\"BrtEndSXFormat\", f:parsenoop },\n\t0x0131: { n:\"BrtBeginSXFormats\", f:parsenoop },\n\t0x0132: { n:\"BrtEndSxFormats\", f:parsenoop },\n\t0x0133: { n:\"BrtBeginSxSelect\", f:parsenoop },\n\t0x0134: { n:\"BrtEndSxSelect\", f:parsenoop },\n\t0x0135: { n:\"BrtBeginISXVDRws\", f:parsenoop },\n\t0x0136: { n:\"BrtEndISXVDRws\", f:parsenoop },\n\t0x0137: { n:\"BrtBeginISXVDCols\", f:parsenoop },\n\t0x0138: { n:\"BrtEndISXVDCols\", f:parsenoop },\n\t0x0139: { n:\"BrtEndSXLocation\", f:parsenoop },\n\t0x013A: { n:\"BrtBeginSXLocation\", f:parsenoop },\n\t0x013B: { n:\"BrtEndSXView\", f:parsenoop },\n\t0x013C: { n:\"BrtBeginSXTHs\", f:parsenoop },\n\t0x013D: { n:\"BrtEndSXTHs\", f:parsenoop },\n\t0x013E: { n:\"BrtBeginSXTH\", f:parsenoop },\n\t0x013F: { n:\"BrtEndSXTH\", f:parsenoop },\n\t0x0140: { n:\"BrtBeginISXTHRws\", f:parsenoop },\n\t0x0141: { n:\"BrtEndISXTHRws\", f:parsenoop },\n\t0x0142: { n:\"BrtBeginISXTHCols\", f:parsenoop },\n\t0x0143: { n:\"BrtEndISXTHCols\", f:parsenoop },\n\t0x0144: { n:\"BrtBeginSXTDMPS\", f:parsenoop },\n\t0x0145: { n:\"BrtEndSXTDMPs\", f:parsenoop },\n\t0x0146: { n:\"BrtBeginSXTDMP\", f:parsenoop },\n\t0x0147: { n:\"BrtEndSXTDMP\", f:parsenoop },\n\t0x0148: { n:\"BrtBeginSXTHItems\", f:parsenoop },\n\t0x0149: { n:\"BrtEndSXTHItems\", f:parsenoop },\n\t0x014A: { n:\"BrtBeginSXTHItem\", f:parsenoop },\n\t0x014B: { n:\"BrtEndSXTHItem\", f:parsenoop },\n\t0x014C: { n:\"BrtBeginMetadata\", f:parsenoop },\n\t0x014D: { n:\"BrtEndMetadata\", f:parsenoop },\n\t0x014E: { n:\"BrtBeginEsmdtinfo\", f:parsenoop },\n\t0x014F: { n:\"BrtMdtinfo\", f:parsenoop },\n\t0x0150: { n:\"BrtEndEsmdtinfo\", f:parsenoop },\n\t0x0151: { n:\"BrtBeginEsmdb\", f:parsenoop },\n\t0x0152: { n:\"BrtEndEsmdb\", f:parsenoop },\n\t0x0153: { n:\"BrtBeginEsfmd\", f:parsenoop },\n\t0x0154: { n:\"BrtEndEsfmd\", f:parsenoop },\n\t0x0155: { n:\"BrtBeginSingleCells\", f:parsenoop },\n\t0x0156: { n:\"BrtEndSingleCells\", f:parsenoop },\n\t0x0157: { n:\"BrtBeginList\", f:parsenoop },\n\t0x0158: { n:\"BrtEndList\", f:parsenoop },\n\t0x0159: { n:\"BrtBeginListCols\", f:parsenoop },\n\t0x015A: { n:\"BrtEndListCols\", f:parsenoop },\n\t0x015B: { n:\"BrtBeginListCol\", f:parsenoop },\n\t0x015C: { n:\"BrtEndListCol\", f:parsenoop },\n\t0x015D: { n:\"BrtBeginListXmlCPr\", f:parsenoop },\n\t0x015E: { n:\"BrtEndListXmlCPr\", f:parsenoop },\n\t0x015F: { n:\"BrtListCCFmla\", f:parsenoop },\n\t0x0160: { n:\"BrtListTrFmla\", f:parsenoop },\n\t0x0161: { n:\"BrtBeginExternals\", f:parsenoop },\n\t0x0162: { n:\"BrtEndExternals\", f:parsenoop },\n\t0x0163: { n:\"BrtSupBookSrc\", f:parsenoop },\n\t0x0165: { n:\"BrtSupSelf\", f:parsenoop },\n\t0x0166: { n:\"BrtSupSame\", f:parsenoop },\n\t0x0167: { n:\"BrtSupTabs\", f:parsenoop },\n\t0x0168: { n:\"BrtBeginSupBook\", f:parsenoop },\n\t0x0169: { n:\"BrtPlaceholderName\", f:parsenoop },\n\t0x016A: { n:\"BrtExternSheet\", f:parsenoop },\n\t0x016B: { n:\"BrtExternTableStart\", f:parsenoop },\n\t0x016C: { n:\"BrtExternTableEnd\", f:parsenoop },\n\t0x016E: { n:\"BrtExternRowHdr\", f:parsenoop },\n\t0x016F: { n:\"BrtExternCellBlank\", f:parsenoop },\n\t0x0170: { n:\"BrtExternCellReal\", f:parsenoop },\n\t0x0171: { n:\"BrtExternCellBool\", f:parsenoop },\n\t0x0172: { n:\"BrtExternCellError\", f:parsenoop },\n\t0x0173: { n:\"BrtExternCellString\", f:parsenoop },\n\t0x0174: { n:\"BrtBeginEsmdx\", f:parsenoop },\n\t0x0175: { n:\"BrtEndEsmdx\", f:parsenoop },\n\t0x0176: { n:\"BrtBeginMdxSet\", f:parsenoop },\n\t0x0177: { n:\"BrtEndMdxSet\", f:parsenoop },\n\t0x0178: { n:\"BrtBeginMdxMbrProp\", f:parsenoop },\n\t0x0179: { n:\"BrtEndMdxMbrProp\", f:parsenoop },\n\t0x017A: { n:\"BrtBeginMdxKPI\", f:parsenoop },\n\t0x017B: { n:\"BrtEndMdxKPI\", f:parsenoop },\n\t0x017C: { n:\"BrtBeginEsstr\", f:parsenoop },\n\t0x017D: { n:\"BrtEndEsstr\", f:parsenoop },\n\t0x017E: { n:\"BrtBeginPRFItem\", f:parsenoop },\n\t0x017F: { n:\"BrtEndPRFItem\", f:parsenoop },\n\t0x0180: { n:\"BrtBeginPivotCacheIDs\", f:parsenoop },\n\t0x0181: { n:\"BrtEndPivotCacheIDs\", f:parsenoop },\n\t0x0182: { n:\"BrtBeginPivotCacheID\", f:parsenoop },\n\t0x0183: { n:\"BrtEndPivotCacheID\", f:parsenoop },\n\t0x0184: { n:\"BrtBeginISXVIs\", f:parsenoop },\n\t0x0185: { n:\"BrtEndISXVIs\", f:parsenoop },\n\t0x0186: { n:\"BrtBeginColInfos\", f:parsenoop },\n\t0x0187: { n:\"BrtEndColInfos\", f:parsenoop },\n\t0x0188: { n:\"BrtBeginRwBrk\", f:parsenoop },\n\t0x0189: { n:\"BrtEndRwBrk\", f:parsenoop },\n\t0x018A: { n:\"BrtBeginColBrk\", f:parsenoop },\n\t0x018B: { n:\"BrtEndColBrk\", f:parsenoop },\n\t0x018C: { n:\"BrtBrk\", f:parsenoop },\n\t0x018D: { n:\"BrtUserBookView\", f:parsenoop },\n\t0x018E: { n:\"BrtInfo\", f:parsenoop },\n\t0x018F: { n:\"BrtCUsr\", f:parsenoop },\n\t0x0190: { n:\"BrtUsr\", f:parsenoop },\n\t0x0191: { n:\"BrtBeginUsers\", f:parsenoop },\n\t0x0193: { n:\"BrtEOF\", f:parsenoop },\n\t0x0194: { n:\"BrtUCR\", f:parsenoop },\n\t0x0195: { n:\"BrtRRInsDel\", f:parsenoop },\n\t0x0196: { n:\"BrtRREndInsDel\", f:parsenoop },\n\t0x0197: { n:\"BrtRRMove\", f:parsenoop },\n\t0x0198: { n:\"BrtRREndMove\", f:parsenoop },\n\t0x0199: { n:\"BrtRRChgCell\", f:parsenoop },\n\t0x019A: { n:\"BrtRREndChgCell\", f:parsenoop },\n\t0x019B: { n:\"BrtRRHeader\", f:parsenoop },\n\t0x019C: { n:\"BrtRRUserView\", f:parsenoop },\n\t0x019D: { n:\"BrtRRRenSheet\", f:parsenoop },\n\t0x019E: { n:\"BrtRRInsertSh\", f:parsenoop },\n\t0x019F: { n:\"BrtRRDefName\", f:parsenoop },\n\t0x01A0: { n:\"BrtRRNote\", f:parsenoop },\n\t0x01A1: { n:\"BrtRRConflict\", f:parsenoop },\n\t0x01A2: { n:\"BrtRRTQSIF\", f:parsenoop },\n\t0x01A3: { n:\"BrtRRFormat\", f:parsenoop },\n\t0x01A4: { n:\"BrtRREndFormat\", f:parsenoop },\n\t0x01A5: { n:\"BrtRRAutoFmt\", f:parsenoop },\n\t0x01A6: { n:\"BrtBeginUserShViews\", f:parsenoop },\n\t0x01A7: { n:\"BrtBeginUserShView\", f:parsenoop },\n\t0x01A8: { n:\"BrtEndUserShView\", f:parsenoop },\n\t0x01A9: { n:\"BrtEndUserShViews\", f:parsenoop },\n\t0x01AA: { n:\"BrtArrFmla\", f:parsenoop },\n\t0x01AB: { n:\"BrtShrFmla\", f:parsenoop },\n\t0x01AC: { n:\"BrtTable\", f:parsenoop },\n\t0x01AD: { n:\"BrtBeginExtConnections\", f:parsenoop },\n\t0x01AE: { n:\"BrtEndExtConnections\", f:parsenoop },\n\t0x01AF: { n:\"BrtBeginPCDCalcMems\", f:parsenoop },\n\t0x01B0: { n:\"BrtEndPCDCalcMems\", f:parsenoop },\n\t0x01B1: { n:\"BrtBeginPCDCalcMem\", f:parsenoop },\n\t0x01B2: { n:\"BrtEndPCDCalcMem\", f:parsenoop },\n\t0x01B3: { n:\"BrtBeginPCDHGLevels\", f:parsenoop },\n\t0x01B4: { n:\"BrtEndPCDHGLevels\", f:parsenoop },\n\t0x01B5: { n:\"BrtBeginPCDHGLevel\", f:parsenoop },\n\t0x01B6: { n:\"BrtEndPCDHGLevel\", f:parsenoop },\n\t0x01B7: { n:\"BrtBeginPCDHGLGroups\", f:parsenoop },\n\t0x01B8: { n:\"BrtEndPCDHGLGroups\", f:parsenoop },\n\t0x01B9: { n:\"BrtBeginPCDHGLGroup\", f:parsenoop },\n\t0x01BA: { n:\"BrtEndPCDHGLGroup\", f:parsenoop },\n\t0x01BB: { n:\"BrtBeginPCDHGLGMembers\", f:parsenoop },\n\t0x01BC: { n:\"BrtEndPCDHGLGMembers\", f:parsenoop },\n\t0x01BD: { n:\"BrtBeginPCDHGLGMember\", f:parsenoop },\n\t0x01BE: { n:\"BrtEndPCDHGLGMember\", f:parsenoop },\n\t0x01BF: { n:\"BrtBeginQSI\", f:parsenoop },\n\t0x01C0: { n:\"BrtEndQSI\", f:parsenoop },\n\t0x01C1: { n:\"BrtBeginQSIR\", f:parsenoop },\n\t0x01C2: { n:\"BrtEndQSIR\", f:parsenoop },\n\t0x01C3: { n:\"BrtBeginDeletedNames\", f:parsenoop },\n\t0x01C4: { n:\"BrtEndDeletedNames\", f:parsenoop },\n\t0x01C5: { n:\"BrtBeginDeletedName\", f:parsenoop },\n\t0x01C6: { n:\"BrtEndDeletedName\", f:parsenoop },\n\t0x01C7: { n:\"BrtBeginQSIFs\", f:parsenoop },\n\t0x01C8: { n:\"BrtEndQSIFs\", f:parsenoop },\n\t0x01C9: { n:\"BrtBeginQSIF\", f:parsenoop },\n\t0x01CA: { n:\"BrtEndQSIF\", f:parsenoop },\n\t0x01CB: { n:\"BrtBeginAutoSortScope\", f:parsenoop },\n\t0x01CC: { n:\"BrtEndAutoSortScope\", f:parsenoop },\n\t0x01CD: { n:\"BrtBeginConditionalFormatting\", f:parsenoop },\n\t0x01CE: { n:\"BrtEndConditionalFormatting\", f:parsenoop },\n\t0x01CF: { n:\"BrtBeginCFRule\", f:parsenoop },\n\t0x01D0: { n:\"BrtEndCFRule\", f:parsenoop },\n\t0x01D1: { n:\"BrtBeginIconSet\", f:parsenoop },\n\t0x01D2: { n:\"BrtEndIconSet\", f:parsenoop },\n\t0x01D3: { n:\"BrtBeginDatabar\", f:parsenoop },\n\t0x01D4: { n:\"BrtEndDatabar\", f:parsenoop },\n\t0x01D5: { n:\"BrtBeginColorScale\", f:parsenoop },\n\t0x01D6: { n:\"BrtEndColorScale\", f:parsenoop },\n\t0x01D7: { n:\"BrtCFVO\", f:parsenoop },\n\t0x01D8: { n:\"BrtExternValueMeta\", f:parsenoop },\n\t0x01D9: { n:\"BrtBeginColorPalette\", f:parsenoop },\n\t0x01DA: { n:\"BrtEndColorPalette\", f:parsenoop },\n\t0x01DB: { n:\"BrtIndexedColor\", f:parsenoop },\n\t0x01DC: { n:\"BrtMargins\", f:parsenoop },\n\t0x01DD: { n:\"BrtPrintOptions\", f:parsenoop },\n\t0x01DE: { n:\"BrtPageSetup\", f:parsenoop },\n\t0x01DF: { n:\"BrtBeginHeaderFooter\", f:parsenoop },\n\t0x01E0: { n:\"BrtEndHeaderFooter\", f:parsenoop },\n\t0x01E1: { n:\"BrtBeginSXCrtFormat\", f:parsenoop },\n\t0x01E2: { n:\"BrtEndSXCrtFormat\", f:parsenoop },\n\t0x01E3: { n:\"BrtBeginSXCrtFormats\", f:parsenoop },\n\t0x01E4: { n:\"BrtEndSXCrtFormats\", f:parsenoop },\n\t0x01E5: { n:\"BrtWsFmtInfo\", f:parsenoop },\n\t0x01E6: { n:\"BrtBeginMgs\", f:parsenoop },\n\t0x01E7: { n:\"BrtEndMGs\", f:parsenoop },\n\t0x01E8: { n:\"BrtBeginMGMaps\", f:parsenoop },\n\t0x01E9: { n:\"BrtEndMGMaps\", f:parsenoop },\n\t0x01EA: { n:\"BrtBeginMG\", f:parsenoop },\n\t0x01EB: { n:\"BrtEndMG\", f:parsenoop },\n\t0x01EC: { n:\"BrtBeginMap\", f:parsenoop },\n\t0x01ED: { n:\"BrtEndMap\", f:parsenoop },\n\t0x01EE: { n:\"BrtHLink\", f:parse_BrtHLink },\n\t0x01EF: { n:\"BrtBeginDCon\", f:parsenoop },\n\t0x01F0: { n:\"BrtEndDCon\", f:parsenoop },\n\t0x01F1: { n:\"BrtBeginDRefs\", f:parsenoop },\n\t0x01F2: { n:\"BrtEndDRefs\", f:parsenoop },\n\t0x01F3: { n:\"BrtDRef\", f:parsenoop },\n\t0x01F4: { n:\"BrtBeginScenMan\", f:parsenoop },\n\t0x01F5: { n:\"BrtEndScenMan\", f:parsenoop },\n\t0x01F6: { n:\"BrtBeginSct\", f:parsenoop },\n\t0x01F7: { n:\"BrtEndSct\", f:parsenoop },\n\t0x01F8: { n:\"BrtSlc\", f:parsenoop },\n\t0x01F9: { n:\"BrtBeginDXFs\", f:parsenoop },\n\t0x01FA: { n:\"BrtEndDXFs\", f:parsenoop },\n\t0x01FB: { n:\"BrtDXF\", f:parsenoop },\n\t0x01FC: { n:\"BrtBeginTableStyles\", f:parsenoop },\n\t0x01FD: { n:\"BrtEndTableStyles\", f:parsenoop },\n\t0x01FE: { n:\"BrtBeginTableStyle\", f:parsenoop },\n\t0x01FF: { n:\"BrtEndTableStyle\", f:parsenoop },\n\t0x0200: { n:\"BrtTableStyleElement\", f:parsenoop },\n\t0x0201: { n:\"BrtTableStyleClient\", f:parsenoop },\n\t0x0202: { n:\"BrtBeginVolDeps\", f:parsenoop },\n\t0x0203: { n:\"BrtEndVolDeps\", f:parsenoop },\n\t0x0204: { n:\"BrtBeginVolType\", f:parsenoop },\n\t0x0205: { n:\"BrtEndVolType\", f:parsenoop },\n\t0x0206: { n:\"BrtBeginVolMain\", f:parsenoop },\n\t0x0207: { n:\"BrtEndVolMain\", f:parsenoop },\n\t0x0208: { n:\"BrtBeginVolTopic\", f:parsenoop },\n\t0x0209: { n:\"BrtEndVolTopic\", f:parsenoop },\n\t0x020A: { n:\"BrtVolSubtopic\", f:parsenoop },\n\t0x020B: { n:\"BrtVolRef\", f:parsenoop },\n\t0x020C: { n:\"BrtVolNum\", f:parsenoop },\n\t0x020D: { n:\"BrtVolErr\", f:parsenoop },\n\t0x020E: { n:\"BrtVolStr\", f:parsenoop },\n\t0x020F: { n:\"BrtVolBool\", f:parsenoop },\n\t0x0210: { n:\"BrtBeginCalcChain$\", f:parsenoop },\n\t0x0211: { n:\"BrtEndCalcChain$\", f:parsenoop },\n\t0x0212: { n:\"BrtBeginSortState\", f:parsenoop },\n\t0x0213: { n:\"BrtEndSortState\", f:parsenoop },\n\t0x0214: { n:\"BrtBeginSortCond\", f:parsenoop },\n\t0x0215: { n:\"BrtEndSortCond\", f:parsenoop },\n\t0x0216: { n:\"BrtBookProtection\", f:parsenoop },\n\t0x0217: { n:\"BrtSheetProtection\", f:parsenoop },\n\t0x0218: { n:\"BrtRangeProtection\", f:parsenoop },\n\t0x0219: { n:\"BrtPhoneticInfo\", f:parsenoop },\n\t0x021A: { n:\"BrtBeginECTxtWiz\", f:parsenoop },\n\t0x021B: { n:\"BrtEndECTxtWiz\", f:parsenoop },\n\t0x021C: { n:\"BrtBeginECTWFldInfoLst\", f:parsenoop },\n\t0x021D: { n:\"BrtEndECTWFldInfoLst\", f:parsenoop },\n\t0x021E: { n:\"BrtBeginECTwFldInfo\", f:parsenoop },\n\t0x0224: { n:\"BrtFileSharing\", f:parsenoop },\n\t0x0225: { n:\"BrtOleSize\", f:parsenoop },\n\t0x0226: { n:\"BrtDrawing\", f:parsenoop },\n\t0x0227: { n:\"BrtLegacyDrawing\", f:parsenoop },\n\t0x0228: { n:\"BrtLegacyDrawingHF\", f:parsenoop },\n\t0x0229: { n:\"BrtWebOpt\", f:parsenoop },\n\t0x022A: { n:\"BrtBeginWebPubItems\", f:parsenoop },\n\t0x022B: { n:\"BrtEndWebPubItems\", f:parsenoop },\n\t0x022C: { n:\"BrtBeginWebPubItem\", f:parsenoop },\n\t0x022D: { n:\"BrtEndWebPubItem\", f:parsenoop },\n\t0x022E: { n:\"BrtBeginSXCondFmt\", f:parsenoop },\n\t0x022F: { n:\"BrtEndSXCondFmt\", f:parsenoop },\n\t0x0230: { n:\"BrtBeginSXCondFmts\", f:parsenoop },\n\t0x0231: { n:\"BrtEndSXCondFmts\", f:parsenoop },\n\t0x0232: { n:\"BrtBkHim\", f:parsenoop },\n\t0x0234: { n:\"BrtColor\", f:parsenoop },\n\t0x0235: { n:\"BrtBeginIndexedColors\", f:parsenoop },\n\t0x0236: { n:\"BrtEndIndexedColors\", f:parsenoop },\n\t0x0239: { n:\"BrtBeginMRUColors\", f:parsenoop },\n\t0x023A: { n:\"BrtEndMRUColors\", f:parsenoop },\n\t0x023C: { n:\"BrtMRUColor\", f:parsenoop },\n\t0x023D: { n:\"BrtBeginDVals\", f:parsenoop },\n\t0x023E: { n:\"BrtEndDVals\", f:parsenoop },\n\t0x0241: { n:\"BrtSupNameStart\", f:parsenoop },\n\t0x0242: { n:\"BrtSupNameValueStart\", f:parsenoop },\n\t0x0243: { n:\"BrtSupNameValueEnd\", f:parsenoop },\n\t0x0244: { n:\"BrtSupNameNum\", f:parsenoop },\n\t0x0245: { n:\"BrtSupNameErr\", f:parsenoop },\n\t0x0246: { n:\"BrtSupNameSt\", f:parsenoop },\n\t0x0247: { n:\"BrtSupNameNil\", f:parsenoop },\n\t0x0248: { n:\"BrtSupNameBool\", f:parsenoop },\n\t0x0249: { n:\"BrtSupNameFmla\", f:parsenoop },\n\t0x024A: { n:\"BrtSupNameBits\", f:parsenoop },\n\t0x024B: { n:\"BrtSupNameEnd\", f:parsenoop },\n\t0x024C: { n:\"BrtEndSupBook\", f:parsenoop },\n\t0x024D: { n:\"BrtCellSmartTagProperty\", f:parsenoop },\n\t0x024E: { n:\"BrtBeginCellSmartTag\", f:parsenoop },\n\t0x024F: { n:\"BrtEndCellSmartTag\", f:parsenoop },\n\t0x0250: { n:\"BrtBeginCellSmartTags\", f:parsenoop },\n\t0x0251: { n:\"BrtEndCellSmartTags\", f:parsenoop },\n\t0x0252: { n:\"BrtBeginSmartTags\", f:parsenoop },\n\t0x0253: { n:\"BrtEndSmartTags\", f:parsenoop },\n\t0x0254: { n:\"BrtSmartTagType\", f:parsenoop },\n\t0x0255: { n:\"BrtBeginSmartTagTypes\", f:parsenoop },\n\t0x0256: { n:\"BrtEndSmartTagTypes\", f:parsenoop },\n\t0x0257: { n:\"BrtBeginSXFilters\", f:parsenoop },\n\t0x0258: { n:\"BrtEndSXFilters\", f:parsenoop },\n\t0x0259: { n:\"BrtBeginSXFILTER\", f:parsenoop },\n\t0x025A: { n:\"BrtEndSXFilter\", f:parsenoop },\n\t0x025B: { n:\"BrtBeginFills\", f:parsenoop },\n\t0x025C: { n:\"BrtEndFills\", f:parsenoop },\n\t0x025D: { n:\"BrtBeginCellWatches\", f:parsenoop },\n\t0x025E: { n:\"BrtEndCellWatches\", f:parsenoop },\n\t0x025F: { n:\"BrtCellWatch\", f:parsenoop },\n\t0x0260: { n:\"BrtBeginCRErrs\", f:parsenoop },\n\t0x0261: { n:\"BrtEndCRErrs\", f:parsenoop },\n\t0x0262: { n:\"BrtCrashRecErr\", f:parsenoop },\n\t0x0263: { n:\"BrtBeginFonts\", f:parsenoop },\n\t0x0264: { n:\"BrtEndFonts\", f:parsenoop },\n\t0x0265: { n:\"BrtBeginBorders\", f:parsenoop },\n\t0x0266: { n:\"BrtEndBorders\", f:parsenoop },\n\t0x0267: { n:\"BrtBeginFmts\", f:parsenoop },\n\t0x0268: { n:\"BrtEndFmts\", f:parsenoop },\n\t0x0269: { n:\"BrtBeginCellXFs\", f:parsenoop },\n\t0x026A: { n:\"BrtEndCellXFs\", f:parsenoop },\n\t0x026B: { n:\"BrtBeginStyles\", f:parsenoop },\n\t0x026C: { n:\"BrtEndStyles\", f:parsenoop },\n\t0x0271: { n:\"BrtBigName\", f:parsenoop },\n\t0x0272: { n:\"BrtBeginCellStyleXFs\", f:parsenoop },\n\t0x0273: { n:\"BrtEndCellStyleXFs\", f:parsenoop },\n\t0x0274: { n:\"BrtBeginComments\", f:parsenoop },\n\t0x0275: { n:\"BrtEndComments\", f:parsenoop },\n\t0x0276: { n:\"BrtBeginCommentAuthors\", f:parsenoop },\n\t0x0277: { n:\"BrtEndCommentAuthors\", f:parsenoop },\n\t0x0278: { n:\"BrtCommentAuthor\", f:parse_BrtCommentAuthor },\n\t0x0279: { n:\"BrtBeginCommentList\", f:parsenoop },\n\t0x027A: { n:\"BrtEndCommentList\", f:parsenoop },\n\t0x027B: { n:\"BrtBeginComment\", f:parse_BrtBeginComment},\n\t0x027C: { n:\"BrtEndComment\", f:parsenoop },\n\t0x027D: { n:\"BrtCommentText\", f:parse_BrtCommentText },\n\t0x027E: { n:\"BrtBeginOleObjects\", f:parsenoop },\n\t0x027F: { n:\"BrtOleObject\", f:parsenoop },\n\t0x0280: { n:\"BrtEndOleObjects\", f:parsenoop },\n\t0x0281: { n:\"BrtBeginSxrules\", f:parsenoop },\n\t0x0282: { n:\"BrtEndSxRules\", f:parsenoop },\n\t0x0283: { n:\"BrtBeginActiveXControls\", f:parsenoop },\n\t0x0284: { n:\"BrtActiveX\", f:parsenoop },\n\t0x0285: { n:\"BrtEndActiveXControls\", f:parsenoop },\n\t0x0286: { n:\"BrtBeginPCDSDTCEMembersSortBy\", f:parsenoop },\n\t0x0288: { n:\"BrtBeginCellIgnoreECs\", f:parsenoop },\n\t0x0289: { n:\"BrtCellIgnoreEC\", f:parsenoop },\n\t0x028A: { n:\"BrtEndCellIgnoreECs\", f:parsenoop },\n\t0x028B: { n:\"BrtCsProp\", f:parsenoop },\n\t0x028C: { n:\"BrtCsPageSetup\", f:parsenoop },\n\t0x028D: { n:\"BrtBeginUserCsViews\", f:parsenoop },\n\t0x028E: { n:\"BrtEndUserCsViews\", f:parsenoop },\n\t0x028F: { n:\"BrtBeginUserCsView\", f:parsenoop },\n\t0x0290: { n:\"BrtEndUserCsView\", f:parsenoop },\n\t0x0291: { n:\"BrtBeginPcdSFCIEntries\", f:parsenoop },\n\t0x0292: { n:\"BrtEndPCDSFCIEntries\", f:parsenoop },\n\t0x0293: { n:\"BrtPCDSFCIEntry\", f:parsenoop },\n\t0x0294: { n:\"BrtBeginListParts\", f:parsenoop },\n\t0x0295: { n:\"BrtListPart\", f:parsenoop },\n\t0x0296: { n:\"BrtEndListParts\", f:parsenoop },\n\t0x0297: { n:\"BrtSheetCalcProp\", f:parsenoop },\n\t0x0298: { n:\"BrtBeginFnGroup\", f:parsenoop },\n\t0x0299: { n:\"BrtFnGroup\", f:parsenoop },\n\t0x029A: { n:\"BrtEndFnGroup\", f:parsenoop },\n\t0x029B: { n:\"BrtSupAddin\", f:parsenoop },\n\t0x029C: { n:\"BrtSXTDMPOrder\", f:parsenoop },\n\t0x029D: { n:\"BrtCsProtection\", f:parsenoop },\n\t0x029F: { n:\"BrtBeginWsSortMap\", f:parsenoop },\n\t0x02A0: { n:\"BrtEndWsSortMap\", f:parsenoop },\n\t0x02A1: { n:\"BrtBeginRRSort\", f:parsenoop },\n\t0x02A2: { n:\"BrtEndRRSort\", f:parsenoop },\n\t0x02A3: { n:\"BrtRRSortItem\", f:parsenoop },\n\t0x02A4: { n:\"BrtFileSharingIso\", f:parsenoop },\n\t0x02A5: { n:\"BrtBookProtectionIso\", f:parsenoop },\n\t0x02A6: { n:\"BrtSheetProtectionIso\", f:parsenoop },\n\t0x02A7: { n:\"BrtCsProtectionIso\", f:parsenoop },\n\t0x02A8: { n:\"BrtRangeProtectionIso\", f:parsenoop },\n\t0x0400: { n:\"BrtRwDescent\", f:parsenoop },\n\t0x0401: { n:\"BrtKnownFonts\", f:parsenoop },\n\t0x0402: { n:\"BrtBeginSXTupleSet\", f:parsenoop },\n\t0x0403: { n:\"BrtEndSXTupleSet\", f:parsenoop },\n\t0x0404: { n:\"BrtBeginSXTupleSetHeader\", f:parsenoop },\n\t0x0405: { n:\"BrtEndSXTupleSetHeader\", f:parsenoop },\n\t0x0406: { n:\"BrtSXTupleSetHeaderItem\", f:parsenoop },\n\t0x0407: { n:\"BrtBeginSXTupleSetData\", f:parsenoop },\n\t0x0408: { n:\"BrtEndSXTupleSetData\", f:parsenoop },\n\t0x0409: { n:\"BrtBeginSXTupleSetRow\", f:parsenoop },\n\t0x040A: { n:\"BrtEndSXTupleSetRow\", f:parsenoop },\n\t0x040B: { n:\"BrtSXTupleSetRowItem\", f:parsenoop },\n\t0x040C: { n:\"BrtNameExt\", f:parsenoop },\n\t0x040D: { n:\"BrtPCDH14\", f:parsenoop },\n\t0x040E: { n:\"BrtBeginPCDCalcMem14\", f:parsenoop },\n\t0x040F: { n:\"BrtEndPCDCalcMem14\", f:parsenoop },\n\t0x0410: { n:\"BrtSXTH14\", f:parsenoop },\n\t0x0411: { n:\"BrtBeginSparklineGroup\", f:parsenoop },\n\t0x0412: { n:\"BrtEndSparklineGroup\", f:parsenoop },\n\t0x0413: { n:\"BrtSparkline\", f:parsenoop },\n\t0x0414: { n:\"BrtSXDI14\", f:parsenoop },\n\t0x0415: { n:\"BrtWsFmtInfoEx14\", f:parsenoop },\n\t0x0416: { n:\"BrtBeginConditionalFormatting14\", f:parsenoop },\n\t0x0417: { n:\"BrtEndConditionalFormatting14\", f:parsenoop },\n\t0x0418: { n:\"BrtBeginCFRule14\", f:parsenoop },\n\t0x0419: { n:\"BrtEndCFRule14\", f:parsenoop },\n\t0x041A: { n:\"BrtCFVO14\", f:parsenoop },\n\t0x041B: { n:\"BrtBeginDatabar14\", f:parsenoop },\n\t0x041C: { n:\"BrtBeginIconSet14\", f:parsenoop },\n\t0x041D: { n:\"BrtDVal14\", f:parsenoop },\n\t0x041E: { n:\"BrtBeginDVals14\", f:parsenoop },\n\t0x041F: { n:\"BrtColor14\", f:parsenoop },\n\t0x0420: { n:\"BrtBeginSparklines\", f:parsenoop },\n\t0x0421: { n:\"BrtEndSparklines\", f:parsenoop },\n\t0x0422: { n:\"BrtBeginSparklineGroups\", f:parsenoop },\n\t0x0423: { n:\"BrtEndSparklineGroups\", f:parsenoop },\n\t0x0425: { n:\"BrtSXVD14\", f:parsenoop },\n\t0x0426: { n:\"BrtBeginSxview14\", f:parsenoop },\n\t0x0427: { n:\"BrtEndSxview14\", f:parsenoop },\n\t0x042A: { n:\"BrtBeginPCD14\", f:parsenoop },\n\t0x042B: { n:\"BrtEndPCD14\", f:parsenoop },\n\t0x042C: { n:\"BrtBeginExtConn14\", f:parsenoop },\n\t0x042D: { n:\"BrtEndExtConn14\", f:parsenoop },\n\t0x042E: { n:\"BrtBeginSlicerCacheIDs\", f:parsenoop },\n\t0x042F: { n:\"BrtEndSlicerCacheIDs\", f:parsenoop },\n\t0x0430: { n:\"BrtBeginSlicerCacheID\", f:parsenoop },\n\t0x0431: { n:\"BrtEndSlicerCacheID\", f:parsenoop },\n\t0x0433: { n:\"BrtBeginSlicerCache\", f:parsenoop },\n\t0x0434: { n:\"BrtEndSlicerCache\", f:parsenoop },\n\t0x0435: { n:\"BrtBeginSlicerCacheDef\", f:parsenoop },\n\t0x0436: { n:\"BrtEndSlicerCacheDef\", f:parsenoop },\n\t0x0437: { n:\"BrtBeginSlicersEx\", f:parsenoop },\n\t0x0438: { n:\"BrtEndSlicersEx\", f:parsenoop },\n\t0x0439: { n:\"BrtBeginSlicerEx\", f:parsenoop },\n\t0x043A: { n:\"BrtEndSlicerEx\", f:parsenoop },\n\t0x043B: { n:\"BrtBeginSlicer\", f:parsenoop },\n\t0x043C: { n:\"BrtEndSlicer\", f:parsenoop },\n\t0x043D: { n:\"BrtSlicerCachePivotTables\", f:parsenoop },\n\t0x043E: { n:\"BrtBeginSlicerCacheOlapImpl\", f:parsenoop },\n\t0x043F: { n:\"BrtEndSlicerCacheOlapImpl\", f:parsenoop },\n\t0x0440: { n:\"BrtBeginSlicerCacheLevelsData\", f:parsenoop },\n\t0x0441: { n:\"BrtEndSlicerCacheLevelsData\", f:parsenoop },\n\t0x0442: { n:\"BrtBeginSlicerCacheLevelData\", f:parsenoop },\n\t0x0443: { n:\"BrtEndSlicerCacheLevelData\", f:parsenoop },\n\t0x0444: { n:\"BrtBeginSlicerCacheSiRanges\", f:parsenoop },\n\t0x0445: { n:\"BrtEndSlicerCacheSiRanges\", f:parsenoop },\n\t0x0446: { n:\"BrtBeginSlicerCacheSiRange\", f:parsenoop },\n\t0x0447: { n:\"BrtEndSlicerCacheSiRange\", f:parsenoop },\n\t0x0448: { n:\"BrtSlicerCacheOlapItem\", f:parsenoop },\n\t0x0449: { n:\"BrtBeginSlicerCacheSelections\", f:parsenoop },\n\t0x044A: { n:\"BrtSlicerCacheSelection\", f:parsenoop },\n\t0x044B: { n:\"BrtEndSlicerCacheSelections\", f:parsenoop },\n\t0x044C: { n:\"BrtBeginSlicerCacheNative\", f:parsenoop },\n\t0x044D: { n:\"BrtEndSlicerCacheNative\", f:parsenoop },\n\t0x044E: { n:\"BrtSlicerCacheNativeItem\", f:parsenoop },\n\t0x044F: { n:\"BrtRangeProtection14\", f:parsenoop },\n\t0x0450: { n:\"BrtRangeProtectionIso14\", f:parsenoop },\n\t0x0451: { n:\"BrtCellIgnoreEC14\", f:parsenoop },\n\t0x0457: { n:\"BrtList14\", f:parsenoop },\n\t0x0458: { n:\"BrtCFIcon\", f:parsenoop },\n\t0x0459: { n:\"BrtBeginSlicerCachesPivotCacheIDs\", f:parsenoop },\n\t0x045A: { n:\"BrtEndSlicerCachesPivotCacheIDs\", f:parsenoop },\n\t0x045B: { n:\"BrtBeginSlicers\", f:parsenoop },\n\t0x045C: { n:\"BrtEndSlicers\", f:parsenoop },\n\t0x045D: { n:\"BrtWbProp14\", f:parsenoop },\n\t0x045E: { n:\"BrtBeginSXEdit\", f:parsenoop },\n\t0x045F: { n:\"BrtEndSXEdit\", f:parsenoop },\n\t0x0460: { n:\"BrtBeginSXEdits\", f:parsenoop },\n\t0x0461: { n:\"BrtEndSXEdits\", f:parsenoop },\n\t0x0462: { n:\"BrtBeginSXChange\", f:parsenoop },\n\t0x0463: { n:\"BrtEndSXChange\", f:parsenoop },\n\t0x0464: { n:\"BrtBeginSXChanges\", f:parsenoop },\n\t0x0465: { n:\"BrtEndSXChanges\", f:parsenoop },\n\t0x0466: { n:\"BrtSXTupleItems\", f:parsenoop },\n\t0x0468: { n:\"BrtBeginSlicerStyle\", f:parsenoop },\n\t0x0469: { n:\"BrtEndSlicerStyle\", f:parsenoop },\n\t0x046A: { n:\"BrtSlicerStyleElement\", f:parsenoop },\n\t0x046B: { n:\"BrtBeginStyleSheetExt14\", f:parsenoop },\n\t0x046C: { n:\"BrtEndStyleSheetExt14\", f:parsenoop },\n\t0x046D: { n:\"BrtBeginSlicerCachesPivotCacheID\", f:parsenoop },\n\t0x046E: { n:\"BrtEndSlicerCachesPivotCacheID\", f:parsenoop },\n\t0x046F: { n:\"BrtBeginConditionalFormattings\", f:parsenoop },\n\t0x0470: { n:\"BrtEndConditionalFormattings\", f:parsenoop },\n\t0x0471: { n:\"BrtBeginPCDCalcMemExt\", f:parsenoop },\n\t0x0472: { n:\"BrtEndPCDCalcMemExt\", f:parsenoop },\n\t0x0473: { n:\"BrtBeginPCDCalcMemsExt\", f:parsenoop },\n\t0x0474: { n:\"BrtEndPCDCalcMemsExt\", f:parsenoop },\n\t0x0475: { n:\"BrtPCDField14\", f:parsenoop },\n\t0x0476: { n:\"BrtBeginSlicerStyles\", f:parsenoop },\n\t0x0477: { n:\"BrtEndSlicerStyles\", f:parsenoop },\n\t0x0478: { n:\"BrtBeginSlicerStyleElements\", f:parsenoop },\n\t0x0479: { n:\"BrtEndSlicerStyleElements\", f:parsenoop },\n\t0x047A: { n:\"BrtCFRuleExt\", f:parsenoop },\n\t0x047B: { n:\"BrtBeginSXCondFmt14\", f:parsenoop },\n\t0x047C: { n:\"BrtEndSXCondFmt14\", f:parsenoop },\n\t0x047D: { n:\"BrtBeginSXCondFmts14\", f:parsenoop },\n\t0x047E: { n:\"BrtEndSXCondFmts14\", f:parsenoop },\n\t0x0480: { n:\"BrtBeginSortCond14\", f:parsenoop },\n\t0x0481: { n:\"BrtEndSortCond14\", f:parsenoop },\n\t0x0482: { n:\"BrtEndDVals14\", f:parsenoop },\n\t0x0483: { n:\"BrtEndIconSet14\", f:parsenoop },\n\t0x0484: { n:\"BrtEndDatabar14\", f:parsenoop },\n\t0x0485: { n:\"BrtBeginColorScale14\", f:parsenoop },\n\t0x0486: { n:\"BrtEndColorScale14\", f:parsenoop },\n\t0x0487: { n:\"BrtBeginSxrules14\", f:parsenoop },\n\t0x0488: { n:\"BrtEndSxrules14\", f:parsenoop },\n\t0x0489: { n:\"BrtBeginPRule14\", f:parsenoop },\n\t0x048A: { n:\"BrtEndPRule14\", f:parsenoop },\n\t0x048B: { n:\"BrtBeginPRFilters14\", f:parsenoop },\n\t0x048C: { n:\"BrtEndPRFilters14\", f:parsenoop },\n\t0x048D: { n:\"BrtBeginPRFilter14\", f:parsenoop },\n\t0x048E: { n:\"BrtEndPRFilter14\", f:parsenoop },\n\t0x048F: { n:\"BrtBeginPRFItem14\", f:parsenoop },\n\t0x0490: { n:\"BrtEndPRFItem14\", f:parsenoop },\n\t0x0491: { n:\"BrtBeginCellIgnoreECs14\", f:parsenoop },\n\t0x0492: { n:\"BrtEndCellIgnoreECs14\", f:parsenoop },\n\t0x0493: { n:\"BrtDxf14\", f:parsenoop },\n\t0x0494: { n:\"BrtBeginDxF14s\", f:parsenoop },\n\t0x0495: { n:\"BrtEndDxf14s\", f:parsenoop },\n\t0x0499: { n:\"BrtFilter14\", f:parsenoop },\n\t0x049A: { n:\"BrtBeginCustomFilters14\", f:parsenoop },\n\t0x049C: { n:\"BrtCustomFilter14\", f:parsenoop },\n\t0x049D: { n:\"BrtIconFilter14\", f:parsenoop },\n\t0x049E: { n:\"BrtPivotCacheConnectionName\", f:parsenoop },\n\t0x0800: { n:\"BrtBeginDecoupledPivotCacheIDs\", f:parsenoop },\n\t0x0801: { n:\"BrtEndDecoupledPivotCacheIDs\", f:parsenoop },\n\t0x0802: { n:\"BrtDecoupledPivotCacheID\", f:parsenoop },\n\t0x0803: { n:\"BrtBeginPivotTableRefs\", f:parsenoop },\n\t0x0804: { n:\"BrtEndPivotTableRefs\", f:parsenoop },\n\t0x0805: { n:\"BrtPivotTableRef\", f:parsenoop },\n\t0x0806: { n:\"BrtSlicerCacheBookPivotTables\", f:parsenoop },\n\t0x0807: { n:\"BrtBeginSxvcells\", f:parsenoop },\n\t0x0808: { n:\"BrtEndSxvcells\", f:parsenoop },\n\t0x0809: { n:\"BrtBeginSxRow\", f:parsenoop },\n\t0x080A: { n:\"BrtEndSxRow\", f:parsenoop },\n\t0x080C: { n:\"BrtPcdCalcMem15\", f:parsenoop },\n\t0x0813: { n:\"BrtQsi15\", f:parsenoop },\n\t0x0814: { n:\"BrtBeginWebExtensions\", f:parsenoop },\n\t0x0815: { n:\"BrtEndWebExtensions\", f:parsenoop },\n\t0x0816: { n:\"BrtWebExtension\", f:parsenoop },\n\t0x0817: { n:\"BrtAbsPath15\", f:parsenoop },\n\t0x0818: { n:\"BrtBeginPivotTableUISettings\", f:parsenoop },\n\t0x0819: { n:\"BrtEndPivotTableUISettings\", f:parsenoop },\n\t0x081B: { n:\"BrtTableSlicerCacheIDs\", f:parsenoop },\n\t0x081C: { n:\"BrtTableSlicerCacheID\", f:parsenoop },\n\t0x081D: { n:\"BrtBeginTableSlicerCache\", f:parsenoop },\n\t0x081E: { n:\"BrtEndTableSlicerCache\", f:parsenoop },\n\t0x081F: { n:\"BrtSxFilter15\", f:parsenoop },\n\t0x0820: { n:\"BrtBeginTimelineCachePivotCacheIDs\", f:parsenoop },\n\t0x0821: { n:\"BrtEndTimelineCachePivotCacheIDs\", f:parsenoop },\n\t0x0822: { n:\"BrtTimelineCachePivotCacheID\", f:parsenoop },\n\t0x0823: { n:\"BrtBeginTimelineCacheIDs\", f:parsenoop },\n\t0x0824: { n:\"BrtEndTimelineCacheIDs\", f:parsenoop },\n\t0x0825: { n:\"BrtBeginTimelineCacheID\", f:parsenoop },\n\t0x0826: { n:\"BrtEndTimelineCacheID\", f:parsenoop },\n\t0x0827: { n:\"BrtBeginTimelinesEx\", f:parsenoop },\n\t0x0828: { n:\"BrtEndTimelinesEx\", f:parsenoop },\n\t0x0829: { n:\"BrtBeginTimelineEx\", f:parsenoop },\n\t0x082A: { n:\"BrtEndTimelineEx\", f:parsenoop },\n\t0x082B: { n:\"BrtWorkBookPr15\", f:parsenoop },\n\t0x082C: { n:\"BrtPCDH15\", f:parsenoop },\n\t0x082D: { n:\"BrtBeginTimelineStyle\", f:parsenoop },\n\t0x082E: { n:\"BrtEndTimelineStyle\", f:parsenoop },\n\t0x082F: { n:\"BrtTimelineStyleElement\", f:parsenoop },\n\t0x0830: { n:\"BrtBeginTimelineStylesheetExt15\", f:parsenoop },\n\t0x0831: { n:\"BrtEndTimelineStylesheetExt15\", f:parsenoop },\n\t0x0832: { n:\"BrtBeginTimelineStyles\", f:parsenoop },\n\t0x0833: { n:\"BrtEndTimelineStyles\", f:parsenoop },\n\t0x0834: { n:\"BrtBeginTimelineStyleElements\", f:parsenoop },\n\t0x0835: { n:\"BrtEndTimelineStyleElements\", f:parsenoop },\n\t0x0836: { n:\"BrtDxf15\", f:parsenoop },\n\t0x0837: { n:\"BrtBeginDxfs15\", f:parsenoop },\n\t0x0838: { n:\"brtEndDxfs15\", f:parsenoop },\n\t0x0839: { n:\"BrtSlicerCacheHideItemsWithNoData\", f:parsenoop },\n\t0x083A: { n:\"BrtBeginItemUniqueNames\", f:parsenoop },\n\t0x083B: { n:\"BrtEndItemUniqueNames\", f:parsenoop },\n\t0x083C: { n:\"BrtItemUniqueName\", f:parsenoop },\n\t0x083D: { n:\"BrtBeginExtConn15\", f:parsenoop },\n\t0x083E: { n:\"BrtEndExtConn15\", f:parsenoop },\n\t0x083F: { n:\"BrtBeginOledbPr15\", f:parsenoop },\n\t0x0840: { n:\"BrtEndOledbPr15\", f:parsenoop },\n\t0x0841: { n:\"BrtBeginDataFeedPr15\", f:parsenoop },\n\t0x0842: { n:\"BrtEndDataFeedPr15\", f:parsenoop },\n\t0x0843: { n:\"BrtTextPr15\", f:parsenoop },\n\t0x0844: { n:\"BrtRangePr15\", f:parsenoop },\n\t0x0845: { n:\"BrtDbCommand15\", f:parsenoop },\n\t0x0846: { n:\"BrtBeginDbTables15\", f:parsenoop },\n\t0x0847: { n:\"BrtEndDbTables15\", f:parsenoop },\n\t0x0848: { n:\"BrtDbTable15\", f:parsenoop },\n\t0x0849: { n:\"BrtBeginDataModel\", f:parsenoop },\n\t0x084A: { n:\"BrtEndDataModel\", f:parsenoop },\n\t0x084B: { n:\"BrtBeginModelTables\", f:parsenoop },\n\t0x084C: { n:\"BrtEndModelTables\", f:parsenoop },\n\t0x084D: { n:\"BrtModelTable\", f:parsenoop },\n\t0x084E: { n:\"BrtBeginModelRelationships\", f:parsenoop },\n\t0x084F: { n:\"BrtEndModelRelationships\", f:parsenoop },\n\t0x0850: { n:\"BrtModelRelationship\", f:parsenoop },\n\t0x0851: { n:\"BrtBeginECTxtWiz15\", f:parsenoop },\n\t0x0852: { n:\"BrtEndECTxtWiz15\", f:parsenoop },\n\t0x0853: { n:\"BrtBeginECTWFldInfoLst15\", f:parsenoop },\n\t0x0854: { n:\"BrtEndECTWFldInfoLst15\", f:parsenoop },\n\t0x0855: { n:\"BrtBeginECTWFldInfo15\", f:parsenoop },\n\t0x0856: { n:\"BrtFieldListActiveItem\", f:parsenoop },\n\t0x0857: { n:\"BrtPivotCacheIdVersion\", f:parsenoop },\n\t0x0858: { n:\"BrtSXDI15\", f:parsenoop },\n\t0xFFFF: { n:\"\", f:parsenoop }\n};\n\nvar evert_RE = evert_key(XLSBRecordEnum, 'n');\n\n/* [MS-XLS] 2.3 Record Enumeration */\nvar XLSRecordEnum = {\n\t0x0003: { n:\"BIFF2NUM\", f:parse_BIFF2NUM },\n\t0x0004: { n:\"BIFF2STR\", f:parse_BIFF2STR },\n\t0x0006: { n:\"Formula\", f:parse_Formula },\n\t0x0009: { n:'BOF', f:parse_BOF },\n\t0x000a: { n:'EOF', f:parse_EOF },\n\t0x000c: { n:\"CalcCount\", f:parse_CalcCount },\n\t0x000d: { n:\"CalcMode\", f:parse_CalcMode },\n\t0x000e: { n:\"CalcPrecision\", f:parse_CalcPrecision },\n\t0x000f: { n:\"CalcRefMode\", f:parse_CalcRefMode },\n\t0x0010: { n:\"CalcDelta\", f:parse_CalcDelta },\n\t0x0011: { n:\"CalcIter\", f:parse_CalcIter },\n\t0x0012: { n:\"Protect\", f:parse_Protect },\n\t0x0013: { n:\"Password\", f:parse_Password },\n\t0x0014: { n:\"Header\", f:parse_Header },\n\t0x0015: { n:\"Footer\", f:parse_Footer },\n\t0x0017: { n:\"ExternSheet\", f:parse_ExternSheet },\n\t0x0018: { n:\"Lbl\", f:parse_Lbl },\n\t0x0019: { n:\"WinProtect\", f:parse_WinProtect },\n\t0x001a: { n:\"VerticalPageBreaks\", f:parse_VerticalPageBreaks },\n\t0x001b: { n:\"HorizontalPageBreaks\", f:parse_HorizontalPageBreaks },\n\t0x001c: { n:\"Note\", f:parse_Note },\n\t0x001d: { n:\"Selection\", f:parse_Selection },\n\t0x0022: { n:\"Date1904\", f:parse_Date1904 },\n\t0x0023: { n:\"ExternName\", f:parse_ExternName },\n\t0x0026: { n:\"LeftMargin\", f:parse_LeftMargin },\n\t0x0027: { n:\"RightMargin\", f:parse_RightMargin },\n\t0x0028: { n:\"TopMargin\", f:parse_TopMargin },\n\t0x0029: { n:\"BottomMargin\", f:parse_BottomMargin },\n\t0x002a: { n:\"PrintRowCol\", f:parse_PrintRowCol },\n\t0x002b: { n:\"PrintGrid\", f:parse_PrintGrid },\n\t0x002f: { n:\"FilePass\", f:parse_FilePass },\n\t0x0031: { n:\"Font\", f:parse_Font },\n\t0x0033: { n:\"PrintSize\", f:parse_PrintSize },\n\t0x003c: { n:\"Continue\", f:parse_Continue },\n\t0x003d: { n:\"Window1\", f:parse_Window1 },\n\t0x0040: { n:\"Backup\", f:parse_Backup },\n\t0x0041: { n:\"Pane\", f:parse_Pane },\n\t0x0042: { n:'CodePage', f:parse_CodePage },\n\t0x004d: { n:\"Pls\", f:parse_Pls },\n\t0x0050: { n:\"DCon\", f:parse_DCon },\n\t0x0051: { n:\"DConRef\", f:parse_DConRef },\n\t0x0052: { n:\"DConName\", f:parse_DConName },\n\t0x0055: { n:\"DefColWidth\", f:parse_DefColWidth },\n\t0x0059: { n:\"XCT\", f:parse_XCT },\n\t0x005a: { n:\"CRN\", f:parse_CRN },\n\t0x005b: { n:\"FileSharing\", f:parse_FileSharing },\n\t0x005c: { n:'WriteAccess', f:parse_WriteAccess },\n\t0x005d: { n:\"Obj\", f:parse_Obj },\n\t0x005e: { n:\"Uncalced\", f:parse_Uncalced },\n\t0x005f: { n:\"CalcSaveRecalc\", f:parse_CalcSaveRecalc },\n\t0x0060: { n:\"Template\", f:parse_Template },\n\t0x0061: { n:\"Intl\", f:parse_Intl },\n\t0x0063: { n:\"ObjProtect\", f:parse_ObjProtect },\n\t0x007d: { n:\"ColInfo\", f:parse_ColInfo },\n\t0x0080: { n:\"Guts\", f:parse_Guts },\n\t0x0081: { n:\"WsBool\", f:parse_WsBool },\n\t0x0082: { n:\"GridSet\", f:parse_GridSet },\n\t0x0083: { n:\"HCenter\", f:parse_HCenter },\n\t0x0084: { n:\"VCenter\", f:parse_VCenter },\n\t0x0085: { n:'BoundSheet8', f:parse_BoundSheet8 },\n\t0x0086: { n:\"WriteProtect\", f:parse_WriteProtect },\n\t0x008c: { n:\"Country\", f:parse_Country },\n\t0x008d: { n:\"HideObj\", f:parse_HideObj },\n\t0x0090: { n:\"Sort\", f:parse_Sort },\n\t0x0092: { n:\"Palette\", f:parse_Palette },\n\t0x0097: { n:\"Sync\", f:parse_Sync },\n\t0x0098: { n:\"LPr\", f:parse_LPr },\n\t0x0099: { n:\"DxGCol\", f:parse_DxGCol },\n\t0x009a: { n:\"FnGroupName\", f:parse_FnGroupName },\n\t0x009b: { n:\"FilterMode\", f:parse_FilterMode },\n\t0x009c: { n:\"BuiltInFnGroupCount\", f:parse_BuiltInFnGroupCount },\n\t0x009d: { n:\"AutoFilterInfo\", f:parse_AutoFilterInfo },\n\t0x009e: { n:\"AutoFilter\", f:parse_AutoFilter },\n\t0x00a0: { n:\"Scl\", f:parse_Scl },\n\t0x00a1: { n:\"Setup\", f:parse_Setup },\n\t0x00ae: { n:\"ScenMan\", f:parse_ScenMan },\n\t0x00af: { n:\"SCENARIO\", f:parse_SCENARIO },\n\t0x00b0: { n:\"SxView\", f:parse_SxView },\n\t0x00b1: { n:\"Sxvd\", f:parse_Sxvd },\n\t0x00b2: { n:\"SXVI\", f:parse_SXVI },\n\t0x00b4: { n:\"SxIvd\", f:parse_SxIvd },\n\t0x00b5: { n:\"SXLI\", f:parse_SXLI },\n\t0x00b6: { n:\"SXPI\", f:parse_SXPI },\n\t0x00b8: { n:\"DocRoute\", f:parse_DocRoute },\n\t0x00b9: { n:\"RecipName\", f:parse_RecipName },\n\t0x00bd: { n:\"MulRk\", f:parse_MulRk },\n\t0x00be: { n:\"MulBlank\", f:parse_MulBlank },\n\t0x00c1: { n:'Mms', f:parse_Mms },\n\t0x00c5: { n:\"SXDI\", f:parse_SXDI },\n\t0x00c6: { n:\"SXDB\", f:parse_SXDB },\n\t0x00c7: { n:\"SXFDB\", f:parse_SXFDB },\n\t0x00c8: { n:\"SXDBB\", f:parse_SXDBB },\n\t0x00c9: { n:\"SXNum\", f:parse_SXNum },\n\t0x00ca: { n:\"SxBool\", f:parse_SxBool },\n\t0x00cb: { n:\"SxErr\", f:parse_SxErr },\n\t0x00cc: { n:\"SXInt\", f:parse_SXInt },\n\t0x00cd: { n:\"SXString\", f:parse_SXString },\n\t0x00ce: { n:\"SXDtr\", f:parse_SXDtr },\n\t0x00cf: { n:\"SxNil\", f:parse_SxNil },\n\t0x00d0: { n:\"SXTbl\", f:parse_SXTbl },\n\t0x00d1: { n:\"SXTBRGIITM\", f:parse_SXTBRGIITM },\n\t0x00d2: { n:\"SxTbpg\", f:parse_SxTbpg },\n\t0x00d3: { n:\"ObProj\", f:parse_ObProj },\n\t0x00d5: { n:\"SXStreamID\", f:parse_SXStreamID },\n\t0x00d7: { n:\"DBCell\", f:parse_DBCell },\n\t0x00d8: { n:\"SXRng\", f:parse_SXRng },\n\t0x00d9: { n:\"SxIsxoper\", f:parse_SxIsxoper },\n\t0x00da: { n:\"BookBool\", f:parse_BookBool },\n\t0x00dc: { n:\"DbOrParamQry\", f:parse_DbOrParamQry },\n\t0x00dd: { n:\"ScenarioProtect\", f:parse_ScenarioProtect },\n\t0x00de: { n:\"OleObjectSize\", f:parse_OleObjectSize },\n\t0x00e0: { n:\"XF\", f:parse_XF },\n\t0x00e1: { n:'InterfaceHdr', f:parse_InterfaceHdr },\n\t0x00e2: { n:'InterfaceEnd', f:parse_InterfaceEnd },\n\t0x00e3: { n:\"SXVS\", f:parse_SXVS },\n\t0x00e5: { n:\"MergeCells\", f:parse_MergeCells },\n\t0x00e9: { n:\"BkHim\", f:parse_BkHim },\n\t0x00eb: { n:\"MsoDrawingGroup\", f:parse_MsoDrawingGroup },\n\t0x00ec: { n:\"MsoDrawing\", f:parse_MsoDrawing },\n\t0x00ed: { n:\"MsoDrawingSelection\", f:parse_MsoDrawingSelection },\n\t0x00ef: { n:\"PhoneticInfo\", f:parse_PhoneticInfo },\n\t0x00f0: { n:\"SxRule\", f:parse_SxRule },\n\t0x00f1: { n:\"SXEx\", f:parse_SXEx },\n\t0x00f2: { n:\"SxFilt\", f:parse_SxFilt },\n\t0x00f4: { n:\"SxDXF\", f:parse_SxDXF },\n\t0x00f5: { n:\"SxItm\", f:parse_SxItm },\n\t0x00f6: { n:\"SxName\", f:parse_SxName },\n\t0x00f7: { n:\"SxSelect\", f:parse_SxSelect },\n\t0x00f8: { n:\"SXPair\", f:parse_SXPair },\n\t0x00f9: { n:\"SxFmla\", f:parse_SxFmla },\n\t0x00fb: { n:\"SxFormat\", f:parse_SxFormat },\n\t0x00fc: { n:\"SST\", f:parse_SST },\n\t0x00fd: { n:\"LabelSst\", f:parse_LabelSst },\n\t0x00ff: { n:\"ExtSST\", f:parse_ExtSST },\n\t0x0100: { n:\"SXVDEx\", f:parse_SXVDEx },\n\t0x0103: { n:\"SXFormula\", f:parse_SXFormula },\n\t0x0122: { n:\"SXDBEx\", f:parse_SXDBEx },\n\t0x0137: { n:\"RRDInsDel\", f:parse_RRDInsDel },\n\t0x0138: { n:\"RRDHead\", f:parse_RRDHead },\n\t0x013b: { n:\"RRDChgCell\", f:parse_RRDChgCell },\n\t0x013d: { n:\"RRTabId\", f:parse_RRTabId },\n\t0x013e: { n:\"RRDRenSheet\", f:parse_RRDRenSheet },\n\t0x013f: { n:\"RRSort\", f:parse_RRSort },\n\t0x0140: { n:\"RRDMove\", f:parse_RRDMove },\n\t0x014a: { n:\"RRFormat\", f:parse_RRFormat },\n\t0x014b: { n:\"RRAutoFmt\", f:parse_RRAutoFmt },\n\t0x014d: { n:\"RRInsertSh\", f:parse_RRInsertSh },\n\t0x014e: { n:\"RRDMoveBegin\", f:parse_RRDMoveBegin },\n\t0x014f: { n:\"RRDMoveEnd\", f:parse_RRDMoveEnd },\n\t0x0150: { n:\"RRDInsDelBegin\", f:parse_RRDInsDelBegin },\n\t0x0151: { n:\"RRDInsDelEnd\", f:parse_RRDInsDelEnd },\n\t0x0152: { n:\"RRDConflict\", f:parse_RRDConflict },\n\t0x0153: { n:\"RRDDefName\", f:parse_RRDDefName },\n\t0x0154: { n:\"RRDRstEtxp\", f:parse_RRDRstEtxp },\n\t0x015f: { n:\"LRng\", f:parse_LRng },\n\t0x0160: { n:\"UsesELFs\", f:parse_UsesELFs },\n\t0x0161: { n:\"DSF\", f:parse_DSF },\n\t0x0191: { n:\"CUsr\", f:parse_CUsr },\n\t0x0192: { n:\"CbUsr\", f:parse_CbUsr },\n\t0x0193: { n:\"UsrInfo\", f:parse_UsrInfo },\n\t0x0194: { n:\"UsrExcl\", f:parse_UsrExcl },\n\t0x0195: { n:\"FileLock\", f:parse_FileLock },\n\t0x0196: { n:\"RRDInfo\", f:parse_RRDInfo },\n\t0x0197: { n:\"BCUsrs\", f:parse_BCUsrs },\n\t0x0198: { n:\"UsrChk\", f:parse_UsrChk },\n\t0x01a9: { n:\"UserBView\", f:parse_UserBView },\n\t0x01aa: { n:\"UserSViewBegin\", f:parse_UserSViewBegin },\n\t0x01ab: { n:\"UserSViewEnd\", f:parse_UserSViewEnd },\n\t0x01ac: { n:\"RRDUserView\", f:parse_RRDUserView },\n\t0x01ad: { n:\"Qsi\", f:parse_Qsi },\n\t0x01ae: { n:\"SupBook\", f:parse_SupBook },\n\t0x01af: { n:\"Prot4Rev\", f:parse_Prot4Rev },\n\t0x01b0: { n:\"CondFmt\", f:parse_CondFmt },\n\t0x01b1: { n:\"CF\", f:parse_CF },\n\t0x01b2: { n:\"DVal\", f:parse_DVal },\n\t0x01b5: { n:\"DConBin\", f:parse_DConBin },\n\t0x01b6: { n:\"TxO\", f:parse_TxO },\n\t0x01b7: { n:\"RefreshAll\", f:parse_RefreshAll },\n\t0x01b8: { n:\"HLink\", f:parse_HLink },\n\t0x01b9: { n:\"Lel\", f:parse_Lel },\n\t0x01ba: { n:\"CodeName\", f:parse_XLSCodeName },\n\t0x01bb: { n:\"SXFDBType\", f:parse_SXFDBType },\n\t0x01bc: { n:\"Prot4RevPass\", f:parse_Prot4RevPass },\n\t0x01bd: { n:\"ObNoMacros\", f:parse_ObNoMacros },\n\t0x01be: { n:\"Dv\", f:parse_Dv },\n\t0x01c0: { n:\"Excel9File\", f:parse_Excel9File },\n\t0x01c1: { n:\"RecalcId\", f:parse_RecalcId, r:2},\n\t0x01c2: { n:\"EntExU2\", f:parse_EntExU2 },\n\t0x0200: { n:\"Dimensions\", f:parse_Dimensions },\n\t0x0201: { n:\"Blank\", f:parse_Blank },\n\t0x0203: { n:\"Number\", f:parse_Number },\n\t0x0204: { n:\"Label\", f:parse_Label },\n\t0x0205: { n:\"BoolErr\", f:parse_BoolErr },\n\t0x0207: { n:\"String\", f:parse_String },\n\t0x0208: { n:'Row', f:parse_Row },\n\t0x020b: { n:\"Index\", f:parse_Index },\n\t0x0221: { n:\"Array\", f:parse_Array },\n\t0x0225: { n:\"DefaultRowHeight\", f:parse_DefaultRowHeight },\n\t0x0236: { n:\"Table\", f:parse_Table },\n\t0x023e: { n:\"Window2\", f:parse_Window2 },\n\t0x027e: { n:\"RK\", f:parse_RK },\n\t0x0293: { n:\"Style\", f:parse_Style },\n\t0x0418: { n:\"BigName\", f:parse_BigName },\n\t0x041e: { n:\"Format\", f:parse_Format },\n\t0x043c: { n:\"ContinueBigName\", f:parse_ContinueBigName },\n\t0x04bc: { n:\"ShrFmla\", f:parse_ShrFmla },\n\t0x0800: { n:\"HLinkTooltip\", f:parse_HLinkTooltip },\n\t0x0801: { n:\"WebPub\", f:parse_WebPub },\n\t0x0802: { n:\"QsiSXTag\", f:parse_QsiSXTag },\n\t0x0803: { n:\"DBQueryExt\", f:parse_DBQueryExt },\n\t0x0804: { n:\"ExtString\", f:parse_ExtString },\n\t0x0805: { n:\"TxtQry\", f:parse_TxtQry },\n\t0x0806: { n:\"Qsir\", f:parse_Qsir },\n\t0x0807: { n:\"Qsif\", f:parse_Qsif },\n\t0x0808: { n:\"RRDTQSIF\", f:parse_RRDTQSIF },\n\t0x0809: { n:'BOF', f:parse_BOF },\n\t0x080a: { n:\"OleDbConn\", f:parse_OleDbConn },\n\t0x080b: { n:\"WOpt\", f:parse_WOpt },\n\t0x080c: { n:\"SXViewEx\", f:parse_SXViewEx },\n\t0x080d: { n:\"SXTH\", f:parse_SXTH },\n\t0x080e: { n:\"SXPIEx\", f:parse_SXPIEx },\n\t0x080f: { n:\"SXVDTEx\", f:parse_SXVDTEx },\n\t0x0810: { n:\"SXViewEx9\", f:parse_SXViewEx9 },\n\t0x0812: { n:\"ContinueFrt\", f:parse_ContinueFrt },\n\t0x0813: { n:\"RealTimeData\", f:parse_RealTimeData },\n\t0x0850: { n:\"ChartFrtInfo\", f:parse_ChartFrtInfo },\n\t0x0851: { n:\"FrtWrapper\", f:parse_FrtWrapper },\n\t0x0852: { n:\"StartBlock\", f:parse_StartBlock },\n\t0x0853: { n:\"EndBlock\", f:parse_EndBlock },\n\t0x0854: { n:\"StartObject\", f:parse_StartObject },\n\t0x0855: { n:\"EndObject\", f:parse_EndObject },\n\t0x0856: { n:\"CatLab\", f:parse_CatLab },\n\t0x0857: { n:\"YMult\", f:parse_YMult },\n\t0x0858: { n:\"SXViewLink\", f:parse_SXViewLink },\n\t0x0859: { n:\"PivotChartBits\", f:parse_PivotChartBits },\n\t0x085a: { n:\"FrtFontList\", f:parse_FrtFontList },\n\t0x0862: { n:\"SheetExt\", f:parse_SheetExt },\n\t0x0863: { n:\"BookExt\", f:parse_BookExt, r:12},\n\t0x0864: { n:\"SXAddl\", f:parse_SXAddl },\n\t0x0865: { n:\"CrErr\", f:parse_CrErr },\n\t0x0866: { n:\"HFPicture\", f:parse_HFPicture },\n\t0x0867: { n:'FeatHdr', f:parse_FeatHdr },\n\t0x0868: { n:\"Feat\", f:parse_Feat },\n\t0x086a: { n:\"DataLabExt\", f:parse_DataLabExt },\n\t0x086b: { n:\"DataLabExtContents\", f:parse_DataLabExtContents },\n\t0x086c: { n:\"CellWatch\", f:parse_CellWatch },\n\t0x0871: { n:\"FeatHdr11\", f:parse_FeatHdr11 },\n\t0x0872: { n:\"Feature11\", f:parse_Feature11 },\n\t0x0874: { n:\"DropDownObjIds\", f:parse_DropDownObjIds },\n\t0x0875: { n:\"ContinueFrt11\", f:parse_ContinueFrt11 },\n\t0x0876: { n:\"DConn\", f:parse_DConn },\n\t0x0877: { n:\"List12\", f:parse_List12 },\n\t0x0878: { n:\"Feature12\", f:parse_Feature12 },\n\t0x0879: { n:\"CondFmt12\", f:parse_CondFmt12 },\n\t0x087a: { n:\"CF12\", f:parse_CF12 },\n\t0x087b: { n:\"CFEx\", f:parse_CFEx },\n\t0x087c: { n:\"XFCRC\", f:parse_XFCRC, r:12 },\n\t0x087d: { n:\"XFExt\", f:parse_XFExt, r:12 },\n\t0x087e: { n:\"AutoFilter12\", f:parse_AutoFilter12 },\n\t0x087f: { n:\"ContinueFrt12\", f:parse_ContinueFrt12 },\n\t0x0884: { n:\"MDTInfo\", f:parse_MDTInfo },\n\t0x0885: { n:\"MDXStr\", f:parse_MDXStr },\n\t0x0886: { n:\"MDXTuple\", f:parse_MDXTuple },\n\t0x0887: { n:\"MDXSet\", f:parse_MDXSet },\n\t0x0888: { n:\"MDXProp\", f:parse_MDXProp },\n\t0x0889: { n:\"MDXKPI\", f:parse_MDXKPI },\n\t0x088a: { n:\"MDB\", f:parse_MDB },\n\t0x088b: { n:\"PLV\", f:parse_PLV },\n\t0x088c: { n:\"Compat12\", f:parse_Compat12, r:12 },\n\t0x088d: { n:\"DXF\", f:parse_DXF },\n\t0x088e: { n:\"TableStyles\", f:parse_TableStyles, r:12 },\n\t0x088f: { n:\"TableStyle\", f:parse_TableStyle },\n\t0x0890: { n:\"TableStyleElement\", f:parse_TableStyleElement },\n\t0x0892: { n:\"StyleExt\", f:parse_StyleExt },\n\t0x0893: { n:\"NamePublish\", f:parse_NamePublish },\n\t0x0894: { n:\"NameCmt\", f:parse_NameCmt },\n\t0x0895: { n:\"SortData\", f:parse_SortData },\n\t0x0896: { n:\"Theme\", f:parse_Theme, r:12 },\n\t0x0897: { n:\"GUIDTypeLib\", f:parse_GUIDTypeLib },\n\t0x0898: { n:\"FnGrp12\", f:parse_FnGrp12 },\n\t0x0899: { n:\"NameFnGrp12\", f:parse_NameFnGrp12 },\n\t0x089a: { n:\"MTRSettings\", f:parse_MTRSettings, r:12 },\n\t0x089b: { n:\"CompressPictures\", f:parse_CompressPictures },\n\t0x089c: { n:\"HeaderFooter\", f:parse_HeaderFooter },\n\t0x089d: { n:\"CrtLayout12\", f:parse_CrtLayout12 },\n\t0x089e: { n:\"CrtMlFrt\", f:parse_CrtMlFrt },\n\t0x089f: { n:\"CrtMlFrtContinue\", f:parse_CrtMlFrtContinue },\n\t0x08a3: { n:\"ForceFullCalculation\", f:parse_ForceFullCalculation },\n\t0x08a4: { n:\"ShapePropsStream\", f:parse_ShapePropsStream },\n\t0x08a5: { n:\"TextPropsStream\", f:parse_TextPropsStream },\n\t0x08a6: { n:\"RichTextStream\", f:parse_RichTextStream },\n\t0x08a7: { n:\"CrtLayout12A\", f:parse_CrtLayout12A },\n\t0x1001: { n:\"Units\", f:parse_Units },\n\t0x1002: { n:\"Chart\", f:parse_Chart },\n\t0x1003: { n:\"Series\", f:parse_Series },\n\t0x1006: { n:\"DataFormat\", f:parse_DataFormat },\n\t0x1007: { n:\"LineFormat\", f:parse_LineFormat },\n\t0x1009: { n:\"MarkerFormat\", f:parse_MarkerFormat },\n\t0x100a: { n:\"AreaFormat\", f:parse_AreaFormat },\n\t0x100b: { n:\"PieFormat\", f:parse_PieFormat },\n\t0x100c: { n:\"AttachedLabel\", f:parse_AttachedLabel },\n\t0x100d: { n:\"SeriesText\", f:parse_SeriesText },\n\t0x1014: { n:\"ChartFormat\", f:parse_ChartFormat },\n\t0x1015: { n:\"Legend\", f:parse_Legend },\n\t0x1016: { n:\"SeriesList\", f:parse_SeriesList },\n\t0x1017: { n:\"Bar\", f:parse_Bar },\n\t0x1018: { n:\"Line\", f:parse_Line },\n\t0x1019: { n:\"Pie\", f:parse_Pie },\n\t0x101a: { n:\"Area\", f:parse_Area },\n\t0x101b: { n:\"Scatter\", f:parse_Scatter },\n\t0x101c: { n:\"CrtLine\", f:parse_CrtLine },\n\t0x101d: { n:\"Axis\", f:parse_Axis },\n\t0x101e: { n:\"Tick\", f:parse_Tick },\n\t0x101f: { n:\"ValueRange\", f:parse_ValueRange },\n\t0x1020: { n:\"CatSerRange\", f:parse_CatSerRange },\n\t0x1021: { n:\"AxisLine\", f:parse_AxisLine },\n\t0x1022: { n:\"CrtLink\", f:parse_CrtLink },\n\t0x1024: { n:\"DefaultText\", f:parse_DefaultText },\n\t0x1025: { n:\"Text\", f:parse_Text },\n\t0x1026: { n:\"FontX\", f:parse_FontX },\n\t0x1027: { n:\"ObjectLink\", f:parse_ObjectLink },\n\t0x1032: { n:\"Frame\", f:parse_Frame },\n\t0x1033: { n:\"Begin\", f:parse_Begin },\n\t0x1034: { n:\"End\", f:parse_End },\n\t0x1035: { n:\"PlotArea\", f:parse_PlotArea },\n\t0x103a: { n:\"Chart3d\", f:parse_Chart3d },\n\t0x103c: { n:\"PicF\", f:parse_PicF },\n\t0x103d: { n:\"DropBar\", f:parse_DropBar },\n\t0x103e: { n:\"Radar\", f:parse_Radar },\n\t0x103f: { n:\"Surf\", f:parse_Surf },\n\t0x1040: { n:\"RadarArea\", f:parse_RadarArea },\n\t0x1041: { n:\"AxisParent\", f:parse_AxisParent },\n\t0x1043: { n:\"LegendException\", f:parse_LegendException },\n\t0x1044: { n:\"ShtProps\", f:parse_ShtProps },\n\t0x1045: { n:\"SerToCrt\", f:parse_SerToCrt },\n\t0x1046: { n:\"AxesUsed\", f:parse_AxesUsed },\n\t0x1048: { n:\"SBaseRef\", f:parse_SBaseRef },\n\t0x104a: { n:\"SerParent\", f:parse_SerParent },\n\t0x104b: { n:\"SerAuxTrend\", f:parse_SerAuxTrend },\n\t0x104e: { n:\"IFmtRecord\", f:parse_IFmtRecord },\n\t0x104f: { n:\"Pos\", f:parse_Pos },\n\t0x1050: { n:\"AlRuns\", f:parse_AlRuns },\n\t0x1051: { n:\"BRAI\", f:parse_BRAI },\n\t0x105b: { n:\"SerAuxErrBar\", f:parse_SerAuxErrBar },\n\t0x105c: { n:\"ClrtClient\", f:parse_ClrtClient },\n\t0x105d: { n:\"SerFmt\", f:parse_SerFmt },\n\t0x105f: { n:\"Chart3DBarShape\", f:parse_Chart3DBarShape },\n\t0x1060: { n:\"Fbi\", f:parse_Fbi },\n\t0x1061: { n:\"BopPop\", f:parse_BopPop },\n\t0x1062: { n:\"AxcExt\", f:parse_AxcExt },\n\t0x1063: { n:\"Dat\", f:parse_Dat },\n\t0x1064: { n:\"PlotGrowth\", f:parse_PlotGrowth },\n\t0x1065: { n:\"SIIndex\", f:parse_SIIndex },\n\t0x1066: { n:\"GelFrame\", f:parse_GelFrame },\n\t0x1067: { n:\"BopPopCustom\", f:parse_BopPopCustom },\n\t0x1068: { n:\"Fbi2\", f:parse_Fbi2 },\n\n\t/* These are specified in an older version of the spec */\n\t0x0016: { n:\"ExternCount\", f:parsenoop },\n\t0x007e: { n:\"RK\", f:parsenoop }, /* Not necessarily same as 0x027e */\n\t0x007f: { n:\"ImData\", f:parsenoop },\n\t0x0087: { n:\"Addin\", f:parsenoop },\n\t0x0088: { n:\"Edg\", f:parsenoop },\n\t0x0089: { n:\"Pub\", f:parsenoop },\n\t0x0091: { n:\"Sub\", f:parsenoop },\n\t0x0094: { n:\"LHRecord\", f:parsenoop },\n\t0x0095: { n:\"LHNGraph\", f:parsenoop },\n\t0x0096: { n:\"Sound\", f:parsenoop },\n\t0x00a9: { n:\"CoordList\", f:parsenoop },\n\t0x00ab: { n:\"GCW\", f:parsenoop },\n\t0x00bc: { n:\"ShrFmla\", f:parsenoop }, /* Not necessarily same as 0x04bc */\n\t0x00c2: { n:\"AddMenu\", f:parsenoop },\n\t0x00c3: { n:\"DelMenu\", f:parsenoop },\n\t0x00d6: { n:\"RString\", f:parsenoop },\n\t0x00df: { n:\"UDDesc\", f:parsenoop },\n\t0x00ea: { n:\"TabIdConf\", f:parsenoop },\n\t0x0162: { n:\"XL5Modify\", f:parsenoop },\n\t0x01a5: { n:\"FileSharing2\", f:parsenoop },\n\t0x0218: { n:\"Name\", f:parsenoop },\n\t0x0223: { n:\"ExternName\", f:parse_ExternName },\n\t0x0231: { n:\"Font\", f:parsenoop },\n\t0x0406: { n:\"Formula\", f:parse_Formula },\n\t0x086d: { n:\"FeatInfo\", f:parsenoop },\n\t0x0873: { n:\"FeatInfo11\", f:parsenoop },\n\t0x0881: { n:\"SXAddl12\", f:parsenoop },\n\t0x08c0: { n:\"AutoWebPub\", f:parsenoop },\n\t0x08c1: { n:\"ListObj\", f:parsenoop },\n\t0x08c2: { n:\"ListField\", f:parsenoop },\n\t0x08c3: { n:\"ListDV\", f:parsenoop },\n\t0x08c4: { n:\"ListCondFmt\", f:parsenoop },\n\t0x08c5: { n:\"ListCF\", f:parsenoop },\n\t0x08c6: { n:\"FMQry\", f:parsenoop },\n\t0x08c7: { n:\"FMSQry\", f:parsenoop },\n\t0x08c8: { n:\"PLV\", f:parsenoop }, /* supposedly PLV for Excel 11 */\n\t0x08c9: { n:\"LnExt\", f:parsenoop },\n\t0x08ca: { n:\"MkrExt\", f:parsenoop },\n\t0x08cb: { n:\"CrtCoopt\", f:parsenoop },\n\n\t0x0000: {}\n};\n\n\n/* Helper function to call out to ODS parser */\nfunction parse_ods(zip, opts) {\n\tif(typeof module !== \"undefined\" && typeof require !== 'undefined' && typeof ODS === 'undefined') ODS = require('./od' + 's');\n\tif(typeof ODS === 'undefined' || !ODS.parse_ods) throw new Error(\"Unsupported ODS\");\n\treturn ODS.parse_ods(zip, opts);\n}\nfunction fix_opts_func(defaults) {\n\treturn function fix_opts(opts) {\n\t\tfor(var i = 0; i != defaults.length; ++i) {\n\t\t\tvar d = defaults[i];\n\t\t\tif(opts[d[0]] === undefined) opts[d[0]] = d[1];\n\t\t\tif(d[2] === 'n') opts[d[0]] = Number(opts[d[0]]);\n\t\t}\n\t};\n}\n\nvar fix_read_opts = fix_opts_func([\n\t['cellNF', false], /* emit cell number format string as .z */\n\t['cellHTML', true], /* emit html string as .h */\n\t['cellFormula', true], /* emit formulae as .f */\n\t['cellStyles', false], /* emits style/theme as .s */\n\t['cellDates', false], /* emit date cells with type `d` */\n\n\t['sheetStubs', false], /* emit empty cells */\n\t['sheetRows', 0, 'n'], /* read n rows (0 = read all rows) */\n\n\t['bookDeps', false], /* parse calculation chains */\n\t['bookSheets', false], /* only try to get sheet names (no Sheets) */\n\t['bookProps', false], /* only try to get properties (no Sheets) */\n\t['bookFiles', false], /* include raw file structure (keys, files, cfb) */\n\t['bookVBA', false], /* include vba raw data (vbaraw) */\n\n\t['password',''], /* password */\n\t['WTF', false] /* WTF mode (throws errors) */\n]);\n\n\nvar fix_write_opts = fix_opts_func([\n\t['cellDates', false], /* write date cells with type `d` */\n\n\t['bookSST', false], /* Generate Shared String Table */\n\n\t['bookType', 'xlsx'], /* Type of workbook (xlsx/m/b) */\n\n\t['WTF', false] /* WTF mode (throws errors) */\n]);\nfunction safe_parse_wbrels(wbrels, sheets) {\n\tif(!wbrels) return 0;\n\ttry {\n\t\twbrels = sheets.map(function pwbr(w) { return [w.name, wbrels['!id'][w.id].Target]; });\n\t} catch(e) { return null; }\n\treturn !wbrels || wbrels.length === 0 ? null : wbrels;\n}\n\nfunction safe_parse_ws(zip, path, relsPath, sheet, sheetRels, sheets, opts) {\n\ttry {\n\t\tsheetRels[sheet]=parse_rels(getzipdata(zip, relsPath, true), path);\n\t\tsheets[sheet]=parse_ws(getzipdata(zip, path),path,opts,sheetRels[sheet]);\n\t} catch(e) { if(opts.WTF) throw e; }\n}\n\nvar nodirs = function nodirs(x){return x.substr(-1) != '/';};\nfunction parse_zip(zip, opts) {\n\tmake_ssf(SSF);\n\topts = opts || {};\n\tfix_read_opts(opts);\n\treset_cp();\n\n\t/* OpenDocument Part 3 Section 2.2.1 OpenDocument Package */\n\tif(safegetzipfile(zip, 'META-INF/manifest.xml')) return parse_ods(zip, opts);\n\n\tvar entries = keys(zip.files).filter(nodirs).sort();\n\tvar dir = parse_ct(getzipdata(zip, '[Content_Types].xml'), opts);\n\tvar xlsb = false;\n\tvar sheets, binname;\n\tif(dir.workbooks.length === 0) {\n\t\tbinname = \"xl/workbook.xml\";\n\t\tif(getzipdata(zip,binname, true)) dir.workbooks.push(binname);\n\t}\n\tif(dir.workbooks.length === 0) {\n\t\tbinname = \"xl/workbook.bin\";\n\t\tif(!getzipfile(zip,binname,true)) throw new Error(\"Could not find workbook\");\n\t\tdir.workbooks.push(binname);\n\t\txlsb = true;\n\t}\n\tif(dir.workbooks[0].substr(-3) == \"bin\") xlsb = true;\n\tif(xlsb) set_cp(1200);\n\n\tif(!opts.bookSheets && !opts.bookProps) {\n\t\tstrs = [];\n\t\tif(dir.sst) strs=parse_sst(getzipdata(zip, dir.sst.replace(/^\\//,'')), dir.sst, opts);\n\n\t\tstyles = {};\n\t\tif(dir.style) styles = parse_sty(getzipdata(zip, dir.style.replace(/^\\//,'')),dir.style, opts);\n\n\t\tthemes = {};\n\t\tif(opts.cellStyles && dir.themes.length) themes = parse_theme(getzipdata(zip, dir.themes[0].replace(/^\\//,''), true),dir.themes[0], opts);\n\t}\n\n\tvar wb = parse_wb(getzipdata(zip, dir.workbooks[0].replace(/^\\//,'')), dir.workbooks[0], opts);\n\n\tvar props = {}, propdata = \"\";\n\n\tif(dir.coreprops.length !== 0) {\n\t\tpropdata = getzipdata(zip, dir.coreprops[0].replace(/^\\//,''), true);\n\t\tif(propdata) props = parse_core_props(propdata);\n\t\tif(dir.extprops.length !== 0) {\n\t\t\tpropdata = getzipdata(zip, dir.extprops[0].replace(/^\\//,''), true);\n\t\t\tif(propdata) parse_ext_props(propdata, props);\n\t\t}\n\t}\n\n\tvar custprops = {};\n\tif(!opts.bookSheets || opts.bookProps) {\n\t\tif (dir.custprops.length !== 0) {\n\t\t\tpropdata = getzipdata(zip, dir.custprops[0].replace(/^\\//,''), true);\n\t\t\tif(propdata) custprops = parse_cust_props(propdata, opts);\n\t\t}\n\t}\n\n\tvar out = {};\n\tif(opts.bookSheets || opts.bookProps) {\n\t\tif(props.Worksheets && props.SheetNames.length > 0) sheets=props.SheetNames;\n\t\telse if(wb.Sheets) sheets = wb.Sheets.map(function pluck(x){ return x.name; });\n\t\tif(opts.bookProps) { out.Props = props; out.Custprops = custprops; }\n\t\tif(typeof sheets !== 'undefined') out.SheetNames = sheets;\n\t\tif(opts.bookSheets ? out.SheetNames : opts.bookProps) return out;\n\t}\n\tsheets = {};\n\n\tvar deps = {};\n\tif(opts.bookDeps && dir.calcchain) deps=parse_cc(getzipdata(zip, dir.calcchain.replace(/^\\//,'')),dir.calcchain,opts);\n\n\tvar i=0;\n\tvar sheetRels = {};\n\tvar path, relsPath;\n\tif(!props.Worksheets) {\n\t\tvar wbsheets = wb.Sheets;\n\t\tprops.Worksheets = wbsheets.length;\n\t\tprops.SheetNames = [];\n\t\tfor(var j = 0; j != wbsheets.length; ++j) {\n\t\t\tprops.SheetNames[j] = wbsheets[j].name;\n\t\t}\n\t}\n\n\tvar wbext = xlsb ? \"bin\" : \"xml\";\n\tvar wbrelsfile = 'xl/_rels/workbook.' + wbext + '.rels';\n\tvar wbrels = parse_rels(getzipdata(zip, wbrelsfile, true), wbrelsfile);\n\tif(wbrels) wbrels = safe_parse_wbrels(wbrels, wb.Sheets);\n\t/* Numbers iOS hack */\n\tvar nmode = (getzipdata(zip,\"xl/worksheets/sheet.xml\",true))?1:0;\n\tfor(i = 0; i != props.Worksheets; ++i) {\n\t\tif(wbrels) path = 'xl/' + (wbrels[i][1]).replace(/[\\/]?xl\\//, \"\");\n\t\telse {\n\t\t\tpath = 'xl/worksheets/sheet'+(i+1-nmode)+\".\" + wbext;\n\t\t\tpath = path.replace(/sheet0\\./,\"sheet.\");\n\t\t}\n\t\trelsPath = path.replace(/^(.*)(\\/)([^\\/]*)$/, \"$1/_rels/$3.rels\");\n\t\tsafe_parse_ws(zip, path, relsPath, props.SheetNames[i], sheetRels, sheets, opts);\n\t}\n\n\tif(dir.comments) parse_comments(zip, dir.comments, sheets, sheetRels, opts);\n\n\tout = {\n\t\tDirectory: dir,\n\t\tWorkbook: wb,\n\t\tProps: props,\n\t\tCustprops: custprops,\n\t\tDeps: deps,\n\t\tSheets: sheets,\n\t\tSheetNames: props.SheetNames,\n\t\tStrings: strs,\n\t\tStyles: styles,\n\t\tThemes: themes,\n\t\tSSF: SSF.get_table()\n\t};\n\tif(opts.bookFiles) {\n\t\tout.keys = entries;\n\t\tout.files = zip.files;\n\t}\n\tif(opts.bookVBA) {\n\t\tif(dir.vba.length > 0) out.vbaraw = getzipdata(zip,dir.vba[0],true);\n\t\telse if(dir.defaults.bin === 'application/vnd.ms-office.vbaProject') out.vbaraw = getzipdata(zip,'xl/vbaProject.bin',true);\n\t}\n\treturn out;\n}\nfunction add_rels(rels, rId, f, type, relobj) {\n\tif(!relobj) relobj = {};\n\tif(!rels['!id']) rels['!id'] = {};\n\trelobj.Id = 'rId' + rId;\n\trelobj.Type = type;\n\trelobj.Target = f;\n\tif(rels['!id'][relobj.Id]) throw new Error(\"Cannot rewrite rId \" + rId);\n\trels['!id'][relobj.Id] = relobj;\n\trels[('/' + relobj.Target).replace(\"//\",\"/\")] = relobj;\n}\n\nfunction write_zip(wb, opts) {\n\tif(wb && !wb.SSF) {\n\t\twb.SSF = SSF.get_table();\n\t}\n\tif(wb && wb.SSF) {\n\t\tmake_ssf(SSF); SSF.load_table(wb.SSF);\n\t\topts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0;\n\t}\n\topts.rels = {}; opts.wbrels = {};\n\topts.Strings = []; opts.Strings.Count = 0; opts.Strings.Unique = 0;\n\tvar wbext = opts.bookType == \"xlsb\" ? \"bin\" : \"xml\";\n\tvar ct = { workbooks: [], sheets: [], calcchains: [], themes: [], styles: [],\n\t\tcoreprops: [], extprops: [], custprops: [], strs:[], comments: [], vba: [],\n\t\tTODO:[], rels:[], xmlns: \"\" };\n\tfix_write_opts(opts = opts || {});\n\tvar zip = new jszip();\n\tvar f = \"\", rId = 0;\n\n\topts.cellXfs = [];\n\tget_cell_style(opts.cellXfs, {}, {revssf:{\"General\":0}});\n\n\tf = \"docProps/core.xml\";\n\tzip.file(f, write_core_props(wb.Props, opts));\n\tct.coreprops.push(f);\n\tadd_rels(opts.rels, 2, f, RELS.CORE_PROPS);\n\n\tf = \"docProps/app.xml\";\n\tif(!wb.Props) wb.Props = {};\n\twb.Props.SheetNames = wb.SheetNames;\n\twb.Props.Worksheets = wb.SheetNames.length;\n\tzip.file(f, write_ext_props(wb.Props, opts));\n\tct.extprops.push(f);\n\tadd_rels(opts.rels, 3, f, RELS.EXT_PROPS);\n\n\tif(wb.Custprops !== wb.Props && keys(wb.Custprops||{}).length > 0) {\n\t\tf = \"docProps/custom.xml\";\n\t\tzip.file(f, write_cust_props(wb.Custprops, opts));\n\t\tct.custprops.push(f);\n\t\tadd_rels(opts.rels, 4, f, RELS.CUST_PROPS);\n\t}\n\n\tf = \"xl/workbook.\" + wbext;\n\tzip.file(f, write_wb(wb, f, opts));\n\tct.workbooks.push(f);\n\tadd_rels(opts.rels, 1, f, RELS.WB);\n\n\tfor(rId=1;rId <= wb.SheetNames.length; ++rId) {\n\t\tf = \"xl/worksheets/sheet\" + rId + \".\" + wbext;\n\t\tzip.file(f, write_ws(rId-1, f, opts, wb));\n\t\tct.sheets.push(f);\n\t\tadd_rels(opts.wbrels, rId, \"worksheets/sheet\" + rId + \".\" + wbext, RELS.WS);\n\t}\n\n\tif(opts.Strings != null && opts.Strings.length > 0) {\n\t\tf = \"xl/sharedStrings.\" + wbext;\n\t\tzip.file(f, write_sst(opts.Strings, f, opts));\n\t\tct.strs.push(f);\n\t\tadd_rels(opts.wbrels, ++rId, \"sharedStrings.\" + wbext, RELS.SST);\n\t}\n\n\t/* TODO: something more intelligent with themes */\n\n\tf = \"xl/theme/theme1.xml\";\n\tzip.file(f, write_theme());\n\tct.themes.push(f);\n\tadd_rels(opts.wbrels, ++rId, \"theme/theme1.xml\", RELS.THEME);\n\n\t/* TODO: something more intelligent with styles */\n\n\tf = \"xl/styles.\" + wbext;\n\tzip.file(f, write_sty(wb, f, opts));\n\tct.styles.push(f);\n\tadd_rels(opts.wbrels, ++rId, \"styles.\" + wbext, RELS.STY);\n\n\tzip.file(\"[Content_Types].xml\", write_ct(ct, opts));\n\tzip.file('_rels/.rels', write_rels(opts.rels));\n\tzip.file('xl/_rels/workbook.' + wbext + '.rels', write_rels(opts.wbrels));\n\treturn zip;\n}\nfunction firstbyte(f,o) {\n\tswitch((o||{}).type || \"base64\") {\n\t\tcase 'buffer': return f[0];\n\t\tcase 'base64': return Base64.decode(f.substr(0,12)).charCodeAt(0);\n\t\tcase 'binary': return f.charCodeAt(0);\n\t\tcase 'array': return f[0];\n\t\tdefault: throw new Error(\"Unrecognized type \" + o.type);\n\t}\n}\n\nfunction read_zip(data, opts) {\n\tvar zip, d = data;\n\tvar o = opts||{};\n\tif(!o.type) o.type = (has_buf && Buffer.isBuffer(data)) ? \"buffer\" : \"base64\";\n\tswitch(o.type) {\n\t\tcase \"base64\": zip = new jszip(d, { base64:true }); break;\n\t\tcase \"binary\": case \"array\": zip = new jszip(d, { base64:false }); break;\n\t\tcase \"buffer\": zip = new jszip(d); break;\n\t\tcase \"file\": zip=new jszip(d=_fs.readFileSync(data)); break;\n\t\tdefault: throw new Error(\"Unrecognized type \" + o.type);\n\t}\n\treturn parse_zip(zip, o);\n}\n\nfunction readSync(data, opts) {\n\tvar zip, d = data, isfile = false, n;\n\tvar o = opts||{};\n\tif(!o.type) o.type = (has_buf && Buffer.isBuffer(data)) ? \"buffer\" : \"base64\";\n\tif(o.type == \"file\") { isfile = true; o.type = \"buffer\"; d = _fs.readFileSync(data); }\n\tswitch((n = firstbyte(d, o))) {\n\t\tcase 0xD0:\n\t\t\tif(isfile) o.type = \"file\";\n\t\t\treturn parse_xlscfb(CFB.read(data, o), o);\n\t\tcase 0x09: return parse_xlscfb(s2a(o.type === 'base64' ? Base64.decode(data) : data), o);\n\t\tcase 0x3C: return parse_xlml(d, o);\n\t\tcase 0x50:\n\t\t\tif(isfile) o.type = \"file\";\n\t\t\treturn read_zip(data, opts);\n\t\tdefault: throw new Error(\"Unsupported file \" + n);\n\t}\n}\n\nfunction readFileSync(data, opts) {\n\tvar o = opts||{}; o.type = 'file';\n\treturn readSync(data, o);\n}\nfunction write_zip_type(wb, opts) {\n\tvar o = opts||{};\n\tvar z = write_zip(wb, o);\n\tswitch(o.type) {\n\t\tcase \"base64\": return z.generate({type:\"base64\"});\n\t\tcase \"binary\": return z.generate({type:\"string\"});\n\t\tcase \"buffer\": return z.generate({type:\"nodebuffer\"});\n\t\tcase \"file\": return _fs.writeFileSync(o.file, z.generate({type:\"nodebuffer\"}));\n\t\tdefault: throw new Error(\"Unrecognized type \" + o.type);\n\t}\n}\n\nfunction writeSync(wb, opts) {\n\tvar o = opts||{};\n\tswitch(o.bookType) {\n\t\tcase 'xml': return write_xlml(wb, o);\n\t\tdefault: return write_zip_type(wb, o);\n\t}\n}\n\nfunction writeFileSync(wb, filename, opts) {\n\tvar o = opts||{}; o.type = 'file';\n\to.file = filename;\n\tswitch(o.file.substr(-5).toLowerCase()) {\n\t\tcase '.xlsx': o.bookType = 'xlsx'; break;\n\t\tcase '.xlsm': o.bookType = 'xlsm'; break;\n\t\tcase '.xlsb': o.bookType = 'xlsb'; break;\n\tdefault: switch(o.file.substr(-4).toLowerCase()) {\n\t\tcase '.xls': o.bookType = 'xls'; break;\n\t\tcase '.xml': o.bookType = 'xml'; break;\n\t}}\n\treturn writeSync(wb, o);\n}\n\nfunction decode_row(rowstr) { return parseInt(unfix_row(rowstr),10) - 1; }\nfunction encode_row(row) { return \"\" + (row + 1); }\nfunction fix_row(cstr) { return cstr.replace(/([A-Z]|^)(\\d+)$/,\"$1$$$2\"); }\nfunction unfix_row(cstr) { return cstr.replace(/\\$(\\d+)$/,\"$1\"); }\n\nfunction decode_col(colstr) { var c = unfix_col(colstr), d = 0, i = 0; for(; i !== c.length; ++i) d = 26*d + c.charCodeAt(i) - 64; return d - 1; }\nfunction encode_col(col) { var s=\"\"; for(++col; col; col=Math.floor((col-1)/26)) s = String.fromCharCode(((col-1)%26) + 65) + s; return s; }\nfunction fix_col(cstr) { return cstr.replace(/^([A-Z])/,\"$$$1\"); }\nfunction unfix_col(cstr) { return cstr.replace(/^\\$([A-Z])/,\"$1\"); }\n\nfunction split_cell(cstr) { return cstr.replace(/(\\$?[A-Z]*)(\\$?\\d*)/,\"$1,$2\").split(\",\"); }\nfunction decode_cell(cstr) { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; }\nfunction encode_cell(cell) { return encode_col(cell.c) + encode_row(cell.r); }\nfunction fix_cell(cstr) { return fix_col(fix_row(cstr)); }\nfunction unfix_cell(cstr) { return unfix_col(unfix_row(cstr)); }\nfunction decode_range(range) { var x =range.split(\":\").map(decode_cell); return {s:x[0],e:x[x.length-1]}; }\nfunction encode_range(cs,ce) {\n\tif(ce === undefined || typeof ce === 'number') return encode_range(cs.s, cs.e);\n\tif(typeof cs !== 'string') cs = encode_cell(cs); if(typeof ce !== 'string') ce = encode_cell(ce);\n\treturn cs == ce ? cs : cs + \":\" + ce;\n}\n\nfunction safe_decode_range(range) {\n\tvar o = {s:{c:0,r:0},e:{c:0,r:0}};\n\tvar idx = 0, i = 0, cc = 0;\n\tvar len = range.length;\n\tfor(idx = 0; i < len; ++i) {\n\t\tif((cc=range.charCodeAt(i)-64) < 1 || cc > 26) break;\n\t\tidx = 26*idx + cc;\n\t}\n\to.s.c = --idx;\n\n\tfor(idx = 0; i < len; ++i) {\n\t\tif((cc=range.charCodeAt(i)-48) < 0 || cc > 9) break;\n\t\tidx = 10*idx + cc;\n\t}\n\to.s.r = --idx;\n\n\tif(i === len || range.charCodeAt(++i) === 58) { o.e.c=o.s.c; o.e.r=o.s.r; return o; }\n\n\tfor(idx = 0; i != len; ++i) {\n\t\tif((cc=range.charCodeAt(i)-64) < 1 || cc > 26) break;\n\t\tidx = 26*idx + cc;\n\t}\n\to.e.c = --idx;\n\n\tfor(idx = 0; i != len; ++i) {\n\t\tif((cc=range.charCodeAt(i)-48) < 0 || cc > 9) break;\n\t\tidx = 10*idx + cc;\n\t}\n\to.e.r = --idx;\n\treturn o;\n}\n\nfunction safe_format_cell(cell, v) {\n\tif(cell.z !== undefined) try { return (cell.w = SSF.format(cell.z, v)); } catch(e) { }\n\tif(!cell.XF) return v;\n\ttry { return (cell.w = SSF.format(cell.XF.ifmt||0, v)); } catch(e) { return ''+v; }\n}\n\nfunction format_cell(cell, v) {\n\tif(cell == null || cell.t == null) return \"\";\n\tif(cell.w !== undefined) return cell.w;\n\tif(v === undefined) return safe_format_cell(cell, cell.v);\n\treturn safe_format_cell(cell, v);\n}\n\nfunction sheet_to_json(sheet, opts){\n\tvar val, row, range, header = 0, offset = 1, r, hdr = [], isempty, R, C, v;\n\tvar o = opts != null ? opts : {};\n\tvar raw = o.raw;\n\tif(sheet == null || sheet[\"!ref\"] == null) return [];\n\trange = o.range !== undefined ? o.range : sheet[\"!ref\"];\n\tif(o.header === 1) header = 1;\n\telse if(o.header === \"A\") header = 2;\n\telse if(Array.isArray(o.header)) header = 3;\n\tswitch(typeof range) {\n\t\tcase 'string': r = safe_decode_range(range); break;\n\t\tcase 'number': r = safe_decode_range(sheet[\"!ref\"]); r.s.r = range; break;\n\t\tdefault: r = range;\n\t}\n\tif(header > 0) offset = 0;\n\tvar rr = encode_row(r.s.r);\n\tvar cols = new Array(r.e.c-r.s.c+1);\n\tvar out = new Array(r.e.r-r.s.r-offset+1);\n\tvar outi = 0;\n\tfor(C = r.s.c; C <= r.e.c; ++C) {\n\t\tcols[C] = encode_col(C);\n\t\tval = sheet[cols[C] + rr];\n\t\tswitch(header) {\n\t\t\tcase 1: hdr[C] = C; break;\n\t\t\tcase 2: hdr[C] = cols[C]; break;\n\t\t\tcase 3: hdr[C] = o.header[C - r.s.c]; break;\n\t\t\tdefault:\n\t\t\t\tif(val === undefined) continue;\n\t\t\t\thdr[C] = format_cell(val);\n\t\t}\n\t}\n\n\tfor (R = r.s.r + offset; R <= r.e.r; ++R) {\n\t\trr = encode_row(R);\n\t\tisempty = true;\n\t\tif(header === 1) row = [];\n\t\telse {\n\t\t\trow = {};\n\t\t\tif(Object.defineProperty) Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false});\n\t\t\telse row.__rowNum__ = R;\n\t\t}\n\t\tfor (C = r.s.c; C <= r.e.c; ++C) {\n\t\t\tval = sheet[cols[C] + rr];\n\t\t\tif(val === undefined || val.t === undefined) continue;\n\t\t\tv = val.v;\n\t\t\tswitch(val.t){\n\t\t\t\tcase 'e': continue;\n\t\t\t\tcase 's': break;\n\t\t\t\tcase 'b': case 'n': break;\n\t\t\t\tdefault: throw 'unrecognized type ' + val.t;\n\t\t\t}\n\t\t\tif(v !== undefined) {\n\t\t\t\trow[hdr[C]] = raw ? v : format_cell(val,v);\n\t\t\t\tisempty = false;\n\t\t\t}\n\t\t}\n\t\tif(isempty === false || header === 1) out[outi++] = row;\n\t}\n\tout.length = outi;\n\treturn out;\n}\n\nfunction sheet_to_row_object_array(sheet, opts) { return sheet_to_json(sheet, opts != null ? opts : {}); }\n\nfunction sheet_to_csv(sheet, opts) {\n\tvar out = \"\", txt = \"\", qreg = /\"/g;\n\tvar o = opts == null ? {} : opts;\n\tif(sheet == null || sheet[\"!ref\"] == null) return \"\";\n\tvar r = safe_decode_range(sheet[\"!ref\"]);\n\tvar FS = o.FS !== undefined ? o.FS : \",\", fs = FS.charCodeAt(0);\n\tvar RS = o.RS !== undefined ? o.RS : \"\\n\", rs = RS.charCodeAt(0);\n\tvar row = \"\", rr = \"\", cols = [];\n\tvar i = 0, cc = 0, val;\n\tvar R = 0, C = 0;\n\tfor(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C);\n\tfor(R = r.s.r; R <= r.e.r; ++R) {\n\t\trow = \"\";\n\t\trr = encode_row(R);\n\t\tfor(C = r.s.c; C <= r.e.c; ++C) {\n\t\t\tval = sheet[cols[C] + rr];\n\t\t\ttxt = val !== undefined ? ''+format_cell(val) : \"\";\n\t\t\tfor(i = 0, cc = 0; i !== txt.length; ++i) if((cc = txt.charCodeAt(i)) === fs || cc === rs || cc === 34) {\n\t\t\t\ttxt = \"\\\"\" + txt.replace(qreg, '\"\"') + \"\\\"\"; break; }\n\t\t\trow += (C === r.s.c ? \"\" : FS) + txt;\n\t\t}\n\t\tout += row + RS;\n\t}\n\treturn out;\n}\nvar make_csv = sheet_to_csv;\n\nfunction sheet_to_formulae(sheet) {\n\tvar cmds, y = \"\", x, val=\"\";\n\tif(sheet == null || sheet[\"!ref\"] == null) return \"\";\n\tvar r = safe_decode_range(sheet['!ref']), rr = \"\", cols = [], C;\n\tcmds = new Array((r.e.r-r.s.r+1)*(r.e.c-r.s.c+1));\n\tvar i = 0;\n\tfor(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C);\n\tfor(var R = r.s.r; R <= r.e.r; ++R) {\n\t\trr = encode_row(R);\n\t\tfor(C = r.s.c; C <= r.e.c; ++C) {\n\t\t\ty = cols[C] + rr;\n\t\t\tx = sheet[y];\n\t\t\tval = \"\";\n\t\t\tif(x === undefined) continue;\n\t\t\tif(x.f != null) val = x.f;\n\t\t\telse if(x.w !== undefined) val = \"'\" + x.w;\n\t\t\telse if(x.v === undefined) continue;\n\t\t\telse val = \"\"+x.v;\n\t\t\tcmds[i++] = y + \"=\" + val;\n\t\t}\n\t}\n\tcmds.length = i;\n\treturn cmds;\n}\n\nvar utils = {\n\tencode_col: encode_col,\n\tencode_row: encode_row,\n\tencode_cell: encode_cell,\n\tencode_range: encode_range,\n\tdecode_col: decode_col,\n\tdecode_row: decode_row,\n\tsplit_cell: split_cell,\n\tdecode_cell: decode_cell,\n\tdecode_range: decode_range,\n\tformat_cell: format_cell,\n\tget_formulae: sheet_to_formulae,\n\tmake_csv: sheet_to_csv,\n\tmake_json: sheet_to_json,\n\tmake_formulae: sheet_to_formulae,\n\tsheet_to_csv: sheet_to_csv,\n\tsheet_to_json: sheet_to_json,\n\tsheet_to_formulae: sheet_to_formulae,\n\tsheet_to_row_object_array: sheet_to_row_object_array\n};\nXLSX.parse_xlscfb = parse_xlscfb;\nXLSX.parse_zip = parse_zip;\nXLSX.read = readSync; //xlsread\nXLSX.readFile = readFileSync; //readFile\nXLSX.readFileSync = readFileSync;\nXLSX.write = writeSync;\nXLSX.writeFile = writeFileSync;\nXLSX.writeFileSync = writeFileSync;\nXLSX.utils = utils;\nXLSX.CFB = CFB;\nXLSX.SSF = SSF;\n})(typeof exports !== 'undefined' ? exports : XLSX);\nvar XLS = XLSX;\n$tw.utils.extend(old_exports,exports);exports = old_exports;module.exports=exports;",
            "type": "application/javascript",
            "title": "$:/plugins/tiddlywiki/xlsx-utils/xlsx.js",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/dist/cpexcel.js": {
            "text": "if($tw.browser){Buffer = undefined;};/* cpexcel.js (C) 2013-2014 SheetJS -- http://sheetjs.com */\n/*jshint -W100 */\nvar cptable = {version:\"1.3.7\"};\ncptable[874] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€����…�����������‘’“”•–—�������� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[932] = (function(){ var d = [], e = {}, D = [], j;\nD[0] = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゙゚��������������������������������\".split(\"\");\nfor(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}\nD[129] = \"���������������������������������������������������������������� 、。,.・:;?!゛゜´`¨^ ̄_ヽヾゝゞ〃仝々〆〇ー―‐/\~∥|…‥‘’“”()〔〕[]{}〈〉《》「」『』【】+-±×�÷=≠<>≦≧∞∴♂♀°′″℃¥$¢£%#&*@§☆★○●◎◇◆□■△▲▽▼※〒→←↑↓〓�����������∈∋⊆⊇⊂⊃∪∩��������∧∨¬⇒⇔∀∃�����������∠⊥⌒∂∇≡≒≪≫√∽∝∵∫∬�������ʼn♯♭♪†‡¶����◯���\".split(\"\");\nfor(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}\nD[130] = \"�������������������������������������������������������������������������������0123456789�������ABCDEFGHIJKLMNOPQRSTUVWXYZ�������abcdefghijklmnopqrstuvwxyz����ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん��������������\".split(\"\");\nfor(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}\nD[131] = \"����������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミ�ムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ��������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�����������������������������������������\".split(\"\");\nfor(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}\nD[132] = \"����������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмн�опрстуфхцчшщъыьэюя�������������─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂�����������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}\nD[135] = \"����������������������������������������������������������������①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻㎜㎝㎞㎎㎏㏄㎡��������㍻�〝〟№㏍℡㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼≒≡∫∮∑√⊥∠∟⊿∵∩∪���������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}\nD[136] = \"���������������������������������������������������������������������������������������������������������������������������������������������������������������亜唖娃阿哀愛挨姶逢葵茜穐悪握渥旭葦芦鯵梓圧斡扱宛姐虻飴絢綾鮎或粟袷安庵按暗案闇鞍杏以伊位依偉囲夷委威尉惟意慰易椅為畏異移維緯胃萎衣謂違遺医井亥域育郁磯一壱溢逸稲茨芋鰯允印咽員因姻引飲淫胤蔭���\".split(\"\");\nfor(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}\nD[137] = \"����������������������������������������������������������������院陰隠韻吋右宇烏羽迂雨卯鵜窺丑碓臼渦嘘唄欝蔚鰻姥厩浦瓜閏噂云運雲荏餌叡営嬰影映曳栄永泳洩瑛盈穎頴英衛詠鋭液疫益駅悦謁越閲榎厭円�園堰奄宴延怨掩援沿演炎焔煙燕猿縁艶苑薗遠鉛鴛塩於汚甥凹央奥往応押旺横欧殴王翁襖鴬鴎黄岡沖荻億屋憶臆桶牡乙俺卸恩温穏音下化仮何伽価佳加可嘉夏嫁家寡科暇果架歌河火珂禍禾稼箇花苛茄荷華菓蝦課嘩貨迦過霞蚊俄峨我牙画臥芽蛾賀雅餓駕介会解回塊壊廻快怪悔恢懐戒拐改���\".split(\"\");\nfor(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}\nD[138] = \"����������������������������������������������������������������魁晦械海灰界皆絵芥蟹開階貝凱劾外咳害崖慨概涯碍蓋街該鎧骸浬馨蛙垣柿蛎鈎劃嚇各廓拡撹格核殻獲確穫覚角赫較郭閣隔革学岳楽額顎掛笠樫�橿梶鰍潟割喝恰括活渇滑葛褐轄且鰹叶椛樺鞄株兜竃蒲釜鎌噛鴨栢茅萱粥刈苅瓦乾侃冠寒刊勘勧巻喚堪姦完官寛干幹患感慣憾換敢柑桓棺款歓汗漢澗潅環甘監看竿管簡緩缶翰肝艦莞観諌貫還鑑間閑関陥韓館舘丸含岸巌玩癌眼岩翫贋雁頑顔願企伎危喜器基奇嬉寄岐希幾忌揮机旗既期棋棄���\".split(\"\");\nfor(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}\nD[139] = \"����������������������������������������������������������������機帰毅気汽畿祈季稀紀徽規記貴起軌輝飢騎鬼亀偽儀妓宜戯技擬欺犠疑祇義蟻誼議掬菊鞠吉吃喫桔橘詰砧杵黍却客脚虐逆丘久仇休及吸宮弓急救�朽求汲泣灸球究窮笈級糾給旧牛去居巨拒拠挙渠虚許距鋸漁禦魚亨享京供侠僑兇競共凶協匡卿叫喬境峡強彊怯恐恭挟教橋況狂狭矯胸脅興蕎郷鏡響饗驚仰凝尭暁業局曲極玉桐粁僅勤均巾錦斤欣欽琴禁禽筋緊芹菌衿襟謹近金吟銀九倶句区狗玖矩苦躯駆駈駒具愚虞喰空偶寓遇隅串櫛釧屑屈���\".split(\"\");\nfor(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}\nD[140] = \"����������������������������������������������������������������掘窟沓靴轡窪熊隈粂栗繰桑鍬勲君薫訓群軍郡卦袈祁係傾刑兄啓圭珪型契形径恵慶慧憩掲携敬景桂渓畦稽系経継繋罫茎荊蛍計詣警軽頚鶏芸迎鯨�劇戟撃激隙桁傑欠決潔穴結血訣月件倹倦健兼券剣喧圏堅嫌建憲懸拳捲検権牽犬献研硯絹県肩見謙賢軒遣鍵険顕験鹸元原厳幻弦減源玄現絃舷言諺限乎個古呼固姑孤己庫弧戸故枯湖狐糊袴股胡菰虎誇跨鈷雇顧鼓五互伍午呉吾娯後御悟梧檎瑚碁語誤護醐乞鯉交佼侯候倖光公功効勾厚口向���\".split(\"\");\nfor(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}\nD[141] = \"����������������������������������������������������������������后喉坑垢好孔孝宏工巧巷幸広庚康弘恒慌抗拘控攻昂晃更杭校梗構江洪浩港溝甲皇硬稿糠紅紘絞綱耕考肯肱腔膏航荒行衡講貢購郊酵鉱砿鋼閤降�項香高鴻剛劫号合壕拷濠豪轟麹克刻告国穀酷鵠黒獄漉腰甑忽惚骨狛込此頃今困坤墾婚恨懇昏昆根梱混痕紺艮魂些佐叉唆嵯左差査沙瑳砂詐鎖裟坐座挫債催再最哉塞妻宰彩才採栽歳済災采犀砕砦祭斎細菜裁載際剤在材罪財冴坂阪堺榊肴咲崎埼碕鷺作削咋搾昨朔柵窄策索錯桜鮭笹匙冊刷���\".split(\"\");\nfor(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}\nD[142] = \"����������������������������������������������������������������察拶撮擦札殺薩雑皐鯖捌錆鮫皿晒三傘参山惨撒散桟燦珊産算纂蚕讃賛酸餐斬暫残仕仔伺使刺司史嗣四士始姉姿子屍市師志思指支孜斯施旨枝止�死氏獅祉私糸紙紫肢脂至視詞詩試誌諮資賜雌飼歯事似侍児字寺慈持時次滋治爾璽痔磁示而耳自蒔辞汐鹿式識鴫竺軸宍雫七叱執失嫉室悉湿漆疾質実蔀篠偲柴芝屡蕊縞舎写射捨赦斜煮社紗者謝車遮蛇邪借勺尺杓灼爵酌釈錫若寂弱惹主取守手朱殊狩珠種腫趣酒首儒受呪寿授樹綬需囚収周���\".split(\"\");\nfor(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}\nD[143] = \"����������������������������������������������������������������宗就州修愁拾洲秀秋終繍習臭舟蒐衆襲讐蹴輯週酋酬集醜什住充十従戎柔汁渋獣縦重銃叔夙宿淑祝縮粛塾熟出術述俊峻春瞬竣舜駿准循旬楯殉淳�準潤盾純巡遵醇順処初所暑曙渚庶緒署書薯藷諸助叙女序徐恕鋤除傷償勝匠升召哨商唱嘗奨妾娼宵将小少尚庄床廠彰承抄招掌捷昇昌昭晶松梢樟樵沼消渉湘焼焦照症省硝礁祥称章笑粧紹肖菖蒋蕉衝裳訟証詔詳象賞醤鉦鍾鐘障鞘上丈丞乗冗剰城場壌嬢常情擾条杖浄状畳穣蒸譲醸錠嘱埴飾���\".split(\"\");\nfor(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}\nD[144] = \"����������������������������������������������������������������拭植殖燭織職色触食蝕辱尻伸信侵唇娠寝審心慎振新晋森榛浸深申疹真神秦紳臣芯薪親診身辛進針震人仁刃塵壬尋甚尽腎訊迅陣靭笥諏須酢図厨�逗吹垂帥推水炊睡粋翠衰遂酔錐錘随瑞髄崇嵩数枢趨雛据杉椙菅頗雀裾澄摺寸世瀬畝是凄制勢姓征性成政整星晴棲栖正清牲生盛精聖声製西誠誓請逝醒青静斉税脆隻席惜戚斥昔析石積籍績脊責赤跡蹟碩切拙接摂折設窃節説雪絶舌蝉仙先千占宣専尖川戦扇撰栓栴泉浅洗染潜煎煽旋穿箭線���\".split(\"\");\nfor(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}\nD[145] = \"����������������������������������������������������������������繊羨腺舛船薦詮賎践選遷銭銑閃鮮前善漸然全禅繕膳糎噌塑岨措曾曽楚狙疏疎礎祖租粗素組蘇訴阻遡鼠僧創双叢倉喪壮奏爽宋層匝惣想捜掃挿掻�操早曹巣槍槽漕燥争痩相窓糟総綜聡草荘葬蒼藻装走送遭鎗霜騒像増憎臓蔵贈造促側則即息捉束測足速俗属賊族続卒袖其揃存孫尊損村遜他多太汰詑唾堕妥惰打柁舵楕陀駄騨体堆対耐岱帯待怠態戴替泰滞胎腿苔袋貸退逮隊黛鯛代台大第醍題鷹滝瀧卓啄宅托択拓沢濯琢託鐸濁諾茸凧蛸只���\".split(\"\");\nfor(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}\nD[146] = \"����������������������������������������������������������������叩但達辰奪脱巽竪辿棚谷狸鱈樽誰丹単嘆坦担探旦歎淡湛炭短端箪綻耽胆蛋誕鍛団壇弾断暖檀段男談値知地弛恥智池痴稚置致蜘遅馳築畜竹筑蓄�逐秩窒茶嫡着中仲宙忠抽昼柱注虫衷註酎鋳駐樗瀦猪苧著貯丁兆凋喋寵帖帳庁弔張彫徴懲挑暢朝潮牒町眺聴脹腸蝶調諜超跳銚長頂鳥勅捗直朕沈珍賃鎮陳津墜椎槌追鎚痛通塚栂掴槻佃漬柘辻蔦綴鍔椿潰坪壷嬬紬爪吊釣鶴亭低停偵剃貞呈堤定帝底庭廷弟悌抵挺提梯汀碇禎程締艇訂諦蹄逓���\".split(\"\");\nfor(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}\nD[147] = \"����������������������������������������������������������������邸鄭釘鼎泥摘擢敵滴的笛適鏑溺哲徹撤轍迭鉄典填天展店添纏甜貼転顛点伝殿澱田電兎吐堵塗妬屠徒斗杜渡登菟賭途都鍍砥砺努度土奴怒倒党冬�凍刀唐塔塘套宕島嶋悼投搭東桃梼棟盗淘湯涛灯燈当痘祷等答筒糖統到董蕩藤討謄豆踏逃透鐙陶頭騰闘働動同堂導憧撞洞瞳童胴萄道銅峠鴇匿得徳涜特督禿篤毒独読栃橡凸突椴届鳶苫寅酉瀞噸屯惇敦沌豚遁頓呑曇鈍奈那内乍凪薙謎灘捺鍋楢馴縄畷南楠軟難汝二尼弐迩匂賑肉虹廿日乳入���\".split(\"\");\nfor(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}\nD[148] = \"����������������������������������������������������������������如尿韮任妊忍認濡禰祢寧葱猫熱年念捻撚燃粘乃廼之埜嚢悩濃納能脳膿農覗蚤巴把播覇杷波派琶破婆罵芭馬俳廃拝排敗杯盃牌背肺輩配倍培媒梅�楳煤狽買売賠陪這蝿秤矧萩伯剥博拍柏泊白箔粕舶薄迫曝漠爆縛莫駁麦函箱硲箸肇筈櫨幡肌畑畠八鉢溌発醗髪伐罰抜筏閥鳩噺塙蛤隼伴判半反叛帆搬斑板氾汎版犯班畔繁般藩販範釆煩頒飯挽晩番盤磐蕃蛮匪卑否妃庇彼悲扉批披斐比泌疲皮碑秘緋罷肥被誹費避非飛樋簸備尾微枇毘琵眉美���\".split(\"\");\nfor(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}\nD[149] = \"����������������������������������������������������������������鼻柊稗匹疋髭彦膝菱肘弼必畢筆逼桧姫媛紐百謬俵彪標氷漂瓢票表評豹廟描病秒苗錨鋲蒜蛭鰭品彬斌浜瀕貧賓頻敏瓶不付埠夫婦富冨布府怖扶敷�斧普浮父符腐膚芙譜負賦赴阜附侮撫武舞葡蕪部封楓風葺蕗伏副復幅服福腹複覆淵弗払沸仏物鮒分吻噴墳憤扮焚奮粉糞紛雰文聞丙併兵塀幣平弊柄並蔽閉陛米頁僻壁癖碧別瞥蔑箆偏変片篇編辺返遍便勉娩弁鞭保舗鋪圃捕歩甫補輔穂募墓慕戊暮母簿菩倣俸包呆報奉宝峰峯崩庖抱捧放方朋���\".split(\"\");\nfor(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}\nD[150] = \"����������������������������������������������������������������法泡烹砲縫胞芳萌蓬蜂褒訪豊邦鋒飽鳳鵬乏亡傍剖坊妨帽忘忙房暴望某棒冒紡肪膨謀貌貿鉾防吠頬北僕卜墨撲朴牧睦穆釦勃没殆堀幌奔本翻凡盆�摩磨魔麻埋妹昧枚毎哩槙幕膜枕鮪柾鱒桝亦俣又抹末沫迄侭繭麿万慢満漫蔓味未魅巳箕岬密蜜湊蓑稔脈妙粍民眠務夢無牟矛霧鵡椋婿娘冥名命明盟迷銘鳴姪牝滅免棉綿緬面麺摸模茂妄孟毛猛盲網耗蒙儲木黙目杢勿餅尤戻籾貰問悶紋門匁也冶夜爺耶野弥矢厄役約薬訳躍靖柳薮鑓愉愈油癒���\".split(\"\");\nfor(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}\nD[151] = \"����������������������������������������������������������������諭輸唯佑優勇友宥幽悠憂揖有柚湧涌猶猷由祐裕誘遊邑郵雄融夕予余与誉輿預傭幼妖容庸揚揺擁曜楊様洋溶熔用窯羊耀葉蓉要謡踊遥陽養慾抑欲�沃浴翌翼淀羅螺裸来莱頼雷洛絡落酪乱卵嵐欄濫藍蘭覧利吏履李梨理璃痢裏裡里離陸律率立葎掠略劉流溜琉留硫粒隆竜龍侶慮旅虜了亮僚両凌寮料梁涼猟療瞭稜糧良諒遼量陵領力緑倫厘林淋燐琳臨輪隣鱗麟瑠塁涙累類令伶例冷励嶺怜玲礼苓鈴隷零霊麗齢暦歴列劣烈裂廉恋憐漣煉簾練聯���\".split(\"\");\nfor(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}\nD[152] = \"����������������������������������������������������������������蓮連錬呂魯櫓炉賂路露労婁廊弄朗楼榔浪漏牢狼篭老聾蝋郎六麓禄肋録論倭和話歪賄脇惑枠鷲亙亘鰐詫藁蕨椀湾碗腕��������������������������������������������弌丐丕个丱丶丼丿乂乖乘亂亅豫亊舒弍于亞亟亠亢亰亳亶从仍仄仆仂仗仞仭仟价伉佚估佛佝佗佇佶侈侏侘佻佩佰侑佯來侖儘俔俟俎俘俛俑俚俐俤俥倚倨倔倪倥倅伜俶倡倩倬俾俯們倆偃假會偕偐偈做偖偬偸傀傚傅傴傲���\".split(\"\");\nfor(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}\nD[153] = \"����������������������������������������������������������������僉僊傳僂僖僞僥僭僣僮價僵儉儁儂儖儕儔儚儡儺儷儼儻儿兀兒兌兔兢竸兩兪兮冀冂囘册冉冏冑冓冕冖冤冦冢冩冪冫决冱冲冰况冽凅凉凛几處凩凭�凰凵凾刄刋刔刎刧刪刮刳刹剏剄剋剌剞剔剪剴剩剳剿剽劍劔劒剱劈劑辨辧劬劭劼劵勁勍勗勞勣勦飭勠勳勵勸勹匆匈甸匍匐匏匕匚匣匯匱匳匸區卆卅丗卉卍凖卞卩卮夘卻卷厂厖厠厦厥厮厰厶參簒雙叟曼燮叮叨叭叺吁吽呀听吭吼吮吶吩吝呎咏呵咎呟呱呷呰咒呻咀呶咄咐咆哇咢咸咥咬哄哈咨���\".split(\"\");\nfor(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}\nD[154] = \"����������������������������������������������������������������咫哂咤咾咼哘哥哦唏唔哽哮哭哺哢唹啀啣啌售啜啅啖啗唸唳啝喙喀咯喊喟啻啾喘喞單啼喃喩喇喨嗚嗅嗟嗄嗜嗤嗔嘔嗷嘖嗾嗽嘛嗹噎噐營嘴嘶嘲嘸�噫噤嘯噬噪嚆嚀嚊嚠嚔嚏嚥嚮嚶嚴囂嚼囁囃囀囈囎囑囓囗囮囹圀囿圄圉圈國圍圓團圖嗇圜圦圷圸坎圻址坏坩埀垈坡坿垉垓垠垳垤垪垰埃埆埔埒埓堊埖埣堋堙堝塲堡塢塋塰毀塒堽塹墅墹墟墫墺壞墻墸墮壅壓壑壗壙壘壥壜壤壟壯壺壹壻壼壽夂夊夐夛梦夥夬夭夲夸夾竒奕奐奎奚奘奢奠奧奬奩���\".split(\"\");\nfor(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}\nD[155] = \"����������������������������������������������������������������奸妁妝佞侫妣妲姆姨姜妍姙姚娥娟娑娜娉娚婀婬婉娵娶婢婪媚媼媾嫋嫂媽嫣嫗嫦嫩嫖嫺嫻嬌嬋嬖嬲嫐嬪嬶嬾孃孅孀孑孕孚孛孥孩孰孳孵學斈孺宀�它宦宸寃寇寉寔寐寤實寢寞寥寫寰寶寳尅將專對尓尠尢尨尸尹屁屆屎屓屐屏孱屬屮乢屶屹岌岑岔妛岫岻岶岼岷峅岾峇峙峩峽峺峭嶌峪崋崕崗嵜崟崛崑崔崢崚崙崘嵌嵒嵎嵋嵬嵳嵶嶇嶄嶂嶢嶝嶬嶮嶽嶐嶷嶼巉巍巓巒巖巛巫已巵帋帚帙帑帛帶帷幄幃幀幎幗幔幟幢幤幇幵并幺麼广庠廁廂廈廐廏���\".split(\"\");\nfor(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}\nD[156] = \"����������������������������������������������������������������廖廣廝廚廛廢廡廨廩廬廱廳廰廴廸廾弃弉彝彜弋弑弖弩弭弸彁彈彌彎弯彑彖彗彙彡彭彳彷徃徂彿徊很徑徇從徙徘徠徨徭徼忖忻忤忸忱忝悳忿怡恠�怙怐怩怎怱怛怕怫怦怏怺恚恁恪恷恟恊恆恍恣恃恤恂恬恫恙悁悍惧悃悚悄悛悖悗悒悧悋惡悸惠惓悴忰悽惆悵惘慍愕愆惶惷愀惴惺愃愡惻惱愍愎慇愾愨愧慊愿愼愬愴愽慂慄慳慷慘慙慚慫慴慯慥慱慟慝慓慵憙憖憇憬憔憚憊憑憫憮懌懊應懷懈懃懆憺懋罹懍懦懣懶懺懴懿懽懼懾戀戈戉戍戌戔戛���\".split(\"\");\nfor(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}\nD[157] = \"����������������������������������������������������������������戞戡截戮戰戲戳扁扎扞扣扛扠扨扼抂抉找抒抓抖拔抃抔拗拑抻拏拿拆擔拈拜拌拊拂拇抛拉挌拮拱挧挂挈拯拵捐挾捍搜捏掖掎掀掫捶掣掏掉掟掵捫�捩掾揩揀揆揣揉插揶揄搖搴搆搓搦搶攝搗搨搏摧摯摶摎攪撕撓撥撩撈撼據擒擅擇撻擘擂擱擧舉擠擡抬擣擯攬擶擴擲擺攀擽攘攜攅攤攣攫攴攵攷收攸畋效敖敕敍敘敞敝敲數斂斃變斛斟斫斷旃旆旁旄旌旒旛旙无旡旱杲昊昃旻杳昵昶昴昜晏晄晉晁晞晝晤晧晨晟晢晰暃暈暎暉暄暘暝曁暹曉暾暼���\".split(\"\");\nfor(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}\nD[158] = \"����������������������������������������������������������������曄暸曖曚曠昿曦曩曰曵曷朏朖朞朦朧霸朮朿朶杁朸朷杆杞杠杙杣杤枉杰枩杼杪枌枋枦枡枅枷柯枴柬枳柩枸柤柞柝柢柮枹柎柆柧檜栞框栩桀桍栲桎�梳栫桙档桷桿梟梏梭梔條梛梃檮梹桴梵梠梺椏梍桾椁棊椈棘椢椦棡椌棍棔棧棕椶椒椄棗棣椥棹棠棯椨椪椚椣椡棆楹楷楜楸楫楔楾楮椹楴椽楙椰楡楞楝榁楪榲榮槐榿槁槓榾槎寨槊槝榻槃榧樮榑榠榜榕榴槞槨樂樛槿權槹槲槧樅榱樞槭樔槫樊樒櫁樣樓橄樌橲樶橸橇橢橙橦橈樸樢檐檍檠檄檢檣���\".split(\"\");\nfor(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}\nD[159] = \"����������������������������������������������������������������檗蘗檻櫃櫂檸檳檬櫞櫑櫟檪櫚櫪櫻欅蘖櫺欒欖鬱欟欸欷盜欹飮歇歃歉歐歙歔歛歟歡歸歹歿殀殄殃殍殘殕殞殤殪殫殯殲殱殳殷殼毆毋毓毟毬毫毳毯�麾氈氓气氛氤氣汞汕汢汪沂沍沚沁沛汾汨汳沒沐泄泱泓沽泗泅泝沮沱沾沺泛泯泙泪洟衍洶洫洽洸洙洵洳洒洌浣涓浤浚浹浙涎涕濤涅淹渕渊涵淇淦涸淆淬淞淌淨淒淅淺淙淤淕淪淮渭湮渮渙湲湟渾渣湫渫湶湍渟湃渺湎渤滿渝游溂溪溘滉溷滓溽溯滄溲滔滕溏溥滂溟潁漑灌滬滸滾漿滲漱滯漲滌���\".split(\"\");\nfor(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}\nD[224] = \"����������������������������������������������������������������漾漓滷澆潺潸澁澀潯潛濳潭澂潼潘澎澑濂潦澳澣澡澤澹濆澪濟濕濬濔濘濱濮濛瀉瀋濺瀑瀁瀏濾瀛瀚潴瀝瀘瀟瀰瀾瀲灑灣炙炒炯烱炬炸炳炮烟烋烝�烙焉烽焜焙煥煕熈煦煢煌煖煬熏燻熄熕熨熬燗熹熾燒燉燔燎燠燬燧燵燼燹燿爍爐爛爨爭爬爰爲爻爼爿牀牆牋牘牴牾犂犁犇犒犖犢犧犹犲狃狆狄狎狒狢狠狡狹狷倏猗猊猜猖猝猴猯猩猥猾獎獏默獗獪獨獰獸獵獻獺珈玳珎玻珀珥珮珞璢琅瑯琥珸琲琺瑕琿瑟瑙瑁瑜瑩瑰瑣瑪瑶瑾璋璞璧瓊瓏瓔珱���\".split(\"\");\nfor(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}\nD[225] = \"����������������������������������������������������������������瓠瓣瓧瓩瓮瓲瓰瓱瓸瓷甄甃甅甌甎甍甕甓甞甦甬甼畄畍畊畉畛畆畚畩畤畧畫畭畸當疆疇畴疊疉疂疔疚疝疥疣痂疳痃疵疽疸疼疱痍痊痒痙痣痞痾痿�痼瘁痰痺痲痳瘋瘍瘉瘟瘧瘠瘡瘢瘤瘴瘰瘻癇癈癆癜癘癡癢癨癩癪癧癬癰癲癶癸發皀皃皈皋皎皖皓皙皚皰皴皸皹皺盂盍盖盒盞盡盥盧盪蘯盻眈眇眄眩眤眞眥眦眛眷眸睇睚睨睫睛睥睿睾睹瞎瞋瞑瞠瞞瞰瞶瞹瞿瞼瞽瞻矇矍矗矚矜矣矮矼砌砒礦砠礪硅碎硴碆硼碚碌碣碵碪碯磑磆磋磔碾碼磅磊磬���\".split(\"\");\nfor(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}\nD[226] = \"����������������������������������������������������������������磧磚磽磴礇礒礑礙礬礫祀祠祗祟祚祕祓祺祿禊禝禧齋禪禮禳禹禺秉秕秧秬秡秣稈稍稘稙稠稟禀稱稻稾稷穃穗穉穡穢穩龝穰穹穽窈窗窕窘窖窩竈窰�窶竅竄窿邃竇竊竍竏竕竓站竚竝竡竢竦竭竰笂笏笊笆笳笘笙笞笵笨笶筐筺笄筍笋筌筅筵筥筴筧筰筱筬筮箝箘箟箍箜箚箋箒箏筝箙篋篁篌篏箴篆篝篩簑簔篦篥籠簀簇簓篳篷簗簍篶簣簧簪簟簷簫簽籌籃籔籏籀籐籘籟籤籖籥籬籵粃粐粤粭粢粫粡粨粳粲粱粮粹粽糀糅糂糘糒糜糢鬻糯糲糴糶糺紆���\".split(\"\");\nfor(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}\nD[227] = \"����������������������������������������������������������������紂紜紕紊絅絋紮紲紿紵絆絳絖絎絲絨絮絏絣經綉絛綏絽綛綺綮綣綵緇綽綫總綢綯緜綸綟綰緘緝緤緞緻緲緡縅縊縣縡縒縱縟縉縋縢繆繦縻縵縹繃縷�縲縺繧繝繖繞繙繚繹繪繩繼繻纃緕繽辮繿纈纉續纒纐纓纔纖纎纛纜缸缺罅罌罍罎罐网罕罔罘罟罠罨罩罧罸羂羆羃羈羇羌羔羞羝羚羣羯羲羹羮羶羸譱翅翆翊翕翔翡翦翩翳翹飜耆耄耋耒耘耙耜耡耨耿耻聊聆聒聘聚聟聢聨聳聲聰聶聹聽聿肄肆肅肛肓肚肭冐肬胛胥胙胝胄胚胖脉胯胱脛脩脣脯腋���\".split(\"\");\nfor(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}\nD[228] = \"����������������������������������������������������������������隋腆脾腓腑胼腱腮腥腦腴膃膈膊膀膂膠膕膤膣腟膓膩膰膵膾膸膽臀臂膺臉臍臑臙臘臈臚臟臠臧臺臻臾舁舂舅與舊舍舐舖舩舫舸舳艀艙艘艝艚艟艤�艢艨艪艫舮艱艷艸艾芍芒芫芟芻芬苡苣苟苒苴苳苺莓范苻苹苞茆苜茉苙茵茴茖茲茱荀茹荐荅茯茫茗茘莅莚莪莟莢莖茣莎莇莊荼莵荳荵莠莉莨菴萓菫菎菽萃菘萋菁菷萇菠菲萍萢萠莽萸蔆菻葭萪萼蕚蒄葷葫蒭葮蒂葩葆萬葯葹萵蓊葢蒹蒿蒟蓙蓍蒻蓚蓐蓁蓆蓖蒡蔡蓿蓴蔗蔘蔬蔟蔕蔔蓼蕀蕣蕘蕈���\".split(\"\");\nfor(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}\nD[229] = \"����������������������������������������������������������������蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬�蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞���\".split(\"\");\nfor(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}\nD[230] = \"����������������������������������������������������������������襦襤襭襪襯襴襷襾覃覈覊覓覘覡覩覦覬覯覲覺覽覿觀觚觜觝觧觴觸訃訖訐訌訛訝訥訶詁詛詒詆詈詼詭詬詢誅誂誄誨誡誑誥誦誚誣諄諍諂諚諫諳諧�諤諱謔諠諢諷諞諛謌謇謚諡謖謐謗謠謳鞫謦謫謾謨譁譌譏譎證譖譛譚譫譟譬譯譴譽讀讌讎讒讓讖讙讚谺豁谿豈豌豎豐豕豢豬豸豺貂貉貅貊貍貎貔豼貘戝貭貪貽貲貳貮貶賈賁賤賣賚賽賺賻贄贅贊贇贏贍贐齎贓賍贔贖赧赭赱赳趁趙跂趾趺跏跚跖跌跛跋跪跫跟跣跼踈踉跿踝踞踐踟蹂踵踰踴蹊���\".split(\"\");\nfor(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}\nD[231] = \"����������������������������������������������������������������蹇蹉蹌蹐蹈蹙蹤蹠踪蹣蹕蹶蹲蹼躁躇躅躄躋躊躓躑躔躙躪躡躬躰軆躱躾軅軈軋軛軣軼軻軫軾輊輅輕輒輙輓輜輟輛輌輦輳輻輹轅轂輾轌轉轆轎轗轜�轢轣轤辜辟辣辭辯辷迚迥迢迪迯邇迴逅迹迺逑逕逡逍逞逖逋逧逶逵逹迸遏遐遑遒逎遉逾遖遘遞遨遯遶隨遲邂遽邁邀邊邉邏邨邯邱邵郢郤扈郛鄂鄒鄙鄲鄰酊酖酘酣酥酩酳酲醋醉醂醢醫醯醪醵醴醺釀釁釉釋釐釖釟釡釛釼釵釶鈞釿鈔鈬鈕鈑鉞鉗鉅鉉鉤鉈銕鈿鉋鉐銜銖銓銛鉚鋏銹銷鋩錏鋺鍄錮���\".split(\"\");\nfor(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}\nD[232] = \"����������������������������������������������������������������錙錢錚錣錺錵錻鍜鍠鍼鍮鍖鎰鎬鎭鎔鎹鏖鏗鏨鏥鏘鏃鏝鏐鏈鏤鐚鐔鐓鐃鐇鐐鐶鐫鐵鐡鐺鑁鑒鑄鑛鑠鑢鑞鑪鈩鑰鑵鑷鑽鑚鑼鑾钁鑿閂閇閊閔閖閘閙�閠閨閧閭閼閻閹閾闊濶闃闍闌闕闔闖關闡闥闢阡阨阮阯陂陌陏陋陷陜陞陝陟陦陲陬隍隘隕隗險隧隱隲隰隴隶隸隹雎雋雉雍襍雜霍雕雹霄霆霈霓霎霑霏霖霙霤霪霰霹霽霾靄靆靈靂靉靜靠靤靦靨勒靫靱靹鞅靼鞁靺鞆鞋鞏鞐鞜鞨鞦鞣鞳鞴韃韆韈韋韜韭齏韲竟韶韵頏頌頸頤頡頷頽顆顏顋顫顯顰���\".split(\"\");\nfor(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}\nD[233] = \"����������������������������������������������������������������顱顴顳颪颯颱颶飄飃飆飩飫餃餉餒餔餘餡餝餞餤餠餬餮餽餾饂饉饅饐饋饑饒饌饕馗馘馥馭馮馼駟駛駝駘駑駭駮駱駲駻駸騁騏騅駢騙騫騷驅驂驀驃�騾驕驍驛驗驟驢驥驤驩驫驪骭骰骼髀髏髑髓體髞髟髢髣髦髯髫髮髴髱髷髻鬆鬘鬚鬟鬢鬣鬥鬧鬨鬩鬪鬮鬯鬲魄魃魏魍魎魑魘魴鮓鮃鮑鮖鮗鮟鮠鮨鮴鯀鯊鮹鯆鯏鯑鯒鯣鯢鯤鯔鯡鰺鯲鯱鯰鰕鰔鰉鰓鰌鰆鰈鰒鰊鰄鰮鰛鰥鰤鰡鰰鱇鰲鱆鰾鱚鱠鱧鱶鱸鳧鳬鳰鴉鴈鳫鴃鴆鴪鴦鶯鴣鴟鵄鴕鴒鵁鴿鴾鵆鵈���\".split(\"\");\nfor(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}\nD[234] = \"����������������������������������������������������������������鵝鵞鵤鵑鵐鵙鵲鶉鶇鶫鵯鵺鶚鶤鶩鶲鷄鷁鶻鶸鶺鷆鷏鷂鷙鷓鷸鷦鷭鷯鷽鸚鸛鸞鹵鹹鹽麁麈麋麌麒麕麑麝麥麩麸麪麭靡黌黎黏黐黔黜點黝黠黥黨黯�黴黶黷黹黻黼黽鼇鼈皷鼕鼡鼬鼾齊齒齔齣齟齠齡齦齧齬齪齷齲齶龕龜龠堯槇遙瑤凜熙�������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}\nD[237] = \"����������������������������������������������������������������纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏�塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱���\".split(\"\");\nfor(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}\nD[238] = \"����������������������������������������������������������������犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙�蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑��ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ¬¦'"���\".split(\"\");\nfor(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}\nD[250] = \"����������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ¬¦'"㈱№℡∵纊褜鍈銈蓜俉炻昱棈鋹曻彅丨仡仼伀伃伹佖侒侊侚侔俍偀倢俿倞偆偰偂傔僴僘兊�兤冝冾凬刕劜劦勀勛匀匇匤卲厓厲叝﨎咜咊咩哿喆坙坥垬埈埇﨏塚增墲夋奓奛奝奣妤妺孖寀甯寘寬尞岦岺峵崧嵓﨑嵂嵭嶸嶹巐弡弴彧德忞恝悅悊惞惕愠惲愑愷愰憘戓抦揵摠撝擎敎昀昕昻昉昮昞昤晥晗晙晴晳暙暠暲暿曺朎朗杦枻桒柀栁桄棏﨓楨﨔榘槢樰橫橆橳橾櫢櫤毖氿汜沆汯泚洄涇浯���\".split(\"\");\nfor(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}\nD[251] = \"����������������������������������������������������������������涖涬淏淸淲淼渹湜渧渼溿澈澵濵瀅瀇瀨炅炫焏焄煜煆煇凞燁燾犱犾猤猪獷玽珉珖珣珒琇珵琦琪琩琮瑢璉璟甁畯皂皜皞皛皦益睆劯砡硎硤硺礰礼神�祥禔福禛竑竧靖竫箞精絈絜綷綠緖繒罇羡羽茁荢荿菇菶葈蒴蕓蕙蕫﨟薰蘒﨡蠇裵訒訷詹誧誾諟諸諶譓譿賰賴贒赶﨣軏﨤逸遧郞都鄕鄧釚釗釞釭釮釤釥鈆鈐鈊鈺鉀鈼鉎鉙鉑鈹鉧銧鉷鉸鋧鋗鋙鋐﨧鋕鋠鋓錥錡鋻﨨錞鋿錝錂鍰鍗鎤鏆鏞鏸鐱鑅鑈閒隆﨩隝隯霳霻靃靍靏靑靕顗顥飯飼餧館馞驎髙���\".split(\"\");\nfor(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}\nD[252] = \"����������������������������������������������������������������髜魵魲鮏鮱鮻鰀鵰鵫鶴鸙黑������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}\nreturn {\"enc\": e, \"dec\": d }; })();\ncptable[936] = (function(){ var d = [], e = {}, D = [], j;\nD[0] = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}\nD[129] = \"����������������������������������������������������������������丂丄丅丆丏丒丗丟丠両丣並丩丮丯丱丳丵丷丼乀乁乂乄乆乊乑乕乗乚乛乢乣乤乥乧乨乪乫乬乭乮乯乲乴乵乶乷乸乹乺乻乼乽乿亀亁亂亃亄亅亇亊�亐亖亗亙亜亝亞亣亪亯亰亱亴亶亷亸亹亼亽亾仈仌仏仐仒仚仛仜仠仢仦仧仩仭仮仯仱仴仸仹仺仼仾伀伂伃伄伅伆伇伈伋伌伒伓伔伕伖伜伝伡伣伨伩伬伭伮伱伳伵伷伹伻伾伿佀佁佂佄佅佇佈佉佊佋佌佒佔佖佡佢佦佨佪佫佭佮佱佲併佷佸佹佺佽侀侁侂侅來侇侊侌侎侐侒侓侕侖侘侙侚侜侞侟価侢�\".split(\"\");\nfor(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}\nD[130] = \"����������������������������������������������������������������侤侫侭侰侱侲侳侴侶侷侸侹侺侻侼侽侾俀俁係俆俇俈俉俋俌俍俒俓俔俕俖俙俛俠俢俤俥俧俫俬俰俲俴俵俶俷俹俻俼俽俿倀倁倂倃倄倅倆倇倈倉倊�個倎倐們倓倕倖倗倛倝倞倠倢倣値倧倫倯倰倱倲倳倴倵倶倷倸倹倻倽倿偀偁偂偄偅偆偉偊偋偍偐偑偒偓偔偖偗偘偙偛偝偞偟偠偡偢偣偤偦偧偨偩偪偫偭偮偯偰偱偲偳側偵偸偹偺偼偽傁傂傃傄傆傇傉傊傋傌傎傏傐傑傒傓傔傕傖傗傘備傚傛傜傝傞傟傠傡傢傤傦傪傫傭傮傯傰傱傳傴債傶傷傸傹傼�\".split(\"\");\nfor(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}\nD[131] = \"����������������������������������������������������������������傽傾傿僀僁僂僃僄僅僆僇僈僉僊僋僌働僎僐僑僒僓僔僕僗僘僙僛僜僝僞僟僠僡僢僣僤僥僨僩僪僫僯僰僱僲僴僶僷僸價僺僼僽僾僿儀儁儂儃億儅儈�儉儊儌儍儎儏儐儑儓儔儕儖儗儘儙儚儛儜儝儞償儠儢儣儤儥儦儧儨儩優儫儬儭儮儯儰儱儲儳儴儵儶儷儸儹儺儻儼儽儾兂兇兊兌兎兏児兒兓兗兘兙兛兝兞兟兠兡兣兤兦內兩兪兯兲兺兾兿冃冄円冇冊冋冎冏冐冑冓冔冘冚冝冞冟冡冣冦冧冨冩冪冭冮冴冸冹冺冾冿凁凂凃凅凈凊凍凎凐凒凓凔凕凖凗�\".split(\"\");\nfor(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}\nD[132] = \"����������������������������������������������������������������凘凙凚凜凞凟凢凣凥処凧凨凩凪凬凮凱凲凴凷凾刄刅刉刋刌刏刐刓刔刕刜刞刟刡刢刣別刦刧刪刬刯刱刲刴刵刼刾剄剅剆則剈剉剋剎剏剒剓剕剗剘�剙剚剛剝剟剠剢剣剤剦剨剫剬剭剮剰剱剳剴創剶剷剸剹剺剻剼剾劀劃劄劅劆劇劉劊劋劌劍劎劏劑劒劔劕劖劗劘劙劚劜劤劥劦劧劮劯劰労劵劶劷劸効劺劻劼劽勀勁勂勄勅勆勈勊勌勍勎勏勑勓勔動勗務勚勛勜勝勞勠勡勢勣勥勦勧勨勩勪勫勬勭勮勯勱勲勳勴勵勶勷勸勻勼勽匁匂匃匄匇匉匊匋匌匎�\".split(\"\");\nfor(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}\nD[133] = \"����������������������������������������������������������������匑匒匓匔匘匛匜匞匟匢匤匥匧匨匩匫匬匭匯匰匱匲匳匴匵匶匷匸匼匽區卂卄卆卋卌卍卐協単卙卛卝卥卨卪卬卭卲卶卹卻卼卽卾厀厁厃厇厈厊厎厏�厐厑厒厓厔厖厗厙厛厜厞厠厡厤厧厪厫厬厭厯厰厱厲厳厴厵厷厸厹厺厼厽厾叀參叄叅叆叇収叏叐叒叓叕叚叜叝叞叡叢叧叴叺叾叿吀吂吅吇吋吔吘吙吚吜吢吤吥吪吰吳吶吷吺吽吿呁呂呄呅呇呉呌呍呎呏呑呚呝呞呟呠呡呣呥呧呩呪呫呬呭呮呯呰呴呹呺呾呿咁咃咅咇咈咉咊咍咑咓咗咘咜咞咟咠咡�\".split(\"\");\nfor(j = 0; j != D[133].length; ++j) if(D[133][j].charCodeAt(0) !== 0xFFFD) { e[D[133][j]] = 34048 + j; d[34048 + j] = D[133][j];}\nD[134] = \"����������������������������������������������������������������咢咥咮咰咲咵咶咷咹咺咼咾哃哅哊哋哖哘哛哠員哢哣哤哫哬哯哰哱哴哵哶哷哸哹哻哾唀唂唃唄唅唈唊唋唌唍唎唒唓唕唖唗唘唙唚唜唝唞唟唡唥唦�唨唩唫唭唲唴唵唶唸唹唺唻唽啀啂啅啇啈啋啌啍啎問啑啒啓啔啗啘啙啚啛啝啞啟啠啢啣啨啩啫啯啰啱啲啳啴啹啺啽啿喅喆喌喍喎喐喒喓喕喖喗喚喛喞喠喡喢喣喤喥喦喨喩喪喫喬喭單喯喰喲喴営喸喺喼喿嗀嗁嗂嗃嗆嗇嗈嗊嗋嗎嗏嗐嗕嗗嗘嗙嗚嗛嗞嗠嗢嗧嗩嗭嗮嗰嗱嗴嗶嗸嗹嗺嗻嗼嗿嘂嘃嘄嘅�\".split(\"\");\nfor(j = 0; j != D[134].length; ++j) if(D[134][j].charCodeAt(0) !== 0xFFFD) { e[D[134][j]] = 34304 + j; d[34304 + j] = D[134][j];}\nD[135] = \"����������������������������������������������������������������嘆嘇嘊嘋嘍嘐嘑嘒嘓嘔嘕嘖嘗嘙嘚嘜嘝嘠嘡嘢嘥嘦嘨嘩嘪嘫嘮嘯嘰嘳嘵嘷嘸嘺嘼嘽嘾噀噁噂噃噄噅噆噇噈噉噊噋噏噐噑噒噓噕噖噚噛噝噞噟噠噡�噣噥噦噧噭噮噯噰噲噳噴噵噷噸噹噺噽噾噿嚀嚁嚂嚃嚄嚇嚈嚉嚊嚋嚌嚍嚐嚑嚒嚔嚕嚖嚗嚘嚙嚚嚛嚜嚝嚞嚟嚠嚡嚢嚤嚥嚦嚧嚨嚩嚪嚫嚬嚭嚮嚰嚱嚲嚳嚴嚵嚶嚸嚹嚺嚻嚽嚾嚿囀囁囂囃囄囅囆囇囈囉囋囌囍囎囏囐囑囒囓囕囖囘囙囜団囥囦囧囨囩囪囬囮囯囲図囶囷囸囻囼圀圁圂圅圇國圌圍圎圏圐圑�\".split(\"\");\nfor(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}\nD[136] = \"����������������������������������������������������������������園圓圔圕圖圗團圙圚圛圝圞圠圡圢圤圥圦圧圫圱圲圴圵圶圷圸圼圽圿坁坃坄坅坆坈坉坋坒坓坔坕坖坘坙坢坣坥坧坬坮坰坱坲坴坵坸坹坺坽坾坿垀�垁垇垈垉垊垍垎垏垐垑垔垕垖垗垘垙垚垜垝垞垟垥垨垪垬垯垰垱垳垵垶垷垹垺垻垼垽垾垿埀埁埄埅埆埇埈埉埊埌埍埐埑埓埖埗埛埜埞埡埢埣埥埦埧埨埩埪埫埬埮埰埱埲埳埵埶執埻埼埾埿堁堃堄堅堈堉堊堌堎堏堐堒堓堔堖堗堘堚堛堜堝堟堢堣堥堦堧堨堩堫堬堭堮堯報堲堳場堶堷堸堹堺堻堼堽�\".split(\"\");\nfor(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}\nD[137] = \"����������������������������������������������������������������堾堿塀塁塂塃塅塆塇塈塉塊塋塎塏塐塒塓塕塖塗塙塚塛塜塝塟塠塡塢塣塤塦塧塨塩塪塭塮塯塰塱塲塳塴塵塶塷塸塹塺塻塼塽塿墂墄墆墇墈墊墋墌�墍墎墏墐墑墔墕墖増墘墛墜墝墠墡墢墣墤墥墦墧墪墫墬墭墮墯墰墱墲墳墴墵墶墷墸墹墺墻墽墾墿壀壂壃壄壆壇壈壉壊壋壌壍壎壏壐壒壓壔壖壗壘壙壚壛壜壝壞壟壠壡壢壣壥壦壧壨壩壪壭壯壱売壴壵壷壸壺壻壼壽壾壿夀夁夃夅夆夈変夊夋夌夎夐夑夒夓夗夘夛夝夞夠夡夢夣夦夨夬夰夲夳夵夶夻�\".split(\"\");\nfor(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}\nD[138] = \"����������������������������������������������������������������夽夾夿奀奃奅奆奊奌奍奐奒奓奙奛奜奝奞奟奡奣奤奦奧奨奩奪奫奬奭奮奯奰奱奲奵奷奺奻奼奾奿妀妅妉妋妌妎妏妐妑妔妕妘妚妛妜妝妟妠妡妢妦�妧妬妭妰妱妳妴妵妶妷妸妺妼妽妿姀姁姂姃姄姅姇姈姉姌姍姎姏姕姖姙姛姞姟姠姡姢姤姦姧姩姪姫姭姮姯姰姱姲姳姴姵姶姷姸姺姼姽姾娀娂娊娋娍娎娏娐娒娔娕娖娗娙娚娛娝娞娡娢娤娦娧娨娪娫娬娭娮娯娰娳娵娷娸娹娺娻娽娾娿婁婂婃婄婅婇婈婋婌婍婎婏婐婑婒婓婔婖婗婘婙婛婜婝婞婟婠�\".split(\"\");\nfor(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}\nD[139] = \"����������������������������������������������������������������婡婣婤婥婦婨婩婫婬婭婮婯婰婱婲婳婸婹婻婼婽婾媀媁媂媃媄媅媆媇媈媉媊媋媌媍媎媏媐媑媓媔媕媖媗媘媙媜媝媞媟媠媡媢媣媤媥媦媧媨媩媫媬�媭媮媯媰媱媴媶媷媹媺媻媼媽媿嫀嫃嫄嫅嫆嫇嫈嫊嫋嫍嫎嫏嫐嫑嫓嫕嫗嫙嫚嫛嫝嫞嫟嫢嫤嫥嫧嫨嫪嫬嫭嫮嫯嫰嫲嫳嫴嫵嫶嫷嫸嫹嫺嫻嫼嫽嫾嫿嬀嬁嬂嬃嬄嬅嬆嬇嬈嬊嬋嬌嬍嬎嬏嬐嬑嬒嬓嬔嬕嬘嬙嬚嬛嬜嬝嬞嬟嬠嬡嬢嬣嬤嬥嬦嬧嬨嬩嬪嬫嬬嬭嬮嬯嬰嬱嬳嬵嬶嬸嬹嬺嬻嬼嬽嬾嬿孁孂孃孄孅孆孇�\".split(\"\");\nfor(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}\nD[140] = \"����������������������������������������������������������������孈孉孊孋孌孍孎孏孒孖孞孠孡孧孨孫孭孮孯孲孴孶孷學孹孻孼孾孿宂宆宊宍宎宐宑宒宔宖実宧宨宩宬宭宮宯宱宲宷宺宻宼寀寁寃寈寉寊寋寍寎寏�寑寔寕寖寗寘寙寚寛寜寠寢寣實寧審寪寫寬寭寯寱寲寳寴寵寶寷寽対尀専尃尅將專尋尌對導尐尒尓尗尙尛尞尟尠尡尣尦尨尩尪尫尭尮尯尰尲尳尵尶尷屃屄屆屇屌屍屒屓屔屖屗屘屚屛屜屝屟屢層屧屨屩屪屫屬屭屰屲屳屴屵屶屷屸屻屼屽屾岀岃岄岅岆岇岉岊岋岎岏岒岓岕岝岞岟岠岡岤岥岦岧岨�\".split(\"\");\nfor(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}\nD[141] = \"����������������������������������������������������������������岪岮岯岰岲岴岶岹岺岻岼岾峀峂峃峅峆峇峈峉峊峌峍峎峏峐峑峓峔峕峖峗峘峚峛峜峝峞峟峠峢峣峧峩峫峬峮峯峱峲峳峴峵島峷峸峹峺峼峽峾峿崀�崁崄崅崈崉崊崋崌崍崏崐崑崒崓崕崗崘崙崚崜崝崟崠崡崢崣崥崨崪崫崬崯崰崱崲崳崵崶崷崸崹崺崻崼崿嵀嵁嵂嵃嵄嵅嵆嵈嵉嵍嵎嵏嵐嵑嵒嵓嵔嵕嵖嵗嵙嵚嵜嵞嵟嵠嵡嵢嵣嵤嵥嵦嵧嵨嵪嵭嵮嵰嵱嵲嵳嵵嵶嵷嵸嵹嵺嵻嵼嵽嵾嵿嶀嶁嶃嶄嶅嶆嶇嶈嶉嶊嶋嶌嶍嶎嶏嶐嶑嶒嶓嶔嶕嶖嶗嶘嶚嶛嶜嶞嶟嶠�\".split(\"\");\nfor(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}\nD[142] = \"����������������������������������������������������������������嶡嶢嶣嶤嶥嶦嶧嶨嶩嶪嶫嶬嶭嶮嶯嶰嶱嶲嶳嶴嶵嶶嶸嶹嶺嶻嶼嶽嶾嶿巀巁巂巃巄巆巇巈巉巊巋巌巎巏巐巑巒巓巔巕巖巗巘巙巚巜巟巠巣巤巪巬巭�巰巵巶巸巹巺巻巼巿帀帄帇帉帊帋帍帎帒帓帗帞帟帠帡帢帣帤帥帨帩帪師帬帯帰帲帳帴帵帶帹帺帾帿幀幁幃幆幇幈幉幊幋幍幎幏幐幑幒幓幖幗幘幙幚幜幝幟幠幣幤幥幦幧幨幩幪幫幬幭幮幯幰幱幵幷幹幾庁庂広庅庈庉庌庍庎庒庘庛庝庡庢庣庤庨庩庪庫庬庮庯庰庱庲庴庺庻庼庽庿廀廁廂廃廄廅�\".split(\"\");\nfor(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}\nD[143] = \"����������������������������������������������������������������廆廇廈廋廌廍廎廏廐廔廕廗廘廙廚廜廝廞廟廠廡廢廣廤廥廦廧廩廫廬廭廮廯廰廱廲廳廵廸廹廻廼廽弅弆弇弉弌弍弎弐弒弔弖弙弚弜弝弞弡弢弣弤�弨弫弬弮弰弲弳弴張弶強弸弻弽弾弿彁彂彃彄彅彆彇彈彉彊彋彌彍彎彏彑彔彙彚彛彜彞彟彠彣彥彧彨彫彮彯彲彴彵彶彸彺彽彾彿徃徆徍徎徏徑従徔徖徚徛徝從徟徠徢徣徤徥徦徧復徫徬徯徰徱徲徳徴徶徸徹徺徻徾徿忀忁忂忇忈忊忋忎忓忔忕忚忛応忞忟忢忣忥忦忨忩忬忯忰忲忳忴忶忷忹忺忼怇�\".split(\"\");\nfor(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}\nD[144] = \"����������������������������������������������������������������怈怉怋怌怐怑怓怗怘怚怞怟怢怣怤怬怭怮怰怱怲怳怴怶怷怸怹怺怽怾恀恄恅恆恇恈恉恊恌恎恏恑恓恔恖恗恘恛恜恞恟恠恡恥恦恮恱恲恴恵恷恾悀�悁悂悅悆悇悈悊悋悎悏悐悑悓悕悗悘悙悜悞悡悢悤悥悧悩悪悮悰悳悵悶悷悹悺悽悾悿惀惁惂惃惄惇惈惉惌惍惎惏惐惒惓惔惖惗惙惛惞惡惢惣惤惥惪惱惲惵惷惸惻惼惽惾惿愂愃愄愅愇愊愋愌愐愑愒愓愔愖愗愘愙愛愜愝愞愡愢愥愨愩愪愬愭愮愯愰愱愲愳愴愵愶愷愸愹愺愻愼愽愾慀慁慂慃慄慅慆�\".split(\"\");\nfor(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}\nD[145] = \"����������������������������������������������������������������慇慉態慍慏慐慒慓慔慖慗慘慙慚慛慜慞慟慠慡慣慤慥慦慩慪慫慬慭慮慯慱慲慳慴慶慸慹慺慻慼慽慾慿憀憁憂憃憄憅憆憇憈憉憊憌憍憏憐憑憒憓憕�憖憗憘憙憚憛憜憞憟憠憡憢憣憤憥憦憪憫憭憮憯憰憱憲憳憴憵憶憸憹憺憻憼憽憿懀懁懃懄懅懆懇應懌懍懎懏懐懓懕懖懗懘懙懚懛懜懝懞懟懠懡懢懣懤懥懧懨懩懪懫懬懭懮懯懰懱懲懳懴懶懷懸懹懺懻懼懽懾戀戁戂戃戄戅戇戉戓戔戙戜戝戞戠戣戦戧戨戩戫戭戯戰戱戲戵戶戸戹戺戻戼扂扄扅扆扊�\".split(\"\");\nfor(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}\nD[146] = \"����������������������������������������������������������������扏扐払扖扗扙扚扜扝扞扟扠扡扢扤扥扨扱扲扴扵扷扸扺扻扽抁抂抃抅抆抇抈抋抌抍抎抏抐抔抙抜抝択抣抦抧抩抪抭抮抯抰抲抳抴抶抷抸抺抾拀拁�拃拋拏拑拕拝拞拠拡拤拪拫拰拲拵拸拹拺拻挀挃挄挅挆挊挋挌挍挏挐挒挓挔挕挗挘挙挜挦挧挩挬挭挮挰挱挳挴挵挶挷挸挻挼挾挿捀捁捄捇捈捊捑捒捓捔捖捗捘捙捚捛捜捝捠捤捥捦捨捪捫捬捯捰捲捳捴捵捸捹捼捽捾捿掁掃掄掅掆掋掍掑掓掔掕掗掙掚掛掜掝掞掟採掤掦掫掯掱掲掵掶掹掻掽掿揀�\".split(\"\");\nfor(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}\nD[147] = \"����������������������������������������������������������������揁揂揃揅揇揈揊揋揌揑揓揔揕揗揘揙揚換揜揝揟揢揤揥揦揧揨揫揬揮揯揰揱揳揵揷揹揺揻揼揾搃搄搆搇搈搉搊損搎搑搒搕搖搗搘搙搚搝搟搢搣搤�搥搧搨搩搫搮搯搰搱搲搳搵搶搷搸搹搻搼搾摀摂摃摉摋摌摍摎摏摐摑摓摕摖摗摙摚摛摜摝摟摠摡摢摣摤摥摦摨摪摫摬摮摯摰摱摲摳摴摵摶摷摻摼摽摾摿撀撁撃撆撈撉撊撋撌撍撎撏撐撓撔撗撘撚撛撜撝撟撠撡撢撣撥撦撧撨撪撫撯撱撲撳撴撶撹撻撽撾撿擁擃擄擆擇擈擉擊擋擌擏擑擓擔擕擖擙據�\".split(\"\");\nfor(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}\nD[148] = \"����������������������������������������������������������������擛擜擝擟擠擡擣擥擧擨擩擪擫擬擭擮擯擰擱擲擳擴擵擶擷擸擹擺擻擼擽擾擿攁攂攃攄攅攆攇攈攊攋攌攍攎攏攐攑攓攔攕攖攗攙攚攛攜攝攞攟攠攡�攢攣攤攦攧攨攩攪攬攭攰攱攲攳攷攺攼攽敀敁敂敃敄敆敇敊敋敍敎敐敒敓敔敗敘敚敜敟敠敡敤敥敧敨敩敪敭敮敯敱敳敵敶數敹敺敻敼敽敾敿斀斁斂斃斄斅斆斈斉斊斍斎斏斒斔斕斖斘斚斝斞斠斢斣斦斨斪斬斮斱斲斳斴斵斶斷斸斺斻斾斿旀旂旇旈旉旊旍旐旑旓旔旕旘旙旚旛旜旝旞旟旡旣旤旪旫�\".split(\"\");\nfor(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}\nD[149] = \"����������������������������������������������������������������旲旳旴旵旸旹旻旼旽旾旿昁昄昅昇昈昉昋昍昐昑昒昖昗昘昚昛昜昞昡昢昣昤昦昩昪昫昬昮昰昲昳昷昸昹昺昻昽昿晀時晄晅晆晇晈晉晊晍晎晐晑晘�晙晛晜晝晞晠晢晣晥晧晩晪晫晬晭晱晲晳晵晸晹晻晼晽晿暀暁暃暅暆暈暉暊暋暍暎暏暐暒暓暔暕暘暙暚暛暜暞暟暠暡暢暣暤暥暦暩暪暫暬暭暯暰暱暲暳暵暶暷暸暺暻暼暽暿曀曁曂曃曄曅曆曇曈曉曊曋曌曍曎曏曐曑曒曓曔曕曖曗曘曚曞曟曠曡曢曣曤曥曧曨曪曫曬曭曮曯曱曵曶書曺曻曽朁朂會�\".split(\"\");\nfor(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}\nD[150] = \"����������������������������������������������������������������朄朅朆朇朌朎朏朑朒朓朖朘朙朚朜朞朠朡朢朣朤朥朧朩朮朰朲朳朶朷朸朹朻朼朾朿杁杄杅杇杊杋杍杒杔杕杗杘杙杚杛杝杢杣杤杦杧杫杬杮東杴杶�杸杹杺杻杽枀枂枃枅枆枈枊枌枍枎枏枑枒枓枔枖枙枛枟枠枡枤枦枩枬枮枱枲枴枹枺枻枼枽枾枿柀柂柅柆柇柈柉柊柋柌柍柎柕柖柗柛柟柡柣柤柦柧柨柪柫柭柮柲柵柶柷柸柹柺査柼柾栁栂栃栄栆栍栐栒栔栕栘栙栚栛栜栞栟栠栢栣栤栥栦栧栨栫栬栭栮栯栰栱栴栵栶栺栻栿桇桋桍桏桒桖桗桘桙桚桛�\".split(\"\");\nfor(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}\nD[151] = \"����������������������������������������������������������������桜桝桞桟桪桬桭桮桯桰桱桲桳桵桸桹桺桻桼桽桾桿梀梂梄梇梈梉梊梋梌梍梎梐梑梒梔梕梖梘梙梚梛梜條梞梟梠梡梣梤梥梩梪梫梬梮梱梲梴梶梷梸�梹梺梻梼梽梾梿棁棃棄棅棆棇棈棊棌棎棏棐棑棓棔棖棗棙棛棜棝棞棟棡棢棤棥棦棧棨棩棪棫棬棭棯棲棳棴棶棷棸棻棽棾棿椀椂椃椄椆椇椈椉椊椌椏椑椓椔椕椖椗椘椙椚椛検椝椞椡椢椣椥椦椧椨椩椪椫椬椮椯椱椲椳椵椶椷椸椺椻椼椾楀楁楃楄楅楆楇楈楉楊楋楌楍楎楏楐楑楒楓楕楖楘楙楛楜楟�\".split(\"\");\nfor(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}\nD[152] = \"����������������������������������������������������������������楡楢楤楥楧楨楩楪楬業楯楰楲楳楴極楶楺楻楽楾楿榁榃榅榊榋榌榎榏榐榑榒榓榖榗榙榚榝榞榟榠榡榢榣榤榥榦榩榪榬榮榯榰榲榳榵榶榸榹榺榼榽�榾榿槀槂槃槄槅槆槇槈槉構槍槏槑槒槓槕槖槗様槙槚槜槝槞槡槢槣槤槥槦槧槨槩槪槫槬槮槯槰槱槳槴槵槶槷槸槹槺槻槼槾樀樁樂樃樄樅樆樇樈樉樋樌樍樎樏樐樑樒樓樔樕樖標樚樛樜樝樞樠樢樣樤樥樦樧権樫樬樭樮樰樲樳樴樶樷樸樹樺樻樼樿橀橁橂橃橅橆橈橉橊橋橌橍橎橏橑橒橓橔橕橖橗橚�\".split(\"\");\nfor(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}\nD[153] = \"����������������������������������������������������������������橜橝橞機橠橢橣橤橦橧橨橩橪橫橬橭橮橯橰橲橳橴橵橶橷橸橺橻橽橾橿檁檂檃檅檆檇檈檉檊檋檌檍檏檒檓檔檕檖檘檙檚檛檜檝檞檟檡檢檣檤檥檦�檧檨檪檭檮檯檰檱檲檳檴檵檶檷檸檹檺檻檼檽檾檿櫀櫁櫂櫃櫄櫅櫆櫇櫈櫉櫊櫋櫌櫍櫎櫏櫐櫑櫒櫓櫔櫕櫖櫗櫘櫙櫚櫛櫜櫝櫞櫟櫠櫡櫢櫣櫤櫥櫦櫧櫨櫩櫪櫫櫬櫭櫮櫯櫰櫱櫲櫳櫴櫵櫶櫷櫸櫹櫺櫻櫼櫽櫾櫿欀欁欂欃欄欅欆欇欈欉權欋欌欍欎欏欐欑欒欓欔欕欖欗欘欙欚欛欜欝欞欟欥欦欨欩欪欫欬欭欮�\".split(\"\");\nfor(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}\nD[154] = \"����������������������������������������������������������������欯欰欱欳欴欵欶欸欻欼欽欿歀歁歂歄歅歈歊歋歍歎歏歐歑歒歓歔歕歖歗歘歚歛歜歝歞歟歠歡歨歩歫歬歭歮歯歰歱歲歳歴歵歶歷歸歺歽歾歿殀殅殈�殌殎殏殐殑殔殕殗殘殙殜殝殞殟殠殢殣殤殥殦殧殨殩殫殬殭殮殯殰殱殲殶殸殹殺殻殼殽殾毀毃毄毆毇毈毉毊毌毎毐毑毘毚毜毝毞毟毠毢毣毤毥毦毧毨毩毬毭毮毰毱毲毴毶毷毸毺毻毼毾毿氀氁氂氃氄氈氉氊氋氌氎氒気氜氝氞氠氣氥氫氬氭氱氳氶氷氹氺氻氼氾氿汃汄汅汈汋汌汍汎汏汑汒汓汖汘�\".split(\"\");\nfor(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}\nD[155] = \"����������������������������������������������������������������汙汚汢汣汥汦汧汫汬汭汮汯汱汳汵汷汸決汻汼汿沀沄沇沊沋沍沎沑沒沕沖沗沘沚沜沝沞沠沢沨沬沯沰沴沵沶沷沺泀況泂泃泆泇泈泋泍泎泏泑泒泘�泙泚泜泝泟泤泦泧泩泬泭泲泴泹泿洀洂洃洅洆洈洉洊洍洏洐洑洓洔洕洖洘洜洝洟洠洡洢洣洤洦洨洩洬洭洯洰洴洶洷洸洺洿浀浂浄浉浌浐浕浖浗浘浛浝浟浡浢浤浥浧浨浫浬浭浰浱浲浳浵浶浹浺浻浽浾浿涀涁涃涄涆涇涊涋涍涏涐涒涖涗涘涙涚涜涢涥涬涭涰涱涳涴涶涷涹涺涻涼涽涾淁淂淃淈淉淊�\".split(\"\");\nfor(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}\nD[156] = \"����������������������������������������������������������������淍淎淏淐淒淓淔淕淗淚淛淜淟淢淣淥淧淨淩淪淭淯淰淲淴淵淶淸淺淽淾淿渀渁渂渃渄渆渇済渉渋渏渒渓渕渘渙減渜渞渟渢渦渧渨渪測渮渰渱渳渵�渶渷渹渻渼渽渾渿湀湁湂湅湆湇湈湉湊湋湌湏湐湑湒湕湗湙湚湜湝湞湠湡湢湣湤湥湦湧湨湩湪湬湭湯湰湱湲湳湴湵湶湷湸湹湺湻湼湽満溁溂溄溇溈溊溋溌溍溎溑溒溓溔溕準溗溙溚溛溝溞溠溡溣溤溦溨溩溫溬溭溮溰溳溵溸溹溼溾溿滀滃滄滅滆滈滉滊滌滍滎滐滒滖滘滙滛滜滝滣滧滪滫滬滭滮滯�\".split(\"\");\nfor(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}\nD[157] = \"����������������������������������������������������������������滰滱滲滳滵滶滷滸滺滻滼滽滾滿漀漁漃漄漅漇漈漊漋漌漍漎漐漑漒漖漗漘漙漚漛漜漝漞漟漡漢漣漥漦漧漨漬漮漰漲漴漵漷漸漹漺漻漼漽漿潀潁潂�潃潄潅潈潉潊潌潎潏潐潑潒潓潔潕潖潗潙潚潛潝潟潠潡潣潤潥潧潨潩潪潫潬潯潰潱潳潵潶潷潹潻潽潾潿澀澁澂澃澅澆澇澊澋澏澐澑澒澓澔澕澖澗澘澙澚澛澝澞澟澠澢澣澤澥澦澨澩澪澫澬澭澮澯澰澱澲澴澵澷澸澺澻澼澽澾澿濁濃濄濅濆濇濈濊濋濌濍濎濏濐濓濔濕濖濗濘濙濚濛濜濝濟濢濣濤濥�\".split(\"\");\nfor(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}\nD[158] = \"����������������������������������������������������������������濦濧濨濩濪濫濬濭濰濱濲濳濴濵濶濷濸濹濺濻濼濽濾濿瀀瀁瀂瀃瀄瀅瀆瀇瀈瀉瀊瀋瀌瀍瀎瀏瀐瀒瀓瀔瀕瀖瀗瀘瀙瀜瀝瀞瀟瀠瀡瀢瀤瀥瀦瀧瀨瀩瀪�瀫瀬瀭瀮瀯瀰瀱瀲瀳瀴瀶瀷瀸瀺瀻瀼瀽瀾瀿灀灁灂灃灄灅灆灇灈灉灊灋灍灎灐灑灒灓灔灕灖灗灘灙灚灛灜灝灟灠灡灢灣灤灥灦灧灨灩灪灮灱灲灳灴灷灹灺灻災炁炂炃炄炆炇炈炋炌炍炏炐炑炓炗炘炚炛炞炟炠炡炢炣炤炥炦炧炨炩炪炰炲炴炵炶為炾炿烄烅烆烇烉烋烌烍烎烏烐烑烒烓烔烕烖烗烚�\".split(\"\");\nfor(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}\nD[159] = \"����������������������������������������������������������������烜烝烞烠烡烢烣烥烪烮烰烱烲烳烴烵烶烸烺烻烼烾烿焀焁焂焃焄焅焆焇焈焋焌焍焎焏焑焒焔焗焛焜焝焞焟焠無焢焣焤焥焧焨焩焪焫焬焭焮焲焳焴�焵焷焸焹焺焻焼焽焾焿煀煁煂煃煄煆煇煈煉煋煍煏煐煑煒煓煔煕煖煗煘煙煚煛煝煟煠煡煢煣煥煩煪煫煬煭煯煰煱煴煵煶煷煹煻煼煾煿熀熁熂熃熅熆熇熈熉熋熌熍熎熐熑熒熓熕熖熗熚熛熜熝熞熡熢熣熤熥熦熧熩熪熫熭熮熯熰熱熲熴熶熷熸熺熻熼熽熾熿燀燁燂燄燅燆燇燈燉燊燋燌燍燏燐燑燒燓�\".split(\"\");\nfor(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}\nD[160] = \"����������������������������������������������������������������燖燗燘燙燚燛燜燝燞營燡燢燣燤燦燨燩燪燫燬燭燯燰燱燲燳燴燵燶燷燸燺燻燼燽燾燿爀爁爂爃爄爅爇爈爉爊爋爌爍爎爏爐爑爒爓爔爕爖爗爘爙爚�爛爜爞爟爠爡爢爣爤爥爦爧爩爫爭爮爯爲爳爴爺爼爾牀牁牂牃牄牅牆牉牊牋牎牏牐牑牓牔牕牗牘牚牜牞牠牣牤牥牨牪牫牬牭牰牱牳牴牶牷牸牻牼牽犂犃犅犆犇犈犉犌犎犐犑犓犔犕犖犗犘犙犚犛犜犝犞犠犡犢犣犤犥犦犧犨犩犪犫犮犱犲犳犵犺犻犼犽犾犿狀狅狆狇狉狊狋狌狏狑狓狔狕狖狘狚狛�\".split(\"\");\nfor(j = 0; j != D[160].length; ++j) if(D[160][j].charCodeAt(0) !== 0xFFFD) { e[D[160][j]] = 40960 + j; d[40960 + j] = D[160][j];}\nD[161] = \"����������������������������������������������������������������������������������������������������������������������������������������������������������������� 、。·ˉˇ¨〃々—~‖…‘’“”〔〕〈〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓�\".split(\"\");\nfor(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}\nD[162] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ������⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩��㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩��ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ���\".split(\"\");\nfor(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}\nD[163] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������!"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�\".split(\"\");\nfor(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}\nD[164] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������\".split(\"\");\nfor(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}\nD[165] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������\".split(\"\");\nfor(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}\nD[166] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������︵︶︹︺︿﹀︽︾﹁﹂﹃﹄��︻︼︷︸︱�︳︴����������\".split(\"\");\nfor(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}\nD[167] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������\".split(\"\");\nfor(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}\nD[168] = \"����������������������������������������������������������������ˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬╭╮╯╰╱╲╳▁▂▃▄▅▆▇�█▉▊▋▌▍▎▏▓▔▕▼▽◢◣◤◥☉⊕〒〝〞�����������āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ�ńň�ɡ����ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ����������������������\".split(\"\");\nfor(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}\nD[169] = \"����������������������������������������������������������������〡〢〣〤〥〦〧〨〩㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦�℡㈱�‐���ー゛゜ヽヾ〆ゝゞ﹉﹊﹋﹌﹍﹎﹏﹐﹑﹒﹔﹕﹖﹗﹙﹚﹛﹜﹝﹞﹟﹠﹡�﹢﹣﹤﹥﹦﹨﹩﹪﹫�������������〇�������������─━│┃┄┅┆┇┈┉┊┋┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋����������������\".split(\"\");\nfor(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}\nD[170] = \"����������������������������������������������������������������狜狝狟狢狣狤狥狦狧狪狫狵狶狹狽狾狿猀猂猄猅猆猇猈猉猋猌猍猏猐猑猒猔猘猙猚猟猠猣猤猦猧猨猭猯猰猲猳猵猶猺猻猼猽獀獁獂獃獄獅獆獇獈�獉獊獋獌獎獏獑獓獔獕獖獘獙獚獛獜獝獞獟獡獢獣獤獥獦獧獨獩獪獫獮獰獱�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}\nD[171] = \"����������������������������������������������������������������獲獳獴獵獶獷獸獹獺獻獼獽獿玀玁玂玃玅玆玈玊玌玍玏玐玒玓玔玕玗玘玙玚玜玝玞玠玡玣玤玥玦玧玨玪玬玭玱玴玵玶玸玹玼玽玾玿珁珃珄珅珆珇�珋珌珎珒珓珔珕珖珗珘珚珛珜珝珟珡珢珣珤珦珨珪珫珬珮珯珰珱珳珴珵珶珷�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}\nD[172] = \"����������������������������������������������������������������珸珹珺珻珼珽現珿琀琁琂琄琇琈琋琌琍琎琑琒琓琔琕琖琗琘琙琜琝琞琟琠琡琣琤琧琩琫琭琯琱琲琷琸琹琺琻琽琾琿瑀瑂瑃瑄瑅瑆瑇瑈瑉瑊瑋瑌瑍�瑎瑏瑐瑑瑒瑓瑔瑖瑘瑝瑠瑡瑢瑣瑤瑥瑦瑧瑨瑩瑪瑫瑬瑮瑯瑱瑲瑳瑴瑵瑸瑹瑺�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}\nD[173] = \"����������������������������������������������������������������瑻瑼瑽瑿璂璄璅璆璈璉璊璌璍璏璑璒璓璔璕璖璗璘璙璚璛璝璟璠璡璢璣璤璥璦璪璫璬璭璮璯環璱璲璳璴璵璶璷璸璹璻璼璽璾璿瓀瓁瓂瓃瓄瓅瓆瓇�瓈瓉瓊瓋瓌瓍瓎瓏瓐瓑瓓瓔瓕瓖瓗瓘瓙瓚瓛瓝瓟瓡瓥瓧瓨瓩瓪瓫瓬瓭瓰瓱瓲�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}\nD[174] = \"����������������������������������������������������������������瓳瓵瓸瓹瓺瓻瓼瓽瓾甀甁甂甃甅甆甇甈甉甊甋甌甎甐甒甔甕甖甗甛甝甞甠甡產産甤甦甧甪甮甴甶甹甼甽甿畁畂畃畄畆畇畉畊畍畐畑畒畓畕畖畗畘�畝畞畟畠畡畢畣畤畧畨畩畫畬畭畮畯異畱畳畵當畷畺畻畼畽畾疀疁疂疄疅疇�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}\nD[175] = \"����������������������������������������������������������������疈疉疊疌疍疎疐疓疕疘疛疜疞疢疦疧疨疩疪疭疶疷疺疻疿痀痁痆痋痌痎痏痐痑痓痗痙痚痜痝痟痠痡痥痩痬痭痮痯痲痳痵痶痷痸痺痻痽痾瘂瘄瘆瘇�瘈瘉瘋瘍瘎瘏瘑瘒瘓瘔瘖瘚瘜瘝瘞瘡瘣瘧瘨瘬瘮瘯瘱瘲瘶瘷瘹瘺瘻瘽癁療癄�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}\nD[176] = \"����������������������������������������������������������������癅癆癇癈癉癊癋癎癏癐癑癒癓癕癗癘癙癚癛癝癟癠癡癢癤癥癦癧癨癩癪癬癭癮癰癱癲癳癴癵癶癷癹発發癿皀皁皃皅皉皊皌皍皏皐皒皔皕皗皘皚皛�皜皝皞皟皠皡皢皣皥皦皧皨皩皪皫皬皭皯皰皳皵皶皷皸皹皺皻皼皽皾盀盁盃啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥�\".split(\"\");\nfor(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}\nD[177] = \"����������������������������������������������������������������盄盇盉盋盌盓盕盙盚盜盝盞盠盡盢監盤盦盧盨盩盪盫盬盭盰盳盵盶盷盺盻盽盿眀眂眃眅眆眊県眎眏眐眑眒眓眔眕眖眗眘眛眜眝眞眡眣眤眥眧眪眫�眬眮眰眱眲眳眴眹眻眽眾眿睂睄睅睆睈睉睊睋睌睍睎睏睒睓睔睕睖睗睘睙睜薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳�\".split(\"\");\nfor(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}\nD[178] = \"����������������������������������������������������������������睝睞睟睠睤睧睩睪睭睮睯睰睱睲睳睴睵睶睷睸睺睻睼瞁瞂瞃瞆瞇瞈瞉瞊瞋瞏瞐瞓瞔瞕瞖瞗瞘瞙瞚瞛瞜瞝瞞瞡瞣瞤瞦瞨瞫瞭瞮瞯瞱瞲瞴瞶瞷瞸瞹瞺�瞼瞾矀矁矂矃矄矅矆矇矈矉矊矋矌矎矏矐矑矒矓矔矕矖矘矙矚矝矞矟矠矡矤病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖�\".split(\"\");\nfor(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}\nD[179] = \"����������������������������������������������������������������矦矨矪矯矰矱矲矴矵矷矹矺矻矼砃砄砅砆砇砈砊砋砎砏砐砓砕砙砛砞砠砡砢砤砨砪砫砮砯砱砲砳砵砶砽砿硁硂硃硄硆硈硉硊硋硍硏硑硓硔硘硙硚�硛硜硞硟硠硡硢硣硤硥硦硧硨硩硯硰硱硲硳硴硵硶硸硹硺硻硽硾硿碀碁碂碃场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚�\".split(\"\");\nfor(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}\nD[180] = \"����������������������������������������������������������������碄碅碆碈碊碋碏碐碒碔碕碖碙碝碞碠碢碤碦碨碩碪碫碬碭碮碯碵碶碷碸確碻碼碽碿磀磂磃磄磆磇磈磌磍磎磏磑磒磓磖磗磘磚磛磜磝磞磟磠磡磢磣�磤磥磦磧磩磪磫磭磮磯磰磱磳磵磶磸磹磻磼磽磾磿礀礂礃礄礆礇礈礉礊礋礌础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮�\".split(\"\");\nfor(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}\nD[181] = \"����������������������������������������������������������������礍礎礏礐礑礒礔礕礖礗礘礙礚礛礜礝礟礠礡礢礣礥礦礧礨礩礪礫礬礭礮礯礰礱礲礳礵礶礷礸礹礽礿祂祃祄祅祇祊祋祌祍祎祏祐祑祒祔祕祘祙祡祣�祤祦祩祪祫祬祮祰祱祲祳祴祵祶祹祻祼祽祾祿禂禃禆禇禈禉禋禌禍禎禐禑禒怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠�\".split(\"\");\nfor(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}\nD[182] = \"����������������������������������������������������������������禓禔禕禖禗禘禙禛禜禝禞禟禠禡禢禣禤禥禦禨禩禪禫禬禭禮禯禰禱禲禴禵禶禷禸禼禿秂秄秅秇秈秊秌秎秏秐秓秔秖秗秙秚秛秜秝秞秠秡秢秥秨秪�秬秮秱秲秳秴秵秶秷秹秺秼秾秿稁稄稅稇稈稉稊稌稏稐稑稒稓稕稖稘稙稛稜丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二�\".split(\"\");\nfor(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}\nD[183] = \"����������������������������������������������������������������稝稟稡稢稤稥稦稧稨稩稪稫稬稭種稯稰稱稲稴稵稶稸稺稾穀穁穂穃穄穅穇穈穉穊穋穌積穎穏穐穒穓穔穕穖穘穙穚穛穜穝穞穟穠穡穢穣穤穥穦穧穨�穩穪穫穬穭穮穯穱穲穳穵穻穼穽穾窂窅窇窉窊窋窌窎窏窐窓窔窙窚窛窞窡窢贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服�\".split(\"\");\nfor(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}\nD[184] = \"����������������������������������������������������������������窣窤窧窩窪窫窮窯窰窱窲窴窵窶窷窸窹窺窻窼窽窾竀竁竂竃竄竅竆竇竈竉竊竌竍竎竏竐竑竒竓竔竕竗竘竚竛竜竝竡竢竤竧竨竩竪竫竬竮竰竱竲竳�竴竵競竷竸竻竼竾笀笁笂笅笇笉笌笍笎笐笒笓笖笗笘笚笜笝笟笡笢笣笧笩笭浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹�\".split(\"\");\nfor(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}\nD[185] = \"����������������������������������������������������������������笯笰笲笴笵笶笷笹笻笽笿筀筁筂筃筄筆筈筊筍筎筓筕筗筙筜筞筟筡筣筤筥筦筧筨筩筪筫筬筭筯筰筳筴筶筸筺筼筽筿箁箂箃箄箆箇箈箉箊箋箌箎箏�箑箒箓箖箘箙箚箛箞箟箠箣箤箥箮箯箰箲箳箵箶箷箹箺箻箼箽箾箿節篂篃範埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈�\".split(\"\");\nfor(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}\nD[186] = \"����������������������������������������������������������������篅篈築篊篋篍篎篏篐篒篔篕篖篗篘篛篜篞篟篠篢篣篤篧篨篩篫篬篭篯篰篲篳篴篵篶篸篹篺篻篽篿簀簁簂簃簄簅簆簈簉簊簍簎簐簑簒簓簔簕簗簘簙�簚簛簜簝簞簠簡簢簣簤簥簨簩簫簬簭簮簯簰簱簲簳簴簵簶簷簹簺簻簼簽簾籂骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖�\".split(\"\");\nfor(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}\nD[187] = \"����������������������������������������������������������������籃籄籅籆籇籈籉籊籋籌籎籏籐籑籒籓籔籕籖籗籘籙籚籛籜籝籞籟籠籡籢籣籤籥籦籧籨籩籪籫籬籭籮籯籰籱籲籵籶籷籸籹籺籾籿粀粁粂粃粄粅粆粇�粈粊粋粌粍粎粏粐粓粔粖粙粚粛粠粡粣粦粧粨粩粫粬粭粯粰粴粵粶粷粸粺粻弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕�\".split(\"\");\nfor(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}\nD[188] = \"����������������������������������������������������������������粿糀糂糃糄糆糉糋糎糏糐糑糒糓糔糘糚糛糝糞糡糢糣糤糥糦糧糩糪糫糬糭糮糰糱糲糳糴糵糶糷糹糺糼糽糾糿紀紁紂紃約紅紆紇紈紉紋紌納紎紏紐�紑紒紓純紕紖紗紘紙級紛紜紝紞紟紡紣紤紥紦紨紩紪紬紭紮細紱紲紳紴紵紶肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件�\".split(\"\");\nfor(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}\nD[189] = \"����������������������������������������������������������������紷紸紹紺紻紼紽紾紿絀絁終絃組絅絆絇絈絉絊絋経絍絎絏結絑絒絓絔絕絖絗絘絙絚絛絜絝絞絟絠絡絢絣絤絥給絧絨絩絪絫絬絭絯絰統絲絳絴絵絶�絸絹絺絻絼絽絾絿綀綁綂綃綄綅綆綇綈綉綊綋綌綍綎綏綐綑綒經綔綕綖綗綘健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸�\".split(\"\");\nfor(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}\nD[190] = \"����������������������������������������������������������������継続綛綜綝綞綟綠綡綢綣綤綥綧綨綩綪綫綬維綯綰綱網綳綴綵綶綷綸綹綺綻綼綽綾綿緀緁緂緃緄緅緆緇緈緉緊緋緌緍緎総緐緑緒緓緔緕緖緗緘緙�線緛緜緝緞緟締緡緢緣緤緥緦緧編緩緪緫緬緭緮緯緰緱緲緳練緵緶緷緸緹緺尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻�\".split(\"\");\nfor(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}\nD[191] = \"����������������������������������������������������������������緻緼緽緾緿縀縁縂縃縄縅縆縇縈縉縊縋縌縍縎縏縐縑縒縓縔縕縖縗縘縙縚縛縜縝縞縟縠縡縢縣縤縥縦縧縨縩縪縫縬縭縮縯縰縱縲縳縴縵縶縷縸縹�縺縼總績縿繀繂繃繄繅繆繈繉繊繋繌繍繎繏繐繑繒繓織繕繖繗繘繙繚繛繜繝俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀�\".split(\"\");\nfor(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}\nD[192] = \"����������������������������������������������������������������繞繟繠繡繢繣繤繥繦繧繨繩繪繫繬繭繮繯繰繱繲繳繴繵繶繷繸繹繺繻繼繽繾繿纀纁纃纄纅纆纇纈纉纊纋續纍纎纏纐纑纒纓纔纕纖纗纘纙纚纜纝纞�纮纴纻纼绖绤绬绹缊缐缞缷缹缻缼缽缾缿罀罁罃罆罇罈罉罊罋罌罍罎罏罒罓馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐�\".split(\"\");\nfor(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}\nD[193] = \"����������������������������������������������������������������罖罙罛罜罝罞罠罣罤罥罦罧罫罬罭罯罰罳罵罶罷罸罺罻罼罽罿羀羂羃羄羅羆羇羈羉羋羍羏羐羑羒羓羕羖羗羘羙羛羜羠羢羣羥羦羨義羪羫羬羭羮羱�羳羴羵羶羷羺羻羾翀翂翃翄翆翇翈翉翋翍翏翐翑習翓翖翗翙翚翛翜翝翞翢翣痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿�\".split(\"\");\nfor(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}\nD[194] = \"����������������������������������������������������������������翤翧翨翪翫翬翭翯翲翴翵翶翷翸翹翺翽翾翿耂耇耈耉耊耎耏耑耓耚耛耝耞耟耡耣耤耫耬耭耮耯耰耲耴耹耺耼耾聀聁聄聅聇聈聉聎聏聐聑聓聕聖聗�聙聛聜聝聞聟聠聡聢聣聤聥聦聧聨聫聬聭聮聯聰聲聳聴聵聶職聸聹聺聻聼聽隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫�\".split(\"\");\nfor(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}\nD[195] = \"����������������������������������������������������������������聾肁肂肅肈肊肍肎肏肐肑肒肔肕肗肙肞肣肦肧肨肬肰肳肵肶肸肹肻胅胇胈胉胊胋胏胐胑胒胓胔胕胘胟胠胢胣胦胮胵胷胹胻胾胿脀脁脃脄脅脇脈脋�脌脕脗脙脛脜脝脟脠脡脢脣脤脥脦脧脨脩脪脫脭脮脰脳脴脵脷脹脺脻脼脽脿谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸�\".split(\"\");\nfor(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}\nD[196] = \"����������������������������������������������������������������腀腁腂腃腄腅腇腉腍腎腏腒腖腗腘腛腜腝腞腟腡腢腣腤腦腨腪腫腬腯腲腳腵腶腷腸膁膃膄膅膆膇膉膋膌膍膎膐膒膓膔膕膖膗膙膚膞膟膠膡膢膤膥�膧膩膫膬膭膮膯膰膱膲膴膵膶膷膸膹膼膽膾膿臄臅臇臈臉臋臍臎臏臐臑臒臓摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁�\".split(\"\");\nfor(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}\nD[197] = \"����������������������������������������������������������������臔臕臖臗臘臙臚臛臜臝臞臟臠臡臢臤臥臦臨臩臫臮臯臰臱臲臵臶臷臸臹臺臽臿舃與興舉舊舋舎舏舑舓舕舖舗舘舙舚舝舠舤舥舦舧舩舮舲舺舼舽舿�艀艁艂艃艅艆艈艊艌艍艎艐艑艒艓艔艕艖艗艙艛艜艝艞艠艡艢艣艤艥艦艧艩拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗�\".split(\"\");\nfor(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}\nD[198] = \"����������������������������������������������������������������艪艫艬艭艱艵艶艷艸艻艼芀芁芃芅芆芇芉芌芐芓芔芕芖芚芛芞芠芢芣芧芲芵芶芺芻芼芿苀苂苃苅苆苉苐苖苙苚苝苢苧苨苩苪苬苭苮苰苲苳苵苶苸�苺苼苽苾苿茀茊茋茍茐茒茓茖茘茙茝茞茟茠茡茢茣茤茥茦茩茪茮茰茲茷茻茽啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐�\".split(\"\");\nfor(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}\nD[199] = \"����������������������������������������������������������������茾茿荁荂荄荅荈荊荋荌荍荎荓荕荖荗荘荙荝荢荰荱荲荳荴荵荶荹荺荾荿莀莁莂莃莄莇莈莊莋莌莍莏莐莑莔莕莖莗莙莚莝莟莡莢莣莤莥莦莧莬莭莮�莯莵莻莾莿菂菃菄菆菈菉菋菍菎菐菑菒菓菕菗菙菚菛菞菢菣菤菦菧菨菫菬菭恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠�\".split(\"\");\nfor(j = 0; j != D[199].length; ++j) if(D[199][j].charCodeAt(0) !== 0xFFFD) { e[D[199][j]] = 50944 + j; d[50944 + j] = D[199][j];}\nD[200] = \"����������������������������������������������������������������菮華菳菴菵菶菷菺菻菼菾菿萀萂萅萇萈萉萊萐萒萓萔萕萖萗萙萚萛萞萟萠萡萢萣萩萪萫萬萭萮萯萰萲萳萴萵萶萷萹萺萻萾萿葀葁葂葃葄葅葇葈葉�葊葋葌葍葎葏葐葒葓葔葕葖葘葝葞葟葠葢葤葥葦葧葨葪葮葯葰葲葴葷葹葻葼取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁�\".split(\"\");\nfor(j = 0; j != D[200].length; ++j) if(D[200][j].charCodeAt(0) !== 0xFFFD) { e[D[200][j]] = 51200 + j; d[51200 + j] = D[200][j];}\nD[201] = \"����������������������������������������������������������������葽葾葿蒀蒁蒃蒄蒅蒆蒊蒍蒏蒐蒑蒒蒓蒔蒕蒖蒘蒚蒛蒝蒞蒟蒠蒢蒣蒤蒥蒦蒧蒨蒩蒪蒫蒬蒭蒮蒰蒱蒳蒵蒶蒷蒻蒼蒾蓀蓂蓃蓅蓆蓇蓈蓋蓌蓎蓏蓒蓔蓕蓗�蓘蓙蓚蓛蓜蓞蓡蓢蓤蓧蓨蓩蓪蓫蓭蓮蓯蓱蓲蓳蓴蓵蓶蓷蓸蓹蓺蓻蓽蓾蔀蔁蔂伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳�\".split(\"\");\nfor(j = 0; j != D[201].length; ++j) if(D[201][j].charCodeAt(0) !== 0xFFFD) { e[D[201][j]] = 51456 + j; d[51456 + j] = D[201][j];}\nD[202] = \"����������������������������������������������������������������蔃蔄蔅蔆蔇蔈蔉蔊蔋蔍蔎蔏蔐蔒蔔蔕蔖蔘蔙蔛蔜蔝蔞蔠蔢蔣蔤蔥蔦蔧蔨蔩蔪蔭蔮蔯蔰蔱蔲蔳蔴蔵蔶蔾蔿蕀蕁蕂蕄蕅蕆蕇蕋蕌蕍蕎蕏蕐蕑蕒蕓蕔蕕�蕗蕘蕚蕛蕜蕝蕟蕠蕡蕢蕣蕥蕦蕧蕩蕪蕫蕬蕭蕮蕯蕰蕱蕳蕵蕶蕷蕸蕼蕽蕿薀薁省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱�\".split(\"\");\nfor(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}\nD[203] = \"����������������������������������������������������������������薂薃薆薈薉薊薋薌薍薎薐薑薒薓薔薕薖薗薘薙薚薝薞薟薠薡薢薣薥薦薧薩薫薬薭薱薲薳薴薵薶薸薺薻薼薽薾薿藀藂藃藄藅藆藇藈藊藋藌藍藎藑藒�藔藖藗藘藙藚藛藝藞藟藠藡藢藣藥藦藧藨藪藫藬藭藮藯藰藱藲藳藴藵藶藷藸恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔�\".split(\"\");\nfor(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}\nD[204] = \"����������������������������������������������������������������藹藺藼藽藾蘀蘁蘂蘃蘄蘆蘇蘈蘉蘊蘋蘌蘍蘎蘏蘐蘒蘓蘔蘕蘗蘘蘙蘚蘛蘜蘝蘞蘟蘠蘡蘢蘣蘤蘥蘦蘨蘪蘫蘬蘭蘮蘯蘰蘱蘲蘳蘴蘵蘶蘷蘹蘺蘻蘽蘾蘿虀�虁虂虃虄虅虆虇虈虉虊虋虌虒虓處虖虗虘虙虛虜虝號虠虡虣虤虥虦虧虨虩虪獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃�\".split(\"\");\nfor(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}\nD[205] = \"����������������������������������������������������������������虭虯虰虲虳虴虵虶虷虸蚃蚄蚅蚆蚇蚈蚉蚎蚏蚐蚑蚒蚔蚖蚗蚘蚙蚚蚛蚞蚟蚠蚡蚢蚥蚦蚫蚭蚮蚲蚳蚷蚸蚹蚻蚼蚽蚾蚿蛁蛂蛃蛅蛈蛌蛍蛒蛓蛕蛖蛗蛚蛜�蛝蛠蛡蛢蛣蛥蛦蛧蛨蛪蛫蛬蛯蛵蛶蛷蛺蛻蛼蛽蛿蜁蜄蜅蜆蜋蜌蜎蜏蜐蜑蜔蜖汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威�\".split(\"\");\nfor(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}\nD[206] = \"����������������������������������������������������������������蜙蜛蜝蜟蜠蜤蜦蜧蜨蜪蜫蜬蜭蜯蜰蜲蜳蜵蜶蜸蜹蜺蜼蜽蝀蝁蝂蝃蝄蝅蝆蝊蝋蝍蝏蝐蝑蝒蝔蝕蝖蝘蝚蝛蝜蝝蝞蝟蝡蝢蝦蝧蝨蝩蝪蝫蝬蝭蝯蝱蝲蝳蝵�蝷蝸蝹蝺蝿螀螁螄螆螇螉螊螌螎螏螐螑螒螔螕螖螘螙螚螛螜螝螞螠螡螢螣螤巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺�\".split(\"\");\nfor(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}\nD[207] = \"����������������������������������������������������������������螥螦螧螩螪螮螰螱螲螴螶螷螸螹螻螼螾螿蟁蟂蟃蟄蟅蟇蟈蟉蟌蟍蟎蟏蟐蟔蟕蟖蟗蟘蟙蟚蟜蟝蟞蟟蟡蟢蟣蟤蟦蟧蟨蟩蟫蟬蟭蟯蟰蟱蟲蟳蟴蟵蟶蟷蟸�蟺蟻蟼蟽蟿蠀蠁蠂蠄蠅蠆蠇蠈蠉蠋蠌蠍蠎蠏蠐蠑蠒蠔蠗蠘蠙蠚蠜蠝蠞蠟蠠蠣稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓�\".split(\"\");\nfor(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}\nD[208] = \"����������������������������������������������������������������蠤蠥蠦蠧蠨蠩蠪蠫蠬蠭蠮蠯蠰蠱蠳蠴蠵蠶蠷蠸蠺蠻蠽蠾蠿衁衂衃衆衇衈衉衊衋衎衏衐衑衒術衕衖衘衚衛衜衝衞衟衠衦衧衪衭衯衱衳衴衵衶衸衹衺�衻衼袀袃袆袇袉袊袌袎袏袐袑袓袔袕袗袘袙袚袛袝袞袟袠袡袣袥袦袧袨袩袪小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄�\".split(\"\");\nfor(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}\nD[209] = \"����������������������������������������������������������������袬袮袯袰袲袳袴袵袶袸袹袺袻袽袾袿裀裃裄裇裈裊裋裌裍裏裐裑裓裖裗裚裛補裝裞裠裡裦裧裩裪裫裬裭裮裯裲裵裶裷裺裻製裿褀褁褃褄褅褆複褈�褉褋褌褍褎褏褑褔褕褖褗褘褜褝褞褟褠褢褣褤褦褧褨褩褬褭褮褯褱褲褳褵褷选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶�\".split(\"\");\nfor(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}\nD[210] = \"����������������������������������������������������������������褸褹褺褻褼褽褾褿襀襂襃襅襆襇襈襉襊襋襌襍襎襏襐襑襒襓襔襕襖襗襘襙襚襛襜襝襠襡襢襣襤襥襧襨襩襪襫襬襭襮襯襰襱襲襳襴襵襶襷襸襹襺襼�襽襾覀覂覄覅覇覈覉覊見覌覍覎規覐覑覒覓覔覕視覗覘覙覚覛覜覝覞覟覠覡摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐�\".split(\"\");\nfor(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}\nD[211] = \"����������������������������������������������������������������覢覣覤覥覦覧覨覩親覫覬覭覮覯覰覱覲観覴覵覶覷覸覹覺覻覼覽覾覿觀觃觍觓觔觕觗觘觙觛觝觟觠觡觢觤觧觨觩觪觬觭觮觰觱觲觴觵觶觷觸觹觺�觻觼觽觾觿訁訂訃訄訅訆計訉訊訋訌訍討訏訐訑訒訓訔訕訖託記訙訚訛訜訝印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉�\".split(\"\");\nfor(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}\nD[212] = \"����������������������������������������������������������������訞訟訠訡訢訣訤訥訦訧訨訩訪訫訬設訮訯訰許訲訳訴訵訶訷訸訹診註証訽訿詀詁詂詃詄詅詆詇詉詊詋詌詍詎詏詐詑詒詓詔評詖詗詘詙詚詛詜詝詞�詟詠詡詢詣詤詥試詧詨詩詪詫詬詭詮詯詰話該詳詴詵詶詷詸詺詻詼詽詾詿誀浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧�\".split(\"\");\nfor(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}\nD[213] = \"����������������������������������������������������������������誁誂誃誄誅誆誇誈誋誌認誎誏誐誑誒誔誕誖誗誘誙誚誛誜誝語誟誠誡誢誣誤誥誦誧誨誩說誫説読誮誯誰誱課誳誴誵誶誷誸誹誺誻誼誽誾調諀諁諂�諃諄諅諆談諈諉諊請諌諍諎諏諐諑諒諓諔諕論諗諘諙諚諛諜諝諞諟諠諡諢諣铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政�\".split(\"\");\nfor(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}\nD[214] = \"����������������������������������������������������������������諤諥諦諧諨諩諪諫諬諭諮諯諰諱諲諳諴諵諶諷諸諹諺諻諼諽諾諿謀謁謂謃謄謅謆謈謉謊謋謌謍謎謏謐謑謒謓謔謕謖謗謘謙謚講謜謝謞謟謠謡謢謣�謤謥謧謨謩謪謫謬謭謮謯謰謱謲謳謴謵謶謷謸謹謺謻謼謽謾謿譀譁譂譃譄譅帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑�\".split(\"\");\nfor(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}\nD[215] = \"����������������������������������������������������������������譆譇譈證譊譋譌譍譎譏譐譑譒譓譔譕譖譗識譙譚譛譜譝譞譟譠譡譢譣譤譥譧譨譩譪譫譭譮譯議譱譲譳譴譵譶護譸譹譺譻譼譽譾譿讀讁讂讃讄讅讆�讇讈讉變讋讌讍讎讏讐讑讒讓讔讕讖讗讘讙讚讛讜讝讞讟讬讱讻诇诐诪谉谞住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座������\".split(\"\");\nfor(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}\nD[216] = \"����������������������������������������������������������������谸谹谺谻谼谽谾谿豀豂豃豄豅豈豊豋豍豎豏豐豑豒豓豔豖豗豘豙豛豜豝豞豟豠豣豤豥豦豧豨豩豬豭豮豯豰豱豲豴豵豶豷豻豼豽豾豿貀貁貃貄貆貇�貈貋貍貎貏貐貑貒貓貕貖貗貙貚貛貜貝貞貟負財貢貣貤貥貦貧貨販貪貫責貭亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝�\".split(\"\");\nfor(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}\nD[217] = \"����������������������������������������������������������������貮貯貰貱貲貳貴貵貶買貸貹貺費貼貽貾貿賀賁賂賃賄賅賆資賈賉賊賋賌賍賎賏賐賑賒賓賔賕賖賗賘賙賚賛賜賝賞賟賠賡賢賣賤賥賦賧賨賩質賫賬�賭賮賯賰賱賲賳賴賵賶賷賸賹賺賻購賽賾賿贀贁贂贃贄贅贆贇贈贉贊贋贌贍佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼�\".split(\"\");\nfor(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}\nD[218] = \"����������������������������������������������������������������贎贏贐贑贒贓贔贕贖贗贘贙贚贛贜贠赑赒赗赟赥赨赩赪赬赮赯赱赲赸赹赺赻赼赽赾赿趀趂趃趆趇趈趉趌趍趎趏趐趒趓趕趖趗趘趙趚趛趜趝趞趠趡�趢趤趥趦趧趨趩趪趫趬趭趮趯趰趲趶趷趹趻趽跀跁跂跅跇跈跉跊跍跐跒跓跔凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺�\".split(\"\");\nfor(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}\nD[219] = \"����������������������������������������������������������������跕跘跙跜跠跡跢跥跦跧跩跭跮跰跱跲跴跶跼跾跿踀踁踂踃踄踆踇踈踋踍踎踐踑踒踓踕踖踗踘踙踚踛踜踠踡踤踥踦踧踨踫踭踰踲踳踴踶踷踸踻踼踾�踿蹃蹅蹆蹌蹍蹎蹏蹐蹓蹔蹕蹖蹗蹘蹚蹛蹜蹝蹞蹟蹠蹡蹢蹣蹤蹥蹧蹨蹪蹫蹮蹱邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝�\".split(\"\");\nfor(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}\nD[220] = \"����������������������������������������������������������������蹳蹵蹷蹸蹹蹺蹻蹽蹾躀躂躃躄躆躈躉躊躋躌躍躎躑躒躓躕躖躗躘躙躚躛躝躟躠躡躢躣躤躥躦躧躨躩躪躭躮躰躱躳躴躵躶躷躸躹躻躼躽躾躿軀軁軂�軃軄軅軆軇軈軉車軋軌軍軏軐軑軒軓軔軕軖軗軘軙軚軛軜軝軞軟軠軡転軣軤堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥�\".split(\"\");\nfor(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}\nD[221] = \"����������������������������������������������������������������軥軦軧軨軩軪軫軬軭軮軯軰軱軲軳軴軵軶軷軸軹軺軻軼軽軾軿輀輁輂較輄輅輆輇輈載輊輋輌輍輎輏輐輑輒輓輔輕輖輗輘輙輚輛輜輝輞輟輠輡輢輣�輤輥輦輧輨輩輪輫輬輭輮輯輰輱輲輳輴輵輶輷輸輹輺輻輼輽輾輿轀轁轂轃轄荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺�\".split(\"\");\nfor(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}\nD[222] = \"����������������������������������������������������������������轅轆轇轈轉轊轋轌轍轎轏轐轑轒轓轔轕轖轗轘轙轚轛轜轝轞轟轠轡轢轣轤轥轪辀辌辒辝辠辡辢辤辥辦辧辪辬辭辮辯農辳辴辵辷辸辺辻込辿迀迃迆�迉迊迋迌迍迏迒迖迗迚迠迡迣迧迬迯迱迲迴迵迶迺迻迼迾迿逇逈逌逎逓逕逘蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖�\".split(\"\");\nfor(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}\nD[223] = \"����������������������������������������������������������������這逜連逤逥逧逨逩逪逫逬逰週進逳逴逷逹逺逽逿遀遃遅遆遈遉遊運遌過達違遖遙遚遜遝遞遟遠遡遤遦遧適遪遫遬遯遰遱遲遳遶遷選遹遺遻遼遾邁�還邅邆邇邉邊邌邍邎邏邐邒邔邖邘邚邜邞邟邠邤邥邧邨邩邫邭邲邷邼邽邿郀摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼�\".split(\"\");\nfor(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}\nD[224] = \"����������������������������������������������������������������郂郃郆郈郉郋郌郍郒郔郕郖郘郙郚郞郟郠郣郤郥郩郪郬郮郰郱郲郳郵郶郷郹郺郻郼郿鄀鄁鄃鄅鄆鄇鄈鄉鄊鄋鄌鄍鄎鄏鄐鄑鄒鄓鄔鄕鄖鄗鄘鄚鄛鄜�鄝鄟鄠鄡鄤鄥鄦鄧鄨鄩鄪鄫鄬鄭鄮鄰鄲鄳鄴鄵鄶鄷鄸鄺鄻鄼鄽鄾鄿酀酁酂酄唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼�\".split(\"\");\nfor(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}\nD[225] = \"����������������������������������������������������������������酅酇酈酑酓酔酕酖酘酙酛酜酟酠酦酧酨酫酭酳酺酻酼醀醁醂醃醄醆醈醊醎醏醓醔醕醖醗醘醙醜醝醞醟醠醡醤醥醦醧醨醩醫醬醰醱醲醳醶醷醸醹醻�醼醽醾醿釀釁釂釃釄釅釆釈釋釐釒釓釔釕釖釗釘釙釚釛針釞釟釠釡釢釣釤釥帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺�\".split(\"\");\nfor(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}\nD[226] = \"����������������������������������������������������������������釦釧釨釩釪釫釬釭釮釯釰釱釲釳釴釵釶釷釸釹釺釻釼釽釾釿鈀鈁鈂鈃鈄鈅鈆鈇鈈鈉鈊鈋鈌鈍鈎鈏鈐鈑鈒鈓鈔鈕鈖鈗鈘鈙鈚鈛鈜鈝鈞鈟鈠鈡鈢鈣鈤�鈥鈦鈧鈨鈩鈪鈫鈬鈭鈮鈯鈰鈱鈲鈳鈴鈵鈶鈷鈸鈹鈺鈻鈼鈽鈾鈿鉀鉁鉂鉃鉄鉅狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂�\".split(\"\");\nfor(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}\nD[227] = \"����������������������������������������������������������������鉆鉇鉈鉉鉊鉋鉌鉍鉎鉏鉐鉑鉒鉓鉔鉕鉖鉗鉘鉙鉚鉛鉜鉝鉞鉟鉠鉡鉢鉣鉤鉥鉦鉧鉨鉩鉪鉫鉬鉭鉮鉯鉰鉱鉲鉳鉵鉶鉷鉸鉹鉺鉻鉼鉽鉾鉿銀銁銂銃銄銅�銆銇銈銉銊銋銌銍銏銐銑銒銓銔銕銖銗銘銙銚銛銜銝銞銟銠銡銢銣銤銥銦銧恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾�\".split(\"\");\nfor(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}\nD[228] = \"����������������������������������������������������������������銨銩銪銫銬銭銯銰銱銲銳銴銵銶銷銸銹銺銻銼銽銾銿鋀鋁鋂鋃鋄鋅鋆鋇鋉鋊鋋鋌鋍鋎鋏鋐鋑鋒鋓鋔鋕鋖鋗鋘鋙鋚鋛鋜鋝鋞鋟鋠鋡鋢鋣鋤鋥鋦鋧鋨�鋩鋪鋫鋬鋭鋮鋯鋰鋱鋲鋳鋴鋵鋶鋷鋸鋹鋺鋻鋼鋽鋾鋿錀錁錂錃錄錅錆錇錈錉洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑�\".split(\"\");\nfor(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}\nD[229] = \"����������������������������������������������������������������錊錋錌錍錎錏錐錑錒錓錔錕錖錗錘錙錚錛錜錝錞錟錠錡錢錣錤錥錦錧錨錩錪錫錬錭錮錯錰錱録錳錴錵錶錷錸錹錺錻錼錽錿鍀鍁鍂鍃鍄鍅鍆鍇鍈鍉�鍊鍋鍌鍍鍎鍏鍐鍑鍒鍓鍔鍕鍖鍗鍘鍙鍚鍛鍜鍝鍞鍟鍠鍡鍢鍣鍤鍥鍦鍧鍨鍩鍫濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣�\".split(\"\");\nfor(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}\nD[230] = \"����������������������������������������������������������������鍬鍭鍮鍯鍰鍱鍲鍳鍴鍵鍶鍷鍸鍹鍺鍻鍼鍽鍾鍿鎀鎁鎂鎃鎄鎅鎆鎇鎈鎉鎊鎋鎌鎍鎎鎐鎑鎒鎓鎔鎕鎖鎗鎘鎙鎚鎛鎜鎝鎞鎟鎠鎡鎢鎣鎤鎥鎦鎧鎨鎩鎪鎫�鎬鎭鎮鎯鎰鎱鎲鎳鎴鎵鎶鎷鎸鎹鎺鎻鎼鎽鎾鎿鏀鏁鏂鏃鏄鏅鏆鏇鏈鏉鏋鏌鏍妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩�\".split(\"\");\nfor(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}\nD[231] = \"����������������������������������������������������������������鏎鏏鏐鏑鏒鏓鏔鏕鏗鏘鏙鏚鏛鏜鏝鏞鏟鏠鏡鏢鏣鏤鏥鏦鏧鏨鏩鏪鏫鏬鏭鏮鏯鏰鏱鏲鏳鏴鏵鏶鏷鏸鏹鏺鏻鏼鏽鏾鏿鐀鐁鐂鐃鐄鐅鐆鐇鐈鐉鐊鐋鐌鐍�鐎鐏鐐鐑鐒鐓鐔鐕鐖鐗鐘鐙鐚鐛鐜鐝鐞鐟鐠鐡鐢鐣鐤鐥鐦鐧鐨鐩鐪鐫鐬鐭鐮纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬�\".split(\"\");\nfor(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}\nD[232] = \"����������������������������������������������������������������鐯鐰鐱鐲鐳鐴鐵鐶鐷鐸鐹鐺鐻鐼鐽鐿鑀鑁鑂鑃鑄鑅鑆鑇鑈鑉鑊鑋鑌鑍鑎鑏鑐鑑鑒鑓鑔鑕鑖鑗鑘鑙鑚鑛鑜鑝鑞鑟鑠鑡鑢鑣鑤鑥鑦鑧鑨鑩鑪鑬鑭鑮鑯�鑰鑱鑲鑳鑴鑵鑶鑷鑸鑹鑺鑻鑼鑽鑾鑿钀钁钂钃钄钑钖钘铇铏铓铔铚铦铻锜锠琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹�\".split(\"\");\nfor(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}\nD[233] = \"����������������������������������������������������������������锧锳锽镃镈镋镕镚镠镮镴镵長镸镹镺镻镼镽镾門閁閂閃閄閅閆閇閈閉閊開閌閍閎閏閐閑閒間閔閕閖閗閘閙閚閛閜閝閞閟閠閡関閣閤閥閦閧閨閩閪�閫閬閭閮閯閰閱閲閳閴閵閶閷閸閹閺閻閼閽閾閿闀闁闂闃闄闅闆闇闈闉闊闋椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋�\".split(\"\");\nfor(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}\nD[234] = \"����������������������������������������������������������������闌闍闎闏闐闑闒闓闔闕闖闗闘闙闚闛關闝闞闟闠闡闢闣闤闥闦闧闬闿阇阓阘阛阞阠阣阤阥阦阧阨阩阫阬阭阯阰阷阸阹阺阾陁陃陊陎陏陑陒陓陖陗�陘陙陚陜陝陞陠陣陥陦陫陭陮陯陰陱陳陸陹険陻陼陽陾陿隀隁隂隃隄隇隉隊辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰�\".split(\"\");\nfor(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}\nD[235] = \"����������������������������������������������������������������隌階隑隒隓隕隖隚際隝隞隟隠隡隢隣隤隥隦隨隩險隫隬隭隮隯隱隲隴隵隷隸隺隻隿雂雃雈雊雋雐雑雓雔雖雗雘雙雚雛雜雝雞雟雡離難雤雥雦雧雫�雬雭雮雰雱雲雴雵雸雺電雼雽雿霂霃霅霊霋霌霐霑霒霔霕霗霘霙霚霛霝霟霠搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻�\".split(\"\");\nfor(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}\nD[236] = \"����������������������������������������������������������������霡霢霣霤霥霦霧霨霩霫霬霮霯霱霳霴霵霶霷霺霻霼霽霿靀靁靂靃靄靅靆靇靈靉靊靋靌靍靎靏靐靑靔靕靗靘靚靜靝靟靣靤靦靧靨靪靫靬靭靮靯靰靱�靲靵靷靸靹靺靻靽靾靿鞀鞁鞂鞃鞄鞆鞇鞈鞉鞊鞌鞎鞏鞐鞓鞕鞖鞗鞙鞚鞛鞜鞝臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐�\".split(\"\");\nfor(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}\nD[237] = \"����������������������������������������������������������������鞞鞟鞡鞢鞤鞥鞦鞧鞨鞩鞪鞬鞮鞰鞱鞳鞵鞶鞷鞸鞹鞺鞻鞼鞽鞾鞿韀韁韂韃韄韅韆韇韈韉韊韋韌韍韎韏韐韑韒韓韔韕韖韗韘韙韚韛韜韝韞韟韠韡韢韣�韤韥韨韮韯韰韱韲韴韷韸韹韺韻韼韽韾響頀頁頂頃頄項順頇須頉頊頋頌頍頎怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�\".split(\"\");\nfor(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}\nD[238] = \"����������������������������������������������������������������頏預頑頒頓頔頕頖頗領頙頚頛頜頝頞頟頠頡頢頣頤頥頦頧頨頩頪頫頬頭頮頯頰頱頲頳頴頵頶頷頸頹頺頻頼頽頾頿顀顁顂顃顄顅顆顇顈顉顊顋題額�顎顏顐顑顒顓顔顕顖顗願顙顚顛顜顝類顟顠顡顢顣顤顥顦顧顨顩顪顫顬顭顮睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�\".split(\"\");\nfor(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}\nD[239] = \"����������������������������������������������������������������顯顰顱顲顳顴颋颎颒颕颙颣風颩颪颫颬颭颮颯颰颱颲颳颴颵颶颷颸颹颺颻颼颽颾颿飀飁飂飃飄飅飆飇飈飉飊飋飌飍飏飐飔飖飗飛飜飝飠飡飢飣飤�飥飦飩飪飫飬飭飮飯飰飱飲飳飴飵飶飷飸飹飺飻飼飽飾飿餀餁餂餃餄餅餆餇铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�\".split(\"\");\nfor(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}\nD[240] = \"����������������������������������������������������������������餈餉養餋餌餎餏餑餒餓餔餕餖餗餘餙餚餛餜餝餞餟餠餡餢餣餤餥餦餧館餩餪餫餬餭餯餰餱餲餳餴餵餶餷餸餹餺餻餼餽餾餿饀饁饂饃饄饅饆饇饈饉�饊饋饌饍饎饏饐饑饒饓饖饗饘饙饚饛饜饝饞饟饠饡饢饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�\".split(\"\");\nfor(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}\nD[241] = \"����������������������������������������������������������������馌馎馚馛馜馝馞馟馠馡馢馣馤馦馧馩馪馫馬馭馮馯馰馱馲馳馴馵馶馷馸馹馺馻馼馽馾馿駀駁駂駃駄駅駆駇駈駉駊駋駌駍駎駏駐駑駒駓駔駕駖駗駘�駙駚駛駜駝駞駟駠駡駢駣駤駥駦駧駨駩駪駫駬駭駮駯駰駱駲駳駴駵駶駷駸駹瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�\".split(\"\");\nfor(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}\nD[242] = \"����������������������������������������������������������������駺駻駼駽駾駿騀騁騂騃騄騅騆騇騈騉騊騋騌騍騎騏騐騑騒験騔騕騖騗騘騙騚騛騜騝騞騟騠騡騢騣騤騥騦騧騨騩騪騫騬騭騮騯騰騱騲騳騴騵騶騷騸�騹騺騻騼騽騾騿驀驁驂驃驄驅驆驇驈驉驊驋驌驍驎驏驐驑驒驓驔驕驖驗驘驙颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�\".split(\"\");\nfor(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}\nD[243] = \"����������������������������������������������������������������驚驛驜驝驞驟驠驡驢驣驤驥驦驧驨驩驪驫驲骃骉骍骎骔骕骙骦骩骪骫骬骭骮骯骲骳骴骵骹骻骽骾骿髃髄髆髇髈髉髊髍髎髏髐髒體髕髖髗髙髚髛髜�髝髞髠髢髣髤髥髧髨髩髪髬髮髰髱髲髳髴髵髶髷髸髺髼髽髾髿鬀鬁鬂鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�\".split(\"\");\nfor(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}\nD[244] = \"����������������������������������������������������������������鬇鬉鬊鬋鬌鬍鬎鬐鬑鬒鬔鬕鬖鬗鬘鬙鬚鬛鬜鬝鬞鬠鬡鬢鬤鬥鬦鬧鬨鬩鬪鬫鬬鬭鬮鬰鬱鬳鬴鬵鬶鬷鬸鬹鬺鬽鬾鬿魀魆魊魋魌魎魐魒魓魕魖魗魘魙魚�魛魜魝魞魟魠魡魢魣魤魥魦魧魨魩魪魫魬魭魮魯魰魱魲魳魴魵魶魷魸魹魺魻簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�\".split(\"\");\nfor(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}\nD[245] = \"����������������������������������������������������������������魼魽魾魿鮀鮁鮂鮃鮄鮅鮆鮇鮈鮉鮊鮋鮌鮍鮎鮏鮐鮑鮒鮓鮔鮕鮖鮗鮘鮙鮚鮛鮜鮝鮞鮟鮠鮡鮢鮣鮤鮥鮦鮧鮨鮩鮪鮫鮬鮭鮮鮯鮰鮱鮲鮳鮴鮵鮶鮷鮸鮹鮺�鮻鮼鮽鮾鮿鯀鯁鯂鯃鯄鯅鯆鯇鯈鯉鯊鯋鯌鯍鯎鯏鯐鯑鯒鯓鯔鯕鯖鯗鯘鯙鯚鯛酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�\".split(\"\");\nfor(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}\nD[246] = \"����������������������������������������������������������������鯜鯝鯞鯟鯠鯡鯢鯣鯤鯥鯦鯧鯨鯩鯪鯫鯬鯭鯮鯯鯰鯱鯲鯳鯴鯵鯶鯷鯸鯹鯺鯻鯼鯽鯾鯿鰀鰁鰂鰃鰄鰅鰆鰇鰈鰉鰊鰋鰌鰍鰎鰏鰐鰑鰒鰓鰔鰕鰖鰗鰘鰙鰚�鰛鰜鰝鰞鰟鰠鰡鰢鰣鰤鰥鰦鰧鰨鰩鰪鰫鰬鰭鰮鰯鰰鰱鰲鰳鰴鰵鰶鰷鰸鰹鰺鰻觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�\".split(\"\");\nfor(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}\nD[247] = \"����������������������������������������������������������������鰼鰽鰾鰿鱀鱁鱂鱃鱄鱅鱆鱇鱈鱉鱊鱋鱌鱍鱎鱏鱐鱑鱒鱓鱔鱕鱖鱗鱘鱙鱚鱛鱜鱝鱞鱟鱠鱡鱢鱣鱤鱥鱦鱧鱨鱩鱪鱫鱬鱭鱮鱯鱰鱱鱲鱳鱴鱵鱶鱷鱸鱹鱺�鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾鲿鳀鳁鳂鳈鳉鳑鳒鳚鳛鳠鳡鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�\".split(\"\");\nfor(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}\nD[248] = \"����������������������������������������������������������������鳣鳤鳥鳦鳧鳨鳩鳪鳫鳬鳭鳮鳯鳰鳱鳲鳳鳴鳵鳶鳷鳸鳹鳺鳻鳼鳽鳾鳿鴀鴁鴂鴃鴄鴅鴆鴇鴈鴉鴊鴋鴌鴍鴎鴏鴐鴑鴒鴓鴔鴕鴖鴗鴘鴙鴚鴛鴜鴝鴞鴟鴠鴡�鴢鴣鴤鴥鴦鴧鴨鴩鴪鴫鴬鴭鴮鴯鴰鴱鴲鴳鴴鴵鴶鴷鴸鴹鴺鴻鴼鴽鴾鴿鵀鵁鵂�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}\nD[249] = \"����������������������������������������������������������������鵃鵄鵅鵆鵇鵈鵉鵊鵋鵌鵍鵎鵏鵐鵑鵒鵓鵔鵕鵖鵗鵘鵙鵚鵛鵜鵝鵞鵟鵠鵡鵢鵣鵤鵥鵦鵧鵨鵩鵪鵫鵬鵭鵮鵯鵰鵱鵲鵳鵴鵵鵶鵷鵸鵹鵺鵻鵼鵽鵾鵿鶀鶁�鶂鶃鶄鶅鶆鶇鶈鶉鶊鶋鶌鶍鶎鶏鶐鶑鶒鶓鶔鶕鶖鶗鶘鶙鶚鶛鶜鶝鶞鶟鶠鶡鶢�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}\nD[250] = \"����������������������������������������������������������������鶣鶤鶥鶦鶧鶨鶩鶪鶫鶬鶭鶮鶯鶰鶱鶲鶳鶴鶵鶶鶷鶸鶹鶺鶻鶼鶽鶾鶿鷀鷁鷂鷃鷄鷅鷆鷇鷈鷉鷊鷋鷌鷍鷎鷏鷐鷑鷒鷓鷔鷕鷖鷗鷘鷙鷚鷛鷜鷝鷞鷟鷠鷡�鷢鷣鷤鷥鷦鷧鷨鷩鷪鷫鷬鷭鷮鷯鷰鷱鷲鷳鷴鷵鷶鷷鷸鷹鷺鷻鷼鷽鷾鷿鸀鸁鸂�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}\nD[251] = \"����������������������������������������������������������������鸃鸄鸅鸆鸇鸈鸉鸊鸋鸌鸍鸎鸏鸐鸑鸒鸓鸔鸕鸖鸗鸘鸙鸚鸛鸜鸝鸞鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴鹵鹶鹷鹸鹹鹺鹻鹼鹽麀�麁麃麄麅麆麉麊麌麍麎麏麐麑麔麕麖麗麘麙麚麛麜麞麠麡麢麣麤麥麧麨麩麪�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}\nD[252] = \"����������������������������������������������������������������麫麬麭麮麯麰麱麲麳麵麶麷麹麺麼麿黀黁黂黃黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰黱黲黳黴黵黶黷黸黺黽黿鼀鼁鼂鼃鼄鼅�鼆鼇鼈鼉鼊鼌鼏鼑鼒鼔鼕鼖鼘鼚鼛鼜鼝鼞鼟鼡鼣鼤鼥鼦鼧鼨鼩鼪鼫鼭鼮鼰鼱�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}\nD[253] = \"����������������������������������������������������������������鼲鼳鼴鼵鼶鼸鼺鼼鼿齀齁齂齃齅齆齇齈齉齊齋齌齍齎齏齒齓齔齕齖齗齘齙齚齛齜齝齞齟齠齡齢齣齤齥齦齧齨齩齪齫齬齭齮齯齰齱齲齳齴齵齶齷齸�齹齺齻齼齽齾龁龂龍龎龏龐龑龒龓龔龕龖龗龘龜龝龞龡龢龣龤龥郎凉秊裏隣�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[253].length; ++j) if(D[253][j].charCodeAt(0) !== 0xFFFD) { e[D[253][j]] = 64768 + j; d[64768 + j] = D[253][j];}\nD[254] = \"����������������������������������������������������������������兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[254].length; ++j) if(D[254][j].charCodeAt(0) !== 0xFFFD) { e[D[254][j]] = 65024 + j; d[65024 + j] = D[254][j];}\nreturn {\"enc\": e, \"dec\": d }; })();\ncptable[949] = (function(){ var d = [], e = {}, D = [], j;\nD[0] = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}\nD[129] = \"�����������������������������������������������������������������갂갃갅갆갋갌갍갎갏갘갞갟갡갢갣갥갦갧갨갩갪갫갮갲갳갴������갵갶갷갺갻갽갾갿걁걂걃걄걅걆걇걈걉걊걌걎걏걐걑걒걓걕������걖걗걙걚걛걝걞걟걠걡걢걣걤걥걦걧걨걩걪걫걬걭걮걯걲걳걵걶걹걻걼걽걾걿겂겇겈겍겎겏겑겒겓겕겖겗겘겙겚겛겞겢겣겤겥겦겧겫겭겮겱겲겳겴겵겶겷겺겾겿곀곂곃곅곆곇곉곊곋곍곎곏곐곑곒곓곔곖곘곙곚곛곜곝곞곟곢곣곥곦곩곫곭곮곲곴곷곸곹곺곻곾곿괁괂괃괅괇괈괉괊괋괎괐괒괓�\".split(\"\");\nfor(j = 0; j != D[129].length; ++j) if(D[129][j].charCodeAt(0) !== 0xFFFD) { e[D[129][j]] = 33024 + j; d[33024 + j] = D[129][j];}\nD[130] = \"�����������������������������������������������������������������괔괕괖괗괙괚괛괝괞괟괡괢괣괤괥괦괧괨괪괫괮괯괰괱괲괳������괶괷괹괺괻괽괾괿굀굁굂굃굆굈굊굋굌굍굎굏굑굒굓굕굖굗������굙굚굛굜굝굞굟굠굢굤굥굦굧굨굩굪굫굮굯굱굲굷굸굹굺굾궀궃궄궅궆궇궊궋궍궎궏궑궒궓궔궕궖궗궘궙궚궛궞궟궠궡궢궣궥궦궧궨궩궪궫궬궭궮궯궰궱궲궳궴궵궶궸궹궺궻궼궽궾궿귂귃귅귆귇귉귊귋귌귍귎귏귒귔귕귖귗귘귙귚귛귝귞귟귡귢귣귥귦귧귨귩귪귫귬귭귮귯귰귱귲귳귴귵귶귷�\".split(\"\");\nfor(j = 0; j != D[130].length; ++j) if(D[130][j].charCodeAt(0) !== 0xFFFD) { e[D[130][j]] = 33280 + j; d[33280 + j] = D[130][j];}\nD[131] = \"�����������������������������������������������������������������귺귻귽귾긂긃긄긅긆긇긊긌긎긏긐긑긒긓긕긖긗긘긙긚긛긜������긝긞긟긠긡긢긣긤긥긦긧긨긩긪긫긬긭긮긯긲긳긵긶긹긻긼������긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗깘깙깚깛깞깢깣깤깦깧깪깫깭깮깯깱깲깳깴깵깶깷깺깾깿꺀꺁꺂꺃꺆꺇꺈꺉꺊꺋꺍꺎꺏꺐꺑꺒꺓꺔꺕꺖꺗꺘꺙꺚꺛꺜꺝꺞꺟꺠꺡꺢꺣꺤꺥꺦꺧꺨꺩꺪꺫꺬꺭꺮꺯꺰꺱꺲꺳꺴꺵꺶꺷꺸꺹꺺꺻꺿껁껂껃껅껆껇껈껉껊껋껎껒껓껔껕껖껗껚껛껝껞껟껠껡껢껣껤껥�\".split(\"\");\nfor(j = 0; j != D[131].length; ++j) if(D[131][j].charCodeAt(0) !== 0xFFFD) { e[D[131][j]] = 33536 + j; d[33536 + j] = D[131][j];}\nD[132] = \"�����������������������������������������������������������������껦껧껩껪껬껮껯껰껱껲껳껵껶껷껹껺껻껽껾껿꼀꼁꼂꼃꼄꼅������꼆꼉꼊꼋꼌꼎꼏꼑꼒꼓꼔꼕꼖꼗꼘꼙꼚꼛꼜꼝꼞꼟꼠꼡꼢꼣������꼤꼥꼦꼧꼨꼩꼪꼫꼮꼯꼱꼳꼵꼶꼷꼸꼹꼺꼻꼾꽀꽄꽅꽆꽇꽊꽋꽌꽍꽎꽏꽑꽒꽓꽔꽕꽖꽗꽘꽙꽚꽛꽞꽟꽠꽡꽢꽣꽦꽧꽨꽩꽪꽫꽬꽭꽮꽯꽰꽱꽲꽳꽴꽵꽶꽷꽸꽺꽻꽼꽽꽾꽿꾁꾂꾃꾅꾆꾇꾉꾊꾋꾌꾍꾎꾏꾒꾓꾔꾖꾗꾘꾙꾚꾛꾝꾞꾟꾠꾡꾢꾣꾤꾥꾦꾧꾨꾩꾪꾫꾬꾭꾮꾯꾰꾱꾲꾳꾴꾵꾶꾷꾺꾻꾽꾾�\".split(\"\");\nfor(j = 0; j != D[132].length; ++j) if(D[132][j].charCodeAt(0) !== 0xFFFD) { e[D[132][j]] = 33792 + j; d[33792 + j] = D[132][j];}\nD[133] = \"�����������������������������������������������������������������꾿꿁꿂꿃꿄꿅꿆꿊꿌꿏꿐꿑꿒꿓꿕꿖꿗꿘꿙꿚꿛꿝꿞꿟꿠꿡������꿢꿣꿤꿥꿦꿧꿪꿫꿬꿭꿮꿯꿲꿳꿵꿶꿷꿹꿺꿻꿼꿽꿾꿿뀂뀃������뀅뀆뀇뀈뀉뀊뀋뀍뀎뀏뀑뀒뀓뀕뀖뀗뀘뀙뀚뀛뀞뀟뀠뀡뀢뀣뀤뀥뀦뀧뀩뀪뀫뀬뀭뀮뀯뀰뀱뀲뀳뀴뀵뀶뀷뀸뀹뀺뀻뀼뀽뀾뀿끀끁끂끃끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞끟끠끡끢끣끤끥끦끧끨끩끪끫끬끭끮끯끰끱끲끳끴끵끶끷끸끹끺끻끾끿낁낂낃낅낆낇낈낉낊낋낎낐낒낓낔낕낖낗낛낝낞낣낤�\".split(\"\");\nfor(j = 0; j != D[133].length; ++j) if(D[133][j].charCodeAt(0) !== 0xFFFD) { e[D[133][j]] = 34048 + j; d[34048 + j] = D[133][j];}\nD[134] = \"�����������������������������������������������������������������낥낦낧낪낰낲낶낷낹낺낻낽낾낿냀냁냂냃냆냊냋냌냍냎냏냒������냓냕냖냗냙냚냛냜냝냞냟냡냢냣냤냦냧냨냩냪냫냬냭냮냯냰������냱냲냳냴냵냶냷냸냹냺냻냼냽냾냿넀넁넂넃넄넅넆넇넊넍넎넏넑넔넕넖넗넚넞넟넠넡넢넦넧넩넪넫넭넮넯넰넱넲넳넶넺넻넼넽넾넿녂녃녅녆녇녉녊녋녌녍녎녏녒녓녖녗녙녚녛녝녞녟녡녢녣녤녥녦녧녨녩녪녫녬녭녮녯녰녱녲녳녴녵녶녷녺녻녽녾녿놁놃놄놅놆놇놊놌놎놏놐놑놕놖놗놙놚놛놝�\".split(\"\");\nfor(j = 0; j != D[134].length; ++j) if(D[134][j].charCodeAt(0) !== 0xFFFD) { e[D[134][j]] = 34304 + j; d[34304 + j] = D[134][j];}\nD[135] = \"�����������������������������������������������������������������놞놟놠놡놢놣놤놥놦놧놩놪놫놬놭놮놯놰놱놲놳놴놵놶놷놸������놹놺놻놼놽놾놿뇀뇁뇂뇃뇄뇅뇆뇇뇈뇉뇊뇋뇍뇎뇏뇑뇒뇓뇕������뇖뇗뇘뇙뇚뇛뇞뇠뇡뇢뇣뇤뇥뇦뇧뇪뇫뇭뇮뇯뇱뇲뇳뇴뇵뇶뇷뇸뇺뇼뇾뇿눀눁눂눃눆눇눉눊눍눎눏눐눑눒눓눖눘눚눛눜눝눞눟눡눢눣눤눥눦눧눨눩눪눫눬눭눮눯눰눱눲눳눵눶눷눸눹눺눻눽눾눿뉀뉁뉂뉃뉄뉅뉆뉇뉈뉉뉊뉋뉌뉍뉎뉏뉐뉑뉒뉓뉔뉕뉖뉗뉙뉚뉛뉝뉞뉟뉡뉢뉣뉤뉥뉦뉧뉪뉫뉬뉭뉮�\".split(\"\");\nfor(j = 0; j != D[135].length; ++j) if(D[135][j].charCodeAt(0) !== 0xFFFD) { e[D[135][j]] = 34560 + j; d[34560 + j] = D[135][j];}\nD[136] = \"�����������������������������������������������������������������뉯뉰뉱뉲뉳뉶뉷뉸뉹뉺뉻뉽뉾뉿늀늁늂늃늆늇늈늊늋늌늍늎������늏늒늓늕늖늗늛늜늝늞늟늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷������늸늹늺늻늼늽늾늿닀닁닂닃닄닅닆닇닊닋닍닎닏닑닓닔닕닖닗닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉댊댋댌댍댎댏댒댖댗댘댙댚댛댝댞댟댠댡댢댣댤댥댦댧댨댩댪댫댬댭댮댯댰댱댲댳댴댵댶댷댸댹댺댻댼댽댾댿덀덁덂덃덄덅덆덇덈덉덊덋덌덍덎덏덐덑덒덓덗덙덚덝덠덡덢덣�\".split(\"\");\nfor(j = 0; j != D[136].length; ++j) if(D[136][j].charCodeAt(0) !== 0xFFFD) { e[D[136][j]] = 34816 + j; d[34816 + j] = D[136][j];}\nD[137] = \"�����������������������������������������������������������������덦덨덪덬덭덯덲덳덵덶덷덹덺덻덼덽덾덿뎂뎆뎇뎈뎉뎊뎋뎍������뎎뎏뎑뎒뎓뎕뎖뎗뎘뎙뎚뎛뎜뎝뎞뎟뎢뎣뎤뎥뎦뎧뎩뎪뎫뎭������뎮뎯뎰뎱뎲뎳뎴뎵뎶뎷뎸뎹뎺뎻뎼뎽뎾뎿돀돁돂돃돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩돪돫돬돭돮돯돰돱돲돳돴돵돶돷돸돹돺돻돽돾돿됀됁됂됃됄됅됆됇됈됉됊됋됌됍됎됏됑됒됓됔됕됖됗됙됚됛됝됞됟됡됢됣됤됥됦됧됪됬됭됮됯됰됱됲됳됵됶됷됸됹됺됻됼됽됾됿둀둁둂둃둄�\".split(\"\");\nfor(j = 0; j != D[137].length; ++j) if(D[137][j].charCodeAt(0) !== 0xFFFD) { e[D[137][j]] = 35072 + j; d[35072 + j] = D[137][j];}\nD[138] = \"�����������������������������������������������������������������둅둆둇둈둉둊둋둌둍둎둏둒둓둕둖둗둙둚둛둜둝둞둟둢둤둦������둧둨둩둪둫둭둮둯둰둱둲둳둴둵둶둷둸둹둺둻둼둽둾둿뒁뒂������뒃뒄뒅뒆뒇뒉뒊뒋뒌뒍뒎뒏뒐뒑뒒뒓뒔뒕뒖뒗뒘뒙뒚뒛뒜뒞뒟뒠뒡뒢뒣뒥뒦뒧뒩뒪뒫뒭뒮뒯뒰뒱뒲뒳뒴뒶뒸뒺뒻뒼뒽뒾뒿듁듂듃듅듆듇듉듊듋듌듍듎듏듑듒듓듔듖듗듘듙듚듛듞듟듡듢듥듧듨듩듪듫듮듰듲듳듴듵듶듷듹듺듻듼듽듾듿딀딁딂딃딄딅딆딇딈딉딊딋딌딍딎딏딐딑딒딓딖딗딙딚딝�\".split(\"\");\nfor(j = 0; j != D[138].length; ++j) if(D[138][j].charCodeAt(0) !== 0xFFFD) { e[D[138][j]] = 35328 + j; d[35328 + j] = D[138][j];}\nD[139] = \"�����������������������������������������������������������������딞딟딠딡딢딣딦딫딬딭딮딯딲딳딵딶딷딹딺딻딼딽딾딿땂땆������땇땈땉땊땎땏땑땒땓땕땖땗땘땙땚땛땞땢땣땤땥땦땧땨땩땪������땫땬땭땮땯땰땱땲땳땴땵땶땷땸땹땺땻땼땽땾땿떀떁떂떃떄떅떆떇떈떉떊떋떌떍떎떏떐떑떒떓떔떕떖떗떘떙떚떛떜떝떞떟떢떣떥떦떧떩떬떭떮떯떲떶떷떸떹떺떾떿뗁뗂뗃뗅뗆뗇뗈뗉뗊뗋뗎뗒뗓뗔뗕뗖뗗뗙뗚뗛뗜뗝뗞뗟뗠뗡뗢뗣뗤뗥뗦뗧뗨뗩뗪뗫뗭뗮뗯뗰뗱뗲뗳뗴뗵뗶뗷뗸뗹뗺뗻뗼뗽뗾뗿�\".split(\"\");\nfor(j = 0; j != D[139].length; ++j) if(D[139][j].charCodeAt(0) !== 0xFFFD) { e[D[139][j]] = 35584 + j; d[35584 + j] = D[139][j];}\nD[140] = \"�����������������������������������������������������������������똀똁똂똃똄똅똆똇똈똉똊똋똌똍똎똏똒똓똕똖똗똙똚똛똜똝������똞똟똠똡똢똣똤똦똧똨똩똪똫똭똮똯똰똱똲똳똵똶똷똸똹똺������똻똼똽똾똿뙀뙁뙂뙃뙄뙅뙆뙇뙉뙊뙋뙌뙍뙎뙏뙐뙑뙒뙓뙔뙕뙖뙗뙘뙙뙚뙛뙜뙝뙞뙟뙠뙡뙢뙣뙥뙦뙧뙩뙪뙫뙬뙭뙮뙯뙰뙱뙲뙳뙴뙵뙶뙷뙸뙹뙺뙻뙼뙽뙾뙿뚀뚁뚂뚃뚄뚅뚆뚇뚈뚉뚊뚋뚌뚍뚎뚏뚐뚑뚒뚓뚔뚕뚖뚗뚘뚙뚚뚛뚞뚟뚡뚢뚣뚥뚦뚧뚨뚩뚪뚭뚮뚯뚰뚲뚳뚴뚵뚶뚷뚸뚹뚺뚻뚼뚽뚾뚿뛀뛁뛂�\".split(\"\");\nfor(j = 0; j != D[140].length; ++j) if(D[140][j].charCodeAt(0) !== 0xFFFD) { e[D[140][j]] = 35840 + j; d[35840 + j] = D[140][j];}\nD[141] = \"�����������������������������������������������������������������뛃뛄뛅뛆뛇뛈뛉뛊뛋뛌뛍뛎뛏뛐뛑뛒뛓뛕뛖뛗뛘뛙뛚뛛뛜뛝������뛞뛟뛠뛡뛢뛣뛤뛥뛦뛧뛨뛩뛪뛫뛬뛭뛮뛯뛱뛲뛳뛵뛶뛷뛹뛺������뛻뛼뛽뛾뛿뜂뜃뜄뜆뜇뜈뜉뜊뜋뜌뜍뜎뜏뜐뜑뜒뜓뜔뜕뜖뜗뜘뜙뜚뜛뜜뜝뜞뜟뜠뜡뜢뜣뜤뜥뜦뜧뜪뜫뜭뜮뜱뜲뜳뜴뜵뜶뜷뜺뜼뜽뜾뜿띀띁띂띃띅띆띇띉띊띋띍띎띏띐띑띒띓띖띗띘띙띚띛띜띝띞띟띡띢띣띥띦띧띩띪띫띬띭띮띯띲띴띶띷띸띹띺띻띾띿랁랂랃랅랆랇랈랉랊랋랎랓랔랕랚랛랝랞�\".split(\"\");\nfor(j = 0; j != D[141].length; ++j) if(D[141][j].charCodeAt(0) !== 0xFFFD) { e[D[141][j]] = 36096 + j; d[36096 + j] = D[141][j];}\nD[142] = \"�����������������������������������������������������������������랟랡랢랣랤랥랦랧랪랮랯랰랱랲랳랶랷랹랺랻랼랽랾랿럀럁������럂럃럄럅럆럈럊럋럌럍럎럏럐럑럒럓럔럕럖럗럘럙럚럛럜럝������럞럟럠럡럢럣럤럥럦럧럨럩럪럫럮럯럱럲럳럵럶럷럸럹럺럻럾렂렃렄렅렆렊렋렍렎렏렑렒렓렔렕렖렗렚렜렞렟렠렡렢렣렦렧렩렪렫렭렮렯렰렱렲렳렶렺렻렼렽렾렿롁롂롃롅롆롇롈롉롊롋롌롍롎롏롐롒롔롕롖롗롘롙롚롛롞롟롡롢롣롥롦롧롨롩롪롫롮롰롲롳롴롵롶롷롹롺롻롽롾롿뢀뢁뢂뢃뢄�\".split(\"\");\nfor(j = 0; j != D[142].length; ++j) if(D[142][j].charCodeAt(0) !== 0xFFFD) { e[D[142][j]] = 36352 + j; d[36352 + j] = D[142][j];}\nD[143] = \"�����������������������������������������������������������������뢅뢆뢇뢈뢉뢊뢋뢌뢎뢏뢐뢑뢒뢓뢔뢕뢖뢗뢘뢙뢚뢛뢜뢝뢞뢟������뢠뢡뢢뢣뢤뢥뢦뢧뢩뢪뢫뢬뢭뢮뢯뢱뢲뢳뢵뢶뢷뢹뢺뢻뢼뢽������뢾뢿룂룄룆룇룈룉룊룋룍룎룏룑룒룓룕룖룗룘룙룚룛룜룞룠룢룣룤룥룦룧룪룫룭룮룯룱룲룳룴룵룶룷룺룼룾룿뤀뤁뤂뤃뤅뤆뤇뤈뤉뤊뤋뤌뤍뤎뤏뤐뤑뤒뤓뤔뤕뤖뤗뤙뤚뤛뤜뤝뤞뤟뤡뤢뤣뤤뤥뤦뤧뤨뤩뤪뤫뤬뤭뤮뤯뤰뤱뤲뤳뤴뤵뤶뤷뤸뤹뤺뤻뤾뤿륁륂륃륅륆륇륈륉륊륋륍륎륐륒륓륔륕륖륗�\".split(\"\");\nfor(j = 0; j != D[143].length; ++j) if(D[143][j].charCodeAt(0) !== 0xFFFD) { e[D[143][j]] = 36608 + j; d[36608 + j] = D[143][j];}\nD[144] = \"�����������������������������������������������������������������륚륛륝륞륟륡륢륣륤륥륦륧륪륬륮륯륰륱륲륳륶륷륹륺륻륽������륾륿릀릁릂릃릆릈릋릌릏릐릑릒릓릔릕릖릗릘릙릚릛릜릝릞������릟릠릡릢릣릤릥릦릧릨릩릪릫릮릯릱릲릳릵릶릷릸릹릺릻릾맀맂맃맄맅맆맇맊맋맍맓맔맕맖맗맚맜맟맠맢맦맧맩맪맫맭맮맯맰맱맲맳맶맻맼맽맾맿먂먃먄먅먆먇먉먊먋먌먍먎먏먐먑먒먓먔먖먗먘먙먚먛먜먝먞먟먠먡먢먣먤먥먦먧먨먩먪먫먬먭먮먯먰먱먲먳먴먵먶먷먺먻먽먾먿멁멃멄멅멆�\".split(\"\");\nfor(j = 0; j != D[144].length; ++j) if(D[144][j].charCodeAt(0) !== 0xFFFD) { e[D[144][j]] = 36864 + j; d[36864 + j] = D[144][j];}\nD[145] = \"�����������������������������������������������������������������멇멊멌멏멐멑멒멖멗멙멚멛멝멞멟멠멡멢멣멦멪멫멬멭멮멯������멲멳멵멶멷멹멺멻멼멽멾멿몀몁몂몆몈몉몊몋몍몎몏몐몑몒������몓몔몕몖몗몘몙몚몛몜몝몞몟몠몡몢몣몤몥몦몧몪몭몮몯몱몳몴몵몶몷몺몼몾몿뫀뫁뫂뫃뫅뫆뫇뫉뫊뫋뫌뫍뫎뫏뫐뫑뫒뫓뫔뫕뫖뫗뫚뫛뫜뫝뫞뫟뫠뫡뫢뫣뫤뫥뫦뫧뫨뫩뫪뫫뫬뫭뫮뫯뫰뫱뫲뫳뫴뫵뫶뫷뫸뫹뫺뫻뫽뫾뫿묁묂묃묅묆묇묈묉묊묋묌묎묐묒묓묔묕묖묗묙묚묛묝묞묟묡묢묣묤묥묦묧�\".split(\"\");\nfor(j = 0; j != D[145].length; ++j) if(D[145][j].charCodeAt(0) !== 0xFFFD) { e[D[145][j]] = 37120 + j; d[37120 + j] = D[145][j];}\nD[146] = \"�����������������������������������������������������������������묨묪묬묭묮묯묰묱묲묳묷묹묺묿뭀뭁뭂뭃뭆뭈뭊뭋뭌뭎뭑뭒������뭓뭕뭖뭗뭙뭚뭛뭜뭝뭞뭟뭠뭢뭤뭥뭦뭧뭨뭩뭪뭫뭭뭮뭯뭰뭱������뭲뭳뭴뭵뭶뭷뭸뭹뭺뭻뭼뭽뭾뭿뮀뮁뮂뮃뮄뮅뮆뮇뮉뮊뮋뮍뮎뮏뮑뮒뮓뮔뮕뮖뮗뮘뮙뮚뮛뮜뮝뮞뮟뮠뮡뮢뮣뮥뮦뮧뮩뮪뮫뮭뮮뮯뮰뮱뮲뮳뮵뮶뮸뮹뮺뮻뮼뮽뮾뮿믁믂믃믅믆믇믉믊믋믌믍믎믏믑믒믔믕믖믗믘믙믚믛믜믝믞믟믠믡믢믣믤믥믦믧믨믩믪믫믬믭믮믯믰믱믲믳믴믵믶믷믺믻믽믾밁�\".split(\"\");\nfor(j = 0; j != D[146].length; ++j) if(D[146][j].charCodeAt(0) !== 0xFFFD) { e[D[146][j]] = 37376 + j; d[37376 + j] = D[146][j];}\nD[147] = \"�����������������������������������������������������������������밃밄밅밆밇밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵������밶밷밹밺밻밼밽밾밿뱂뱆뱇뱈뱊뱋뱎뱏뱑뱒뱓뱔뱕뱖뱗뱘뱙������뱚뱛뱜뱞뱟뱠뱡뱢뱣뱤뱥뱦뱧뱨뱩뱪뱫뱬뱭뱮뱯뱰뱱뱲뱳뱴뱵뱶뱷뱸뱹뱺뱻뱼뱽뱾뱿벀벁벂벃벆벇벉벊벍벏벐벑벒벓벖벘벛벜벝벞벟벢벣벥벦벩벪벫벬벭벮벯벲벶벷벸벹벺벻벾벿볁볂볃볅볆볇볈볉볊볋볌볎볒볓볔볖볗볙볚볛볝볞볟볠볡볢볣볤볥볦볧볨볩볪볫볬볭볮볯볰볱볲볳볷볹볺볻볽�\".split(\"\");\nfor(j = 0; j != D[147].length; ++j) if(D[147][j].charCodeAt(0) !== 0xFFFD) { e[D[147][j]] = 37632 + j; d[37632 + j] = D[147][j];}\nD[148] = \"�����������������������������������������������������������������볾볿봀봁봂봃봆봈봊봋봌봍봎봏봑봒봓봕봖봗봘봙봚봛봜봝������봞봟봠봡봢봣봥봦봧봨봩봪봫봭봮봯봰봱봲봳봴봵봶봷봸봹������봺봻봼봽봾봿뵁뵂뵃뵄뵅뵆뵇뵊뵋뵍뵎뵏뵑뵒뵓뵔뵕뵖뵗뵚뵛뵜뵝뵞뵟뵠뵡뵢뵣뵥뵦뵧뵩뵪뵫뵬뵭뵮뵯뵰뵱뵲뵳뵴뵵뵶뵷뵸뵹뵺뵻뵼뵽뵾뵿붂붃붅붆붋붌붍붎붏붒붔붖붗붘붛붝붞붟붠붡붢붣붥붦붧붨붩붪붫붬붭붮붯붱붲붳붴붵붶붷붹붺붻붼붽붾붿뷀뷁뷂뷃뷄뷅뷆뷇뷈뷉뷊뷋뷌뷍뷎뷏뷐뷑�\".split(\"\");\nfor(j = 0; j != D[148].length; ++j) if(D[148][j].charCodeAt(0) !== 0xFFFD) { e[D[148][j]] = 37888 + j; d[37888 + j] = D[148][j];}\nD[149] = \"�����������������������������������������������������������������뷒뷓뷖뷗뷙뷚뷛뷝뷞뷟뷠뷡뷢뷣뷤뷥뷦뷧뷨뷪뷫뷬뷭뷮뷯뷱������뷲뷳뷵뷶뷷뷹뷺뷻뷼뷽뷾뷿븁븂븄븆븇븈븉븊븋븎븏븑븒븓������븕븖븗븘븙븚븛븞븠븡븢븣븤븥븦븧븨븩븪븫븬븭븮븯븰븱븲븳븴븵븶븷븸븹븺븻븼븽븾븿빀빁빂빃빆빇빉빊빋빍빏빐빑빒빓빖빘빜빝빞빟빢빣빥빦빧빩빫빬빭빮빯빲빶빷빸빹빺빾빿뺁뺂뺃뺅뺆뺇뺈뺉뺊뺋뺎뺒뺓뺔뺕뺖뺗뺚뺛뺜뺝뺞뺟뺠뺡뺢뺣뺤뺥뺦뺧뺩뺪뺫뺬뺭뺮뺯뺰뺱뺲뺳뺴뺵뺶뺷�\".split(\"\");\nfor(j = 0; j != D[149].length; ++j) if(D[149][j].charCodeAt(0) !== 0xFFFD) { e[D[149][j]] = 38144 + j; d[38144 + j] = D[149][j];}\nD[150] = \"�����������������������������������������������������������������뺸뺹뺺뺻뺼뺽뺾뺿뻀뻁뻂뻃뻄뻅뻆뻇뻈뻉뻊뻋뻌뻍뻎뻏뻒뻓������뻕뻖뻙뻚뻛뻜뻝뻞뻟뻡뻢뻦뻧뻨뻩뻪뻫뻭뻮뻯뻰뻱뻲뻳뻴뻵������뻶뻷뻸뻹뻺뻻뻼뻽뻾뻿뼀뼂뼃뼄뼅뼆뼇뼊뼋뼌뼍뼎뼏뼐뼑뼒뼓뼔뼕뼖뼗뼚뼞뼟뼠뼡뼢뼣뼤뼥뼦뼧뼨뼩뼪뼫뼬뼭뼮뼯뼰뼱뼲뼳뼴뼵뼶뼷뼸뼹뼺뼻뼼뼽뼾뼿뽂뽃뽅뽆뽇뽉뽊뽋뽌뽍뽎뽏뽒뽓뽔뽖뽗뽘뽙뽚뽛뽜뽝뽞뽟뽠뽡뽢뽣뽤뽥뽦뽧뽨뽩뽪뽫뽬뽭뽮뽯뽰뽱뽲뽳뽴뽵뽶뽷뽸뽹뽺뽻뽼뽽뽾뽿뾀뾁뾂�\".split(\"\");\nfor(j = 0; j != D[150].length; ++j) if(D[150][j].charCodeAt(0) !== 0xFFFD) { e[D[150][j]] = 38400 + j; d[38400 + j] = D[150][j];}\nD[151] = \"�����������������������������������������������������������������뾃뾄뾅뾆뾇뾈뾉뾊뾋뾌뾍뾎뾏뾐뾑뾒뾓뾕뾖뾗뾘뾙뾚뾛뾜뾝������뾞뾟뾠뾡뾢뾣뾤뾥뾦뾧뾨뾩뾪뾫뾬뾭뾮뾯뾱뾲뾳뾴뾵뾶뾷뾸������뾹뾺뾻뾼뾽뾾뾿뿀뿁뿂뿃뿄뿆뿇뿈뿉뿊뿋뿎뿏뿑뿒뿓뿕뿖뿗뿘뿙뿚뿛뿝뿞뿠뿢뿣뿤뿥뿦뿧뿨뿩뿪뿫뿬뿭뿮뿯뿰뿱뿲뿳뿴뿵뿶뿷뿸뿹뿺뿻뿼뿽뿾뿿쀀쀁쀂쀃쀄쀅쀆쀇쀈쀉쀊쀋쀌쀍쀎쀏쀐쀑쀒쀓쀔쀕쀖쀗쀘쀙쀚쀛쀜쀝쀞쀟쀠쀡쀢쀣쀤쀥쀦쀧쀨쀩쀪쀫쀬쀭쀮쀯쀰쀱쀲쀳쀴쀵쀶쀷쀸쀹쀺쀻쀽쀾쀿�\".split(\"\");\nfor(j = 0; j != D[151].length; ++j) if(D[151][j].charCodeAt(0) !== 0xFFFD) { e[D[151][j]] = 38656 + j; d[38656 + j] = D[151][j];}\nD[152] = \"�����������������������������������������������������������������쁀쁁쁂쁃쁄쁅쁆쁇쁈쁉쁊쁋쁌쁍쁎쁏쁐쁒쁓쁔쁕쁖쁗쁙쁚쁛������쁝쁞쁟쁡쁢쁣쁤쁥쁦쁧쁪쁫쁬쁭쁮쁯쁰쁱쁲쁳쁴쁵쁶쁷쁸쁹������쁺쁻쁼쁽쁾쁿삀삁삂삃삄삅삆삇삈삉삊삋삌삍삎삏삒삓삕삖삗삙삚삛삜삝삞삟삢삤삦삧삨삩삪삫삮삱삲삷삸삹삺삻삾샂샃샄샆샇샊샋샍샎샏샑샒샓샔샕샖샗샚샞샟샠샡샢샣샦샧샩샪샫샭샮샯샰샱샲샳샶샸샺샻샼샽샾샿섁섂섃섅섆섇섉섊섋섌섍섎섏섑섒섓섔섖섗섘섙섚섛섡섢섥섨섩섪섫섮�\".split(\"\");\nfor(j = 0; j != D[152].length; ++j) if(D[152][j].charCodeAt(0) !== 0xFFFD) { e[D[152][j]] = 38912 + j; d[38912 + j] = D[152][j];}\nD[153] = \"�����������������������������������������������������������������섲섳섴섵섷섺섻섽섾섿셁셂셃셄셅셆셇셊셎셏셐셑셒셓셖셗������셙셚셛셝셞셟셠셡셢셣셦셪셫셬셭셮셯셱셲셳셵셶셷셹셺셻������셼셽셾셿솀솁솂솃솄솆솇솈솉솊솋솏솑솒솓솕솗솘솙솚솛솞솠솢솣솤솦솧솪솫솭솮솯솱솲솳솴솵솶솷솸솹솺솻솼솾솿쇀쇁쇂쇃쇅쇆쇇쇉쇊쇋쇍쇎쇏쇐쇑쇒쇓쇕쇖쇙쇚쇛쇜쇝쇞쇟쇡쇢쇣쇥쇦쇧쇩쇪쇫쇬쇭쇮쇯쇲쇴쇵쇶쇷쇸쇹쇺쇻쇾쇿숁숂숃숅숆숇숈숉숊숋숎숐숒숓숔숕숖숗숚숛숝숞숡숢숣�\".split(\"\");\nfor(j = 0; j != D[153].length; ++j) if(D[153][j].charCodeAt(0) !== 0xFFFD) { e[D[153][j]] = 39168 + j; d[39168 + j] = D[153][j];}\nD[154] = \"�����������������������������������������������������������������숤숥숦숧숪숬숮숰숳숵숶숷숸숹숺숻숼숽숾숿쉀쉁쉂쉃쉄쉅������쉆쉇쉉쉊쉋쉌쉍쉎쉏쉒쉓쉕쉖쉗쉙쉚쉛쉜쉝쉞쉟쉡쉢쉣쉤쉦������쉧쉨쉩쉪쉫쉮쉯쉱쉲쉳쉵쉶쉷쉸쉹쉺쉻쉾슀슂슃슄슅슆슇슊슋슌슍슎슏슑슒슓슔슕슖슗슙슚슜슞슟슠슡슢슣슦슧슩슪슫슮슯슰슱슲슳슶슸슺슻슼슽슾슿싀싁싂싃싄싅싆싇싈싉싊싋싌싍싎싏싐싑싒싓싔싕싖싗싘싙싚싛싞싟싡싢싥싦싧싨싩싪싮싰싲싳싴싵싷싺싽싾싿쌁쌂쌃쌄쌅쌆쌇쌊쌋쌎쌏�\".split(\"\");\nfor(j = 0; j != D[154].length; ++j) if(D[154][j].charCodeAt(0) !== 0xFFFD) { e[D[154][j]] = 39424 + j; d[39424 + j] = D[154][j];}\nD[155] = \"�����������������������������������������������������������������쌐쌑쌒쌖쌗쌙쌚쌛쌝쌞쌟쌠쌡쌢쌣쌦쌧쌪쌫쌬쌭쌮쌯쌰쌱쌲������쌳쌴쌵쌶쌷쌸쌹쌺쌻쌼쌽쌾쌿썀썁썂썃썄썆썇썈썉썊썋썌썍������썎썏썐썑썒썓썔썕썖썗썘썙썚썛썜썝썞썟썠썡썢썣썤썥썦썧썪썫썭썮썯썱썳썴썵썶썷썺썻썾썿쎀쎁쎂쎃쎅쎆쎇쎉쎊쎋쎍쎎쎏쎐쎑쎒쎓쎔쎕쎖쎗쎘쎙쎚쎛쎜쎝쎞쎟쎠쎡쎢쎣쎤쎥쎦쎧쎨쎩쎪쎫쎬쎭쎮쎯쎰쎱쎲쎳쎴쎵쎶쎷쎸쎹쎺쎻쎼쎽쎾쎿쏁쏂쏃쏄쏅쏆쏇쏈쏉쏊쏋쏌쏍쏎쏏쏐쏑쏒쏓쏔쏕쏖쏗쏚�\".split(\"\");\nfor(j = 0; j != D[155].length; ++j) if(D[155][j].charCodeAt(0) !== 0xFFFD) { e[D[155][j]] = 39680 + j; d[39680 + j] = D[155][j];}\nD[156] = \"�����������������������������������������������������������������쏛쏝쏞쏡쏣쏤쏥쏦쏧쏪쏫쏬쏮쏯쏰쏱쏲쏳쏶쏷쏹쏺쏻쏼쏽쏾������쏿쐀쐁쐂쐃쐄쐅쐆쐇쐉쐊쐋쐌쐍쐎쐏쐑쐒쐓쐔쐕쐖쐗쐘쐙쐚������쐛쐜쐝쐞쐟쐠쐡쐢쐣쐥쐦쐧쐨쐩쐪쐫쐭쐮쐯쐱쐲쐳쐵쐶쐷쐸쐹쐺쐻쐾쐿쑀쑁쑂쑃쑄쑅쑆쑇쑉쑊쑋쑌쑍쑎쑏쑐쑑쑒쑓쑔쑕쑖쑗쑘쑙쑚쑛쑜쑝쑞쑟쑠쑡쑢쑣쑦쑧쑩쑪쑫쑭쑮쑯쑰쑱쑲쑳쑶쑷쑸쑺쑻쑼쑽쑾쑿쒁쒂쒃쒄쒅쒆쒇쒈쒉쒊쒋쒌쒍쒎쒏쒐쒑쒒쒓쒕쒖쒗쒘쒙쒚쒛쒝쒞쒟쒠쒡쒢쒣쒤쒥쒦쒧쒨쒩�\".split(\"\");\nfor(j = 0; j != D[156].length; ++j) if(D[156][j].charCodeAt(0) !== 0xFFFD) { e[D[156][j]] = 39936 + j; d[39936 + j] = D[156][j];}\nD[157] = \"�����������������������������������������������������������������쒪쒫쒬쒭쒮쒯쒰쒱쒲쒳쒴쒵쒶쒷쒹쒺쒻쒽쒾쒿쓀쓁쓂쓃쓄쓅������쓆쓇쓈쓉쓊쓋쓌쓍쓎쓏쓐쓑쓒쓓쓔쓕쓖쓗쓘쓙쓚쓛쓜쓝쓞쓟������쓠쓡쓢쓣쓤쓥쓦쓧쓨쓪쓫쓬쓭쓮쓯쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂씃씄씅씆씇씈씉씊씋씍씎씏씑씒씓씕씖씗씘씙씚씛씝씞씟씠씡씢씣씤씥씦씧씪씫씭씮씯씱씲씳씴씵씶씷씺씼씾씿앀앁앂앃앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩앪앫앬앭앮앯앲앶앷앸앹앺앻앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔�\".split(\"\");\nfor(j = 0; j != D[157].length; ++j) if(D[157][j].charCodeAt(0) !== 0xFFFD) { e[D[157][j]] = 40192 + j; d[40192 + j] = D[157][j];}\nD[158] = \"�����������������������������������������������������������������얖얙얚얛얝얞얟얡얢얣얤얥얦얧얨얪얫얬얭얮얯얰얱얲얳얶������얷얺얿엀엁엂엃엋엍엏엒엓엕엖엗엙엚엛엜엝엞엟엢엤엦엧������엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑옒옓옔옕옖옗옚옝옞옟옠옡옢옣옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉왊왋왌왍왎왏왒왖왗왘왙왚왛왞왟왡왢왣왤왥왦왧왨왩왪왫왭왮왰왲왳왴왵왶왷왺왻왽왾왿욁욂욃욄욅욆욇욊욌욎욏욐욑욒욓욖욗욙욚욛욝욞욟욠욡욢욣욦�\".split(\"\");\nfor(j = 0; j != D[158].length; ++j) if(D[158][j].charCodeAt(0) !== 0xFFFD) { e[D[158][j]] = 40448 + j; d[40448 + j] = D[158][j];}\nD[159] = \"�����������������������������������������������������������������욨욪욫욬욭욮욯욲욳욵욶욷욻욼욽욾욿웂웄웆웇웈웉웊웋웎������웏웑웒웓웕웖웗웘웙웚웛웞웟웢웣웤웥웦웧웪웫웭웮웯웱웲������웳웴웵웶웷웺웻웼웾웿윀윁윂윃윆윇윉윊윋윍윎윏윐윑윒윓윖윘윚윛윜윝윞윟윢윣윥윦윧윩윪윫윬윭윮윯윲윴윶윸윹윺윻윾윿읁읂읃읅읆읇읈읉읋읎읐읙읚읛읝읞읟읡읢읣읤읥읦읧읩읪읬읭읮읯읰읱읲읳읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛잜잝잞잟잢잧잨잩잪잫잮잯잱잲잳잵잶잷�\".split(\"\");\nfor(j = 0; j != D[159].length; ++j) if(D[159][j].charCodeAt(0) !== 0xFFFD) { e[D[159][j]] = 40704 + j; d[40704 + j] = D[159][j];}\nD[160] = \"�����������������������������������������������������������������잸잹잺잻잾쟂쟃쟄쟅쟆쟇쟊쟋쟍쟏쟑쟒쟓쟔쟕쟖쟗쟙쟚쟛쟜������쟞쟟쟠쟡쟢쟣쟥쟦쟧쟩쟪쟫쟭쟮쟯쟰쟱쟲쟳쟴쟵쟶쟷쟸쟹쟺������쟻쟼쟽쟾쟿젂젃젅젆젇젉젋젌젍젎젏젒젔젗젘젙젚젛젞젟젡젢젣젥젦젧젨젩젪젫젮젰젲젳젴젵젶젷젹젺젻젽젾젿졁졂졃졄졅졆졇졊졋졎졏졐졑졒졓졕졖졗졘졙졚졛졜졝졞졟졠졡졢졣졤졥졦졧졨졩졪졫졬졭졮졯졲졳졵졶졷졹졻졼졽졾졿좂좄좈좉좊좎좏좐좑좒좓좕좖좗좘좙좚좛좜좞좠좢좣좤�\".split(\"\");\nfor(j = 0; j != D[160].length; ++j) if(D[160][j].charCodeAt(0) !== 0xFFFD) { e[D[160][j]] = 40960 + j; d[40960 + j] = D[160][j];}\nD[161] = \"�����������������������������������������������������������������좥좦좧좩좪좫좬좭좮좯좰좱좲좳좴좵좶좷좸좹좺좻좾좿죀죁������죂죃죅죆죇죉죊죋죍죎죏죐죑죒죓죖죘죚죛죜죝죞죟죢죣죥������죦죧죨죩죪죫죬죭죮죯죰죱죲죳죴죶죷죸죹죺죻죾죿줁줂줃줇줈줉줊줋줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈〉《》「」『』【】±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬�\".split(\"\");\nfor(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}\nD[162] = \"�����������������������������������������������������������������줐줒줓줔줕줖줗줙줚줛줜줝줞줟줠줡줢줣줤줥줦줧줨줩줪줫������줭줮줯줰줱줲줳줵줶줷줸줹줺줻줼줽줾줿쥀쥁쥂쥃쥄쥅쥆쥇������쥈쥉쥊쥋쥌쥍쥎쥏쥒쥓쥕쥖쥗쥙쥚쥛쥜쥝쥞쥟쥢쥤쥥쥦쥧쥨쥩쥪쥫쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®������������������������\".split(\"\");\nfor(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}\nD[163] = \"�����������������������������������������������������������������쥱쥲쥳쥵쥶쥷쥸쥹쥺쥻쥽쥾쥿즀즁즂즃즄즅즆즇즊즋즍즎즏������즑즒즓즔즕즖즗즚즜즞즟즠즡즢즣즤즥즦즧즨즩즪즫즬즭즮������즯즰즱즲즳즴즵즶즷즸즹즺즻즼즽즾즿짂짃짅짆짉짋짌짍짎짏짒짔짗짘짛!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[₩]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�\".split(\"\");\nfor(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}\nD[164] = \"�����������������������������������������������������������������짞짟짡짣짥짦짨짩짪짫짮짲짳짴짵짶짷짺짻짽짾짿쨁쨂쨃쨄������쨅쨆쨇쨊쨎쨏쨐쨑쨒쨓쨕쨖쨗쨙쨚쨛쨜쨝쨞쨟쨠쨡쨢쨣쨤쨥������쨦쨧쨨쨪쨫쨬쨭쨮쨯쨰쨱쨲쨳쨴쨵쨶쨷쨸쨹쨺쨻쨼쨽쨾쨿쩀쩁쩂쩃쩄쩅쩆ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ�\".split(\"\");\nfor(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}\nD[165] = \"�����������������������������������������������������������������쩇쩈쩉쩊쩋쩎쩏쩑쩒쩓쩕쩖쩗쩘쩙쩚쩛쩞쩢쩣쩤쩥쩦쩧쩩쩪������쩫쩬쩭쩮쩯쩰쩱쩲쩳쩴쩵쩶쩷쩸쩹쩺쩻쩼쩾쩿쪀쪁쪂쪃쪅쪆������쪇쪈쪉쪊쪋쪌쪍쪎쪏쪐쪑쪒쪓쪔쪕쪖쪗쪙쪚쪛쪜쪝쪞쪟쪠쪡쪢쪣쪤쪥쪦쪧ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ�����ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������\".split(\"\");\nfor(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}\nD[166] = \"�����������������������������������������������������������������쪨쪩쪪쪫쪬쪭쪮쪯쪰쪱쪲쪳쪴쪵쪶쪷쪸쪹쪺쪻쪾쪿쫁쫂쫃쫅������쫆쫇쫈쫉쫊쫋쫎쫐쫒쫔쫕쫖쫗쫚쫛쫜쫝쫞쫟쫡쫢쫣쫤쫥쫦쫧������쫨쫩쫪쫫쫭쫮쫯쫰쫱쫲쫳쫵쫶쫷쫸쫹쫺쫻쫼쫽쫾쫿쬀쬁쬂쬃쬄쬅쬆쬇쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊���������������������������\".split(\"\");\nfor(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}\nD[167] = \"�����������������������������������������������������������������쬋쬌쬍쬎쬏쬑쬒쬓쬕쬖쬗쬙쬚쬛쬜쬝쬞쬟쬢쬣쬤쬥쬦쬧쬨쬩������쬪쬫쬬쬭쬮쬯쬰쬱쬲쬳쬴쬵쬶쬷쬸쬹쬺쬻쬼쬽쬾쬿쭀쭂쭃쭄������쭅쭆쭇쭊쭋쭍쭎쭏쭑쭒쭓쭔쭕쭖쭗쭚쭛쭜쭞쭟쭠쭡쭢쭣쭥쭦쭧쭨쭩쭪쭫쭬㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎀㎁㎂㎃㎄㎺㎻㎼㎽㎾㎿㎐㎑㎒㎓㎔Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆����������������\".split(\"\");\nfor(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}\nD[168] = \"�����������������������������������������������������������������쭭쭮쭯쭰쭱쭲쭳쭴쭵쭶쭷쭺쭻쭼쭽쭾쭿쮀쮁쮂쮃쮄쮅쮆쮇쮈������쮉쮊쮋쮌쮍쮎쮏쮐쮑쮒쮓쮔쮕쮖쮗쮘쮙쮚쮛쮝쮞쮟쮠쮡쮢쮣������쮤쮥쮦쮧쮨쮩쮪쮫쮬쮭쮮쮯쮰쮱쮲쮳쮴쮵쮶쮷쮹쮺쮻쮼쮽쮾쮿쯀쯁쯂쯃쯄ÆÐªĦ�IJ�ĿŁØŒºÞŦŊ�㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻ⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮½⅓⅔¼¾⅛⅜⅝⅞�\".split(\"\");\nfor(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}\nD[169] = \"�����������������������������������������������������������������쯅쯆쯇쯈쯉쯊쯋쯌쯍쯎쯏쯐쯑쯒쯓쯕쯖쯗쯘쯙쯚쯛쯜쯝쯞쯟������쯠쯡쯢쯣쯥쯦쯨쯪쯫쯬쯭쯮쯯쯰쯱쯲쯳쯴쯵쯶쯷쯸쯹쯺쯻쯼������쯽쯾쯿찀찁찂찃찄찅찆찇찈찉찊찋찎찏찑찒찓찕찖찗찘찙찚찛찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂¹²³⁴ⁿ₁₂₃₄�\".split(\"\");\nfor(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}\nD[170] = \"�����������������������������������������������������������������찥찦찪찫찭찯찱찲찳찴찵찶찷찺찿챀챁챂챃챆챇챉챊챋챍챎������챏챐챑챒챓챖챚챛챜챝챞챟챡챢챣챥챧챩챪챫챬챭챮챯챱챲������챳챴챶챷챸챹챺챻챼챽챾챿첀첁첂첃첄첅첆첇첈첉첊첋첌첍첎첏첐첑첒첓ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������\".split(\"\");\nfor(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}\nD[171] = \"�����������������������������������������������������������������첔첕첖첗첚첛첝첞첟첡첢첣첤첥첦첧첪첮첯첰첱첲첳첶첷첹������첺첻첽첾첿쳀쳁쳂쳃쳆쳈쳊쳋쳌쳍쳎쳏쳑쳒쳓쳕쳖쳗쳘쳙쳚������쳛쳜쳝쳞쳟쳠쳡쳢쳣쳥쳦쳧쳨쳩쳪쳫쳭쳮쳯쳱쳲쳳쳴쳵쳶쳷쳸쳹쳺쳻쳼쳽ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������\".split(\"\");\nfor(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}\nD[172] = \"�����������������������������������������������������������������쳾쳿촀촂촃촄촅촆촇촊촋촍촎촏촑촒촓촔촕촖촗촚촜촞촟촠������촡촢촣촥촦촧촩촪촫촭촮촯촰촱촲촳촴촵촶촷촸촺촻촼촽촾������촿쵀쵁쵂쵃쵄쵅쵆쵇쵈쵉쵊쵋쵌쵍쵎쵏쵐쵑쵒쵓쵔쵕쵖쵗쵘쵙쵚쵛쵝쵞쵟АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������\".split(\"\");\nfor(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}\nD[173] = \"�����������������������������������������������������������������쵡쵢쵣쵥쵦쵧쵨쵩쵪쵫쵮쵰쵲쵳쵴쵵쵶쵷쵹쵺쵻쵼쵽쵾쵿춀������춁춂춃춄춅춆춇춉춊춋춌춍춎춏춐춑춒춓춖춗춙춚춛춝춞춟������춠춡춢춣춦춨춪춫춬춭춮춯춱춲춳춴춵춶춷춸춹춺춻춼춽춾춿췀췁췂췃췅�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}\nD[174] = \"�����������������������������������������������������������������췆췇췈췉췊췋췍췎췏췑췒췓췔췕췖췗췘췙췚췛췜췝췞췟췠췡������췢췣췤췥췦췧췩췪췫췭췮췯췱췲췳췴췵췶췷췺췼췾췿츀츁츂������츃츅츆츇츉츊츋츍츎츏츐츑츒츓츕츖츗츘츚츛츜츝츞츟츢츣츥츦츧츩츪츫�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}\nD[175] = \"�����������������������������������������������������������������츬츭츮츯츲츴츶츷츸츹츺츻츼츽츾츿칀칁칂칃칄칅칆칇칈칉������칊칋칌칍칎칏칐칑칒칓칔칕칖칗칚칛칝칞칢칣칤칥칦칧칪칬������칮칯칰칱칲칳칶칷칹칺칻칽칾칿캀캁캂캃캆캈캊캋캌캍캎캏캒캓캕캖캗캙�����������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}\nD[176] = \"�����������������������������������������������������������������캚캛캜캝캞캟캢캦캧캨캩캪캫캮캯캰캱캲캳캴캵캶캷캸캹캺������캻캼캽캾캿컀컂컃컄컅컆컇컈컉컊컋컌컍컎컏컐컑컒컓컔컕������컖컗컘컙컚컛컜컝컞컟컠컡컢컣컦컧컩컪컭컮컯컰컱컲컳컶컺컻컼컽컾컿가각간갇갈갉갊감갑값갓갔강갖갗같갚갛개객갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆�\".split(\"\");\nfor(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}\nD[177] = \"�����������������������������������������������������������������켂켃켅켆켇켉켊켋켌켍켎켏켒켔켖켗켘켙켚켛켝켞켟켡켢켣������켥켦켧켨켩켪켫켮켲켳켴켵켶켷켹켺켻켼켽켾켿콀콁콂콃콄������콅콆콇콈콉콊콋콌콍콎콏콐콑콒콓콖콗콙콚콛콝콞콟콠콡콢콣콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸�\".split(\"\");\nfor(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}\nD[178] = \"�����������������������������������������������������������������콭콮콯콲콳콵콶콷콹콺콻콼콽콾콿쾁쾂쾃쾄쾆쾇쾈쾉쾊쾋쾍������쾎쾏쾐쾑쾒쾓쾔쾕쾖쾗쾘쾙쾚쾛쾜쾝쾞쾟쾠쾢쾣쾤쾥쾦쾧쾩������쾪쾫쾬쾭쾮쾯쾱쾲쾳쾴쾵쾶쾷쾸쾹쾺쾻쾼쾽쾾쾿쿀쿁쿂쿃쿅쿆쿇쿈쿉쿊쿋깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙�\".split(\"\");\nfor(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}\nD[179] = \"�����������������������������������������������������������������쿌쿍쿎쿏쿐쿑쿒쿓쿔쿕쿖쿗쿘쿙쿚쿛쿜쿝쿞쿟쿢쿣쿥쿦쿧쿩������쿪쿫쿬쿭쿮쿯쿲쿴쿶쿷쿸쿹쿺쿻쿽쿾쿿퀁퀂퀃퀅퀆퀇퀈퀉퀊������퀋퀌퀍퀎퀏퀐퀒퀓퀔퀕퀖퀗퀙퀚퀛퀜퀝퀞퀟퀠퀡퀢퀣퀤퀥퀦퀧퀨퀩퀪퀫퀬끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫났낭낮낯낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝�\".split(\"\");\nfor(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}\nD[180] = \"�����������������������������������������������������������������퀮퀯퀰퀱퀲퀳퀶퀷퀹퀺퀻퀽퀾퀿큀큁큂큃큆큈큊큋큌큍큎큏������큑큒큓큕큖큗큙큚큛큜큝큞큟큡큢큣큤큥큦큧큨큩큪큫큮큯������큱큲큳큵큶큷큸큹큺큻큾큿킀킂킃킄킅킆킇킈킉킊킋킌킍킎킏킐킑킒킓킔뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫달닭닮닯닳담답닷닸당닺닻닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥�\".split(\"\");\nfor(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}\nD[181] = \"�����������������������������������������������������������������킕킖킗킘킙킚킛킜킝킞킟킠킡킢킣킦킧킩킪킫킭킮킯킰킱킲������킳킶킸킺킻킼킽킾킿탂탃탅탆탇탊탋탌탍탎탏탒탖탗탘탙탚������탛탞탟탡탢탣탥탦탧탨탩탪탫탮탲탳탴탵탶탷탹탺탻탼탽탾탿턀턁턂턃턄덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸�\".split(\"\");\nfor(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}\nD[182] = \"�����������������������������������������������������������������턅턆턇턈턉턊턋턌턎턏턐턑턒턓턔턕턖턗턘턙턚턛턜턝턞턟������턠턡턢턣턤턥턦턧턨턩턪턫턬턭턮턯턲턳턵턶턷턹턻턼턽턾������턿텂텆텇텈텉텊텋텎텏텑텒텓텕텖텗텘텙텚텛텞텠텢텣텤텥텦텧텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗�\".split(\"\");\nfor(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}\nD[183] = \"�����������������������������������������������������������������텮텯텰텱텲텳텴텵텶텷텸텹텺텻텽텾텿톀톁톂톃톅톆톇톉톊������톋톌톍톎톏톐톑톒톓톔톕톖톗톘톙톚톛톜톝톞톟톢톣톥톦톧������톩톪톫톬톭톮톯톲톴톶톷톸톹톻톽톾톿퇁퇂퇃퇄퇅퇆퇇퇈퇉퇊퇋퇌퇍퇎퇏래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩�\".split(\"\");\nfor(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}\nD[184] = \"�����������������������������������������������������������������퇐퇑퇒퇓퇔퇕퇖퇗퇙퇚퇛퇜퇝퇞퇟퇠퇡퇢퇣퇤퇥퇦퇧퇨퇩퇪������퇫퇬퇭퇮퇯퇰퇱퇲퇳퇵퇶퇷퇹퇺퇻퇼퇽퇾퇿툀툁툂툃툄툅툆������툈툊툋툌툍툎툏툑툒툓툔툕툖툗툘툙툚툛툜툝툞툟툠툡툢툣툤툥툦툧툨툩륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많맏말맑맒맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼�\".split(\"\");\nfor(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}\nD[185] = \"�����������������������������������������������������������������툪툫툮툯툱툲툳툵툶툷툸툹툺툻툾퉀퉂퉃퉄퉅퉆퉇퉉퉊퉋퉌������퉍퉎퉏퉐퉑퉒퉓퉔퉕퉖퉗퉘퉙퉚퉛퉝퉞퉟퉠퉡퉢퉣퉥퉦퉧퉨������퉩퉪퉫퉬퉭퉮퉯퉰퉱퉲퉳퉴퉵퉶퉷퉸퉹퉺퉻퉼퉽퉾퉿튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바박밖밗반받발밝밞밟밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗�\".split(\"\");\nfor(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}\nD[186] = \"�����������������������������������������������������������������튍튎튏튒튓튔튖튗튘튙튚튛튝튞튟튡튢튣튥튦튧튨튩튪튫튭������튮튯튰튲튳튴튵튶튷튺튻튽튾틁틃틄틅틆틇틊틌틍틎틏틐틑������틒틓틕틖틗틙틚틛틝틞틟틠틡틢틣틦틧틨틩틪틫틬틭틮틯틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤�\".split(\"\");\nfor(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}\nD[187] = \"�����������������������������������������������������������������틻틼틽틾틿팂팄팆팇팈팉팊팋팏팑팒팓팕팗팘팙팚팛팞팢팣������팤팦팧팪팫팭팮팯팱팲팳팴팵팶팷팺팾팿퍀퍁퍂퍃퍆퍇퍈퍉������퍊퍋퍌퍍퍎퍏퍐퍑퍒퍓퍔퍕퍖퍗퍘퍙퍚퍛퍜퍝퍞퍟퍠퍡퍢퍣퍤퍥퍦퍧퍨퍩빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤�\".split(\"\");\nfor(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}\nD[188] = \"�����������������������������������������������������������������퍪퍫퍬퍭퍮퍯퍰퍱퍲퍳퍴퍵퍶퍷퍸퍹퍺퍻퍾퍿펁펂펃펅펆펇������펈펉펊펋펎펒펓펔펕펖펗펚펛펝펞펟펡펢펣펤펥펦펧펪펬펮������펯펰펱펲펳펵펶펷펹펺펻펽펾펿폀폁폂폃폆폇폊폋폌폍폎폏폑폒폓폔폕폖샥샨샬샴샵샷샹섀섄섈섐섕서석섞섟선섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭�\".split(\"\");\nfor(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}\nD[189] = \"�����������������������������������������������������������������폗폙폚폛폜폝폞폟폠폢폤폥폦폧폨폩폪폫폮폯폱폲폳폵폶폷������폸폹폺폻폾퐀퐂퐃퐄퐅퐆퐇퐉퐊퐋퐌퐍퐎퐏퐐퐑퐒퐓퐔퐕퐖������퐗퐘퐙퐚퐛퐜퐞퐟퐠퐡퐢퐣퐤퐥퐦퐧퐨퐩퐪퐫퐬퐭퐮퐯퐰퐱퐲퐳퐴퐵퐶퐷숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰�\".split(\"\");\nfor(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}\nD[190] = \"�����������������������������������������������������������������퐸퐹퐺퐻퐼퐽퐾퐿푁푂푃푅푆푇푈푉푊푋푌푍푎푏푐푑푒푓������푔푕푖푗푘푙푚푛푝푞푟푡푢푣푥푦푧푨푩푪푫푬푮푰푱푲������푳푴푵푶푷푺푻푽푾풁풃풄풅풆풇풊풌풎풏풐풑풒풓풕풖풗풘풙풚풛풜풝쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄업없엇었엉엊엌엎�\".split(\"\");\nfor(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}\nD[191] = \"�����������������������������������������������������������������풞풟풠풡풢풣풤풥풦풧풨풪풫풬풭풮풯풰풱풲풳풴풵풶풷풸������풹풺풻풼풽풾풿퓀퓁퓂퓃퓄퓅퓆퓇퓈퓉퓊퓋퓍퓎퓏퓑퓒퓓퓕������퓖퓗퓘퓙퓚퓛퓝퓞퓠퓡퓢퓣퓤퓥퓦퓧퓩퓪퓫퓭퓮퓯퓱퓲퓳퓴퓵퓶퓷퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염엽엾엿였영옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨�\".split(\"\");\nfor(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}\nD[192] = \"�����������������������������������������������������������������퓾퓿픀픁픂픃픅픆픇픉픊픋픍픎픏픐픑픒픓픖픘픙픚픛픜픝������픞픟픠픡픢픣픤픥픦픧픨픩픪픫픬픭픮픯픰픱픲픳픴픵픶픷������픸픹픺픻픾픿핁핂핃핅핆핇핈핉핊핋핎핐핒핓핔핕핖핗핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응읒읓읔읕읖읗의읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊�\".split(\"\");\nfor(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}\nD[193] = \"�����������������������������������������������������������������핤핦핧핪핬핮핯핰핱핲핳핶핷핹핺핻핽핾핿햀햁햂햃햆햊햋������햌햍햎햏햑햒햓햔햕햖햗햘햙햚햛햜햝햞햟햠햡햢햣햤햦햧������햨햩햪햫햬햭햮햯햰햱햲햳햴햵햶햷햸햹햺햻햼햽햾햿헀헁헂헃헄헅헆헇점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓�\".split(\"\");\nfor(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}\nD[194] = \"�����������������������������������������������������������������헊헋헍헎헏헑헓헔헕헖헗헚헜헞헟헠헡헢헣헦헧헩헪헫헭헮������헯헰헱헲헳헶헸헺헻헼헽헾헿혂혃혅혆혇혉혊혋혌혍혎혏혒������혖혗혘혙혚혛혝혞혟혡혢혣혥혦혧혨혩혪혫혬혮혯혰혱혲혳혴혵혶혷혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻�\".split(\"\");\nfor(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}\nD[195] = \"�����������������������������������������������������������������혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝홞홟홠홡������홢홣홤홥홦홨홪홫홬홭홮홯홲홳홵홶홷홸홹홺홻홼홽홾홿횀������횁횂횄횆횇횈횉횊횋횎횏횑횒횓횕횖횗횘횙횚횛횜횞횠횢횣횤횥횦횧횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층�\".split(\"\");\nfor(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}\nD[196] = \"�����������������������������������������������������������������횫횭횮횯횱횲횳횴횵횶횷횸횺횼횽횾횿훀훁훂훃훆훇훉훊훋������훍훎훏훐훒훓훕훖훘훚훛훜훝훞훟훡훢훣훥훦훧훩훪훫훬훭������훮훯훱훲훳훴훶훷훸훹훺훻훾훿휁휂휃휅휆휇휈휉휊휋휌휍휎휏휐휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼�\".split(\"\");\nfor(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}\nD[197] = \"�����������������������������������������������������������������휕휖휗휚휛휝휞휟휡휢휣휤휥휦휧휪휬휮휯휰휱휲휳휶휷휹������휺휻휽휾휿흀흁흂흃흅흆흈흊흋흌흍흎흏흒흓흕흚흛흜흝흞������흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵흶흷흸흹흺흻흾흿힀힂힃힄힅힆힇힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜�\".split(\"\");\nfor(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}\nD[198] = \"�����������������������������������������������������������������힍힎힏힑힒힓힔힕힖힗힚힜힞힟힠힡힢힣������������������������������������������������������������������������������퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁�\".split(\"\");\nfor(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}\nD[199] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠�\".split(\"\");\nfor(j = 0; j != D[199].length; ++j) if(D[199][j].charCodeAt(0) !== 0xFFFD) { e[D[199][j]] = 50944 + j; d[50944 + j] = D[199][j];}\nD[200] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝�\".split(\"\");\nfor(j = 0; j != D[200].length; ++j) if(D[200][j].charCodeAt(0) !== 0xFFFD) { e[D[200][j]] = 51200 + j; d[51200 + j] = D[200][j];}\nD[202] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕�\".split(\"\");\nfor(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}\nD[203] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢�\".split(\"\");\nfor(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}\nD[204] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械�\".split(\"\");\nfor(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}\nD[205] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜�\".split(\"\");\nfor(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}\nD[206] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾�\".split(\"\");\nfor(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}\nD[207] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴�\".split(\"\");\nfor(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}\nD[208] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣�\".split(\"\");\nfor(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}\nD[209] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩羅蘿螺裸邏那樂洛烙珞落諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉�\".split(\"\");\nfor(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}\nD[210] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������納臘蠟衲囊娘廊朗浪狼郎乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧老蘆虜路露駑魯鷺碌祿綠菉錄鹿論壟弄濃籠聾膿農惱牢磊腦賂雷尿壘屢樓淚漏累縷陋嫩訥杻紐勒肋凜凌稜綾能菱陵尼泥匿溺多茶�\".split(\"\");\nfor(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}\nD[211] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃�\".split(\"\");\nfor(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}\nD[212] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅�\".split(\"\");\nfor(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}\nD[213] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣�\".split(\"\");\nfor(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}\nD[214] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼�\".split(\"\");\nfor(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}\nD[215] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬�\".split(\"\");\nfor(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}\nD[216] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅�\".split(\"\");\nfor(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}\nD[217] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文�\".split(\"\");\nfor(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}\nD[218] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑�\".split(\"\");\nfor(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}\nD[219] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖�\".split(\"\");\nfor(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}\nD[220] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦�\".split(\"\");\nfor(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}\nD[221] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥�\".split(\"\");\nfor(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}\nD[222] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索�\".split(\"\");\nfor(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}\nD[223] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署�\".split(\"\");\nfor(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}\nD[224] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬�\".split(\"\");\nfor(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}\nD[225] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁�\".split(\"\");\nfor(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}\nD[226] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧�\".split(\"\");\nfor(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}\nD[227] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁�\".split(\"\");\nfor(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}\nD[228] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額�\".split(\"\");\nfor(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}\nD[229] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬�\".split(\"\");\nfor(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}\nD[230] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒�\".split(\"\");\nfor(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}\nD[231] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳�\".split(\"\");\nfor(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}\nD[232] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療�\".split(\"\");\nfor(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}\nD[233] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓�\".split(\"\");\nfor(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}\nD[234] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜�\".split(\"\");\nfor(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}\nD[235] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼�\".split(\"\");\nfor(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}\nD[236] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄�\".split(\"\");\nfor(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}\nD[237] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長�\".split(\"\");\nfor(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}\nD[238] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱�\".split(\"\");\nfor(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}\nD[239] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖�\".split(\"\");\nfor(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}\nD[240] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫�\".split(\"\");\nfor(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}\nD[241] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只�\".split(\"\");\nfor(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}\nD[242] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯�\".split(\"\");\nfor(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}\nD[243] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策�\".split(\"\");\nfor(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}\nD[244] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢�\".split(\"\");\nfor(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}\nD[245] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃�\".split(\"\");\nfor(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}\nD[246] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託�\".split(\"\");\nfor(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}\nD[247] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑�\".split(\"\");\nfor(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}\nD[248] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃�\".split(\"\");\nfor(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}\nD[249] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航�\".split(\"\");\nfor(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}\nD[250] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型�\".split(\"\");\nfor(j = 0; j != D[250].length; ++j) if(D[250][j].charCodeAt(0) !== 0xFFFD) { e[D[250][j]] = 64000 + j; d[64000 + j] = D[250][j];}\nD[251] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵�\".split(\"\");\nfor(j = 0; j != D[251].length; ++j) if(D[251][j].charCodeAt(0) !== 0xFFFD) { e[D[251][j]] = 64256 + j; d[64256 + j] = D[251][j];}\nD[252] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆�\".split(\"\");\nfor(j = 0; j != D[252].length; ++j) if(D[252][j].charCodeAt(0) !== 0xFFFD) { e[D[252][j]] = 64512 + j; d[64512 + j] = D[252][j];}\nD[253] = \"�����������������������������������������������������������������������������������������������������������������������������������������������������������������爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰�\".split(\"\");\nfor(j = 0; j != D[253].length; ++j) if(D[253][j].charCodeAt(0) !== 0xFFFD) { e[D[253][j]] = 64768 + j; d[64768 + j] = D[253][j];}\nreturn {\"enc\": e, \"dec\": d }; })();\ncptable[950] = (function(){ var d = [], e = {}, D = [], j;\nD[0] = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[0].length; ++j) if(D[0][j].charCodeAt(0) !== 0xFFFD) { e[D[0][j]] = 0 + j; d[0 + j] = D[0][j];}\nD[161] = \"���������������������������������������������������������������� ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚����������������������������������﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢﹣﹤﹥﹦~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/�\".split(\"\");\nfor(j = 0; j != D[161].length; ++j) if(D[161][j].charCodeAt(0) !== 0xFFFD) { e[D[161][j]] = 41216 + j; d[41216 + j] = D[161][j];}\nD[162] = \"����������������������������������������������������������������\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁▂▃▄▅▆▇█▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭����������������������������������╮╰╯═╞╪╡◢◣◥◤╱╲╳0123456789ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ〡〢〣〤〥〦〧〨〩十卄卅ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv�\".split(\"\");\nfor(j = 0; j != D[162].length; ++j) if(D[162][j].charCodeAt(0) !== 0xFFFD) { e[D[162][j]] = 41472 + j; d[41472 + j] = D[162][j];}\nD[163] = \"����������������������������������������������������������������wxyzΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψωㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏ����������������������������������ㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ˙ˉˊˇˋ���������������������������������€������������������������������\".split(\"\");\nfor(j = 0; j != D[163].length; ++j) if(D[163][j].charCodeAt(0) !== 0xFFFD) { e[D[163][j]] = 41728 + j; d[41728 + j] = D[163][j];}\nD[164] = \"����������������������������������������������������������������一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才����������������������������������丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙�\".split(\"\");\nfor(j = 0; j != D[164].length; ++j) if(D[164][j].charCodeAt(0) !== 0xFFFD) { e[D[164][j]] = 41984 + j; d[41984 + j] = D[164][j];}\nD[165] = \"����������������������������������������������������������������世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外����������������������������������央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全�\".split(\"\");\nfor(j = 0; j != D[165].length; ++j) if(D[165][j].charCodeAt(0) !== 0xFFFD) { e[D[165][j]] = 42240 + j; d[42240 + j] = D[165][j];}\nD[166] = \"����������������������������������������������������������������共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年����������������������������������式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣�\".split(\"\");\nfor(j = 0; j != D[166].length; ++j) if(D[166][j].charCodeAt(0) !== 0xFFFD) { e[D[166][j]] = 42496 + j; d[42496 + j] = D[166][j];}\nD[167] = \"����������������������������������������������������������������作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍����������������������������������均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠�\".split(\"\");\nfor(j = 0; j != D[167].length; ++j) if(D[167][j].charCodeAt(0) !== 0xFFFD) { e[D[167][j]] = 42752 + j; d[42752 + j] = D[167][j];}\nD[168] = \"����������������������������������������������������������������杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒����������������������������������芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵�\".split(\"\");\nfor(j = 0; j != D[168].length; ++j) if(D[168][j].charCodeAt(0) !== 0xFFFD) { e[D[168][j]] = 43008 + j; d[43008 + j] = D[168][j];}\nD[169] = \"����������������������������������������������������������������咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居����������������������������������屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊�\".split(\"\");\nfor(j = 0; j != D[169].length; ++j) if(D[169][j].charCodeAt(0) !== 0xFFFD) { e[D[169][j]] = 43264 + j; d[43264 + j] = D[169][j];}\nD[170] = \"����������������������������������������������������������������昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠����������������������������������炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附�\".split(\"\");\nfor(j = 0; j != D[170].length; ++j) if(D[170][j].charCodeAt(0) !== 0xFFFD) { e[D[170][j]] = 43520 + j; d[43520 + j] = D[170][j];}\nD[171] = \"����������������������������������������������������������������陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品����������������������������������哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷�\".split(\"\");\nfor(j = 0; j != D[171].length; ++j) if(D[171][j].charCodeAt(0) !== 0xFFFD) { e[D[171][j]] = 43776 + j; d[43776 + j] = D[171][j];}\nD[172] = \"����������������������������������������������������������������拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗����������������������������������活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄�\".split(\"\");\nfor(j = 0; j != D[172].length; ++j) if(D[172][j].charCodeAt(0) !== 0xFFFD) { e[D[172][j]] = 44032 + j; d[44032 + j] = D[172][j];}\nD[173] = \"����������������������������������������������������������������耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥����������������������������������迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪�\".split(\"\");\nfor(j = 0; j != D[173].length; ++j) if(D[173][j].charCodeAt(0) !== 0xFFFD) { e[D[173][j]] = 44288 + j; d[44288 + j] = D[173][j];}\nD[174] = \"����������������������������������������������������������������哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙����������������������������������恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓�\".split(\"\");\nfor(j = 0; j != D[174].length; ++j) if(D[174][j].charCodeAt(0) !== 0xFFFD) { e[D[174][j]] = 44544 + j; d[44544 + j] = D[174][j];}\nD[175] = \"����������������������������������������������������������������浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷����������������������������������砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃�\".split(\"\");\nfor(j = 0; j != D[175].length; ++j) if(D[175][j].charCodeAt(0) !== 0xFFFD) { e[D[175][j]] = 44800 + j; d[44800 + j] = D[175][j];}\nD[176] = \"����������������������������������������������������������������虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡����������������������������������陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀�\".split(\"\");\nfor(j = 0; j != D[176].length; ++j) if(D[176][j].charCodeAt(0) !== 0xFFFD) { e[D[176][j]] = 45056 + j; d[45056 + j] = D[176][j];}\nD[177] = \"����������������������������������������������������������������娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽����������������������������������情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺�\".split(\"\");\nfor(j = 0; j != D[177].length; ++j) if(D[177][j].charCodeAt(0) !== 0xFFFD) { e[D[177][j]] = 45312 + j; d[45312 + j] = D[177][j];}\nD[178] = \"����������������������������������������������������������������毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶����������������������������������瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼�\".split(\"\");\nfor(j = 0; j != D[178].length; ++j) if(D[178][j].charCodeAt(0) !== 0xFFFD) { e[D[178][j]] = 45568 + j; d[45568 + j] = D[178][j];}\nD[179] = \"����������������������������������������������������������������莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途����������������������������������部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠�\".split(\"\");\nfor(j = 0; j != D[179].length; ++j) if(D[179][j].charCodeAt(0) !== 0xFFFD) { e[D[179][j]] = 45824 + j; d[45824 + j] = D[179][j];}\nD[180] = \"����������������������������������������������������������������婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍����������������������������������插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋�\".split(\"\");\nfor(j = 0; j != D[180].length; ++j) if(D[180][j].charCodeAt(0) !== 0xFFFD) { e[D[180][j]] = 46080 + j; d[46080 + j] = D[180][j];}\nD[181] = \"����������������������������������������������������������������溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘����������������������������������窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁�\".split(\"\");\nfor(j = 0; j != D[181].length; ++j) if(D[181][j].charCodeAt(0) !== 0xFFFD) { e[D[181][j]] = 46336 + j; d[46336 + j] = D[181][j];}\nD[182] = \"����������������������������������������������������������������詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑����������������������������������間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼�\".split(\"\");\nfor(j = 0; j != D[182].length; ++j) if(D[182][j].charCodeAt(0) !== 0xFFFD) { e[D[182][j]] = 46592 + j; d[46592 + j] = D[182][j];}\nD[183] = \"����������������������������������������������������������������媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業����������������������������������楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督�\".split(\"\");\nfor(j = 0; j != D[183].length; ++j) if(D[183][j].charCodeAt(0) !== 0xFFFD) { e[D[183][j]] = 46848 + j; d[46848 + j] = D[183][j];}\nD[184] = \"����������������������������������������������������������������睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫����������������������������������腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊�\".split(\"\");\nfor(j = 0; j != D[184].length; ++j) if(D[184][j].charCodeAt(0) !== 0xFFFD) { e[D[184][j]] = 47104 + j; d[47104 + j] = D[184][j];}\nD[185] = \"����������������������������������������������������������������辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴����������������������������������飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇�\".split(\"\");\nfor(j = 0; j != D[185].length; ++j) if(D[185][j].charCodeAt(0) !== 0xFFFD) { e[D[185][j]] = 47360 + j; d[47360 + j] = D[185][j];}\nD[186] = \"����������������������������������������������������������������愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢����������������������������������滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬�\".split(\"\");\nfor(j = 0; j != D[186].length; ++j) if(D[186][j].charCodeAt(0) !== 0xFFFD) { e[D[186][j]] = 47616 + j; d[47616 + j] = D[186][j];}\nD[187] = \"����������������������������������������������������������������罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤����������������������������������說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜�\".split(\"\");\nfor(j = 0; j != D[187].length; ++j) if(D[187][j].charCodeAt(0) !== 0xFFFD) { e[D[187][j]] = 47872 + j; d[47872 + j] = D[187][j];}\nD[188] = \"����������������������������������������������������������������劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂����������������������������������慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃�\".split(\"\");\nfor(j = 0; j != D[188].length; ++j) if(D[188][j].charCodeAt(0) !== 0xFFFD) { e[D[188][j]] = 48128 + j; d[48128 + j] = D[188][j];}\nD[189] = \"����������������������������������������������������������������瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯����������������������������������翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞�\".split(\"\");\nfor(j = 0; j != D[189].length; ++j) if(D[189][j].charCodeAt(0) !== 0xFFFD) { e[D[189][j]] = 48384 + j; d[48384 + j] = D[189][j];}\nD[190] = \"����������������������������������������������������������������輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉����������������������������������鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡�\".split(\"\");\nfor(j = 0; j != D[190].length; ++j) if(D[190][j].charCodeAt(0) !== 0xFFFD) { e[D[190][j]] = 48640 + j; d[48640 + j] = D[190][j];}\nD[191] = \"����������������������������������������������������������������濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊����������������������������������縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚�\".split(\"\");\nfor(j = 0; j != D[191].length; ++j) if(D[191][j].charCodeAt(0) !== 0xFFFD) { e[D[191][j]] = 48896 + j; d[48896 + j] = D[191][j];}\nD[192] = \"����������������������������������������������������������������錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇����������������������������������嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬�\".split(\"\");\nfor(j = 0; j != D[192].length; ++j) if(D[192][j].charCodeAt(0) !== 0xFFFD) { e[D[192][j]] = 49152 + j; d[49152 + j] = D[192][j];}\nD[193] = \"����������������������������������������������������������������瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪����������������������������������薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁�\".split(\"\");\nfor(j = 0; j != D[193].length; ++j) if(D[193][j].charCodeAt(0) !== 0xFFFD) { e[D[193][j]] = 49408 + j; d[49408 + j] = D[193][j];}\nD[194] = \"����������������������������������������������������������������駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘����������������������������������癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦�\".split(\"\");\nfor(j = 0; j != D[194].length; ++j) if(D[194][j].charCodeAt(0) !== 0xFFFD) { e[D[194][j]] = 49664 + j; d[49664 + j] = D[194][j];}\nD[195] = \"����������������������������������������������������������������鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸����������������������������������獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類�\".split(\"\");\nfor(j = 0; j != D[195].length; ++j) if(D[195][j].charCodeAt(0) !== 0xFFFD) { e[D[195][j]] = 49920 + j; d[49920 + j] = D[195][j];}\nD[196] = \"����������������������������������������������������������������願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼����������������������������������纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴�\".split(\"\");\nfor(j = 0; j != D[196].length; ++j) if(D[196][j].charCodeAt(0) !== 0xFFFD) { e[D[196][j]] = 50176 + j; d[50176 + j] = D[196][j];}\nD[197] = \"����������������������������������������������������������������護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬����������������������������������禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒�\".split(\"\");\nfor(j = 0; j != D[197].length; ++j) if(D[197][j].charCodeAt(0) !== 0xFFFD) { e[D[197][j]] = 50432 + j; d[50432 + j] = D[197][j];}\nD[198] = \"����������������������������������������������������������������讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲���������������������������������������������������������������������������������������������������������������������������������\".split(\"\");\nfor(j = 0; j != D[198].length; ++j) if(D[198][j].charCodeAt(0) !== 0xFFFD) { e[D[198][j]] = 50688 + j; d[50688 + j] = D[198][j];}\nD[201] = \"����������������������������������������������������������������乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕����������������������������������氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋�\".split(\"\");\nfor(j = 0; j != D[201].length; ++j) if(D[201][j].charCodeAt(0) !== 0xFFFD) { e[D[201][j]] = 51456 + j; d[51456 + j] = D[201][j];}\nD[202] = \"����������������������������������������������������������������汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘����������������������������������吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇�\".split(\"\");\nfor(j = 0; j != D[202].length; ++j) if(D[202][j].charCodeAt(0) !== 0xFFFD) { e[D[202][j]] = 51712 + j; d[51712 + j] = D[202][j];}\nD[203] = \"����������������������������������������������������������������杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓����������������������������������芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢�\".split(\"\");\nfor(j = 0; j != D[203].length; ++j) if(D[203][j].charCodeAt(0) !== 0xFFFD) { e[D[203][j]] = 51968 + j; d[51968 + j] = D[203][j];}\nD[204] = \"����������������������������������������������������������������坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋����������������������������������怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲�\".split(\"\");\nfor(j = 0; j != D[204].length; ++j) if(D[204][j].charCodeAt(0) !== 0xFFFD) { e[D[204][j]] = 52224 + j; d[52224 + j] = D[204][j];}\nD[205] = \"����������������������������������������������������������������泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺����������������������������������矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏�\".split(\"\");\nfor(j = 0; j != D[205].length; ++j) if(D[205][j].charCodeAt(0) !== 0xFFFD) { e[D[205][j]] = 52480 + j; d[52480 + j] = D[205][j];}\nD[206] = \"����������������������������������������������������������������哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛����������������������������������峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺�\".split(\"\");\nfor(j = 0; j != D[206].length; ++j) if(D[206][j].charCodeAt(0) !== 0xFFFD) { e[D[206][j]] = 52736 + j; d[52736 + j] = D[206][j];}\nD[207] = \"����������������������������������������������������������������柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂����������������������������������洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀�\".split(\"\");\nfor(j = 0; j != D[207].length; ++j) if(D[207][j].charCodeAt(0) !== 0xFFFD) { e[D[207][j]] = 52992 + j; d[52992 + j] = D[207][j];}\nD[208] = \"����������������������������������������������������������������穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪����������������������������������苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱�\".split(\"\");\nfor(j = 0; j != D[208].length; ++j) if(D[208][j].charCodeAt(0) !== 0xFFFD) { e[D[208][j]] = 53248 + j; d[53248 + j] = D[208][j];}\nD[209] = \"����������������������������������������������������������������唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧����������������������������������恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤�\".split(\"\");\nfor(j = 0; j != D[209].length; ++j) if(D[209][j].charCodeAt(0) !== 0xFFFD) { e[D[209][j]] = 53504 + j; d[53504 + j] = D[209][j];}\nD[210] = \"����������������������������������������������������������������毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸����������������������������������牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐�\".split(\"\");\nfor(j = 0; j != D[210].length; ++j) if(D[210][j].charCodeAt(0) !== 0xFFFD) { e[D[210][j]] = 53760 + j; d[53760 + j] = D[210][j];}\nD[211] = \"����������������������������������������������������������������笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢����������������������������������荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐�\".split(\"\");\nfor(j = 0; j != D[211].length; ++j) if(D[211][j].charCodeAt(0) !== 0xFFFD) { e[D[211][j]] = 54016 + j; d[54016 + j] = D[211][j];}\nD[212] = \"����������������������������������������������������������������酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅����������������������������������唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏�\".split(\"\");\nfor(j = 0; j != D[212].length; ++j) if(D[212][j].charCodeAt(0) !== 0xFFFD) { e[D[212][j]] = 54272 + j; d[54272 + j] = D[212][j];}\nD[213] = \"����������������������������������������������������������������崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟����������������������������������捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉�\".split(\"\");\nfor(j = 0; j != D[213].length; ++j) if(D[213][j].charCodeAt(0) !== 0xFFFD) { e[D[213][j]] = 54528 + j; d[54528 + j] = D[213][j];}\nD[214] = \"����������������������������������������������������������������淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏����������������������������������痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟�\".split(\"\");\nfor(j = 0; j != D[214].length; ++j) if(D[214][j].charCodeAt(0) !== 0xFFFD) { e[D[214][j]] = 54784 + j; d[54784 + j] = D[214][j];}\nD[215] = \"����������������������������������������������������������������耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷����������������������������������蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪�\".split(\"\");\nfor(j = 0; j != D[215].length; ++j) if(D[215][j].charCodeAt(0) !== 0xFFFD) { e[D[215][j]] = 55040 + j; d[55040 + j] = D[215][j];}\nD[216] = \"����������������������������������������������������������������釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷����������������������������������堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔�\".split(\"\");\nfor(j = 0; j != D[216].length; ++j) if(D[216][j].charCodeAt(0) !== 0xFFFD) { e[D[216][j]] = 55296 + j; d[55296 + j] = D[216][j];}\nD[217] = \"����������������������������������������������������������������惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒����������������������������������晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞�\".split(\"\");\nfor(j = 0; j != D[217].length; ++j) if(D[217][j].charCodeAt(0) !== 0xFFFD) { e[D[217][j]] = 55552 + j; d[55552 + j] = D[217][j];}\nD[218] = \"����������������������������������������������������������������湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖����������������������������������琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥�\".split(\"\");\nfor(j = 0; j != D[218].length; ++j) if(D[218][j].charCodeAt(0) !== 0xFFFD) { e[D[218][j]] = 55808 + j; d[55808 + j] = D[218][j];}\nD[219] = \"����������������������������������������������������������������罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳����������������������������������菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺�\".split(\"\");\nfor(j = 0; j != D[219].length; ++j) if(D[219][j].charCodeAt(0) !== 0xFFFD) { e[D[219][j]] = 56064 + j; d[56064 + j] = D[219][j];}\nD[220] = \"����������������������������������������������������������������軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈����������������������������������隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆�\".split(\"\");\nfor(j = 0; j != D[220].length; ++j) if(D[220][j].charCodeAt(0) !== 0xFFFD) { e[D[220][j]] = 56320 + j; d[56320 + j] = D[220][j];}\nD[221] = \"����������������������������������������������������������������媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤����������������������������������搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼�\".split(\"\");\nfor(j = 0; j != D[221].length; ++j) if(D[221][j].charCodeAt(0) !== 0xFFFD) { e[D[221][j]] = 56576 + j; d[56576 + j] = D[221][j];}\nD[222] = \"����������������������������������������������������������������毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓����������������������������������煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓�\".split(\"\");\nfor(j = 0; j != D[222].length; ++j) if(D[222][j].charCodeAt(0) !== 0xFFFD) { e[D[222][j]] = 56832 + j; d[56832 + j] = D[222][j];}\nD[223] = \"����������������������������������������������������������������稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯����������������������������������腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤�\".split(\"\");\nfor(j = 0; j != D[223].length; ++j) if(D[223][j].charCodeAt(0) !== 0xFFFD) { e[D[223][j]] = 57088 + j; d[57088 + j] = D[223][j];}\nD[224] = \"����������������������������������������������������������������觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿����������������������������������遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠�\".split(\"\");\nfor(j = 0; j != D[224].length; ++j) if(D[224][j].charCodeAt(0) !== 0xFFFD) { e[D[224][j]] = 57344 + j; d[57344 + j] = D[224][j];}\nD[225] = \"����������������������������������������������������������������凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠����������������������������������寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉�\".split(\"\");\nfor(j = 0; j != D[225].length; ++j) if(D[225][j].charCodeAt(0) !== 0xFFFD) { e[D[225][j]] = 57600 + j; d[57600 + j] = D[225][j];}\nD[226] = \"����������������������������������������������������������������榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊����������������������������������漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓�\".split(\"\");\nfor(j = 0; j != D[226].length; ++j) if(D[226][j].charCodeAt(0) !== 0xFFFD) { e[D[226][j]] = 57856 + j; d[57856 + j] = D[226][j];}\nD[227] = \"����������������������������������������������������������������禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞����������������������������������耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻�\".split(\"\");\nfor(j = 0; j != D[227].length; ++j) if(D[227][j].charCodeAt(0) !== 0xFFFD) { e[D[227][j]] = 58112 + j; d[58112 + j] = D[227][j];}\nD[228] = \"����������������������������������������������������������������裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍����������������������������������銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘�\".split(\"\");\nfor(j = 0; j != D[228].length; ++j) if(D[228][j].charCodeAt(0) !== 0xFFFD) { e[D[228][j]] = 58368 + j; d[58368 + j] = D[228][j];}\nD[229] = \"����������������������������������������������������������������噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉����������������������������������憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒�\".split(\"\");\nfor(j = 0; j != D[229].length; ++j) if(D[229][j].charCodeAt(0) !== 0xFFFD) { e[D[229][j]] = 58624 + j; d[58624 + j] = D[229][j];}\nD[230] = \"����������������������������������������������������������������澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙����������������������������������獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟�\".split(\"\");\nfor(j = 0; j != D[230].length; ++j) if(D[230][j].charCodeAt(0) !== 0xFFFD) { e[D[230][j]] = 58880 + j; d[58880 + j] = D[230][j];}\nD[231] = \"����������������������������������������������������������������膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢����������������������������������蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧�\".split(\"\");\nfor(j = 0; j != D[231].length; ++j) if(D[231][j].charCodeAt(0) !== 0xFFFD) { e[D[231][j]] = 59136 + j; d[59136 + j] = D[231][j];}\nD[232] = \"����������������������������������������������������������������踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓����������������������������������銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮�\".split(\"\");\nfor(j = 0; j != D[232].length; ++j) if(D[232][j].charCodeAt(0) !== 0xFFFD) { e[D[232][j]] = 59392 + j; d[59392 + j] = D[232][j];}\nD[233] = \"����������������������������������������������������������������噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺����������������������������������憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸�\".split(\"\");\nfor(j = 0; j != D[233].length; ++j) if(D[233][j].charCodeAt(0) !== 0xFFFD) { e[D[233][j]] = 59648 + j; d[59648 + j] = D[233][j];}\nD[234] = \"����������������������������������������������������������������澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙����������������������������������瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘�\".split(\"\");\nfor(j = 0; j != D[234].length; ++j) if(D[234][j].charCodeAt(0) !== 0xFFFD) { e[D[234][j]] = 59904 + j; d[59904 + j] = D[234][j];}\nD[235] = \"����������������������������������������������������������������蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠����������������������������������諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌�\".split(\"\");\nfor(j = 0; j != D[235].length; ++j) if(D[235][j].charCodeAt(0) !== 0xFFFD) { e[D[235][j]] = 60160 + j; d[60160 + j] = D[235][j];}\nD[236] = \"����������������������������������������������������������������錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕����������������������������������魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎�\".split(\"\");\nfor(j = 0; j != D[236].length; ++j) if(D[236][j].charCodeAt(0) !== 0xFFFD) { e[D[236][j]] = 60416 + j; d[60416 + j] = D[236][j];}\nD[237] = \"����������������������������������������������������������������檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶����������������������������������瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞�\".split(\"\");\nfor(j = 0; j != D[237].length; ++j) if(D[237][j].charCodeAt(0) !== 0xFFFD) { e[D[237][j]] = 60672 + j; d[60672 + j] = D[237][j];}\nD[238] = \"����������������������������������������������������������������蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞����������������������������������謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜�\".split(\"\");\nfor(j = 0; j != D[238].length; ++j) if(D[238][j].charCodeAt(0) !== 0xFFFD) { e[D[238][j]] = 60928 + j; d[60928 + j] = D[238][j];}\nD[239] = \"����������������������������������������������������������������鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰����������������������������������鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶�\".split(\"\");\nfor(j = 0; j != D[239].length; ++j) if(D[239][j].charCodeAt(0) !== 0xFFFD) { e[D[239][j]] = 61184 + j; d[61184 + j] = D[239][j];}\nD[240] = \"����������������������������������������������������������������璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒����������������������������������臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧�\".split(\"\");\nfor(j = 0; j != D[240].length; ++j) if(D[240][j].charCodeAt(0) !== 0xFFFD) { e[D[240][j]] = 61440 + j; d[61440 + j] = D[240][j];}\nD[241] = \"����������������������������������������������������������������蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪����������������������������������鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰�\".split(\"\");\nfor(j = 0; j != D[241].length; ++j) if(D[241][j].charCodeAt(0) !== 0xFFFD) { e[D[241][j]] = 61696 + j; d[61696 + j] = D[241][j];}\nD[242] = \"����������������������������������������������������������������徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛����������������������������������礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕�\".split(\"\");\nfor(j = 0; j != D[242].length; ++j) if(D[242][j].charCodeAt(0) !== 0xFFFD) { e[D[242][j]] = 61952 + j; d[61952 + j] = D[242][j];}\nD[243] = \"����������������������������������������������������������������譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦����������������������������������鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲�\".split(\"\");\nfor(j = 0; j != D[243].length; ++j) if(D[243][j].charCodeAt(0) !== 0xFFFD) { e[D[243][j]] = 62208 + j; d[62208 + j] = D[243][j];}\nD[244] = \"����������������������������������������������������������������嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩����������������������������������禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿�\".split(\"\");\nfor(j = 0; j != D[244].length; ++j) if(D[244][j].charCodeAt(0) !== 0xFFFD) { e[D[244][j]] = 62464 + j; d[62464 + j] = D[244][j];}\nD[245] = \"����������������������������������������������������������������鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛����������������������������������鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥�\".split(\"\");\nfor(j = 0; j != D[245].length; ++j) if(D[245][j].charCodeAt(0) !== 0xFFFD) { e[D[245][j]] = 62720 + j; d[62720 + j] = D[245][j];}\nD[246] = \"����������������������������������������������������������������蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺����������������������������������騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚�\".split(\"\");\nfor(j = 0; j != D[246].length; ++j) if(D[246][j].charCodeAt(0) !== 0xFFFD) { e[D[246][j]] = 62976 + j; d[62976 + j] = D[246][j];}\nD[247] = \"����������������������������������������������������������������糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊����������������������������������驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾�\".split(\"\");\nfor(j = 0; j != D[247].length; ++j) if(D[247][j].charCodeAt(0) !== 0xFFFD) { e[D[247][j]] = 63232 + j; d[63232 + j] = D[247][j];}\nD[248] = \"����������������������������������������������������������������讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏����������������������������������齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚�\".split(\"\");\nfor(j = 0; j != D[248].length; ++j) if(D[248][j].charCodeAt(0) !== 0xFFFD) { e[D[248][j]] = 63488 + j; d[63488 + j] = D[248][j];}\nD[249] = \"����������������������������������������������������������������纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊����������������������������������龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓�\".split(\"\");\nfor(j = 0; j != D[249].length; ++j) if(D[249][j].charCodeAt(0) !== 0xFFFD) { e[D[249][j]] = 63744 + j; d[63744 + j] = D[249][j];}\nreturn {\"enc\": e, \"dec\": d }; })();\ncptable[1250] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1251] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1252] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1253] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1254] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖרÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1255] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ�ֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1256] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1257] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[1258] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖרÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10000] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10006] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10007] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10029] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10079] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\ncptable[10081] = (function(){ var d = \"\\u0000\\u0001\\u0002\\u0003\\u0004\\u0005\\u0006\\u0007\\b\\t\\n\\u000b\\f\\r\\u000e\\u000f\\u0010\\u0011\\u0012\\u0013\\u0014\\u0015\\u0016\\u0017\\u0018\\u0019\\u001a\\u001b\\u001c\\u001d\\u001e\\u001f !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ\", D = [], e = {}; for(var i=0;i!=d.length;++i) { if(d.charCodeAt(i) !== 0xFFFD) e[d[i]] = i; D[i] = d.charAt(i); } return {\"enc\": e, \"dec\": D }; })();\nif (typeof module !== 'undefined' && module.exports) module.exports = cptable;\n/* cputils.js (C) 2013-2014 SheetJS -- http://sheetjs.com */\n/*jshint newcap: false */\n(function(root, factory){\n  \"use strict\";\n  if(typeof cptable === \"undefined\") {\n    if(typeof require !== \"undefined\"){\n      var cpt = require('./cpt' + 'able');\n      if (typeof module !== 'undefined' && module.exports) module.exports = factory(cpt);\n      else root.cptable = factory(cpt);\n    } else throw new Error(\"cptable not found\");\n  } else cptable = factory(cptable);\n}(this, function(cpt){\n  \"use strict\";\n  var magic = {\n    \"1200\":\"utf16le\",\n    \"1201\":\"utf16be\",\n    \"12000\":\"utf32le\",\n    \"12001\":\"utf32be\",\n    \"16969\":\"utf64le\",\n    \"20127\":\"ascii\",\n    \"65000\":\"utf7\",\n    \"65001\":\"utf8\"\n  };\n\n  var sbcs_cache = [874,1250,1251,1252,1253,1254,1255,1256,10000];\n  var dbcs_cache = [932,936,949,950];\n  var magic_cache = [65001];\n  var magic_decode = {};\n  var magic_encode = {};\n  var cpecache = {};\n  var cpdcache = {};\n\n  var sfcc = function sfcc(x) { return String.fromCharCode(x); };\n  var cca = function cca(x){ return x.charCodeAt(0); };\n\n  var has_buf = (typeof Buffer !== 'undefined');\n  if(has_buf) {\n    var mdl = 1024, mdb = new Buffer(mdl);\n    var make_EE = function make_EE(E){\n      var EE = new Buffer(65536);\n      for(var i = 0; i < 65536;++i) EE[i] = 0;\n      var keys = Object.keys(E), len = keys.length;\n      for(var ee = 0, e = keys[ee]; ee < len; ++ee) {\n        if(!(e = keys[ee])) continue;\n        EE[e.charCodeAt(0)] = E[e];\n      }\n      return EE;\n    };\n    var sbcs_encode = function make_sbcs_encode(cp) {\n      var EE = make_EE(cpt[cp].enc);\n      return function sbcs_e(data, ofmt) {\n        var len = data.length;\n        var out, i, j, D, w;\n        if(typeof data === 'string') {\n          out = Buffer(len);\n          for(i = 0; i < len; ++i) out[i] = EE[data.charCodeAt(i)];\n        } else if(Buffer.isBuffer(data)) {\n          out = Buffer(2*len);\n          j = 0;\n          for(i = 0; i < len; ++i) {\n            D = data[i];\n            if(D < 128) out[j++] = EE[D];\n            else if(D < 224) { out[j++] = EE[((D&31)<<6)+(data[i+1]&63)]; ++i; }\n            else if(D < 240) { out[j++] = EE[((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63)]; i+=2; }\n            else {\n              w = ((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63); i+=3;\n              if(w < 65536) out[j++] = EE[w];\n              else { w -= 65536; out[j++] = EE[0xD800 + ((w>>10)&1023)]; out[j++] = EE[0xDC00 + (w&1023)]; }\n            }\n          }\n          out.length = j;\n          out = out.slice(0,j);\n        } else {\n          out = Buffer(len);\n          for(i = 0; i < len; ++i) out[i] = EE[data[i].charCodeAt(0)];\n        }\n        if(ofmt === undefined || ofmt === 'buf') return out;\n        if(ofmt !== 'arr') return out.toString('binary');\n        return [].slice.call(out);\n      };\n    };\n    var sbcs_decode = function make_sbcs_decode(cp) {\n      var D = cpt[cp].dec;\n      var DD = new Buffer(131072), d=0, c;\n      for(d=0;d<D.length;++d) {\n        if(!(c=D[d])) continue;\n        var w = c.charCodeAt(0);\n        DD[2*d] = w&255; DD[2*d+1] = w>>8;\n      }\n      return function sbcs_d(data) {\n        var len = data.length, i=0, j;\n        if(2 * len > mdl) { mdl = 2 * len; mdb = new Buffer(mdl); }\n        if(Buffer.isBuffer(data)) {\n          for(i = 0; i < len; i++) {\n            j = 2*data[i];\n            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];\n          }\n        } else if(typeof data === \"string\") {\n          for(i = 0; i < len; i++) {\n            j = 2*data.charCodeAt(i);\n            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];\n          }\n        } else {\n          for(i = 0; i < len; i++) {\n            j = 2*data[i];\n            mdb[2*i] = DD[j]; mdb[2*i+1] = DD[j+1];\n          }\n        }\n        mdb.length = 2 * len;\n        return mdb.toString('ucs2');\n      };\n    };\n    var dbcs_encode = function make_dbcs_encode(cp) {\n      var E = cpt[cp].enc;\n      var EE = new Buffer(131072);\n      for(var i = 0; i < 131072; ++i) EE[i] = 0;\n      var keys = Object.keys(E);\n      for(var ee = 0, e = keys[ee]; ee < keys.length; ++ee) {\n        if(!(e = keys[ee])) continue;\n        var f = e.charCodeAt(0);\n        EE[2*f] = E[e] & 255; EE[2*f+1] = E[e]>>8;\n      }\n      return function dbcs_e(data, ofmt) {\n        var len = data.length, out = new Buffer(2*len), i, j, jj, k, D;\n        if(typeof data === 'string') {\n          for(i = k = 0; i < len; ++i) {\n            j = data.charCodeAt(i)*2;\n            out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];\n          }\n          out.length = k;\n          out = out.slice(0,k);\n        } else if(Buffer.isBuffer(data)) {\n          for(i = k = 0; i < len; ++i) {\n            D = data[i];\n            if(D < 128) j = D;\n            else if(D < 224) { j = ((D&31)<<6)+(data[i+1]&63); ++i; }\n            else if(D < 240) { j = ((D&15)<<12)+((data[i+1]&63)<<6)+(data[i+2]&63); i+=2; }\n            else { j = ((D&7)<<18)+((data[i+1]&63)<<12)+((data[i+2]&63)<<6)+(data[i+3]&63); i+=3; }\n            if(j<65536) { j*=2; out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j]; }\n            else { jj = j-65536;\n              j=2*(0xD800 + ((jj>>10)&1023)); out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];\n              j=2*(0xDC00 + (jj&1023)); out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];\n            }\n          }\n          out.length = k;\n          out = out.slice(0,k);\n        } else {\n          for(i = k = 0; i < len; i++) {\n            j = data[i].charCodeAt(0)*2;\n            out[k++] = EE[j+1] || EE[j]; if(EE[j+1] > 0) out[k++] = EE[j];\n          }\n        }\n        if(ofmt === undefined || ofmt === 'buf') return out;\n        if(ofmt !== 'arr') return out.toString('binary');\n        return [].slice.call(out);\n      };\n    };\n    var dbcs_decode = function make_dbcs_decode(cp) {\n      var D = cpt[cp].dec;\n      var DD = new Buffer(131072), d=0, c, w=0, j=0, i=0;\n      for(i = 0; i < 65536; ++i) { DD[2*i] = 0xFF; DD[2*i+1] = 0xFD;}\n      for(d = 0; d < D.length; ++d) {\n        if(!(c=D[d])) continue;\n        w = c.charCodeAt(0);\n        j = 2*d;\n        DD[j] = w&255; DD[j+1] = w>>8;\n      }\n      return function dbcs_d(data) {\n        var len = data.length, out = new Buffer(2*len), i, j, k=0;\n        if(Buffer.isBuffer(data)) {\n          for(i = 0; i < len; i++) {\n            j = 2*data[i];\n            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data[i]<<8)+data[i+1]); ++i; }\n            out[k++] = DD[j]; out[k++] = DD[j+1];\n          }\n        } else if(typeof data === \"string\") {\n          for(i = 0; i < len; i++) {\n            j = 2*data.charCodeAt(i);\n            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data.charCodeAt(i)<<8)+data.charCodeAt(i+1)); ++i; }\n            out[k++] = DD[j]; out[k++] = DD[j+1];\n          }\n        } else {\n          for(i = 0; i < len; i++) {\n            j = 2*data[i];\n            if(DD[j]===0xFF && DD[j+1]===0xFD) { j=2*((data[i]<<8)+data[i+1]); ++i; }\n            out[k++] = DD[j]; out[k++] = DD[j+1];\n          }\n        }\n        out.length = k;\n        return out.toString('ucs2');\n      };\n    };\n    magic_decode[65001] = function utf8_d(data) {\n      var len = data.length, w = 0, ww = 0;\n      if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); }\n      mdb.length = 0;\n      var i = 0;\n      if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3;\n      for(var j = 1, k = 0, D = 0; i < len; i+=j) {\n        j = 1; D = data[i];\n        if(D < 128) w = D;\n        else if(D < 224) { w=(D&31)*64+(data[i+1]&63); j=2; }\n        else if(D < 240) { w=((D&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63); j=3; }\n        else { w=(D&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63); j=4; }\n        if(w < 65536) { mdb[k++] = w&255; mdb[k++] = w>>8; }\n        else {\n          w -= 65536; ww = 0xD800 + ((w>>10)&1023); w = 0xDC00 + (w&1023);\n          mdb[k++] = ww&255; mdb[k++] = ww>>>8; mdb[k++] = w&255; mdb[k++] = (w>>>8)&255;\n        }\n      }\n      mdb.length = k;\n      return mdb.toString('ucs2');\n    };\n    magic_encode[65001] = function utf8_e(data, ofmt) {\n      var len = data.length, w = 0, ww = 0, j = 0;\n      var direct = typeof data === \"string\";\n      if(4 * len > mdl) { mdl = 4 * len; mdb = new Buffer(mdl); }\n      for(var i = 0; i < len; ++i) {\n        w = direct ? data.charCodeAt(i) : data[i].charCodeAt(0);\n        if(w <= 0x007F) mdb[j++] = w;\n        else if(w <= 0x07FF) {\n          mdb[j++] = 192 + (w >> 6);\n          mdb[j++] = 128 + (w&63);\n        } else if(w >= 0xD800 && w <= 0xDFFF) {\n          w -= 0xD800; ++i;\n          ww = (direct ? data.charCodeAt(i) : data[i].charCodeAt(0)) - 0xDC00 + (w << 10);\n          mdb[j++] = 240 + ((ww>>>18) & 0x07);\n          mdb[j++] = 144 + ((ww>>>12) & 0x3F);\n          mdb[j++] = 128 + ((ww>>>6) & 0x3F);\n          mdb[j++] = 128 + (ww & 0x3F);\n        } else {\n          mdb[j++] = 224 + (w >> 12);\n          mdb[j++] = 128 + ((w >> 6)&63);\n          mdb[j++] = 128 + (w&63);\n        }\n      }\n      mdb.length = j;\n      if(ofmt === undefined || ofmt === 'buf') return mdb;\n      if(ofmt !== 'arr') return mdb.toString('binary');\n      return [].slice.call(mdb);\n    };\n  }\n\n  var encache = function encache() {\n    if(has_buf) {\n      if(cpdcache[sbcs_cache[0]]) return;\n      var i, s;\n      for(i = 0; i < sbcs_cache.length; ++i) {\n        s = sbcs_cache[i];\n        if(cpt[s]) {\n          cpdcache[s] = sbcs_decode(s);\n          cpecache[s] = sbcs_encode(s);\n        }\n      }\n      for(i = 0; i < dbcs_cache.length; ++i) {\n        s = dbcs_cache[i];\n        if(cpt[s]) {\n          cpdcache[s] = dbcs_decode(s);\n          cpecache[s] = dbcs_encode(s);\n        }\n      }\n      for(i = 0; i < magic_cache.length; ++i) {\n        s = magic_cache[i];\n        if(magic_decode[s]) cpdcache[s] = magic_decode[s];\n        if(magic_encode[s]) cpecache[s] = magic_encode[s];\n      }\n    }\n  };\n  var cp_decache = function cp_decache(cp) { cpdcache[cp] = cpecache[cp] = undefined; };\n  var decache = function decache() {\n    if(has_buf) {\n      if(!cpdcache[sbcs_cache[0]]) return;\n      sbcs_cache.forEach(cp_decache);\n      dbcs_cache.forEach(cp_decache);\n      magic_cache.forEach(cp_decache);\n    }\n    last_enc = last_cp = undefined;\n  };\n  var cache = {\n    encache: encache,\n    decache: decache,\n    sbcs: sbcs_cache,\n    dbcs: dbcs_cache\n  };\n\n  encache();\n\n  var BM = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n  var SetD = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'(),-./:?\";\n  var last_enc, last_cp;\n  var encode = function encode(cp, data, ofmt) {\n    if(cp === last_cp) { return last_enc(data, ofmt); }\n    if(cpecache[cp] !== undefined) { last_enc = cpecache[last_cp=cp]; return last_enc(data, ofmt); }\n    if(has_buf && Buffer.isBuffer(data)) data = data.toString('utf8');\n    var len = data.length;\n    var out = has_buf ? new Buffer(4*len) : [], w, i, j = 0, c, tt, ww;\n    var C = cpt[cp], E, M;\n    if(C && (E=C.enc)) for(i = 0; i < len; ++i, ++j) {\n      w = E[data[i]];\n      out[j] = w&255;\n      if(w > 255) {\n        out[j] = w>>8;\n        out[++j] = w&255;\n      }\n    }\n    else if((M=magic[cp])) switch(M) {\n      case \"utf8\":\n        if(has_buf && typeof data === \"string\") { out = new Buffer(data, M); j = out.length; break; }\n        for(i = 0; i < len; ++i, ++j) {\n          w = data[i].charCodeAt(0);\n          if(w <= 0x007F) out[j] = w;\n          else if(w <= 0x07FF) {\n            out[j]   = 192 + (w >> 6);\n            out[++j] = 128 + (w&63);\n          } else if(w >= 0xD800 && w <= 0xDFFF) {\n            w -= 0xD800;\n            ww = data[++i].charCodeAt(0) - 0xDC00 + (w << 10);\n            out[j]   = 240 + ((ww>>>18) & 0x07);\n            out[++j] = 144 + ((ww>>>12) & 0x3F);\n            out[++j] = 128 + ((ww>>>6) & 0x3F);\n            out[++j] = 128 + (ww & 0x3F);\n          } else {\n            out[j]   = 224 + (w >> 12);\n            out[++j] = 128 + ((w >> 6)&63);\n            out[++j] = 128 + (w&63);\n          }\n        }\n        break;\n      case \"ascii\":\n        if(has_buf && typeof data === \"string\") { out = new Buffer(data, M); j = out.length; break; }\n        for(i = 0; i < len; ++i, ++j) {\n          w = data[i].charCodeAt(0);\n          if(w <= 0x007F) out[j] = w;\n          else throw new Error(\"bad ascii \" + w);\n        }\n        break;\n      case \"utf16le\":\n        if(has_buf && typeof data === \"string\") { out = new Buffer(data, M); j = out.length; break; }\n        for(i = 0; i < len; ++i) {\n          w = data[i].charCodeAt(0);\n          out[j++] = w&255;\n          out[j++] = w>>8;\n        }\n        break;\n      case \"utf16be\":\n        for(i = 0; i < len; ++i) {\n          w = data[i].charCodeAt(0);\n          out[j++] = w>>8;\n          out[j++] = w&255;\n        }\n        break;\n      case \"utf32le\":\n        for(i = 0; i < len; ++i) {\n          w = data[i].charCodeAt(0);\n          if(w >= 0xD800 && w <= 0xDFFF) w = 0x10000 + ((w - 0xD800) << 10) + (data[++i].charCodeAt(0) - 0xDC00);\n          out[j++] = w&255; w >>= 8;\n          out[j++] = w&255; w >>= 8;\n          out[j++] = w&255; w >>= 8;\n          out[j++] = w&255;\n        }\n        break;\n      case \"utf32be\":\n        for(i = 0; i < len; ++i) {\n          w = data[i].charCodeAt(0);\n          if(w >= 0xD800 && w <= 0xDFFF) w = 0x10000 + ((w - 0xD800) << 10) + (data[++i].charCodeAt(0) - 0xDC00);\n          out[j+3] = w&255; w >>= 8;\n          out[j+2] = w&255; w >>= 8;\n          out[j+1] = w&255; w >>= 8;\n          out[j] = w&255; w >>= 8;\n          j+=4;\n        }\n        break;\n      case \"utf7\":\n        for(i = 0; i < len; i++) {\n          c = data[i];\n          if(c === \"+\") { out[j++] = 0x2b; out[j++] = 0x2d; continue; }\n          if(SetD.indexOf(c) > -1) { out[j++] = c.charCodeAt(0); continue; }\n          tt = encode(1201, c);\n          out[j++] = 0x2b;\n          out[j++] = BM.charCodeAt(tt[0]>>2);\n          out[j++] = BM.charCodeAt(((tt[0]&0x03)<<4) + ((tt[1]||0)>>4));\n          out[j++] = BM.charCodeAt(((tt[1]&0x0F)<<2) + ((tt[2]||0)>>6));\n          out[j++] = 0x2d;\n        }\n        break;\n      default: throw new Error(\"Unsupported magic: \" + cp + \" \" + magic[cp]);\n    }\n    else throw new Error(\"Unrecognized CP: \" + cp);\n    out.length = j;\n    out = out.slice(0,j);\n    if(typeof Buffer === 'undefined') return (ofmt == 'str') ? out.map(sfcc).join(\"\") : out;\n    if(ofmt === undefined || ofmt === 'buf') return out;\n    if(ofmt !== 'arr') return out.toString('binary');\n    return [].slice.call(out);\n  };\n  var decode = function decode(cp, data) {\n    var F; if((F=cpdcache[cp])) return F(data);\n    var len = data.length, out = new Array(len), w, i, j = 1, k = 0, ww;\n    var C = cpt[cp], D, M;\n    if(C && (D=C.dec)) {\n      if(typeof data === \"string\") data = data.split(\"\").map(cca);\n      for(i = 0; i < len; i+=j) {\n        j = 2;\n        w = D[(data[i]<<8)+ data[i+1]];\n        if(!w) {\n          j = 1;\n          w = D[data[i]];\n        }\n        if(!w) throw new Error('Unrecognized code: ' + data[i] + ' ' + data[i+j-1] + ' ' + i + ' ' + j + ' ' + D[data[i]]);\n        out[k++] = w;\n      }\n    }\n    else if((M=magic[cp])) switch(M) {\n      case \"utf8\":\n        i = 0;\n        if(len >= 3 && data[0] == 0xEF) if(data[1] == 0xBB && data[2] == 0xBF) i = 3;\n        for(; i < len; i+=j) {\n          j = 1;\n          if(data[i] < 128) w = data[i];\n          else if(data[i] < 224) { w=(data[i]&31)*64+(data[i+1]&63); j=2; }\n          else if(data[i] < 240) { w=((data[i]&15)<<12)+(data[i+1]&63)*64+(data[i+2]&63); j=3; }\n          else { w=(data[i]&7)*262144+((data[i+1]&63)<<12)+(data[i+2]&63)*64+(data[i+3]&63); j=4; }\n          if(w < 65536) { out[k++] = String.fromCharCode(w); }\n          else {\n            w -= 65536; ww = 0xD800 + ((w>>10)&1023); w = 0xDC00 + (w&1023);\n            out[k++] = String.fromCharCode(ww); out[k++] = String.fromCharCode(w);\n          }\n        }\n        break;\n      case \"ascii\":\n        if(has_buf && Buffer.isBuffer(data)) return data.toString(M);\n        for(i = 0; i < len; i++) out[i] = String.fromCharCode(data[i]);\n        k = len; break;\n      case \"utf16le\":\n        i = 0;\n        if(len >= 2 && data[0] == 0xFF) if(data[1] == 0xFE) i = 2;\n        if(has_buf && Buffer.isBuffer(data)) return data.toString(M);\n        j = 2;\n        for(; i < len; i+=j) {\n          out[k++] = String.fromCharCode((data[i+1]<<8) + data[i]);\n        }\n        break;\n      case \"utf16be\":\n        i = 0;\n        if(len >= 2 && data[0] == 0xFE) if(data[1] == 0xFF) i = 2;\n        j = 2;\n        for(; i < len; i+=j) {\n          out[k++] = String.fromCharCode((data[i]<<8) + data[i+1]);\n        }\n        break;\n      case \"utf32le\":\n        i = 0;\n        if(len >= 4 && data[0] == 0xFF) if(data[1] == 0xFE && data[2] == 0 && data[3] == 0) i = 4;\n        j = 4;\n        for(; i < len; i+=j) {\n          w = (data[i+3]<<24) + (data[i+2]<<16) + (data[i+1]<<8) + (data[i]);\n          if(w > 0xFFFF) {\n            w -= 0x10000;\n            out[k++] = String.fromCharCode(0xD800 + ((w >> 10) & 0x3FF));\n            out[k++] = String.fromCharCode(0xDC00 + (w & 0x3FF));\n          }\n          else out[k++] = String.fromCharCode(w);\n        }\n        break;\n      case \"utf32be\":\n        i = 0;\n        if(len >= 4 && data[3] == 0xFF) if(data[2] == 0xFE && data[1] == 0 && data[0] == 0) i = 4;\n        j = 4;\n        for(; i < len; i+=j) {\n          w = (data[i]<<24) + (data[i+1]<<16) + (data[i+2]<<8) + (data[i+3]);\n          if(w > 0xFFFF) {\n            w -= 0x10000;\n            out[k++] = String.fromCharCode(0xD800 + ((w >> 10) & 0x3FF));\n            out[k++] = String.fromCharCode(0xDC00 + (w & 0x3FF));\n          }\n          else out[k++] = String.fromCharCode(w);\n        }\n        break;\n      case \"utf7\":\n        i = 0;\n        if(len >= 4 && data[0] == 0x2B && data[1] == 0x2F && data[2] == 0x76) {\n          if(len >= 5 && data[3] == 0x38 && data[4] == 0x2D) i = 5;\n          else if(data[3] == 0x38 || data[3] == 0x39 || data[3] == 0x2B || data[3] == 0x2F) i = 4;\n        }\n        for(; i < len; i+=j) {\n          if(data[i] !== 0x2b) { j=1; out[k++] = String.fromCharCode(data[i]); continue; }\n          j=1;\n          if(data[i+1] === 0x2d) { j = 2; out[k++] = \"+\"; continue; }\n          while(String.fromCharCode(data[i+j]).match(/[A-Za-z0-9+\\/]/)) j++;\n          var dash = 0;\n          if(data[i+j] === 0x2d) { ++j; dash=1; }\n          var tt = [];\n          var o64;\n          var c1, c2, c3;\n          var e1, e2, e3, e4;\n          for(var l = 1; l < j - dash;) {\n            e1 = BM.indexOf(String.fromCharCode(data[i+l++]));\n            e2 = BM.indexOf(String.fromCharCode(data[i+l++]));\n            c1 = e1 << 2 | e2 >> 4;\n            tt.push(c1);\n            e3 = BM.indexOf(String.fromCharCode(data[i+l++]));\n            if(e3 === -1) break;\n            c2 = (e2 & 15) << 4 | e3 >> 2;\n            tt.push(c2);\n            e4 = BM.indexOf(String.fromCharCode(data[i+l++]));\n            if(e4 === -1) break;\n            c3 = (e3 & 3) << 6 | e4;\n            if(e4 < 64) tt.push(c3);\n          }\n          if((tt.length & 1) === 1) tt.length--;\n          o64 = decode(1201, tt);\n          for(l = 0; l < o64.length; ++l) out[k++] = o64[l];\n        }\n        break;\n      default: throw new Error(\"Unsupported magic: \" + cp + \" \" + magic[cp]);\n    }\n    else throw new Error(\"Unrecognized CP: \" + cp);\n    out.length = k;\n    return out.join(\"\");\n  };\n  var hascp = function hascp(cp) { return cpt[cp] || magic[cp]; };\n  cpt.utils = { decode: decode, encode: encode, hascp: hascp, magic: magic, cache:cache };\n  return cpt;\n}));\n",
            "type": "application/javascript",
            "title": "$:/plugins/tiddlywiki/xlsx-utils/dist/cpexcel.js",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/license": {
            "text": "Copyright (C) 2012-2015  SheetJS\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n\nExcept where noted, this license applies to any and all software programs and associated documentation files created by the Original Author and distributed with the Software:\n\n'jszip.js' is a modified version of JSZip, Copyright (c) Stuart Knightley, David Duponchel, Franz Buchinger, Ant'onio Afonso.  JSZip is dual licensed and is used according to the terms of the MIT License.\n",
            "type": "text/plain",
            "title": "$:/plugins/tiddlywiki/xlsx-utils/license"
        },
        "$:/language/Help/xlsx-import": {
            "title": "$:/language/Help/xlsx-import",
            "description": "Import tiddlers from an XLSX spreadsheet file",
            "text": "Imports tiddlers from an XLSX spreadsheet file\n\n```\n--xlsx-import <filename> <importSpec>\n```\n\n* ''filename'': filename of the `.xlsx` file\n* ''title'': title of the import specification tiddler to be used for the import"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/importer.js": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/importer.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/xlsx-utils/importer.js\ntype: application/javascript\nmodule-type: library\n\nClass to import an Excel file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_IMPORT_SPEC_TITLE = \"$:/config/plugins/tiddlywiki/xlsx-utils/default-import-spec\";\n\nvar XLSX = require(\"$:/plugins/tiddlywiki/xlsx-utils/xlsx.js\"),\n\tJSZip = require(\"$:/plugins/tiddlywiki/jszip/jszip.js\");\n\nvar XLSXImporter = function(options) {\n\tthis.filename = options.filename;\n\tthis.text = options.text;\n\tthis.importSpec = options.importSpec || $tw.wiki.getTiddlerText(DEFAULT_IMPORT_SPEC_TITLE);\n\tthis.logger = new $tw.utils.Logger(\"xlsx-utils\");\n\tthis.results = [];\n\tif(JSZip) {\n\t\tthis.processWorkbook();\t\t\n\t}\n};\n\nXLSXImporter.prototype.getResults = function() {\n\treturn this.results;\n};\n\nXLSXImporter.prototype.processWorkbook = function() {\n\t// Read the workbook\n\tif(this.filename) {\n\t\tthis.workbook = XLSX.readFile(this.filename);\t\n\t} else if(this.text) {\n\t\tthis.workbook = XLSX.read(this.text,{type:\"base64\"});\n\t}\n\t// Read the root import specification\n\tthis.rootImportSpec = $tw.wiki.getTiddler(this.importSpec);\n\tif(this.rootImportSpec) {\n\t\t// Iterate through the sheets specified in the list field\n\t\t$tw.utils.each(this.rootImportSpec.fields.list || [],this.processSheet.bind(this));\n\t}\n};\n\nXLSXImporter.prototype.processSheet = function(sheetImportSpecTitle) {\n\t// Get the sheet import specifier\n\tthis.sheetImportSpec = $tw.wiki.getTiddler(sheetImportSpecTitle);\n\tif(this.sheetImportSpec) {\n\t\tthis.sheetName = this.sheetImportSpec.fields[\"import-sheet-name\"];\n\t\tthis.sheet = this.workbook.Sheets[this.sheetName];\n\t\tif(!this.sheet) {\n\t\t\tthis.logger.alert(\"Missing sheet '\" + this.sheetName + \"'\");\n\t\t} else {\n\t\t\t// Get the size of the sheet\n\t\t\tthis.sheetSize = this.measureSheet(this.sheet);\n\t\t\t// Read the column names from the first row\n\t\t\tthis.columnsByName = this.findColumns(this.sheet,this.sheetSize);\n\t\t\t// Iterate through the rows\n\t\t\tfor(this.row=this.sheetSize.startRow+1; this.row<=this.sheetSize.endRow; this.row++) {\n\t\t\t\t// Iterate through the row import specifiers\n\t\t\t\t$tw.utils.each(this.sheetImportSpec.fields.list || [],this.processRow.bind(this));\t\t\t\t\t\n\t\t\t}\n\t\t}\n\t}\n};\n\nXLSXImporter.prototype.processRow = function(rowImportSpecTitle) {\n\tthis.rowImportSpec = $tw.wiki.getTiddler(rowImportSpecTitle);\n\tif(this.rowImportSpec) {\n\t\tthis.tiddlerFields = {};\n\t\tthis.skipTiddler = false;\n\t\t// Determine the type of row\n\t\tthis.rowType = this.rowImportSpec.fields[\"import-row-type\"] || \"by-field\";\n\t\tswitch(this.rowType) {\n\t\t\tcase \"by-column\":\n\t\t\t\tthis.processRowByColumn();\n\t\t\t\tbreak;\n\t\t\tcase \"by-field\":\n\t\t\t\tthis.processRowByField();\n\t\t\t\tbreak;\n\t\t}\n\t\t// Save the tiddler if not skipped\n\t\tif(!this.skipTiddler) {\n\t\t\tif(!this.tiddlerFields.title) {\n\t\t\t\tthis.logger.alert(\"Missing title field for \" + JSON.stringify(this.tiddlerFields));\n\t\t\t}\n\t\t\tthis.results.push(this.tiddlerFields);\t\t\t\t\t\t\t\t\n\t\t}\n\t}\n};\n\nXLSXImporter.prototype.processRowByColumn = function() {\n\tvar self = this;\n\t// Iterate through the columns for the row\n\t$tw.utils.each(this.columnsByName,function(index,name) {\n\t\tvar cell = self.sheet[XLSX.utils.encode_cell({c: self.columnsByName[name], r: self.row})];\n\t\tname = name.toLowerCase();\n\t\tif(cell && cell.w && $tw.utils.isValidFieldName(name)) {\n\t\t\tself.tiddlerFields[name] = cell.w;\t\t\n\t\t}\n\t});\n\t// Skip the tiddler entirely if it doesn't have a title\n\tif(!this.tiddlerFields.title) {\n\t\tthis.skipTiddler = true;\n\t}\n};\n\nXLSXImporter.prototype.processRowByField = function() {\n\t// Iterate through the fields for the row\n\t$tw.utils.each(this.rowImportSpec.fields.list || [],this.processField.bind(this));\n};\n\nXLSXImporter.prototype.processField = function(fieldImportSpecTitle) {\n\tvar fieldImportSpec = $tw.wiki.getTiddler(fieldImportSpecTitle);\n\tif(fieldImportSpec) {\n\t\tvar fieldName = fieldImportSpec.fields[\"import-field-name\"],\n\t\t\tvalue;\n\t\tswitch(fieldImportSpec.fields[\"import-field-source\"]) {\n\t\t\tcase \"column\":\n\t\t\t\tvar columnName = fieldImportSpec.fields[\"import-field-column\"],\n\t\t\t\t\tcell = this.sheet[XLSX.utils.encode_cell({c: this.columnsByName[columnName], r: this.row})];\n\t\t\t\tif(cell) {\n\t\t\t\t\tswitch(fieldImportSpec.fields[\"import-field-type\"] || \"string\") {\n\t\t\t\t\t\tcase \"date\":\n\t\t\t\t\t\t\tif(cell.t === \"n\") {\n\t\t\t\t\t\t\t\tvalue = $tw.utils.stringifyDate(new Date((cell.v - (25567 + 2)) * 86400 * 1000));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"string\":\n\t\t\t\t\t\t\t// Intentional fall-through\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tvalue = cell.w;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"constant\":\n\t\t\t\tvalue = fieldImportSpec.fields[\"import-field-value\"]\n\t\t\t\tbreak;\n\t\t}\n\t\tvalue = (value || \"\").trim();\n\t\tif(value === \"\") {\n\t\t\tif((fieldImportSpec.fields[\"import-field-skip-tiddler-if-blank\"] || \"\").trim().toLowerCase() === \"yes\") {\n\t\t\t\tthis.skipTiddler = true;\n\t\t\t}\n\t\t\tif(fieldImportSpec.fields[\"import-field-replace-blank\"]) {\n\t\t\t\tvalue = fieldImportSpec.fields[\"import-field-replace-blank\"];\n\t\t\t}\n\t\t}\n\t\tif(fieldImportSpec.fields[\"import-field-prefix\"]) {\n\t\t\tvalue = fieldImportSpec.fields[\"import-field-prefix\"] + value;\n\t\t}\n\t\tif(fieldImportSpec.fields[\"import-field-suffix\"]) {\n\t\t\tvalue = value + fieldImportSpec.fields[\"import-field-suffix\"];\n\t\t}\n\t\tswitch(fieldImportSpec.fields[\"import-field-list-op\"] || \"none\") {\n\t\t\tcase \"none\":\n\t\t\t\tthis.tiddlerFields[fieldName] = value;\n\t\t\t\tbreak;\n\t\t\tcase \"append\":\n\t\t\t\tvar list = $tw.utils.parseStringArray(this.tiddlerFields[fieldName] || \"\");\n\t\t\t\t$tw.utils.pushTop(list,value)\n\t\t\t\tthis.tiddlerFields[fieldName] = list;\n\t\t\t\tbreak;\n\t\t}\n\t}\n}\n\nXLSXImporter.prototype.measureSheet = function(sheet) {\n\tvar sheetRange = XLSX.utils.decode_range(sheet[\"!ref\"]);\n\treturn {\n\t\tstartRow: Math.min(sheetRange.s.r,sheetRange.e.r),\n\t\tendRow: Math.max(sheetRange.s.r,sheetRange.e.r),\n\t\tstartCol: Math.min(sheetRange.s.c,sheetRange.e.c),\n\t\tendCol: Math.max(sheetRange.s.c,sheetRange.e.c)\n\t}\n};\n\nXLSXImporter.prototype.findColumns = function(sheet,sheetSize) {\n\tvar columnsByName = {};\n\tfor(var col=sheetSize.startCol; col<=sheetSize.endCol; col++) {\n\t\tvar cell = sheet[XLSX.utils.encode_cell({c: col, r: sheetSize.startRow})],\n\t\t\tcolumnName;\n\t\tif(cell) {\n\t\t\tcolumnName = cell.w;\n\t\t\tif(columnName) {\n\t\t\t\tcolumnsByName[columnName] = col;\t\t\t\t\t\t\t\n\t\t\t}\n\t\t}\n\t}\n\treturn columnsByName;\n};\n\nexports.XLSXImporter = XLSXImporter;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/readme": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/readme",
            "text": "This plugin provides a flexible way to import tiddlers from Excel files. It is based on the library [[js-xlsx|https://github.com/SheetJS/js-xlsx]].\n\nThe plugin uses //import specifications// to determine how incoming spreadsheets are processed. You can view, create and edit import specifications in the control panel \"XLSX Utilities\" tab, or directly in the [[plugin controls|$:/plugins/tiddlywiki/xlsx-utils]]. This is also where you select which import specification is selected for use during the next import operation.\n\nEach sheet is expected to consist of a single header row followed by multiple content rows, each consisting of an independent record. The plugin automatically detects the extent of each sheet by looking for the bottom right cell that contains a value. This can lead to unexpected results if a cell is accidentally created with an invisible, blank value.\n\nImport specifications describe how tiddlers are created from a particular row of a sheet; multiple tiddlers can be generated from a single row. (Conversely, if different rows yield tiddlers with the same title then they will overwrite one another).\n\nEach field of each tiddler can be assigned a constant value, or a value taken from a named column of the sheet, optionally with a prefix and/or suffix added. There is special support for handling list fields (like the tags field), with the ability to append new items to the list.\n\nInternally, each import specifier is actually modelled as a hierarchy of connected tiddlers with the field ''import-spec-role'' indicating the following roles:\n\n* ''workbook'': describes the sheets to be imported from the workbook\n* ''sheet'': describes each sheet to be processed\n* ''row'': describes the tiddlers to be imported from each row of each sheet\n* ''field'': describes the fields to be assigned to each tiddler from each row of each sheet\n\nThe easiest way to understand the structure is to explore the example import specifications, and the corresponding spreadsheets they are designed to handle.\n\nNote that there are many possible different ways of importing a particular spreadsheet, depending on whether the structures are modelled with fields, tags, prefixes or other mechanisms. The plugin is designed to support a wide range of applications.\n\nThis plugin also requires the JSZip plugin ([[$:/plugins/tiddlywiki/jszip]]) to be installed.\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/startup.js": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/startup.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/xlsx-utils/startup.js\ntype: application/javascript\nmodule-type: startup\n\nInitialisation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"xlsx-startup\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Check JSZip is installed\n\tif(!$tw.utils.hop($tw.modules.titles,\"$:/plugins/tiddlywiki/jszip/jszip.js\")) {\n\t\t// Make a logger\n\t\tvar logger = new $tw.utils.Logger(\"xlsx-utils\");\n\t\tlogger.alert(\"The plugin 'xlsx-utils' requires the 'jszip' plugin to be installed\");\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/styles": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/styles",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define quick-colour-selector-background() #bac0f1\n\\define quick-colour-selector-border() #9196c1\n\n\\define quick-colour-editor-background() #bae3f1\n\\define quick-colour-editor-controls() #d2ffff\n\\define quick-colour-editor-border() #97b8c3\n\n\\define quick-colour-workbook-background() #baf1db\n\\define quick-colour-workbook-controls() #d3fff6\n\\define quick-colour-workbook-border() #98c3b2\n\n\\define quick-colour-sheet-background() #f1ebba\n\\define quick-colour-sheet-controls() #fffed3\n\\define quick-colour-sheet-border() #c4be98\n\n\\define quick-colour-row-background() #f1baba\n\\define quick-colour-row-controls() #fed1d2\n\\define quick-colour-row-border() #c39697\n\n\\define quick-colour-field-background() #e0d4fb\n\\define quick-colour-field-controls() #fcefff\n\\define quick-colour-field-border() #b6adcb\n\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-import-spec-selector {\n\tborder: 1px solid <<quick-colour-selector-border>>;\n\tbackground-color: <<quick-colour-selector-background>>;\n\tpadding: 0.25em;\n}\n\n.tc-import-spec-editor-wrapper {\n\tborder: 1px solid <<quick-colour-editor-border>>;\n\tbackground-color: <<quick-colour-editor-background>>;\n\tpadding: 0.25em;\n}\n\n.tc-import-spec-editor {\n\tborder: 1px solid <<quick-colour-editor-border>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.25em;\n}\n\n.tc-import-spec-editor-controls {\n\tdisplay: block;\n\tbackground-color: <<quick-colour-editor-controls>>;\n\tborder-bottom: 1px solid <<quick-colour-editor-background>>;\n\tpadding: 0;\n\tmargin: 0;\n\tlist-style: none;\n}\n\n.tc-import-spec-editor-controls li {\n\tpadding: 0.25em 0.5em;\n}\n\n.tc-import-spec-editor-controls li:not(:last-child) {\n\tborder-bottom: 1px solid <<quick-colour-editor-background>>;\n}\n\n.tc-import-spec-editor-list {\n}\n\n.tc-import-spec-workbook-wrapper {\n\tborder: 1px solid <<quick-colour-workbook-border>>;\n\tbackground-color: <<quick-colour-workbook-background>>;\n\tpadding: 0.25em;\n\tmargin: 0.5em;\n}\n\n.tc-import-spec-workbook {\n\tborder: 1px solid <<quick-colour-workbook-border>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.25em;\n}\n\n.tc-import-spec-workbook-controls {\n\tdisplay: block;\n\tbackground-color: <<quick-colour-workbook-controls>>;\n\tborder-bottom: 1px solid <<quick-colour-workbook-background>>;\n\tpadding: 0;\n\tmargin: 0;\n\tlist-style: none;\n}\n\n.tc-import-spec-workbook-controls li {\n\tpadding: 0.25em 0.5em;\n}\n\n.tc-import-spec-workbook-controls li:not(:last-child) {\n\tborder-bottom: 1px solid <<quick-colour-workbook-background>>;\n}\n\n.tc-import-spec-workbook-list {\n}\n\n.tc-import-spec-sheet-wrapper {\n\tborder: 1px solid <<quick-colour-sheet-border>>;\n\tbackground-color: <<quick-colour-sheet-background>>;\n\tpadding: 0.25em;\n\tmargin: 0.5em;\n}\n\n.tc-import-spec-sheet {\n\tborder: 1px solid <<quick-colour-sheet-border>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.25em;\n}\n\n.tc-import-spec-sheet-controls {\n\tdisplay: block;\n\tbackground-color: <<quick-colour-sheet-controls>>;\n\tborder-bottom: 1px solid <<quick-colour-sheet-background>>;\n\tpadding: 0;\n\tmargin: 0;\n\tlist-style: none;\n}\n\n.tc-import-spec-sheet-controls li {\n\tpadding: 0.25em 0.5em;\n}\n\n.tc-import-spec-sheet-controls li:not(:last-child) {\n\tborder-bottom: 1px solid <<quick-colour-sheet-background>>;\n}\n\n.tc-import-spec-sheet-list {\n}\n\n.tc-import-spec-row-wrapper {\n\tborder: 1px solid <<quick-colour-row-border>>;\n\tbackground-color: <<quick-colour-row-background>>;\n\tpadding: 0.25em;\n\tmargin: 0.5em;\n}\n\n.tc-import-spec-row {\n\tborder: 1px solid <<quick-colour-row-border>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.25em;\n}\n\n.tc-import-spec-row-controls {\n\tdisplay: block;\n\tbackground-color: <<quick-colour-row-controls>>;\n\tborder-bottom: 1px solid <<quick-colour-row-background>>;\n\tpadding: 0;\n\tmargin: 0;\n\tlist-style: none;\n}\n\n.tc-import-spec-row-controls li {\n\tpadding: 0.25em 0.5em;\n}\n\n.tc-import-spec-row-controls li:not(:last-child) {\n\tborder-bottom: 1px solid <<quick-colour-row-background>>;\n}\n\n.tc-import-spec-row-list {\n\tlist-style: none;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.tc-import-spec-field-wrapper {\n\tfont-size: 0.9em;\n\tborder: 1px solid <<quick-colour-field-border>>;\n\tbackground-color: <<quick-colour-field-background>>;\n\tpadding: 0.25em;\n\tmargin: 0.5em;\n}\n"
        },
        "$:/plugins/tiddlywiki/xlsx-utils/xlsx-import-command.js": {
            "title": "$:/plugins/tiddlywiki/xlsx-utils/xlsx-import-command.js",
            "text": "/*\\\ntitle: $:/plugins/tiddlywiki/xlsx-utils/xlsx-import-command.js\ntype: application/javascript\nmodule-type: command\n\nCommand to import an xlsx file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"xlsx-import\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilename = this.params[0],\n\t\timportSpec = this.params[1],\n\t\tXLSXImporter = require(\"$:/plugins/tiddlywiki/xlsx-utils/importer.js\").XLSXImporter,\n\t\timporter = new XLSXImporter({\n\t\t\tfilename: filename,\n\t\t\timportSpec: importSpec\n\t\t});\n\t$tw.wiki.addTiddlers(importer.getResults());\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/tobibeer/appear/widget.js": {
            "text": "/*\\\r\ntitle: $:/plugins/tobibeer/appear/widget.js\r\ntype: application/javascript\r\nmodule-type: widget\r\n\r\nUse the appear widget for popups, sliders, accordion menus\r\n\r\n@preserve\r\n\\*/\n(function(){\"use strict\";var t=require(\"$:/core/modules/widgets/widget.js\").widget,e=function(t,e){this.initialise(t,e)},i={};e.prototype=new t;e.prototype.render=function(t,e){this.parentDomNode=t;this.nextSibling=e;this.computeAttributes();this.execute();var i,s,r,a,h,n,l=[];if(this.handle){this.getHandlerCache(this.handle,1);this.refreshHandler()}else{s={type:\"button\"};s.attributes=this.setAttributes(s,\"button\");i=s.attributes[\"class\"].value.trim();s.attributes[\"class\"].value=i+\" appear-show\"+(this.handler?\" tc-popup-absolute\":\"\");s.children=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.show,{parseAsInline:true}).tree;h={type:\"reveal\",children:this.parseTreeNode.children};h.attributes=this.setAttributes(h,\"reveal\");h.isBlock=!(this.mode&&this.mode===\"inline\");if(h.attributes.type&&h.attributes.type.value===\"popup\"){s.attributes.popup=h.attributes.state;l.push(s);if(!this.handler){l.push(h)}else{s.attributes.handler=this.handler}}else{h.attributes.type={type:\"string\",value:\"match\"};h.attributes.text={type:\"string\",value:this.currentTiddler};s.attributes.set=h.attributes.state;s.attributes.setTo={type:\"string\",value:this.currentTiddler};a={type:\"reveal\",isBlock:this.block,children:[s],attributes:{type:{type:\"string\",value:\"nomatch\"},state:h.attributes.state,text:{type:\"string\",value:this.currentTiddler}}};if(!this.once){r=$tw.utils.deepCopy(s);r.attributes[\"class\"].value=i+\" appear-hide \"+(this.attr.button.selectedClass?this.attr.button.selectedClass:\"\");r.attributes.setTo={type:\"string\",value:\"\"};r.children=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.hide,{parseAsInline:true}).tree}n=$tw.utils.deepCopy(a);n.children=[];if(!this.once){n.children.push(r)}if(!this.handler){n.children.push(h)}n.attributes.type.value=\"match\";l.push(a,n)}this.makeChildWidgets(l);this.renderChildren(this.parentDomNode,e);if(this.handler){this.addToHandlerCache(h)}}};e.prototype.execute=function(){var t=this;this.attr={map:{reveal:{\"class\":1,position:1,retain:1,state:1,style:1,tag:1,type:1},button:{\"button-class\":1,\"button-style\":1,\"button-tag\":1,tooltip:1,selectedClass:1}},rename:{\"button-class\":\"class\",\"button-style\":\"style\",\"button-tag\":\"tag\"},button:{},reveal:{}};$tw.utils.each(this.attributes,function(e,i){var s;$tw.utils.each(t.attr.map,function(r,a){$tw.utils.each(Object.keys(r),function(r){if(r==i){t.attr[a][i]=e;s=false;return false}});return s})});this.currentTiddler=this.getVariable(\"currentTiddler\");this.show=this.getValue(this.attributes.show,\"show\");this.hide=this.getValue(this.attributes.hide,\"hide\");if(!this.hide){this.hide=this.show}this.once=this.attributes.once&&this.attributes.once!==\"false\";this.$state=this.attributes.$state;this.mode=this.getValue(this.attributes.mode,\"mode\");this.handle=this.attributes.handle;this.handler=this.attributes.handler;this.handlerVariables=(this.attributes.variables||\"\")+\" currentTiddler\";this.keep=[\"yes\",\"true\"].indexOf((this.getValue(this.attributes.keep,\"keep\")||\"\").toLocaleLowerCase())>-1;if(!this.attr.reveal.state){this.attr.reveal.state=this.getValue(undefined,\"default-state\")+this.currentTiddler+this.getStateQualifier()+\"/\"+(this.attr.reveal.type?this.attr.reveal.type+\"/\":\"\")+(this.mode?this.mode+\"/\":\"\")+(this.once?\"once/\":\"\")+(this.$state?\"/\"+this.$state:\"\")}};e.prototype.refresh=function(t){var e=this.computeAttributes();if(Object.keys(e).length){this.refreshSelf();return true}if(this.handle){this.refreshHandler()}return this.refreshChildren(t)};e.prototype.getValue=function(t,e){var i,s,r={show:\"»\",\"default-state\":\"$:/temp/appear/\"};if(t===undefined){i=this.wiki.getTiddler(\"$:/plugins/tobibeer/appear/defaults/\"+e);if(i){s=i.getFieldString(\"undefined\");if(!s||s===\"false\"){t=i.getFieldString(\"text\")}}}if(t===undefined){t=r[e]}return t};e.prototype.setAttributes=function(t,e){var i=this,s={};$tw.utils.each(Object.keys(this.attr.map[e]),function(r){var a,h=i.attr.rename[r];if(!h){h=r}a=i.getValue(i.attr[e][r],r);if(h===\"class\"){a=[\"appear\",\"appear-\"+e,e===\"reveal\"&&i.keep?\"tc-popup-keep\":\"\",i.mode?\"appear-\"+i.mode:\"\",i.once?\"appear-once\":\"\",a||\"\"].join(\" \")}if(a!==undefined){if(h===\"tag\"){t.tag=a}else{s[h]={type:\"string\",value:a}}}});return s};e.prototype.getHandlerCache=function(t,e){var s=i[t];if(!s||e){i[t]={handled:{},handle:{}};s=i[t]}return s};e.prototype.refreshHandler=function(){var t=this,e=this.getHandlerCache(this.handle),s=e.handle;if(Object.keys(s).length){$tw.utils.each(s,function(e,i){t.removeChildNode(i);t.children.push(t.makeChildWidget(e));t.children[t.children.length-1].render(t.parentDomNode,t.nextSibling)});i[this.handle].handle={}}};e.prototype.removeChildNode=function(t){var e=this;$tw.utils.each(this.children,function(i,s){if(i.children[0].state===t){i.removeChildDomNodes();e.children.splice(s);return false}})};e.prototype.addToHandlerCache=function(t){var e=this,i=t.attributes.state.value,s=this.getHandlerCache(this.handler),r=s.handled[i],a={type:\"vars\",children:[t],attributes:{}};$tw.utils.each((this.handlerVariables||\"\").split(\" \"),function(t){t=t.trim();if(t){a.attributes[t]={type:\"string\",value:(e.getVariable(t)||\"\").toString()}}});if(a!==r){s.handle[i]=a;this.wiki.setText(\"$:/temp/appear-handler/\"+this.handler,\"text\",undefined,i)}};exports.appear=e})();",
            "title": "$:/plugins/tobibeer/appear/widget.js",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/tobibeer/appear/defaults/show": {
            "title": "$:/plugins/tobibeer/appear/defaults/show",
            "text": "»"
        },
        "$:/plugins/tobibeer/appear/defaults/mode": {
            "title": "$:/plugins/tobibeer/appear/defaults/mode",
            "text": "block"
        },
        "$:/plugins/tobibeer/appear/defaults/keep": {
            "title": "$:/plugins/tobibeer/appear/defaults/keep",
            "text": "yes"
        },
        "$:/plugins/tobibeer/appear/defaults/button-class": {
            "title": "$:/plugins/tobibeer/appear/defaults/button-class",
            "text": "tc-btn-invisible tc-tiddlylink"
        },
        "$:/plugins/tobibeer/appear/defaults/default-state": {
            "title": "$:/plugins/tobibeer/appear/defaults/default-state",
            "text": "$:/temp/appear/"
        },
        "$:/plugins/tobibeer/appear/popup.js": {
            "text": "/*\\\r\ntitle: $:/plugins/tobibeer/appear/popup.js\r\ntype: application/javascript\r\nmodule-type: utils\r\n\r\nAn enhanced version of the core Popup to support:\r\n* absolute popups\r\n* preview popups\r\n* popup z-index\r\n\r\n@preserve\r\n\\*/\n(function(){\"use strict\";var t=require(\"$:/core/modules/utils/dom/popup.js\").Popup,e=require(\"$:/core/modules/widgets/reveal.js\").reveal,s=e.prototype.refresh;t.prototype.show=function(t){var e,s=t.domNode,p=$tw.utils.hasClass(s,\"tc-popup-absolute\"),o=this.popupInfo(s),i=function(t){var e=t,s=0,p=0;do{s+=e.offsetLeft||0;p+=e.offsetTop||0;e=e.offsetParent}while(e);return{left:s,top:p}},l={left:s.offsetLeft,top:s.offsetTop};e=o.popupLevel;if(o.isHandle){e++}this.cancel(e);if(this.findPopup(t.title)===-1){this.popups.push({title:t.title,wiki:t.wiki,domNode:s})}l=p?i(s):l;t.wiki.setTextReference(t.title,\"(\"+l.left+\",\"+l.top+\",\"+s.offsetWidth+\",\"+s.offsetHeight+\")\");if(this.popups.length>0){this.rootElement.addEventListener(\"click\",this,true)}};t.prototype.popupInfo=function(t){var e,s=false,p=t;while(p&&e===undefined){if($tw.utils.hasClass(p,\"tc-popup-handle\")||$tw.utils.hasClass(p,\"tc-popup-keep\")){s=true}if($tw.utils.hasClass(p,\"tc-reveal\")&&($tw.utils.hasClass(p,\"tc-popup\")||$tw.utils.hasClass(p,\"tc-popup-handle\"))){e=parseInt(p.style.zIndex)-1e3}p=p.parentNode}var o={popupLevel:e||0,isHandle:s};return o};t.prototype.handleEvent=function(t){if(t.type===\"click\"){var e=this.popupInfo(t.target),s=e.popupLevel-1;if(e.isHandle){if(s<0){s=1}else{s++}}this.cancel(s)}};e.prototype.refresh=function(){var t,e,p=this.isOpen;e=s.apply(this,arguments);t=this.domNodes[0];if(this.isOpen&&(p!==this.isOpen||!t.style.zIndex)&&t&&(this.type===\"popup\"||$tw.utils.hasClass(t,\"tc-block-dropdown\")&&$tw.utils.hasClass(t,\"tc-reveal\"))){t.style.zIndex=1e3+$tw.popup.popups.length}return e}})();",
            "title": "$:/plugins/tobibeer/appear/popup.js",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/plugins/tobibeer/appear/readme": {
            "title": "$:/plugins/tobibeer/appear/readme",
            "text": "This plugin provides the ''$appear'' widget that can render popups and sliders (inline or block) as well as accordion menus.\n\n!! Attributes\r\n; type\r\n: set to `popup` to have the content appear as a popup\r\n; show\r\n: the button label\r\n; hide\r\n: the hide button label\r\n; mode\r\n: either `block` or `inline`, with respect to the inner content\r\n: any other mode is interpreted as block mode, without the default styles applying, e.g. drop-shadows\r\n; once\r\n: allows to click the button once, then hides it (unless the state is deleted)\r\n; $state\r\n: the widget calculates a state for you, use this to append a simple id\r\n; state\r\n: alternatively, specify a fully qualified state\r\n; keep\r\n: make popups sticky when `yes` or `true`\r\n; handle / handler / variables\r\n: allows to take the popup contents out of the flow and render them elsewhere on the page\r\n: required to properly create popups in table cells and other constained elements\r\n: specify variables to take along\n\n<br>\n\n; documentation / examples / demos...\r\n: http://tobibeer.github.io/tw5-plugins#appear\r\n"
        },
        "$:/plugins/tobibeer/appear/styles": {
            "title": "$:/plugins/tobibeer/appear/styles",
            "tags": "$:/tags/Stylesheet",
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline html\n\n<pre>.tc-reveal.appear-block,\r\n.tc-popup.appear {\r\n\tborder-radius: 5px;\r\n\tpadding: 1px 1em;\r\n\t<<box-shadow \"2px 2px 4px rgba(0,0,0,0.3)\">>;\r\n}\r\n.tc-popup.appear {\r\n\tpadding: 0 1em;\r\n\tbackground: <<colour background>>;\r\n}\r\n.appear-reveal.appear-inline{\r\nmargin-left:5px;\r\n}\r\n.appear-reveal.appear-inline.appear-once{\r\nmargin-left:0;\r\n}</pre>"
        }
    }
}

<$button class=<<tv-config-toolbar-class>> tooltip={{$:/plugins/TWaddle/tw-admin/button!!caption}} aria-label={{$:/plugins/TWaddle/tw-admin/button!!description}} class=<<tv-config-toolbar-class>>>
   <$action-sendmessage $message="tm-open-window" 
      $param="$:/plugins/TWaddle/tw-admin/content" height="600px" width="500px"/>
<$list filter="[<tv-config-toolbar-icons>prefix[yes]]">
{{$:/plugins/TWaddle/tw-admin/icon}}
</$list>
</$button>
[[sample content|$:/plugins/TWaddle/tw-admin/sample]]

<div class="tw-admin-content">

!!!Wiki settings
<<toggle $:/plugins/TWaddle/tw-admin/button!!tags $:/tags/PageControls " " >> {{$:/plugins/TWaddle/tw-admin/icon}} in Sidebar |
<<toggle $:/plugins/TWaddle/tw-admin/content!!tags $:/tags/ControlPanel/Settings "" >>  in //Ctrlpanel > Settings//<br><br>
Sidebar<<toggle $:/state/sidebar yes no >> |
<<toggle $:/core/ui/TopBar/menu!!tags $:/tags/TopRightBar " " >>  {{$:/core/images/chevron-right}}| 
<<toggle $:/Site/beta!!tags $:/tags/Stylesheet "" >>Stamp <$edit-text tiddler="$:/Site/beta" field="content"/><br>

Sidebar tools |
<<toggle $:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview show hide >> {{$:/core/images/permaview-button}}|
<<toggle $:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel show hide >> {{$:/core/images/options-button}}|
<<toggle $:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/save-wiki show hide >> {{$:/core/images/save-button}}|
<br>

Sidebar tabs |
<<toggle $:/core/ui/SideBar/Open!!tags $:/tags/SideBar " " >> Open |
<<toggle $:/core/ui/SideBar/Recent!!tags $:/tags/SideBar " " >> Recent |
<<toggle $:/core/ui/SideBar/Tools!!tags $:/tags/SideBar " " >> Tools |
<<toggle $:/core/ui/SideBar/More!!tags $:/tags/SideBar " " >> More |

!!!Tiddler settings
Toolbar: 
<<toggle "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/edit" show hide>>{{$:/core/images/edit-button}}|
<<toggle $:/config/ViewToolbarButtons/Visibility/$:/plugins/TWaddle/SideEditor/Button show hide >>{{$:/plugins/TWaddle/SideEditor/Button!!caption}} |
<br>

<<toggle  "$:/config/EditorTypeMappings/text/vnd.tiddlywiki" comptext text>>  Comptext editor
<br>

<<toggle  "$:/plugins/TWaddle/TabLinks/Stylesheet!!display" inline-block none>>  _<span style="border:1px solid; border-bottom:0;"> tab </span>__&nbsp;links__
</div>

<style>
.tw-admin-content {
  margin:0 auto; 
  width: -moz-fit-content;
  width: fit-content;
}

body.tc-body .tw-admin-content svg {
 width: 1em;
 margin: auto .4em -.7em .5em;
 fill:green;
}
body.tc-body .tw-admin-content svg:after {border:1px solid red; content:"xxx"; width:1em; height;1em;
}
</style>
1784
<pre>/* Tweak headings h2, h3, 4h / !!, !!!, !!!! */
.tc-tiddler-body h2 {margin-bottom:-.2em; margin-top:1.2em;}
.tc-tiddler-body h3 {margin-bottom:-.4em; margin-top:1.4em;}
.tc-tiddler-body h4 {margin-bottom:-.6em; margin-top:1.6em; font-weight:bold;}

/* Editor preview remove top spacing */
.tc-tiddler-preview-preview p {margin-top:0;}

/* TW-version added to site title */
.tc-site-title:before {
  content:"TW <<version>>";
  position:absolute;
  margin-top:-1.9em;
  color:silver;
  font-size:13px;
}
</pre>
A Catalogue of Mozart's music
sunypoly-dylan-wamozart
no
no
no
yes
yes
yes
yes
yes
yes
yes
readme
yes
yes
yes
$:/core/ui/AdvancedSearch/Standard
$:/core/ui/TiddlerInfo/Tools
$:/core/ui/ControlPanel/Toolbars
$:/core/ui/ControlPanel/Advanced
$:/core/ui/ControlPanel/Plugins/Installed/Plugins
$:/core/ui/MoreSideBar/Plugins/Plugins
$:/core/ui/ControlPanel/Stylesheets
$:/core/ui/ControlPanel/Plugins/Add/Plugins
$:/core/ui/ControlPanel/Appearance
$:/core/ui/ControlPanel/Saving/DownloadSaver
$:/core/ui/TiddlerInfo/Tools
$:/core/ui/MoreSideBar/Types
$:/core/ui/SideBar/Tools
$:/core/ui/ControlPanel/Toolbars/EditorToolbar
Dylan Pagillo











Allegro in C for Piano











Motet in D,  Ave verum Corpus



{
    "tiddlers": {
        "$:/info/browser": {
            "title": "$:/info/browser",
            "text": "yes"
        },
        "$:/info/node": {
            "title": "$:/info/node",
            "text": "no"
        },
        "$:/info/url/full": {
            "title": "$:/info/url/full",
            "text": "http://sunypoly-dylan-wamozart.tiddlyspot.com/"
        },
        "$:/info/url/host": {
            "title": "$:/info/url/host",
            "text": "sunypoly-dylan-wamozart.tiddlyspot.com"
        },
        "$:/info/url/hostname": {
            "title": "$:/info/url/hostname",
            "text": "sunypoly-dylan-wamozart.tiddlyspot.com"
        },
        "$:/info/url/protocol": {
            "title": "$:/info/url/protocol",
            "text": "http:"
        },
        "$:/info/url/port": {
            "title": "$:/info/url/port",
            "text": ""
        },
        "$:/info/url/pathname": {
            "title": "$:/info/url/pathname",
            "text": "/"
        },
        "$:/info/url/search": {
            "title": "$:/info/url/search",
            "text": ""
        },
        "$:/info/url/origin": {
            "title": "$:/info/url/origin",
            "text": "http://sunypoly-dylan-wamozart.tiddlyspot.com"
        },
        "$:/info/browser/screen/width": {
            "title": "$:/info/browser/screen/width",
            "text": "1920"
        },
        "$:/info/browser/screen/height": {
            "title": "$:/info/browser/screen/height",
            "text": "1080"
        }
    }
}
$:/_ExcelImporter/ImportSpecifiers/Field 11
























































































xls
map
loaded
$:/themes/tiddlywiki/snowwhite
{
    "tiddlers": {
        "$:/themes/tiddlywiki/snowwhite/base": {
            "title": "$:/themes/tiddlywiki/snowwhite/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sidebar-header {\n\ttext-shadow: 0 1px 0 <<colour sidebar-foreground-shadow>>;\n}\n\n.tc-tiddler-info {\n\t<<box-shadow \"inset 1px 2px 3px rgba(0,0,0,0.1)\">>\n}\n\n@media screen {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\">>\n\t}\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow none>>\n\t}\n}\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t<<transition \"fill 150ms ease-in-out\">>\n}\n\n.tc-tiddler-controls button.tc-selected,\n.tc-page-controls button.tc-selected {\n\t<<filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\">>\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-edit-tags {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\n\t<<box-shadow \"none\">>\n\tborder: none;\n\toutline: none;\n}\n\ntextarea.tc-edit-texteditor {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\t<<box-shadow \"2px 2px 5px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t<<box-shadow \"inset 0 1px 0 #fff\">>;\n}\n\n\n.tc-alert {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.6)\">>\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\n\tborder-top: none;\n\theight: 1px;\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\">>\n}\n\n.tc-message-box img {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n\n.tc-plugin-info {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n"
        }
    }
}
{
    "tiddlers": {
        "$:/themes/tiddlywiki/vanilla/themetweaks": {
            "title": "$:/themes/tiddlywiki/vanilla/themetweaks",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ThemeTweaks/ThemeTweaks}}",
            "text": "\\define lingo-base() $:/language/ThemeTweaks/\n\n\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n\\define backgroundimage-dropdown()\n<div class=\"tc-drop-down-wrapper\">\n<$button popup=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"\n\t$value=<<imageTitle>>\n/>\n\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n\\end\n\n\\define backgroundimageattachment-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\" default=\"scroll\">\n<option value=\"scroll\"><<lingo Settings/BackgroundImageAttachment/Scroll>></option>\n<option value=\"fixed\"><<lingo Settings/BackgroundImageAttachment/Fixed>></option>\n</$select>\n\\end\n\n\\define backgroundimagesize-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\" default=\"scroll\">\n<option value=\"auto\"><<lingo Settings/BackgroundImageSize/Auto>></option>\n<option value=\"cover\"><<lingo Settings/BackgroundImageSize/Cover>></option>\n<option value=\"contain\"><<lingo Settings/BackgroundImageSize/Contain>></option>\n</$select>\n\\end\n\n<<lingo ThemeTweaks/Hint>>\n\n! <<lingo Options>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><<lingo Options/SidebarLayout>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><option value=\"fixed-fluid\"><<lingo Options/SidebarLayout/Fixed-Fluid>></option><option value=\"fluid-fixed\"><<lingo Options/SidebarLayout/Fluid-Fixed>></option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><<lingo Options/StickyTitles>></$link><br>//<<lingo Options/StickyTitles/Hint>>// |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><option value=\"no\">{{$:/language/No}}</option><option value=\"yes\">{{$:/language/Yes}}</option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><<lingo Options/CodeWrapping>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><option value=\"pre\">{{$:/language/No}}</option><option value=\"pre-wrap\">{{$:/language/Yes}}</option></$select> |\n\n! <<lingo Settings>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"><<lingo Settings/FontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\"><<lingo Settings/CodeFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"><<lingo Settings/EditorFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"><<lingo Settings/BackgroundImage>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" default=\"\" tag=\"input\"/> |<<backgroundimage-dropdown>> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\"><<lingo Settings/BackgroundImageAttachment>></$link> |<<backgroundimageattachment-dropdown>> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\"><<lingo Settings/BackgroundImageSize>></$link> |<<backgroundimagesize-dropdown>> | |\n\n! <<lingo Metrics>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\"><<lingo Metrics/FontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\"><<lingo Metrics/LineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\"><<lingo Metrics/BodyFontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\"><<lingo Metrics/BodyLineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\"><<lingo Metrics/StoryLeft>></$link><br>//<<lingo Metrics/StoryLeft/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\"><<lingo Metrics/StoryTop>></$link><br>//<<lingo Metrics/StoryTop/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\"><<lingo Metrics/StoryRight>></$link><br>//<<lingo Metrics/StoryRight/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\"><<lingo Metrics/StoryWidth>></$link><br>//<<lingo Metrics/StoryWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"><<lingo Metrics/TiddlerWidth>></$link><br>//<<lingo Metrics/TiddlerWidth/Hint>>//<br> |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"><<lingo Metrics/SidebarBreakpoint>></$link><br>//<<lingo Metrics/SidebarBreakpoint/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\"><<lingo Metrics/SidebarWidth>></$link><br>//<<lingo Metrics/SidebarWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\" default=\"\" tag=\"input\"/> |\n"
        },
        "$:/themes/tiddlywiki/vanilla/base": {
            "title": "$:/themes/tiddlywiki/vanilla/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define custom-background-datauri()\n<$set name=\"background\" value={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}>\n<$list filter=\"[<background>is[image]]\">\n`background: url(`\n<$list filter=\"[<background>!has[_canonical_uri]]\">\n`\"`<$macrocall $name=\"datauri\" title={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}/>`\"`\n</$list>\n<$list filter=\"[<background>has[_canonical_uri]]\">\n`\"`<$view tiddler={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}} field=\"_canonical_uri\"/>`\"`\n</$list>\n`) center center;`\n`background-attachment: `{{$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment}}`;\n-webkit-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-moz-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-o-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\nbackground-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;`\n</$list>\n</$set>\n\\end\n\n\\define if-fluid-fixed(text,hiddenSidebarText)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"match\" text=\"fluid-fixed\">\n$text$\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">\n$hiddenSidebarText$\n</$reveal>\n</$reveal>\n\\end\n\n\\define if-editor-height-fixed(then,else)\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n$then$\n</$reveal>\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n$else$\n</$reveal>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/*\n** Start with the normalize CSS reset, and then belay some of its effects\n*/\n\n{{$:/themes/tiddlywiki/vanilla/reset}}\n\n*, input[type=\"search\"] {\n\tbox-sizing: border-box;\n\t-moz-box-sizing: border-box;\n\t-webkit-box-sizing: border-box;\n}\n\nhtml button {\n\tline-height: 1.2;\n\tcolor: <<colour button-foreground>>;\n\tbackground: <<colour button-background>>;\n\tborder-color: <<colour button-border>>;\n}\n\n/*\n** Basic element styles\n*/\n\nhtml {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/fontfamily}};\n\ttext-rendering: optimizeLegibility; /* Enables kerning and ligatures etc. */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n}\n\nhtml:-webkit-full-screen {\n\tbackground-color: <<colour page-background>>;\n}\n\nbody.tc-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/fontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/lineheight}};\n\tword-wrap: break-word;\n\t<<custom-background-datauri>>\n\tcolor: <<colour foreground>>;\n\tbackground-color: <<colour page-background>>;\n\tfill: <<colour foreground>>;\n}\n\n<<if-background-attachment \"\"\"\n\nbody.tc-body {\n        background-color: transparent;\n}\n\n\"\"\">>\n\nh1, h2, h3, h4, h5, h6 {\n\tline-height: 1.2;\n\tfont-weight: 300;\n}\n\npre {\n\tdisplay: block;\n\tpadding: 14px;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\tword-break: normal;\n\tword-wrap: break-word;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tbackground-color: <<colour pre-background>>;\n\tborder: 1px solid <<colour pre-border>>;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\ncode {\n\tcolor: <<colour code-foreground>>;\n\tbackground-color: <<colour code-background>>;\n\tborder: 1px solid <<colour code-border>>;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\nblockquote {\n\tborder-left: 5px solid <<colour blockquote-bar>>;\n\tmargin-left: 25px;\n\tpadding-left: 10px;\n\tquotes: \"\\201C\"\"\\201D\"\"\\2018\"\"\\2019\";\n}\n\nblockquote.tc-big-quote {\n\tfont-family: Georgia, serif;\n\tposition: relative;\n\tbackground: <<colour pre-background>>;\n\tborder-left: none;\n\tmargin-left: 50px;\n\tmargin-right: 50px;\n\tpadding: 10px;\n    border-radius: 8px;\n}\n\nblockquote.tc-big-quote cite:before {\n\tcontent: \"\\2014 \\2009\";\n}\n\nblockquote.tc-big-quote:before {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: open-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    left: -50px;\n    top: 42px;\n}\n\nblockquote.tc-big-quote:after {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: close-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    right: -80px;\n    bottom: -20px;\n}\n\ndl dt {\n\tfont-weight: bold;\n\tmargin-top: 6px;\n}\n\ntextarea,\ninput[type=text],\ninput[type=search],\ninput[type=\"\"],\ninput:not([type]) {\n\tcolor: <<colour foreground>>;\n\tbackground: <<colour background>>;\n}\n\ninput[type=\"checkbox\"] {\n  vertical-align: middle;\n}\n\n.tc-muted {\n\tcolor: <<colour muted-foreground>>;\n}\n\nsvg.tc-image-button {\n\tpadding: 0px 1px 1px 0px;\n}\n\n.tc-icon-wrapper > svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\nkbd {\n\tdisplay: inline-block;\n\tpadding: 3px 5px;\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tcolor: <<colour foreground>>;\n\tvertical-align: middle;\n\tbackground-color: <<colour background>>;\n\tborder: solid 1px <<colour muted-foreground>>;\n\tborder-bottom-color: <<colour muted-foreground>>;\n\tborder-radius: 3px;\n\tbox-shadow: inset 0 -1px 0 <<colour muted-foreground>>;\n}\n\n/*\nMarkdown likes putting code elements inside pre elements\n*/\npre > code {\n\tpadding: 0;\n\tborder: none;\n\tbackground-color: inherit;\n\tcolor: inherit;\n}\n\ntable {\n\tborder: 1px solid <<colour table-border>>;\n\twidth: auto;\n\tmax-width: 100%;\n\tcaption-side: bottom;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n}\n\ntable th, table td {\n\tpadding: 0 7px 0 7px;\n\tborder-top: 1px solid <<colour table-border>>;\n\tborder-left: 1px solid <<colour table-border>>;\n}\n\ntable thead tr td, table th {\n\tbackground-color: <<colour table-header-background>>;\n\tfont-weight: bold;\n}\n\ntable tfoot tr td {\n\tbackground-color: <<colour table-footer-background>>;\n}\n\n.tc-csv-table {\n\twhite-space: nowrap;\n}\n\n.tc-tiddler-frame img,\n.tc-tiddler-frame svg,\n.tc-tiddler-frame canvas,\n.tc-tiddler-frame embed,\n.tc-tiddler-frame iframe {\n\tmax-width: 100%;\n}\n\n.tc-tiddler-body > embed,\n.tc-tiddler-body > iframe {\n\twidth: 100%;\n\theight: 600px;\n}\n\n/*\n** Links\n*/\n\nbutton.tc-tiddlylink,\na.tc-tiddlylink {\n\ttext-decoration: none;\n\tfont-weight: 500;\n\tcolor: <<colour tiddler-link-foreground>>;\n\t-webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */\n}\n\n.tc-sidebar-lists a.tc-tiddlylink {\n\tcolor: <<colour sidebar-tiddler-link-foreground>>;\n}\n\n.tc-sidebar-lists a.tc-tiddlylink:hover {\n\tcolor: <<colour sidebar-tiddler-link-foreground-hover>>;\n}\n\nbutton.tc-tiddlylink:hover,\na.tc-tiddlylink:hover {\n\ttext-decoration: underline;\n}\n\na.tc-tiddlylink-resolves {\n}\n\na.tc-tiddlylink-shadow {\n\tfont-weight: bold;\n}\n\na.tc-tiddlylink-shadow.tc-tiddlylink-resolves {\n\tfont-weight: normal;\n}\n\na.tc-tiddlylink-missing {\n\tfont-style: italic;\n}\n\na.tc-tiddlylink-external {\n\ttext-decoration: underline;\n\tcolor: <<colour external-link-foreground>>;\n\tbackground-color: <<colour external-link-background>>;\n}\n\na.tc-tiddlylink-external:visited {\n\tcolor: <<colour external-link-foreground-visited>>;\n\tbackground-color: <<colour external-link-background-visited>>;\n}\n\na.tc-tiddlylink-external:hover {\n\tcolor: <<colour external-link-foreground-hover>>;\n\tbackground-color: <<colour external-link-background-hover>>;\n}\n\n/*\n** Drag and drop styles\n*/\n\n.tc-tiddler-dragger {\n\tposition: relative;\n\tz-index: -10000;\n}\n\n.tc-tiddler-dragger-inner {\n\tposition: absolute;\n\ttop: -1000px;\n\tleft: -1000px;\n\tdisplay: inline-block;\n\tpadding: 8px 20px;\n\tfont-size: 16.9px;\n\tfont-weight: bold;\n\tline-height: 20px;\n\tcolor: <<colour dragger-foreground>>;\n\ttext-shadow: 0 1px 0 rgba(0, 0, 0, 1);\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour dragger-background>>;\n\tborder-radius: 20px;\n}\n\n.tc-tiddler-dragger-cover {\n\tposition: absolute;\n\tbackground-color: <<colour page-background>>;\n}\n\n.tc-dropzone {\n\tposition: relative;\n}\n\n.tc-dropzone.tc-dragover:before {\n\tz-index: 10000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour dropzone-background>>;\n\ttext-align: center;\n\tcontent: \"<<lingo DropMessage>>\";\n}\n\n.tc-droppable > .tc-droppable-placeholder {\n\tdisplay: none;\n}\n\n.tc-droppable.tc-dragover > .tc-droppable-placeholder {\n\tdisplay: block;\n\tborder: 2px dashed <<colour dropzone-background>>;\n}\n\n.tc-draggable {\n\tcursor: move;\n}\n\n/*\n** Plugin reload warning\n*/\n\n.tc-plugin-reload-warning {\n\tz-index: 1000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour alert-background>>;\n\ttext-align: center;\n}\n\n/*\n** Buttons\n*/\n\nbutton svg, button img, label svg, label img {\n\tvertical-align: middle;\n}\n\n.tc-btn-invisible {\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n    cursor: pointer;\n}\n\n.tc-btn-boxed {\n\tfont-size: 0.6em;\n\tpadding: 0.2em;\n\tmargin: 1px;\n\tbackground: none;\n\tborder: 1px solid <<colour tiddler-controls-foreground>>;\n\tborder-radius: 0.25em;\n}\n\nhtml body.tc-body .tc-btn-boxed svg {\n\tfont-size: 1.6666em;\n}\n\n.tc-btn-boxed:hover {\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n}\n\nhtml body.tc-body .tc-btn-boxed:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded {\n\tfont-size: 0.5em;\n\tline-height: 2;\n\tpadding: 0em 0.3em 0.2em 0.4em;\n\tmargin: 1px;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n\tborder-radius: 2em;\n}\n\nhtml body.tc-body .tc-btn-rounded svg {\n\tfont-size: 1.6666em;\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded:hover {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tcolor: <<colour muted-foreground>>;\n}\n\nhtml body.tc-body .tc-btn-rounded:hover svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-icon svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-text {\n\tpadding: 0;\n\tmargin: 0;\n}\n\n/* used for documentation \"fake\" buttons */\n.tc-btn-standard {\n\tline-height: 1.8;\n\tcolor: #667;\n\tbackground-color: #e0e0e0;\n\tborder: 1px solid #888;\n\tpadding: 2px 1px 2px 1px;\n\tmargin: 1px 4px 1px 4px;\n}\n\n.tc-btn-big-green {\n\tdisplay: inline-block;\n\tpadding: 8px;\n\tmargin: 4px 8px 4px 8px;\n\tbackground: <<colour download-background>>;\n\tcolor: <<colour download-foreground>>;\n\tfill: <<colour download-foreground>>;\n\tborder: none;\n\tfont-size: 1.2em;\n\tline-height: 1.4em;\n\ttext-decoration: none;\n}\n\n.tc-btn-big-green svg,\n.tc-btn-big-green img {\n\theight: 2em;\n\twidth: 2em;\n\tvertical-align: middle;\n\tfill: <<colour download-foreground>>;\n}\n\n.tc-sidebar-lists input {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-sidebar-lists button {\n\tcolor: <<colour sidebar-button-foreground>>;\n\tfill: <<colour sidebar-button-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini {\n\tcolor: <<colour sidebar-muted-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini:hover {\n\tcolor: <<colour sidebar-muted-foreground-hover>>;\n}\n\nbutton svg.tc-image-button, button .tc-image-button img {\n\theight: 1em;\n\twidth: 1em;\n}\n\n.tc-unfold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 100%;\n\twidth: calc(100% + 2px);\n\tmargin-left: -43px;\n\ttext-align: center;\n\tborder-top: 2px solid <<colour tiddler-info-background>>;\n\tmargin-top: 4px;\n}\n\n.tc-unfold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n\tborder-top: 2px solid <<colour tiddler-info-border>>;\n}\n\n.tc-unfold-banner svg, .tc-fold-banner svg {\n\theight: 0.75em;\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-unfold-banner:hover svg, .tc-fold-banner:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n.tc-fold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 23px;\n\ttext-align: center;\n\tmargin-left: -35px;\n\ttop: 6px;\n\tbottom: 6px;\n}\n\n.tc-fold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-unfold-banner {\n\t\tposition: static;\n\t\twidth: calc(100% + 59px);\n\t}\n\n\t.tc-fold-banner {\n\t\twidth: 16px;\n\t\tmargin-left: -16px;\n\t\tfont-size: 0.75em;\n\t}\n\n}\n\n/*\n** Tags and missing tiddlers\n*/\n\n.tc-tag-list-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin-right: 7px;\n}\n\n.tc-tags-wrapper {\n\tmargin: 4px 0 14px 0;\n}\n\n.tc-missing-tiddler-label {\n\tfont-style: italic;\n\tfont-weight: normal;\n\tdisplay: inline-block;\n\tfont-size: 11.844px;\n\tline-height: 14px;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n}\n\nbutton.tc-tag-label, span.tc-tag-label {\n\tdisplay: inline-block;\n\tpadding: 0.16em 0.7em;\n\tfont-size: 0.9em;\n\tfont-weight: 400;\n\tline-height: 1.2em;\n\tcolor: <<colour tag-foreground>>;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour tag-background>>;\n\tborder-radius: 1em;\n}\n\n.tc-untagged-separator {\n\twidth: 10em;\n\tleft: 0;\n\tmargin-left: 0;\n\tborder: 0;\n\theight: 1px;\n\tbackground: <<colour tab-divider>>;\n}\n\nbutton.tc-untagged-label {\n\tbackground-color: <<colour untagged-background>>;\n}\n\n.tc-tag-label svg, .tc-tag-label img {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour tag-foreground>>;\n\tvertical-align: text-bottom;\n}\n\n.tc-tag-manager-table .tc-tag-label {\n\twhite-space: normal;\n}\n\n.tc-tag-manager-tag {\n\twidth: 100%;\n}\n\n/*\n** Page layout\n*/\n\n.tc-topbar {\n\tposition: fixed;\n\tz-index: 1200;\n}\n\n.tc-topbar-left {\n\tleft: 29px;\n\ttop: 5px;\n}\n\n.tc-topbar-right {\n\ttop: 5px;\n\tright: 29px;\n}\n\n.tc-topbar button {\n\tpadding: 8px;\n}\n\n.tc-topbar svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-topbar button:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-sidebar-header {\n\tcolor: <<colour sidebar-foreground>>;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-sidebar-header .tc-title a.tc-tiddlylink-resolves {\n\tfont-weight: 300;\n}\n\n.tc-sidebar-header .tc-sidebar-lists p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-sidebar-header .tc-missing-tiddler-label {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-advanced-search input {\n\twidth: 60%;\n}\n\n.tc-search a svg {\n\twidth: 1.2em;\n\theight: 1.2em;\n\tvertical-align: middle;\n}\n\n.tc-page-controls {\n\tmargin-top: 14px;\n\tfont-size: 1.5em;\n}\n\n.tc-page-controls .tc-drop-down {\n  font-size: 1rem;\n}\n\n.tc-page-controls button {\n\tmargin-right: 0.5em;\n}\n\n.tc-page-controls a.tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-page-controls img {\n\twidth: 1em;\n}\n\n.tc-page-controls svg {\n\tfill: <<colour sidebar-controls-foreground>>;\n}\n\n.tc-page-controls button:hover svg, .tc-page-controls a:hover svg {\n\tfill: <<colour sidebar-controls-foreground-hover>>;\n}\n\n.tc-menu-list-item {\n\twhite-space: nowrap;\n}\n\n.tc-menu-list-count {\n\tfont-weight: bold;\n}\n\n.tc-menu-list-subitem {\n\tpadding-left: 7px;\n}\n\n.tc-story-river {\n\tposition: relative;\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-sidebar-header {\n\t\tpadding: 14px;\n\t\tmin-height: 32px;\n\t\tmargin-top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tpadding: 0;\n\t}\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-message-box {\n\t\tmargin: 21px -21px 21px -21px;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tposition: fixed;\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t\tbottom: 0;\n\t\tright: 0;\n\t\toverflow-y: auto;\n\t\toverflow-x: auto;\n\t\t-webkit-overflow-scrolling: touch;\n\t\tmargin: 0 0 0 -42px;\n\t\tpadding: 71px 0 28px 42px;\n\t}\n\n\thtml[dir=\"rtl\"] .tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tright: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}};\n\t\tpadding: 42px 42px 42px 42px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-story-river {\n\t\twidth: calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}});\n\t}\n\n\">>\n\n}\n\n@media print {\n\n\tbody.tc-body {\n\t\tbackground-color: transparent;\n\t}\n\n\t.tc-sidebar-header, .tc-topbar {\n\t\tdisplay: none;\n\t}\n\n\t.tc-story-river {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\t.tc-story-river .tc-tiddler-frame {\n\t\tmargin: 0;\n\t\tborder: none;\n\t\tpadding: 0;\n\t}\n}\n\n/*\n** Tiddler styles\n*/\n\n.tc-tiddler-frame {\n\tposition: relative;\n\tmargin-bottom: 28px;\n\tbackground-color: <<colour tiddler-background>>;\n\tborder: 1px solid <<colour tiddler-border>>;\n}\n\n{{$:/themes/tiddlywiki/vanilla/sticky}}\n\n.tc-tiddler-info {\n\tpadding: 14px 42px 14px 42px;\n\tbackground-color: <<colour tiddler-info-background>>;\n\tborder-top: 1px solid <<colour tiddler-info-border>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-border>>;\n}\n\n.tc-tiddler-info p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-tiddler-info .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour tiddler-info-tab-background>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-tab-background>>;\n}\n\n.tc-view-field-table {\n\twidth: 100%;\n}\n\n.tc-view-field-name {\n\twidth: 1%; /* Makes this column be as narrow as possible */\n\ttext-align: right;\n\tfont-style: italic;\n\tfont-weight: 200;\n}\n\n.tc-view-field-value {\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\tpadding: 14px 14px 14px 14px;\n\t}\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -14px 0 -14px;\n\t}\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\tpadding: 28px 42px 42px 42px;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth}};\n\t\tborder-radius: 2px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\">>\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -42px 0 -42px;\n\t}\n}\n\n.tc-site-title,\n.tc-titlebar {\n\tfont-weight: 300;\n\tfont-size: 2.35em;\n\tline-height: 1.2em;\n\tcolor: <<colour tiddler-title-foreground>>;\n\tmargin: 0;\n}\n\n.tc-site-title {\n\tcolor: <<colour site-title-foreground>>;\n}\n\n.tc-tiddler-title-icon {\n\tvertical-align: middle;\n}\n\n.tc-system-title-prefix {\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-titlebar h2 {\n\tfont-size: 1em;\n\tdisplay: inline;\n}\n\n.tc-titlebar img {\n\theight: 1em;\n}\n\n.tc-subtitle {\n\tfont-size: 0.9em;\n\tcolor: <<colour tiddler-subtitle-foreground>>;\n\tfont-weight: 300;\n}\n\n.tc-tiddler-missing .tc-title {\n  font-style: italic;\n  font-weight: normal;\n}\n\n.tc-tiddler-frame .tc-tiddler-controls {\n\tfloat: right;\n}\n\n.tc-tiddler-controls .tc-drop-down {\n\tfont-size: 0.6em;\n}\n\n.tc-tiddler-controls .tc-drop-down .tc-drop-down {\n\tfont-size: 1em;\n}\n\n.tc-tiddler-controls > span > button,\n.tc-tiddler-controls > span > span > button,\n.tc-tiddler-controls > span > span > span > button {\n\tvertical-align: baseline;\n\tmargin-left:5px;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img,\n.tc-search button svg, .tc-search a svg {\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img {\n\theight: 0.75em;\n}\n\n.tc-search button svg, .tc-search a svg {\n    height: 1.2em;\n    width: 1.2em;\n    margin: 0 0.25em;\n}\n\n.tc-tiddler-controls button.tc-selected svg,\n.tc-page-controls button.tc-selected svg  {\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n}\n\n.tc-tiddler-controls button.tc-btn-invisible:hover svg,\n.tc-search button:hover svg, .tc-search a:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n@media print {\n\t.tc-tiddler-controls {\n\t\tdisplay: none;\n\t}\n}\n\n.tc-tiddler-help { /* Help prompts within tiddler template */\n\tcolor: <<colour muted-foreground>>;\n\tmargin-top: 14px;\n}\n\n.tc-tiddler-help a.tc-tiddlylink {\n\tcolor: <<colour very-muted-foreground>>;\n}\n\n.tc-tiddler-frame .tc-edit-texteditor {\n\twidth: 100%;\n\tmargin: 4px 0 4px 0;\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor,\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tpadding: 3px 3px 3px 3px;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tbackground-color: <<colour tiddler-editor-background>>;\n\tline-height: 1.3em;\n\t-webkit-appearance: none;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\n.tc-tiddler-frame .tc-binary-warning {\n\twidth: 100%;\n\theight: 5em;\n\ttext-align: center;\n\tpadding: 3em 3em 6em 3em;\n\tbackground: <<colour alert-background>>;\n\tborder: 1px solid <<colour alert-border>>;\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\tborder: 6px solid <<colour tiddler-editor-border-image>>;\n\tcursor: crosshair;\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tmargin-top: 6px;\n\tmargin-bottom: 6px;\n}\n\n.tc-edit-bitmapeditor-width {\n\tdisplay: block;\n}\n\n.tc-edit-bitmapeditor-height {\n\tdisplay: block;\n}\n\n.tc-tiddler-body {\n\tclear: both;\n}\n\n.tc-tiddler-frame .tc-tiddler-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/bodylineheight}};\n}\n\n.tc-titlebar, .tc-tiddler-edit-title {\n\toverflow: hidden; /* https://github.com/Jermolene/TiddlyWiki5/issues/282 */\n}\n\nhtml body.tc-body.tc-single-tiddler-window {\n\tmargin: 1em;\n\tbackground: <<colour tiddler-background>>;\n}\n\n.tc-single-tiddler-window img,\n.tc-single-tiddler-window svg,\n.tc-single-tiddler-window canvas,\n.tc-single-tiddler-window embed,\n.tc-single-tiddler-window iframe {\n\tmax-width: 100%;\n}\n\n/*\n** Editor\n*/\n\n.tc-editor-toolbar {\n\tmargin-top: 8px;\n}\n\n.tc-editor-toolbar button {\n\tvertical-align: middle;\n\tbackground-color: <<colour tiddler-controls-foreground>>;\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n\tborder-radius: 4px;\n\tpadding: 3px;\n\tmargin: 2px 0 2px 4px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-adjunct {\n\tmargin-left: 1px;\n\twidth: 1em;\n\tborder-radius: 8px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-start-group {\n\tmargin-left: 11px;\n}\n\n.tc-editor-toolbar button.tc-selected {\n\tbackground-color: <<colour primary>>;\n}\n\n.tc-editor-toolbar button svg {\n\twidth: 1.6em;\n\theight: 1.2em;\n}\n\n.tc-editor-toolbar button:hover {\n\tbackground-color: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour background>>;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more {\n\twhite-space: normal;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more button {\n\tdisplay: inline-block;\n\tpadding: 3px;\n\twidth: auto;\n}\n\n.tc-editor-toolbar .tc-search-results {\n\tpadding: 0;\n}\n\n/*\n** Adjustments for fluid-fixed mode\n*/\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n<<if-fluid-fixed text:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 0;\n\t\tposition: relative;\n\t\twidth: auto;\n\t\tleft: 0;\n\t\tmargin-left: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\tmargin-right: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tbottom: 0;\n\t\tright: 0;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 42px);\n\t}\n\n\"\"\" hiddenSidebarText:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 3em;\n\t\tmargin-right: 0;\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 84px);\n\t}\n\n\"\"\">>\n\n}\n\n/*\n** Toolbar buttons\n*/\n\n.tc-page-controls svg.tc-image-new-button {\n  fill: <<colour toolbar-new-button>>;\n}\n\n.tc-page-controls svg.tc-image-options-button {\n  fill: <<colour toolbar-options-button>>;\n}\n\n.tc-page-controls svg.tc-image-save-button {\n  fill: <<colour toolbar-save-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-info-button {\n  fill: <<colour toolbar-info-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-edit-button {\n  fill: <<colour toolbar-edit-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-close-button {\n  fill: <<colour toolbar-close-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-delete-button {\n  fill: <<colour toolbar-delete-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-cancel-button {\n  fill: <<colour toolbar-cancel-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-done-button {\n  fill: <<colour toolbar-done-button>>;\n}\n\n/*\n** Tiddler edit mode\n*/\n\n.tc-tiddler-edit-frame em.tc-edit {\n\tcolor: <<colour muted-foreground>>;\n\tfont-style: normal;\n}\n\n.tc-edit-type-dropdown a.tc-tiddlylink-missing {\n\tfont-style: normal;\n}\n\n.tc-edit-tags {\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tpadding: 4px 8px 4px 8px;\n}\n\n.tc-edit-add-tag {\n\tdisplay: inline-block;\n}\n\n.tc-edit-add-tag .tc-add-tag-name input {\n\twidth: 50%;\n}\n\n.tc-edit-add-tag .tc-keyboard {\n\tdisplay:inline;\n}\n\n.tc-edit-tags .tc-tag-label {\n\tdisplay: inline-block;\n}\n\n.tc-edit-tags-list {\n\tmargin: 14px 0 14px 0;\n}\n\n.tc-remove-tag-button {\n\tpadding-left: 4px;\n}\n\n.tc-tiddler-preview {\n\toverflow: auto;\n}\n\n.tc-tiddler-preview-preview {\n\tfloat: right;\n\twidth: 49%;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tmargin: 4px 0 3px 3px;\n\tpadding: 3px 3px 3px 3px;\n}\n\n<<if-editor-height-fixed then:\"\"\"\n\n.tc-tiddler-preview-preview {\n\toverflow-y: scroll;\n\theight: {{$:/config/TextEditor/EditorHeight/Height}};\n}\n\n\"\"\">>\n\n.tc-tiddler-frame .tc-tiddler-preview .tc-edit-texteditor {\n\twidth: 49%;\n}\n\n.tc-tiddler-frame .tc-tiddler-preview canvas.tc-edit-bitmapeditor {\n\tmax-width: 49%;\n}\n\n.tc-edit-fields {\n\twidth: 100%;\n}\n\n\n.tc-edit-fields table, .tc-edit-fields tr, .tc-edit-fields td {\n\tborder: none;\n\tpadding: 4px;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(odd) {\n\tbackground-color: <<colour tiddler-editor-fields-odd>>;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(even) {\n\tbackground-color: <<colour tiddler-editor-fields-even>>;\n}\n\n.tc-edit-field-name {\n\ttext-align: right;\n}\n\n.tc-edit-field-value input {\n\twidth: 100%;\n}\n\n.tc-edit-field-remove {\n}\n\n.tc-edit-field-remove svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n\tvertical-align: middle;\n}\n\n.tc-edit-field-add-name {\n\tdisplay: inline-block;\n\twidth: 15%;\n}\n\n.tc-edit-field-add-value {\n\tdisplay: inline-block;\n\twidth: 40%;\n}\n\n.tc-edit-field-add-button {\n\tdisplay: inline-block;\n\twidth: 10%;\n}\n\n/*\n** Storyview Classes\n*/\n\n.tc-storyview-zoomin-tiddler {\n\tposition: absolute;\n\tdisplay: block;\n\twidth: 100%;\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-storyview-zoomin-tiddler {\n\t\twidth: calc(100% - 84px);\n\t}\n\n}\n\n/*\n** Dropdowns\n*/\n\n.tc-btn-dropdown {\n\ttext-align: left;\n}\n\n.tc-btn-dropdown svg, .tc-btn-dropdown img {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-drop-down-wrapper {\n\tposition: relative;\n}\n\n.tc-drop-down {\n\tmin-width: 380px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\ttext-shadow: none;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-drop-down {\n\tmargin-left: 14px;\n}\n\n.tc-drop-down button svg, .tc-drop-down a svg  {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down button.tc-btn-invisible:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down p {\n\tpadding: 0 14px 0 14px;\n}\n\n.tc-drop-down svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-drop-down img {\n\twidth: 1em;\n}\n\n.tc-drop-down a, .tc-drop-down button {\n\tdisplay: block;\n\tpadding: 0 14px 0 14px;\n\twidth: 100%;\n\ttext-align: left;\n\tcolor: <<colour foreground>>;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-tab-set .tc-tab-buttons button {\n\tdisplay: inline-block;\n    width: auto;\n    margin-bottom: 0px;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n}\n\n.tc-drop-down .tc-prompt {\n\tpadding: 0 14px;\n}\n\n.tc-drop-down .tc-chooser {\n\tborder: none;\n}\n\n.tc-drop-down .tc-chooser .tc-swatches-horiz {\n\tfont-size: 0.4em;\n\tpadding-left: 1.2em;\n}\n\n.tc-drop-down .tc-file-input-wrapper {\n\twidth: 100%;\n}\n\n.tc-drop-down .tc-file-input-wrapper button {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-drop-down a:hover, .tc-drop-down button:hover, .tc-drop-down .tc-file-input-wrapper:hover button {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-tab-buttons button {\n\tbackground-color: <<colour dropdown-tab-background>>;\n}\n\n.tc-drop-down .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour dropdown-tab-background-selected>>;\n\tborder-bottom: 1px solid <<colour dropdown-tab-background-selected>>;\n}\n\n.tc-drop-down-bullet {\n\tdisplay: inline-block;\n\twidth: 0.5em;\n}\n\n.tc-drop-down .tc-tab-contents a {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-block-dropdown-wrapper {\n\tposition: relative;\n}\n\n.tc-block-dropdown {\n\tposition: absolute;\n\tmin-width: 220px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\tz-index: 1000;\n\ttext-shadow: none;\n}\n\n.tc-block-dropdown.tc-search-drop-down {\n\tmargin-left: -12px;\n}\n\n.tc-block-dropdown a {\n\tdisplay: block;\n\tpadding: 4px 14px 4px 14px;\n}\n\n.tc-block-dropdown.tc-search-drop-down a {\n\tdisplay: block;\n\tpadding: 0px 10px 0px 10px;\n}\n\n.tc-drop-down .tc-dropdown-item-plain,\n.tc-block-dropdown .tc-dropdown-item-plain {\n\tpadding: 4px 14px 4px 7px;\n}\n\n.tc-drop-down .tc-dropdown-item,\n.tc-block-dropdown .tc-dropdown-item {\n\tpadding: 4px 14px 4px 7px;\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-block-dropdown a:hover {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-search-results {\n\tpadding: 0 7px 0 7px;\n}\n\n.tc-image-chooser, .tc-colour-chooser {\n\twhite-space: normal;\n}\n\n.tc-image-chooser a,\n.tc-colour-chooser a {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\ttext-align: center;\n\tposition: relative;\n}\n\n.tc-image-chooser a {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 2px;\n\tmargin: 2px;\n\twidth: 4em;\n\theight: 4em;\n}\n\n.tc-colour-chooser a {\n\tpadding: 3px;\n\twidth: 2em;\n\theight: 2em;\n\tvertical-align: middle;\n}\n\n.tc-image-chooser a:hover,\n.tc-colour-chooser a:hover {\n\tbackground: <<colour primary>>;\n\tpadding: 0px;\n\tborder: 3px solid <<colour primary>>;\n}\n\n.tc-image-chooser a svg,\n.tc-image-chooser a img {\n\tdisplay: inline-block;\n\twidth: auto;\n\theight: auto;\n\tmax-width: 3.5em;\n\tmax-height: 3.5em;\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\tmargin: auto;\n}\n\n/*\n** Modals\n*/\n\n.tc-modal-wrapper {\n\tposition: fixed;\n\toverflow: auto;\n\toverflow-y: scroll;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 900;\n}\n\n.tc-modal-backdrop {\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 1000;\n\tbackground-color: <<colour modal-backdrop>>;\n}\n\n.tc-modal {\n\tz-index: 1100;\n\tbackground-color: <<colour modal-background>>;\n\tborder: 1px solid <<colour modal-border>>;\n}\n\n@media (max-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 1em;\n\t\tleft: 1em;\n\t\tright: 1em;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n@media (min-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 2em;\n\t\tleft: 25%;\n\t\twidth: 50%;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n.tc-modal-header {\n\tpadding: 9px 15px;\n\tborder-bottom: 1px solid <<colour modal-header-border>>;\n}\n\n.tc-modal-header h3 {\n\tmargin: 0;\n\tline-height: 30px;\n}\n\n.tc-modal-header img, .tc-modal-header svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-modal-body {\n\tpadding: 15px;\n}\n\n.tc-modal-footer {\n\tpadding: 14px 15px 15px;\n\tmargin-bottom: 0;\n\ttext-align: right;\n\tbackground-color: <<colour modal-footer-background>>;\n\tborder-top: 1px solid <<colour modal-footer-border>>;\n}\n\n/*\n** Notifications\n*/\n\n.tc-notification {\n\tposition: fixed;\n\ttop: 14px;\n\tright: 42px;\n\tz-index: 1300;\n\tmax-width: 280px;\n\tpadding: 0 14px 0 14px;\n\tbackground-color: <<colour notification-background>>;\n\tborder: 1px solid <<colour notification-border>>;\n}\n\n/*\n** Tabs\n*/\n\n.tc-tab-set.tc-vertical {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tab-buttons {\n\tfont-size: 0.85em;\n\tpadding-top: 1em;\n\tmargin-bottom: -2px;\n}\n\n.tc-tab-buttons.tc-vertical  {\n\tz-index: 100;\n\tdisplay: block;\n\tpadding-top: 14px;\n\tvertical-align: top;\n\ttext-align: right;\n\tmargin-bottom: inherit;\n\tmargin-right: -1px;\n\tmax-width: 33%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n}\n\n.tc-tab-buttons button.tc-tab-selected {\n\tcolor: <<colour tab-foreground-selected>>;\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-left: 1px solid <<colour tab-border-selected>>;\n\tborder-top: 1px solid <<colour tab-border-selected>>;\n\tborder-right: 1px solid <<colour tab-border-selected>>;\n}\n\n.tc-tab-buttons button {\n\tcolor: <<colour tab-foreground>>;\n\tpadding: 3px 5px 3px 5px;\n\tmargin-right: 0.3em;\n\tfont-weight: 300;\n\tborder: none;\n\tbackground: inherit;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-right: 1px solid <<colour tab-border>>;\n\tborder-top-left-radius: 2px;\n\tborder-top-right-radius: 2px;\n\tborder-bottom-left-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin-top: 3px;\n\tmargin-right: 0;\n\ttext-align: right;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tborder-right: none;\n\tborder-top-left-radius: 2px;\n\tborder-bottom-left-radius: 2px;\n\tborder-top-right-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button.tc-tab-selected {\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-right: 1px solid <<colour tab-background-selected>>;\n}\n\n.tc-tab-divider {\n\tborder-top: 1px solid <<colour tab-divider>>;\n}\n\n.tc-tab-divider.tc-vertical  {\n\tdisplay: none;\n}\n\n.tc-tab-content {\n\tmargin-top: 14px;\n}\n\n.tc-tab-content.tc-vertical  {\n    word-break: break-word;\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-top: 0;\n\tpadding-left: 14px;\n\tborder-left: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 70%;\n\tflex: 1 0 70%;\n}\n\n.tc-sidebar-lists .tc-tab-buttons {\n\tmargin-bottom: -1px;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tcolor: <<colour sidebar-tab-foreground-selected>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border-selected>>;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button {\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tcolor: <<colour sidebar-tab-foreground>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border>>;\n}\n\n.tc-sidebar-lists .tc-tab-divider {\n\tborder-top: 1px solid <<colour sidebar-tab-divider>>;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\tdisplay: block;\n\twidth: 100%;\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tborder-top: none;\n\tborder-left: none;\n\tborder-bottom: none;\n\tborder-right: 1px solid #ccc;\n\tmargin-bottom: inherit;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tborder: none;\n}\n\n/*\n** Manager\n*/\n\n.tc-manager-wrapper {\n\t\n}\n\n.tc-manager-controls {\n\t\n}\n\n.tc-manager-control {\n\tmargin: 0.5em 0;\n}\n\n.tc-manager-list {\n\twidth: 100%;\n\tborder-top: 1px solid <<colour muted-foreground>>;\n\tborder-left: 1px solid <<colour muted-foreground>>;\n\tborder-right: 1px solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item {\n\n}\n\n.tc-manager-list-item-heading {\n    display: block;\n    width: 100%;\n    text-align: left;\t\n\tborder-bottom: 1px solid <<colour muted-foreground>>;\n\tpadding: 3px;\n}\n\n.tc-manager-list-item-heading-selected {\n\tfont-weight: bold;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n\tbackground-color: <<colour foreground>>;\n}\n\n.tc-manager-list-item-heading:hover {\n\tbackground: <<colour primary>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-manager-list-item-content {\n\tdisplay: flex;\n}\n\n.tc-manager-list-item-content-sidebar {\n    flex: 1 0;\n    background: <<colour tiddler-editor-background>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n    white-space: nowrap;\n}\n\n.tc-manager-list-item-content-item-heading {\n\tdisplay: block;\n\twidth: 100%;\n\ttext-align: left;\n    background: <<colour muted-foreground>>;\n\ttext-transform: uppercase;\n\tfont-size: 0.6em;\n\tfont-weight: bold;\n    padding: 0.5em 0 0.5em 0;\n}\n\n.tc-manager-list-item-content-item-body {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-manager-list-item-content-item-body > pre {\n\tmargin: 0.5em 0 0.5em 0;\n\tborder: none;\n\tbackground: inherit;\n}\n\n.tc-manager-list-item-content-tiddler {\n    flex: 3 1;\n    border-left: 0.5em solid <<colour muted-foreground>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item-content-item-body > table {\n\tborder: none;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.tc-manager-list-item-content-item-body > table td {\n\tborder: none;\n}\n\n.tc-manager-icon-editor > button {\n\twidth: 100%;\n}\n\n.tc-manager-icon-editor > button > svg,\n.tc-manager-icon-editor > button > button {\n\twidth: 100%;\n\theight: auto;\n}\n\n/*\n** Alerts\n*/\n\n.tc-alerts {\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tmax-width: 500px;\n\tz-index: 20000;\n}\n\n.tc-alert {\n\tposition: relative;\n\tmargin: 28px;\n\tpadding: 14px 14px 14px 14px;\n\tborder: 2px solid <<colour alert-border>>;\n\tbackground-color: <<colour alert-background>>;\n}\n\n.tc-alert-toolbar {\n\tposition: absolute;\n\ttop: 14px;\n\tright: 14px;\n}\n\n.tc-alert-toolbar svg {\n\tfill: <<colour alert-muted-foreground>>;\n}\n\n.tc-alert-subtitle {\n\tcolor: <<colour alert-muted-foreground>>;\n\tfont-weight: bold;\n}\n\n.tc-alert-highlight {\n\tcolor: <<colour alert-highlight>>;\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-static-alert {\n\t\tposition: relative;\n\t}\n\n\t.tc-static-alert-inner {\n\t\tposition: absolute;\n\t\tz-index: 100;\n\t}\n\n}\n\n.tc-static-alert-inner {\n\tpadding: 0 2px 2px 42px;\n\tcolor: <<colour static-alert-foreground>>;\n}\n\n/*\n** Control panel\n*/\n\n.tc-control-panel td {\n\tpadding: 4px;\n}\n\n.tc-control-panel table, .tc-control-panel table input, .tc-control-panel table textarea {\n\twidth: 100%;\n}\n\n.tc-plugin-info {\n\tdisplay: block;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground-colour: <<colour background>>;\n\tmargin: 0.5em 0 0.5em 0;\n\tpadding: 4px;\n}\n\n.tc-plugin-info-disabled {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n\tbackground: repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n}\n\n.tc-plugin-info-disabled:hover {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n\tbackground: repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n}\n\na.tc-tiddlylink.tc-plugin-info:hover {\n\ttext-decoration: none;\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour foreground>>;\n}\n\na.tc-tiddlylink.tc-plugin-info:hover .tc-plugin-info > .tc-plugin-info-chunk > svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-plugin-info-chunk {\n\tdisplay: inline-block;\n\tvertical-align: middle;\n}\n\n.tc-plugin-info-chunk h1 {\n\tfont-size: 1em;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk h2 {\n\tfont-size: 0.8em;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk div {\n\tfont-size: 0.7em;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info:hover > .tc-plugin-info-chunk > img, .tc-plugin-info:hover > .tc-plugin-info-chunk > svg {\n\twidth: 2em;\n\theight: 2em;\n\tfill: <<colour foreground>>;\n}\n\n.tc-plugin-info > .tc-plugin-info-chunk > img, .tc-plugin-info > .tc-plugin-info-chunk > svg {\n\twidth: 2em;\n\theight: 2em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-plugin-info.tc-small-icon > .tc-plugin-info-chunk > img, .tc-plugin-info.tc-small-icon > .tc-plugin-info-chunk > svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-plugin-info-dropdown {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tmargin-top: -8px;\n}\n\n.tc-plugin-info-dropdown-message {\n\tbackground: <<colour message-background>>;\n\tpadding: 0.5em 1em 0.5em 1em;\n\tfont-weight: bold;\n\tfont-size: 0.8em;\n}\n\n.tc-plugin-info-dropdown-body {\n\tpadding: 1em 1em 1em 1em;\n}\n\n.tc-check-list {\n\tline-height: 2em;\n}\n\n.tc-check-list .tc-image-button {\n\theight: 1.5em;\n}\n\n/*\n** Message boxes\n*/\n\n.tc-message-box {\n\tborder: 1px solid <<colour message-border>>;\n\tbackground: <<colour message-background>>;\n\tpadding: 0px 21px 0px 21px;\n\tfont-size: 12px;\n\tline-height: 18px;\n\tcolor: <<colour message-foreground>>;\n}\n\n.tc-message-box svg {\n\twidth: 1em;\n\theight: 1em;\n    vertical-align: text-bottom;\n}\n\n/*\n** Pictures\n*/\n\n.tc-bordered-image {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 5px;\n\tmargin: 5px;\n}\n\n/*\n** Floats\n*/\n\n.tc-float-right {\n\tfloat: right;\n}\n\n/*\n** Chooser\n*/\n\n.tc-chooser {\n\tborder-right: 1px solid <<colour table-header-background>>;\n\tborder-left: 1px solid <<colour table-header-background>>;\n}\n\n\n.tc-chooser-item {\n\tborder-bottom: 1px solid <<colour table-header-background>>;\n\tborder-top: 1px solid <<colour table-header-background>>;\n\tpadding: 2px 4px 2px 14px;\n}\n\n.tc-drop-down .tc-chooser-item {\n\tpadding: 2px;\n}\n\n.tc-chosen,\n.tc-chooser-item:hover {\n\tbackground-color: <<colour table-header-background>>;\n\tborder-color: <<colour table-footer-background>>;\n}\n\n.tc-chosen .tc-tiddlylink {\n\tcursor:default;\n}\n\n.tc-chooser-item .tc-tiddlylink {\n\tdisplay: block;\n\ttext-decoration: none;\n\tbackground-color: transparent;\n}\n\n.tc-chooser-item:hover .tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-chosen .tc-tiddlylink,\n.tc-drop-down .tc-chooser-item .tc-tiddlylink:hover {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-chosen > .tc-tiddlylink:before {\n\tmargin-left: -10px;\n\tposition: relative;\n\tcontent: \"» \";\n}\n\n.tc-chooser-item svg,\n.tc-chooser-item img{\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: middle;\n}\n\n.tc-language-chooser .tc-image-button img {\n\twidth: 2em;\n\tvertical-align: -0.15em;\n}\n\n/*\n** Palette swatches\n*/\n\n.tc-swatches-horiz {\n}\n\n.tc-swatches-horiz .tc-swatch {\n\tdisplay: inline-block;\n}\n\n.tc-swatch {\n\twidth: 2em;\n\theight: 2em;\n\tmargin: 0.4em;\n\tborder: 1px solid #888;\n}\n\n/*\n** Table of contents\n*/\n\n.tc-sidebar-lists .tc-table-of-contents {\n\twhite-space: nowrap;\n}\n\n.tc-table-of-contents button {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents svg {\n\twidth: 0.7em;\n\theight: 0.7em;\n\tvertical-align: middle;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents ol {\n\tlist-style-type: none;\n\tpadding-left: 0;\n}\n\n.tc-table-of-contents ol ol {\n\tpadding-left: 1em;\n}\n\n.tc-table-of-contents li {\n\tfont-size: 1.0em;\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li a {\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li li {\n\tfont-size: 0.95em;\n\tfont-weight: normal;\n\tline-height: 1.4;\n}\n\n.tc-table-of-contents li li a {\n\tfont-weight: normal;\n}\n\n.tc-table-of-contents li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n\tline-height: 1.5;\n}\n\n.tc-table-of-contents li li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n}\n\n.tc-tabbed-table-of-contents {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents {\n\tz-index: 100;\n\tdisplay: inline-block;\n\tpadding-left: 1em;\n\tmax-width: 50%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n\tbackground: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a,\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tdisplay: block;\n\tpadding: 0.12em 1em 0.12em 0.25em;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a {\n\tborder-top: 1px solid <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-background>>;\n\tborder-bottom: 1px solid <<colour tab-background>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a:hover {\n\ttext-decoration: none;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour background>>;\n\tmargin-right: -1px;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a:hover {\n\ttext-decoration: none;\n}\n\n.tc-tabbed-table-of-contents .tc-tabbed-table-of-contents-content {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-left: 1.5em;\n\tpadding-right: 1.5em;\n\tborder: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 50%;\n\tflex: 1 0 50%;\n}\n\n/*\n** Dirty indicator\n*/\n\nbody.tc-dirty span.tc-dirty-indicator, body.tc-dirty span.tc-dirty-indicator svg {\n\tfill: <<colour dirty-indicator>>;\n\tcolor: <<colour dirty-indicator>>;\n}\n\n/*\n** File inputs\n*/\n\n.tc-file-input-wrapper {\n\tposition: relative;\n\toverflow: hidden;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n}\n\n.tc-file-input-wrapper input[type=file] {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tfont-size: 999px;\n\tmax-width: 100%;\n\tmax-height: 100%;\n\tfilter: alpha(opacity=0);\n\topacity: 0;\n\toutline: none;\n\tbackground: white;\n\tcursor: pointer;\n\tdisplay: inline-block;\n}\n\n/*\n** Thumbnail macros\n*/\n\n.tc-thumbnail-wrapper {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin: 6px;\n\tvertical-align: top;\n}\n\n.tc-thumbnail-right-wrapper {\n\tfloat:right;\n\tmargin: 0.5em 0 0.5em 0.5em;\n}\n\n.tc-thumbnail-image {\n\ttext-align: center;\n\toverflow: hidden;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-image svg,\n.tc-thumbnail-image img {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n\tmin-width: 100%;\n\tmin-height: 100%;\n\tmax-width: 100%;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image img {\n\tfilter: alpha(opacity=0.8);\n\topacity: 0.8;\n}\n\n.tc-thumbnail-background {\n\tposition: absolute;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-icon svg,\n.tc-thumbnail-icon img {\n\twidth: 3em;\n\theight: 3em;\n\t<<filter \"drop-shadow(2px 2px 4px rgba(0,0,0,0.3))\">>\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon img {\n\tfill: #fff;\n\t<<filter \"drop-shadow(3px 3px 4px rgba(0,0,0,0.6))\">>\n}\n\n.tc-thumbnail-icon {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tdisplay: -webkit-flex;\n\t-webkit-align-items: center;\n\t-webkit-justify-content: center;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.tc-thumbnail-caption {\n\tposition: absolute;\n\tbackground-color: #777;\n\tcolor: #fff;\n\ttext-align: center;\n\tbottom: 0;\n\twidth: 100%;\n\tfilter: alpha(opacity=0.9);\n\topacity: 0.9;\n\tline-height: 1.4;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-caption {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n}\n\n/*\n** Diffs\n*/\n\n.tc-diff-equal {\n\tbackground-color: <<colour diff-equal-background>>;\n\tcolor: <<colour diff-equal-foreground>>;\n}\n\n.tc-diff-insert {\n\tbackground-color: <<colour diff-insert-background>>;\n\tcolor: <<colour diff-insert-foreground>>;\n}\n\n.tc-diff-delete {\n\tbackground-color: <<colour diff-delete-background>>;\n\tcolor: <<colour diff-delete-foreground>>;\n}\n\n.tc-diff-invisible {\n\tbackground-color: <<colour diff-invisible-background>>;\n\tcolor: <<colour diff-invisible-foreground>>;\n}\n\n.tc-diff-tiddlers th {\n\ttext-align: right;\n\tbackground: <<colour background>>;\n\tfont-weight: normal;\n\tfont-style: italic;\n}\n\n.tc-diff-tiddlers pre {\n    margin: 0;\n    padding: 0;\n    border: none;\n    background: none;\n}\n\n/*\n** Errors\n*/\n\n.tc-error {\n\tbackground: #f00;\n\tcolor: #fff;\n}\n\n/*\n** Tree macro\n*/\n\n.tc-tree div {\n    \tpadding-left: 14px;\n}\n\n.tc-tree ol {\n    \tlist-style-type: none;\n    \tpadding-left: 0;\n    \tmargin-top: 0;\n}\n\n.tc-tree ol ol {\n    \tpadding-left: 1em;    \n}\n\n.tc-tree button { \n    \tcolor: #acacac;\n}\n\n.tc-tree svg {\n     \tfill: #acacac;\n}\n\n.tc-tree span svg {\n    \twidth: 1em;\n    \theight: 1em;\n    \tvertical-align: baseline;\n}\n\n.tc-tree li span {\n    \tcolor: lightgray;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize",
            "text": "15px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight",
            "text": "22px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/fontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/fontsize",
            "text": "14px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/lineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/lineheight",
            "text": "20px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyleft": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyleft",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storytop": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storytop",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyright": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyright",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storywidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storywidth",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth",
            "text": "686px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint",
            "text": "960px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth",
            "text": "350px"
        },
        "$:/themes/tiddlywiki/vanilla/options/stickytitles": {
            "title": "$:/themes/tiddlywiki/vanilla/options/stickytitles",
            "text": "no"
        },
        "$:/themes/tiddlywiki/vanilla/options/sidebarlayout": {
            "title": "$:/themes/tiddlywiki/vanilla/options/sidebarlayout",
            "text": "fixed-fluid"
        },
        "$:/themes/tiddlywiki/vanilla/options/codewrapping": {
            "title": "$:/themes/tiddlywiki/vanilla/options/codewrapping",
            "text": "pre-wrap"
        },
        "$:/themes/tiddlywiki/vanilla/reset": {
            "title": "$:/themes/tiddlywiki/vanilla/reset",
            "type": "text/plain",
            "text": "/*! normalize.css v3.0.0 | MIT License | git.io/normalize */\n\n/**\n * 1. Set default font family to sans-serif.\n * 2. Prevent iOS text size adjust after orientation change, without disabling\n *    user zoom.\n */\n\nhtml {\n  font-family: sans-serif; /* 1 */\n  -ms-text-size-adjust: 100%; /* 2 */\n  -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/**\n * Remove default margin.\n */\n\nbody {\n  margin: 0;\n}\n\n/* HTML5 display definitions\n   ========================================================================== */\n\n/**\n * Correct `block` display not defined in IE 8/9.\n */\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nnav,\nsection,\nsummary {\n  display: block;\n}\n\n/**\n * 1. Correct `inline-block` display not defined in IE 8/9.\n * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n */\n\naudio,\ncanvas,\nprogress,\nvideo {\n  display: inline-block; /* 1 */\n  vertical-align: baseline; /* 2 */\n}\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\n\naudio:not([controls]) {\n  display: none;\n  height: 0;\n}\n\n/**\n * Address `[hidden]` styling not present in IE 8/9.\n * Hide the `template` element in IE, Safari, and Firefox < 22.\n */\n\n[hidden],\ntemplate {\n  display: none;\n}\n\n/* Links\n   ========================================================================== */\n\n/**\n * Remove the gray background color from active links in IE 10.\n */\n\na {\n  background: transparent;\n}\n\n/**\n * Improve readability when focused and also mouse hovered in all browsers.\n */\n\na:active,\na:hover {\n  outline: 0;\n}\n\n/* Text-level semantics\n   ========================================================================== */\n\n/**\n * Address styling not present in IE 8/9, Safari 5, and Chrome.\n */\n\nabbr[title] {\n  border-bottom: 1px dotted;\n}\n\n/**\n * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.\n */\n\nb,\nstrong {\n  font-weight: bold;\n}\n\n/**\n * Address styling not present in Safari 5 and Chrome.\n */\n\ndfn {\n  font-style: italic;\n}\n\n/**\n * Address variable `h1` font-size and margin within `section` and `article`\n * contexts in Firefox 4+, Safari 5, and Chrome.\n */\n\nh1 {\n  font-size: 2em;\n  margin: 0.67em 0;\n}\n\n/**\n * Address styling not present in IE 8/9.\n */\n\nmark {\n  background: #ff0;\n  color: #000;\n}\n\n/**\n * Address inconsistent and variable font size in all browsers.\n */\n\nsmall {\n  font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` affecting `line-height` in all browsers.\n */\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsup {\n  top: -0.5em;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\n/* Embedded content\n   ========================================================================== */\n\n/**\n * Remove border when inside `a` element in IE 8/9.\n */\n\nimg {\n  border: 0;\n}\n\n/**\n * Correct overflow displayed oddly in IE 9.\n */\n\nsvg:not(:root) {\n  overflow: hidden;\n}\n\n/* Grouping content\n   ========================================================================== */\n\n/**\n * Address margin not present in IE 8/9 and Safari 5.\n */\n\nfigure {\n  margin: 1em 40px;\n}\n\n/**\n * Address differences between Firefox and other browsers.\n */\n\nhr {\n  -moz-box-sizing: content-box;\n  box-sizing: content-box;\n  height: 0;\n}\n\n/**\n * Contain overflow in all browsers.\n */\n\npre {\n  overflow: auto;\n}\n\n/**\n * Address odd `em`-unit font size rendering in all browsers.\n */\n\ncode,\nkbd,\npre,\nsamp {\n  font-family: monospace, monospace;\n  font-size: 1em;\n}\n\n/* Forms\n   ========================================================================== */\n\n/**\n * Known limitation: by default, Chrome and Safari on OS X allow very limited\n * styling of `select`, unless a `border` property is set.\n */\n\n/**\n * 1. Correct color not being inherited.\n *    Known issue: affects color of disabled elements.\n * 2. Correct font properties not being inherited.\n * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  color: inherit; /* 1 */\n  font: inherit; /* 2 */\n  margin: 0; /* 3 */\n}\n\n/**\n * Address `overflow` set to `hidden` in IE 8/9/10.\n */\n\nbutton {\n  overflow: visible;\n}\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Firefox, IE 8+, and Opera\n * Correct `select` style inheritance in Firefox.\n */\n\nbutton,\nselect {\n  text-transform: none;\n}\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n *    and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n *    `input` and others.\n */\n\nbutton,\nhtml input[type=\"button\"], /* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n  -webkit-appearance: button; /* 2 */\n  cursor: pointer; /* 3 */\n}\n\n/**\n * Re-set default cursor for disabled elements.\n */\n\nbutton[disabled],\nhtml input[disabled] {\n  cursor: default;\n}\n\n/**\n * Remove inner padding and border in Firefox 4+.\n */\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n  border: 0;\n  padding: 0;\n}\n\n/**\n * Address Firefox 4+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\n\ninput {\n  line-height: normal;\n}\n\n/**\n * It's recommended that you don't attempt to style these elements.\n * Firefox's implementation doesn't respect box-sizing, padding, or width.\n *\n * 1. Address box sizing set to `content-box` in IE 8/9/10.\n * 2. Remove excess padding in IE 8/9/10.\n */\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n  box-sizing: border-box; /* 1 */\n  padding: 0; /* 2 */\n}\n\n/**\n * Fix the cursor style for Chrome's increment/decrement buttons. For certain\n * `font-size` values of the `input`, it causes the cursor style of the\n * decrement button to change from `default` to `text`.\n */\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome\n *    (include `-moz` to future-proof).\n */\n\ninput[type=\"search\"] {\n  -webkit-appearance: textfield; /* 1 */\n  -moz-box-sizing: content-box;\n  -webkit-box-sizing: content-box; /* 2 */\n  box-sizing: content-box;\n}\n\n/**\n * Remove inner padding and search cancel button in Safari and Chrome on OS X.\n * Safari (but not Chrome) clips the cancel button when the search input has\n * padding (and `textfield` appearance).\n */\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n * Define consistent border, margin, and padding.\n */\n\nfieldset {\n  border: 1px solid #c0c0c0;\n  margin: 0 2px;\n  padding: 0.35em 0.625em 0.75em;\n}\n\n/**\n * 1. Correct `color` not being inherited in IE 8/9.\n * 2. Remove padding so people aren't caught out if they zero out fieldsets.\n */\n\nlegend {\n  border: 0; /* 1 */\n  padding: 0; /* 2 */\n}\n\n/**\n * Remove default vertical scrollbar in IE 8/9.\n */\n\ntextarea {\n  overflow: auto;\n}\n\n/**\n * Don't inherit the `font-weight` (applied by a rule above).\n * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n */\n\noptgroup {\n  font-weight: bold;\n}\n\n/* Tables\n   ========================================================================== */\n\n/**\n * Remove most spacing between table cells.\n */\n\ntable {\n  border-collapse: collapse;\n  border-spacing: 0;\n}\n\ntd,\nth {\n  padding: 0;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/settings/fontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/fontfamily",
            "text": "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\""
        },
        "$:/themes/tiddlywiki/vanilla/settings/codefontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/codefontfamily",
            "text": "\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment",
            "text": "fixed"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize",
            "text": "auto"
        },
        "$:/themes/tiddlywiki/vanilla/sticky": {
            "title": "$:/themes/tiddlywiki/vanilla/sticky",
            "text": "<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\" type=\"match\" text=\"yes\">\n``\n.tc-tiddler-title {\n\tposition: -webkit-sticky;\n\tposition: -moz-sticky;\n\tposition: -o-sticky;\n\tposition: -ms-sticky;\n\tposition: sticky;\n\ttop: 0px;\n\tbackground: ``<<colour tiddler-background>>``;\n\tz-index: 500;\n}\n``\n</$reveal>\n"
        }
    }
}
yes
sunypoly-dylan-wamozart
zoomin
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>












<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<$list filter="[tag[composition]date{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>








































































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>






























































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>






<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>


<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>















































































<$list filter="[tag[composition]each[date]sort[date]]">
<span class="bigbold">{{!!date}}</span><$appear show=" • ">
<$list filter="[tag[composition]date{!!date}]">
<$link><<currentTiddler>></$link>, 
</$list>
</$appear>


</$list>































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>


<svg version="1.1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 612 792"
	 style="enable-background:new 0 0 612 792;" xml:space="preserve">
<style type="text/css">

  .red:hover{fill:#FF0900;}
	.st0{display:none;}
	.st1{fill:#BBB2B5;}
	.st2{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:0.574;}
	.st3{fill:none;stroke:#BBB2B5;stroke-width:0.574;}
	.st4{fill:#BBB2B5;stroke:#FFFFFF;stroke-width:0.574;}
	.st5{fill:none;stroke:#FFFFFF;stroke-width:0.574;}
	.st6{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:1.1565;}
	.st7{fill:none;stroke:#BBB2B5;stroke-width:1.1565;}
	.st8{fill:#B5B5B5;stroke:#BBB2B5;stroke-width:0.5338;}
	
		.st9{fill:#AD3C62;stroke:#EEE2DC;stroke-width:3.499458e-02;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:22.9256;}
</style>
<switch>
	<foreignObject requiredExtensions="&ns_ai;" x="0" y="0" width="1" height="1">
		<i:pgfRef  xlink:href="#adobe_illustrator_pgf">
		</i:pgfRef>
	</foreignObject>
	<g i:extraneous="self">
		<g id="Fondo" class="st0">
		</g>
		<g id="Guías" class="st0">
		</g>
		<g id="Primer_plano">
			<g>
				<polygon class="st1" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st3" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st4" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st5" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st4" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st5" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st4" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st5" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st6" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st7" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st2" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st3" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st4" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st2" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st4" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st5" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st4" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st5" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st4" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st5" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st4" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st5" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st4" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st5" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st4" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st5" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st4" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st5" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st4" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st5" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st4" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st5" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st4" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st5" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st4" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st5" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st4" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st2" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st4" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st3" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st2" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st3" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st2" points="510.5,347.5 508.5,347.5 510.5,351.7 510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 
					502.2,358 502.2,360.1 504.3,362.2 504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 494,380.8 
					494,383.1 491.8,383.1 491.8,380.8 477.1,380.8 477.1,383.1 475.1,385.1 470.8,385.1 468.8,387.2 466.6,387.2 464.5,385.1 
					460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 
					433.1,372.7 431,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 408,372.7 408,368.4 397.6,368.4 
					395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 393.3,353.9 395.4,353.9 
					397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 418.4,358 420.5,355.9 
					422.7,358 426.9,358 429,355.9 437.3,355.9 439.4,358 439.4,355.9 441.6,355.9 445.7,358 445.7,362.2 447.8,364.3 447.8,362.2 
					449.9,362.2 449.9,358 447.8,355.9 447.8,351.7 445.7,349.6 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					462.4,337.1 462.4,335.1 464.5,335.1 466.6,337.1 475.1,337.1 477.1,335.1 477.1,330.9 487.5,330.9 489.7,332.9 496,332.9 
					498.1,335.1 500.2,335.1 500.2,337.1 502.2,339.2 508.5,339.2 510.5,341.3 508.5,343.3 				"/>
				<polygon class="st3" points="496,379 496,380.8 494,380.8 494,383.1 491.8,383.1 491.8,380.8 489.7,380.8 487.6,380.8 
					485.6,380.8 483.3,380.8 481.3,380.8 479.2,380.8 477.1,380.8 477.1,383.1 475.1,385.1 472.9,385.1 470.8,385.1 468.8,387.2 
					466.7,387.2 464.5,385.1 462.4,385.1 460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 445.7,380.8 
					443.5,380.8 441.6,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 433.1,372.7 431,370.5 426.9,370.5 424.8,370.5 
					422.7,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 410.1,372.7 408,372.7 408,370.5 408,368.4 
					405.9,368.4 397.6,368.4 395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 
					393.3,353.9 395.4,353.9 397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 
					416.3,358 418.4,358 420.5,355.9 422.7,358 424.8,358 426.9,358 429,355.9 431,355.9 435.2,355.9 437.3,355.9 439.4,358 
					439.4,355.9 441.6,355.9 445.7,358 445.7,360.1 445.7,362.2 447.8,364.3 447.8,362.2 449.9,362.2 449.9,360.1 449.9,358 
					447.8,355.9 447.8,353.9 447.8,351.8 445.7,349.6 445.7,347.5 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					458.2,337.1 460.3,337.1 462.4,337.1 462.4,335.1 464.5,335.1 466.7,337.1 470.8,337.1 475.1,337.1 477.1,335.1 477.1,332.9 
					477.1,330.9 479.2,330.9 483.3,330.9 485.6,330.9 487.6,330.9 489.7,332.9 491.8,332.9 496,332.9 498.1,335.1 500.2,335.1 
					500.2,337.1 502.2,339.2 504.3,339.2 506.4,339.2 508.5,339.2 510.5,341.3 508.5,343.3 510.5,347.5 508.5,347.5 510.5,351.8 
					510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 504.3,358 502.2,358 502.2,360.1 504.3,362.2 504.3,364.3 
					504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st4" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st5" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st2" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st3" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st4" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st2" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st4" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st5" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st4" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st5" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st4" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st5" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st4" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st5" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st4" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st5" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st4" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st5" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st2" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st3" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st4" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<polygon class="st3" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<g>
					<g>
						<path class="st1" d="M334.3,286.2c1.2,10.3,2.5,20.5,4,30.7c1,7.1,11.7,6.1,13.4,0c2-7.1,7.8-28.5-3.5-30.7
							c-4.3-0.8-8.9,1.9-8.8,6.7c0.1,5.1-1.5,9.5,1.4,14.2c2.8,4.5,7.9,5.7,12.9,4.9c5.1-0.8,9.7-2.5,14.9-2.7
							c5.9-0.2,11.8,1.6,17.5,0c8.6-2.3,5-15.7-3.7-13.4c-3,0.8-6.9-0.5-10.1-0.6c-4.1-0.1-8.1,0.3-12.1,0.9c-1,0.2-8.8,1.1-9.3,2.1
							c-1.2,0-0.7,0.6,1.7,1.8c0-0.6,0-1.2,0.1-1.8c0.6-1.6,0.5-3.8,0.5-5.5c-2.9,2.2-5.9,4.5-8.8,6.7c0.2,0,0.4,0.1,0.6,0.1
							c-1.4-1.1-2.8-2.1-4.1-3.2c0.1,0.2-0.5,6.1-0.7,7.4c-0.4,3.2-1.1,6.3-2,9.3c4.5,0,8.9,0,13.4,0c-1.3-9-2.5-18-3.5-27
							c-0.4-3.8-2.9-6.9-6.9-6.9C337.9,279.3,333.9,282.5,334.3,286.2L334.3,286.2z"/>
					</g>
				</g>
				<g>
					<g>
						<path class="st1" d="M415.7,225c8.9,0,8.9-13.9,0-13.9C406.8,211.1,406.8,225,415.7,225L415.7,225z"/>
					</g>
				</g>
			</g>
			<g id="MvfNLW.tif">
			</g>
			<g id="DVZ8qq_1_">
			</g>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Z%C3%BCrich">
		<path id="_x3C_Zurich_x3E_" class="st9 red" d="M375.9,358.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C376,358.2,375.9,358.3,375.9,358.3z"/><title>Zurich</title>
</a>

      <!--Example-->
	<a href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Rome">
			<path id="_x3C_Rome_x3E_" class="st9 red" d="M416.6,472.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C416.6,472.6,416.6,472.7,416.6,472.7z"/>
<title>Rome</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Italy">
			<path id="_x3C_Italy_x3E_" class="st9 red" d="M454.5,497.6c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0s0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C454.6,497.5,454.5,497.6,454.5,497.6z"/>
<title>Italy</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Leipzig" >
			<path id="_x3C_Leipzig_x3E_" class="st9 red" d="M448,362.8c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C448,362.7,448,362.7,448,362.8z"/>
<title>Leipzig</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Salzburg" >
			<path id="_x3C_Salzburg_x3E_" class="st9 red" d="M458.1,337.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0

				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C458.2,337.2,458.1,337.2,458.1,337.3z"/>
<title>Salzburg</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Munich" >
			<path id="_x3C_Munich_x3E_" class="st9 red" d="M419,339.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1s0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C419.1,339.8,419.1,339.9,419,339.9z"/>
<title>Munich</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Potsdam" >
			<path id="_x3C_Potsdam_x3E_" class="st9 red" d="M400.6,291.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5s-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4
				c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2
				c0,0.1,0.1,0.2,0.1,0.3s0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5
				c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2
				c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3s-0.6-1-1.5-2
				c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7
				c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C400.7,291.6,400.7,291.7,400.6,291.7z"/>
<title>Potsdam</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Prague" >
	<path id="_x3C_Prague_x3E__1_" class="st9 red" d="M417.7,250.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1s0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C417.8,250.6,417.7,250.7,417.7,250.7z"/>
<title>Prague</title>
      </a>
      
      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Mannheim" >
			<path id="_x3C_Manheim_x3E_" class="st9 red" d="M358.9,284.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C359,284.6,358.9,284.6,358.9,284.7z"/>
<title>Manheim</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Baden_x3E_" class="st9 red" d="M381.3,276.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C381.3,276.2,381.3,276.3,381.3,276.3z"/>
<title>Baden</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Vienna" >
			<path id="_x3C_Vienna_x3E_" class="st9 red" d="M492.3,341c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4s0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C492.3,340.9,492.3,341,492.3,341z"/>
<title>Vienna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Milan" >
			<path id="_x3C_Milan_x3E_" class="st9 red" d="M364.6,391.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5s0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C364.6,391.8,364.6,391.8,364.6,391.9z"/>
<title>Milan</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Verona" >
			<path id="_x3C_Verona_x3E_" class="st9 red" d="M406.4,387c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2s0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C406.4,386.9,406.4,387,406.4,387z"/>
<title>Verona</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Bavarian_x3E_" class="st9 red" d="M396.2,414.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C396.3,414.1,396.2,414.2,396.2,414.2z"/>
<title>Bavarian</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lodi" >
			<path id="_x3C_Lodi_x3E_" class="st9 red" d="M440.1,389.4c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5s0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C440.1,389.3,440.1,389.4,440.1,389.4z"/>
<title>Lido</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Bologna" >
			<path id="_x3C_Bologna_x3E_" class="st9 red" d="M417,436.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3s-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C417.1,436.4,417.1,436.5,417,436.5z
				"/>
<title>Bologna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lausanne" >
			<path id="_x3C_Lausanne_x3E_" class="st9 red" d="M348.4,359.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C348.5,359.1,348.5,359.2,348.4,359.2z"/>
<title>Lausanne</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Donaueschingen" >
			<path id="_x3C_Donauschingen_x3E_" class="st9 red" d="M372.4,333.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2c-0.2,0.7-0.4,1.2-0.5,1.6
				s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2c-0.1,0.1-0.2,0.3-0.2,0.4
				c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C372.5,333.4,372.5,333.5,372.4,333.5z"/>
<title>Donauschingen</title>
      </a>
          
	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Paris" >
			<path id="_x3C_Paris_x3E_" class="st9 red" d="M292.1,283.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9s-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5
				c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6
				c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5s0.4-0.2,0.5-0.2
				c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2
				c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1
				c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				s-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7s0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C292.2,283.6,292.2,283.7,292.1,283.7z"/>
<title>Paris</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Linz" >
			<path id="_x3C_Linz_x3E_" class="st9 red" d="M337.8,271.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C337.8,271.2,337.8,271.3,337.8,271.3z"/>
<title>Linz</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Hague" >
			<path id="_x3C_Hague_x3E_" class="st9 red" d="M325.9,248.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C325.9,248.1,325.9,248.2,325.9,248.3z"/>
<title>Hague</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Amsterdam" >
			<path id="_x3C_Amsterdam_x3E_" class="st9 red" d="M343.5,231.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C343.6,231.1,343.5,231.2,343.5,231.2z"/>
<title>Amsterdam</title>
      </a>

			<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#London" >
				<path id="_x3C_London_x3E_" class="st9 red" d="M266.6,223.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
					c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
					c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
					c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
					c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
					c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
					c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
					c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
					c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
					c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
					c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
					c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
					c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
					c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
					c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
					c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
					c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
					c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
					c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
					c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
					s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
					c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
					c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
					C266.7,223.2,266.7,223.3,266.6,223.3z"/>
<title>London</title>
			</a>
      
		</g>
	</g>
</switch>
<i:pgf  id="adobe_illustrator_pgf">
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	jiHtOcWb7lZjOJtuEmt745jP7xKOtrDC1aV01vckhm387/V3eJHtFTKUMhz9OkyEy0IG8Ya7resr
Xd1wtzp50mkZbnfDnbZiyHjH3QbL0OSGuw0rH9e84c76prwdLB/5hrvtb8rbSV3STm64W0kYqzvu
XAJzuOFOuSttJ4W11J4pAdeVY5sdfmxZ+9ZwUQvrxswBUK397e96fnKR4+Sq8nGbwlo5GwrD2b6w
FqBYudbaexJdwNnokCqdtERwrM+Fc1Xfrpow+xzF9evbo8ZQMi6VkhahdV6fu2WYCrgpWdFpMcui
nMbMZcmKKSn158M87+zgOQAlu+1WFHN9tDkC5ui228UttRRzFThzVTGUChCuXHjbIqaj00e9YFZj
WbPGFbrktojJY+qhGWpcc0TUYBjmCMc7v1eGoei9WpqGL1tf96jWyHT2uWd5UsO61z3mCMbJHnNf
45ojXBWLizaMU41rjljvbD5biunyNzaucX0x28DRVw0417iiS/LWuO7R4Qyilw1rXHXKQW0nk7Fi
I2qGb1VoJuRms3PKLxbp1c/5l/xr8aWefy3M0pkyV7/MZYl2LpeNXaE0ztp0pXj8Qz3FpH0V3T1s
D9Phm3k93Invzeaau7tUVbuTqKmICx+3b/VleGHlHjb/iW9iVYRnXfnn8c/3ip2Ymn91tX/17J0F
Um5fUyWmR/qlIBXjMNqL7qJJFVL9PWyp8FxGqi9Niz/3KsdmpWkePxB4L2BZmjZbflGEJdLwyfHI
+sY55W49yUfWjvXNrvZvpC84VJN3Uq+bIfX4MdrDitDrWJXhCXZFeHfP1kgLN28l1Z6FnsCaywv1
SO8MrARLU0KPP0l8njKZffOWx64gxt8r9u0QFqkSsyq2lNRkhTMxOlcLt7gc6lWnXZQ4ra7fd5E4
CUIjbDxfrno4cZ8/Zqeb3/JOqTD6CIm6+kdr81cPf3eRywld0iZWmZzc4ra0yZhaZWnp2t/M8pZf
K7XKMpyL1n71aK0UNGs6WSZWrV+VZpNatWZVmlOBgh0/6UBh1nSX0+s0PqcsLV32oF2n1sr603ZJ
U8XpMk/LTdWdNkq8xXqxydJKi70xu2lCK66IiUFcvUSmG8aYdd7rZ2Hr7UuzU+M2vfupsNa+tcjJ
Vg7wZ2Hr8DIM7X37+NhnwUVcyzk+BnO+9ZY1rhTOu9nZdLxRz+YQWo/fNWG2OLLRwMl2eVqur+Re
GdUteoKtEN0ddhX7o3fdSZgWvdyVj7xWMHiVdWMRDi7aHgnsOhCwuoe3uXdtfdiVm5OHtDEV8QQJ
2U4UPfGS87UyLmNvnZKZ3bbGGRGq+R0kFmsVkuGotWUp4Kf9OQdr1Vg5mW+aaKx1lwT9OQfrWePq
iiidvHd5rZ5ZnlKnpJX3W5RyJlVZBNuVAqJAZdTZs3APzLHmxwKU4WQwYwh1q0GSu6SYw/7gehRz
KAxaj2KOl/y471fchmKGcmG1Ht7gRj0T/bJGFaDbGkCzVem+CtCyD7qqLDNr3H0VoNsaQKd4sn0V
oNsaQNc3sFuWvbmpAZQyui1o4lQF6LYG0PacXscqQLeFPzZZnS6qAN3WAK7hI29xo57OR16zCnBl
mYi9MYxKtp6kvL5/+FI+15xsX0vocCmfPgr3z1zKp5Ew/9ilfKJtuSGdXF/KZ+8j7+pSPnznY89B
bW99KZ/VWWq7vZTPTIvt/lI+W0vJLZ0q8Xcr2/nB3dlQLu/1s/dyLU7UWftePxMxernDs6Gke/3s
4yfuzoZyvtfPTbbt9vf62d/q5/5sKPt7/VyfDbXVvX7KNO3ibCire/3sc1asaxK3yR3Q3+onyuTt
7/Uz0k59q982lVyUfcxTFXOQrD4rB9/1vX72+UxY8u/gXj/7W/3cxi2d7vVzdwPItvf6yVV3Ls+B
3+xevzXrK3d0+Yf2Vj9bTl7jXj+t9au/1c/8/sr17/Wzn0mHqjTX9/o5nUC1m3v95H6Zpl+umQVt
ea/fWjy28b1+9rf6bXMfn3uVZ38f3yYr0OxWPzc7Vm7u9bOvwlVJy63u9bPX0p414rZ29/rZJxWY
3WS0yb1+VqQUb/VzMy9u7vWzv9XPtmJojXv9dlOV5nSvn/1GgbpWdJt7/Yz9Ut/qt+na19/rZ28G
2N7Ht2XdQ1i+1W8n9/E5Hing8j6+LS/nlk6c3l3dg+mtfioe2+pePxmL6a1++hOoNr3Xz94rs6xK
W/NePytzXrzVb105ZrkMbW/1c2uNO93rt859fNsvQ/Nb/Ta7j2/dkz2s7uPbchmGtbf6yXtJ61zF
pwemzdQwAeX+RB37e/3sHWrVWTdb3evnqiptZ9cXm9/qp62s3/xeP3sn1KK2eu17/UzlgXyr3/b3
8bk8vWEn9/q5uY9v+3v9jLf6qSPHSFru4l4/+2J4jQ2jX4Zr3OtnH9cyPYVmg3v97G/1s9Zi69Y8
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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	Y2BoBGorQq/F9oRW0D+rDqx5NRhWCaqMscC0repcBsNnXsxczfo2K/BBMQHbO+VGScAOXh+F3czi
mLBuK006MHwmx/pepcTP3CgGihdN8hs/VYsMBiqzNEhewWKk7sdjMNIOqwTxAqGFUtfbWtPOzzGM
wsK/Zb4ST7vmR2nQCnz0EljQClqdwTZ8I4BFhxzk7jGsCAnBwndDMteaVpppyP3KEo4fMaKdJ64t
Nv5vjQcaevAJNSvw4ZN9O7DKcT0eLyyLYtuB2uIhbEyMPMrDfpdiJo//YVOxqH2pv4J9CaNSGm//
8Yt2Dgtf4M7BJ6Uzj2YxebIYFI+7Wbel2DXNmNYaWPGEWzt7TH54iQENkPm60Ikhj/KhafkqdMCb
sOKcGBjChPYwTdi3dlskBnQwjI9PHsgbzPZKDOioLIlCjeAxPIJH3ywFA23X7VbGr00+FOejBB6d
G40gEF5U5cFmoL5WfS3tyqgnxRx6kBjGoMDSsY4CrJbFyKcnPg+BLLGWal/hSTqFrh3BiNLlpQoZ
HKv8tOqHI6vuMIfwaE+ZT/YZPQXDNuhFmAkUcTcLIdvGYY7t5/o6t7rFFIrKZIwXy5V4zKFWLOZQ
T2Z6WiDPCoVPQ1lC00EOReh6EuVtmjks5AtLLOv952vzr82/Nv/a/Gvzr82/Nv/vwub/6ikBvuBJ
o0fO/ApzY0ImCOHE3kkcCNM1noUrBfMnqZH5CoIpgj2CgDEFzAri1p4MRkZsMDz4azmyqFz/5HXK
jceFodUdv/7TD1/JLO/0fD09vyx71DI1FaYHKyt3YskPz+sSzGFlSixMLrXMwEfzKQ30mmIw1gID
yTcP0DOF1SnfYSJ1MjYWbGfZtcu1L4PJD1Rexz7tZCMe87PvWqL1d/z1vyw5Z6nJztxznYMIfDW2
5u4sWYkBPGmSIDKL1k7sela+7DlC7FNrhTX7dkFsacdhzvHsUM7ZWaWyxS8wL9pxY/7Zty/pujP0
T87QL0dPnkUrQSSfUWHDWU65JqY5lqKVHTuBNX3RyHqkhHEYTGUGQvgm4Py52wKZvQymDmQ7I/cd
0i6YCjbG67O+PmcXpDyKX77DgNsAwkuh+onrPgtkdgZ68xaJxVhT/wKDRRnkQn1lW/SYN32ZMZ8Y
Mz/yXWaeFaPr9dN1X6EoVzqudHwhHb/O2FcV7Q4fhRni6jeMkXeSDY4zFGZZjJT31fDLmFQR5hwK
MDzw5lhflCXiv1eRh2/Mqu2FgQQdPgxELLHQNEDLkp/F320zJwZ+dY+EhAi/ebGPs0C8bUcwZjxH
EXl4mk+KfJgKr62PzXSOIvLvMGIfpNC8szOCMfZK+9J29LsMRtbiDUa/XZZdP10g2pMKmDajGB2N
yLKRDJV3lbCf7Ynty92NczfO3Tj/mRvn1+3VediAaYpxhkZxnaseyDkKps9AJwChnZjsrDB9RmZC
ViboS7OYBXDNCOTHwZgpYWZjcApShcDHhPYARZr589/rh/+yvGQGwGE35IBf6+NbD+BZsYcUQubN
CedNMfUZHYOoiSxvJcNQDLQFA2G5IWOYVoHwkS+P1jJTL34BSYx+IymPre3aL9KVaSY/fAOJvpnP
ufrRnJgXzZjRYNkwCZm5GSE0rpUTYcYiEDPBbz7pUInnWtpm8DsUOB4izZIcpk0Mj9lRCqY7li/W
W/r685WuK13/bNL165byx1lpI4OWwKrHtGK9fzOI+tCWl1hjjL1ZLe4wZzMd9Cvw7L/kHLqF8N68
FBC0xFxivifFnFbH9CSQF+N9Aflx7rZBvvP7zze/v5y19/dnGzxz3NUaMTjoLR4uh86wJ8lfV2t+
Ftsnsc7je1bmH/LXvcNUECBQfUb/pLIzp9enlZU+CsswIzDovEJr5ZxTTTY5ncFILipwuQcfVCLT
UZeZPSYzB/PMWO5Sp0t7ZSFH9izb1cAIGQ5RwP1ie9kOCCOP/hrmD+35dhQDq5JTQDvQ1wXujMUc
GcjeYXTMsTwV8lVz4tsNPz9nUjk3P3Sv4FsxzTjzxFlMYghHXie6fDzhMeWZk29NGn5Um8fAbcRf
tUIdYAu9xOh30UXFZ2faNUifnUNWHCrcWpPHnX5NYUJLLYkpPiiLHsOAESZtxNbBEIDh05s+K3YB
Nv7WZ9B5aSTmdmwTu6sxgIQpUia9membMRgZ8gtMj8yxweGk7wn15LNeYSq3JJQ279PrF329wfCV
z6hx1DJTrhYzoBJjwbpDaWS/EoOPfBpZZton6zqDo3GXrDJTqa13N6YZg3nTzrGgY6zNxqdNo38o
2gGZDC6FNwnZxbCbhaQHe4itMIf+CljIMFCwOBgM55UV5woTCYVeeKW9TSELLUH+IQeNhctWkbxR
RuMTyRrWsxuDGc+E6euF/0uuK2iXJ2AoMHkdzUWPgcFssN69LxLruoJyeXJoNKu1tJ3xUjGmHfBX
FiWA8agpf4FhwaHBrY9Z7833Je28wYBxzE7VyVJ5w2NgNLGYldWsZvniu15gIsS/8+xhJizJtH3x
moavYjtzXm7uIt/+CsNSD5B9GKqSPlEUgulPh2oFIYL12NqgMMIsz1B6ZmbjlxiQgRZWXB/oyRoP
L7sgU8BAPmt7h0kgA51vSFkybmOkr8TsR7Rj0Lnjs6bndznMOc+v+kLDNRDTmQHU92Uw0hcaZvrR
Qs4V/XiYE6xiMRvLce0wJ8XA0ocRwTvDSpVlMcxRxlykbbm9dszw2vlgcmB35bINqXx7CUy9ynY6
Yx/XejG0EC5/nLT907YjGNfOue4Ow8JXgx4tGl7VTNLDe8mV/qzHLzCmHap0EtnMuldfjAc6vUYw
b3B0FtlxfbGAVoMuimS9YWfT7aR36w1pXOvV0tNH4itpBqyll5gGPxwCCPEJnAxi8GvwYbB9GZo0
XmLmE3jTkGhilkfDp7jwYPjONuAnzWNgHWCMAwNyS/Lj6TwjLZPp7Bgu+qoZujBglHDisMf2Lc7Z
jINkph/GgmHqGgtIwjtJzEHdGBq+L1ZYGms9Dh+ZKaF9O6xGDGYCv4cbxg5Z2jGrpRiVDMWohMl4
zM5RjO5k6ctoBMUwS+CqxAMaNS3EKCjFqKKTITsM7WKtSzDW4ZRRziOCbEe2k+GUp5cYVeAsgcRq
cYFHDHNao6MYNXCKUWOqGDXKgjHERr7LkBaZQ4c51+IVRsejfZkxy3cpgTwxhoeOSlXDOPXMu0tL
ZxWjtFgxSq8VoyxdhmzI/rlczmc4p/Adhsas8SUCF8wuu3GFdDjiUOlXaSvn5BhIf2aokJ6CLdn8
eDGlcIXnDAzXjrYZVvyaZbKud4exsJDxME0FA55GYuV2+SRo34e1ESEjzGY/natpMDwl73Sh0XXy
EPWOZTTG6VeMHh6wjBk8ZZCMnuO0ZxkyN+ZMhEXVcmMz6Lz7MxpZhjeYOh/8C48Bc8vNrriBnHJj
IKf0Gcgpw+YoUZt5g5GjTdOXHJHqtjPtnJrUYg4L+g5jxiN9HcfDbszg8wOyDRUXmEvWfrvDnHMI
OgiVjj1VGI7j1bZr5xQegxEZdH1JOwVqm+EELcfvFl3GA44dOXtQTcVbdIuR+aF+4CtL3h5Gr5Iz
X9SBGUwQ7brNkayXa+dcd4f5kS+7rk7a7Zo5vQCLObwJNz2n52Ixh5fkMKe3ZTGHZ/cOo6JxepoW
c3isDnN6x05UTy/bifzprdt2BKPjkcNChznOHE1XckjqMOeRrelKTuFfYbQvOfE3Uyi3C0YbJmY5
4g3gWGzAQs6LDIORCxGHOS9WHOa8oDFKXi56XDsnxkyPYnSa5XLKLJdchDnMcS9nuhKIjFhvEh1G
biRldliZi3eaPD3IDHl37cjtpw7ZYEw7523sK4zp66hcZjHn7fAbjJmfQXPCF8Z0iqrdFawXzsv3
wpQQI1kpfNPXr1Ttu7fh9zb83obf2/B7G26Hc2/D7234vQ2/t+H3Nvzeht/b8Hsbfm/D7234vQ2/
t+H3NtwO596G39vwext+b8Pvbfi9Db+34fc2/N6G39vwext+b8P/5W/Df+er8m/77z+uhFKw6XDu
E7OwF7iZNEEj8vg8hLLy8cAoJljbzmt1KENgoB94o4PJwXj2DZdgOp/CM20uNFv7ni2CyjLAem3P
2EDKEztLfkEEC09EXmEGTyk4HHqQ5aPloHEh6/hqOOi2nQSBH6yXSMYSvsAwvSFMBKwcU1DbT48Q
Zho3nsqgO4+BoDJuAfqIE6DTTAwEFZMH7yG3dwgwgR7pkSXmgff9GIyMV3tK8NIyqyZA/ugnuXZ0
bkw7MsdvMD/viycdzJIGmc3wLpPHNPh/gen6Kf9ftFOgiTLoHtzKme23W4y0k5YmggLlBdUX7XA3
sgUmb9vq/VwLiznWlEcm2OeNRrOWTS5/lIxKuo7BMLN0Th/jB5VSWK0xYqw5+VagZaDX4e/BGpPy
mHYC1FfBLwKAr58e01iWhEUO8YGkzA5TnhEbLBNWZ5kth4GwQFd2/E133Y6ZBwwDIsBSui1k345g
YDI5p/hMULNt2sD822QSL1ZP5RzGB2NnO+Ct2/DreAxGvusFBjYBE8YKLbA2O6OQ9PUK09EwzUqF
+zuHXQuHOdfU9CWy4TCnjL3C6HgUU8nuJjQ5iFI1utAi3rQimMyyQCVBQWE/Frv/HObcx6/aAe2P
nUkO4aoN306bDISCkstQm/s8Q/RKQ8OtMw8NS4o0q58c5rCRFoMFjLyGAf0udLgMJqcnwK2F+oZ0
tG7HLBjz7addf4fRNdW+3mBUChWj0izjMbv9oD1OQWkzBvOimYOEOX0pGGNxFKPW7SSOzkqWxMJA
TMdYoKuGtciKUcuuJFUZwk+J7K8FkP7+REyXYl+KfSn2pdiXYl+KfSn2pdiXYl+K/W+cYv/yqXTF
Yk1WZOVdYJwrJjDAnIxcMDl9VaVQTOFdLsNMIiuTcsQVv8aIO6rmAisg7fCrJgvWTNZlY/Fmj+mk
v6ONjj+tzfZVWGmzsGxriOUTmfpzjOkrP5hAbIHGmrTjJUb7ktcFph3FmHb6U0JqK55+MlitNAaQ
Yr9i7kPc+7g+hcoy8pJi+LVQjBnPicEAxwDFh5hCuXx/vJJpkQcLYQw/h4ox44lPJGPBRsH6+++C
bmZ1x4zPZzbrVxDtSSA64AQKUUdHm4Mb9SXGdCWY8WQoGNZ/DeQUDlPDw4DgDKLzicg6R/wCkRiQ
WxoDM1PzE+ww50JhV1cGHZEv5OIXszZIbWc72LFfCI7DnIJcx8P6IZkXxH3YF0KthQd/BuM9w6jj
+wuhRppWeE3KyMyWsKtHgXqHAf+obsEUPuaajZFvozW7iV9hsHglsS/WcI6+L8Xod03GyjHOJvHm
3c6Pw5zz/AZDkgGrOhpf1n3Rl8OcYwbhI1mBUGF7fMyxYFiKg1aGxc52JK32BYI1GRlel9r3YzaY
Uw7deE6Zd98lmDftmO+S8WAyKi0iBHFk/10gT4031IFF5bNX8A5zzvMrTCaL5njwzw==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
/OLqN/9z4ox+dOL0W7e++eSLj07Ed13xp1z/8MrrV299/OSJp0XxjP7/9ha87UDSux8+1NcPjh3j
Y8f42DH+XR3j1/T/T+hDL4nrL+kS3uJGHv3kh9vtH8r+lSvgH+Y7UZY7/bDGD+8gMk7/wr//koS8
LXHyEjAH2fPSF9/euvrFtetXjq7eunrlpaMrr179Kkh+vEQiIEi7wsQwVe3T6TevX72p53zx0c3r
b37xYfxVYpYTqcroIaqDW2RHn1z9/Pqt6998jxJjlisni3vHklyUb375ry8+/OL6t9/eJn3mp+99
7qV55eL/un7tX7ziD7/ieyJ04/W+/OKEjrt9p05+FHpMJ9706/zWwPGdgpc6ylf1i8ocPvrPyJaa
2OBSy7LHUKPSUGJly+n/naIuP31jeVa6t0wC6zwZpD/DQGWANMD1O9rnxzSmqDRozeRY2wkZhrKI
JWbkWuinumQ/WefHFNceqig1KSrZXBhQd3qKgxsNe09cl+/0Jr/4Pdfu4pvvjU0yzp/bLrRysZE/
O18uHdWL7eL8/4pNcne8fixIEaSNgdXaH1nWSW7Mz0lSKXx6lCT7EOXfSFJ62koQTIIZNY37K0n7
4oA77u8PuGSJrp8hPf3uq6+8/dLRiTMnnnj1/7rx2it/PXXrkxtPnuDFXtrSFf2Bfru28Pwn8Wcn
Tp9768JLL412dP3alx9e55f1hS+eSGfP/OWJq5eeffHkE+fbk/1PT9eLp/77qW/PXN7qu3/85oN5
/R9n3uv/nb6+NM488syNZz56NT979tt3vnqkXPr02X/Vrz49+rZ8+Pwr7x2devPGracunbz6/NHL
Zz99v7771LOXjj78fD730El+8Pa5y++80J/69pmnPnvxva+Pzl34018/+69z44OvPnrq/Dsv7E+d
vfD4jXMv//WTK/nosaMvtmuP7q2c++OjF9ONJ/5+6XT60z9OphuvXH2+nCuPXzr96p+/eCFd/+yf
F7c/nn3vn089+86Hrzx08qlnP/nXO/zvjy9+8Ni1C89cunjrWy019kuPfPH86+c+Pfn8Xy5dPHrp
Sjp98rUvXjzzxRNfn/7y9WsX0un20ks89lw6/fyZnb/tl/74zn9fOvvs1XPnLj189Nnnj/a3/9T9
5IdO+tn91iuXXrn4weWX9/M3z94s/tnZM5dO3br0wis3bt4mfyX+cdiT985/duHbF54++a8nXrj4
2Jfv/lE/u/Sct+D0F+OjM6lf+PKFcx+//tlnknp/fu7tv37vEfzj8C2vX7n4eLvw34dvKVdPf/HY
mdNn3zmZTh7dOHnq9bPPfP7ZW6c/vv71Yz/3Iq+c/fzJR7Rjh0fM6xc/+Pzsny5+cPbkPPvZO0fp
3Fs3H/7m0sX55CenP/7yD4//3HPePf/GYw/nS0/ceDnruN/4x6Wjb8eXqX3w8ftnz7x75tq5V0/9
Oev0n7jx6bmjGze+fO78Gyc/uZCuv36qPf3wn55/57sn1ouvn3nl3Cfvv/rI2TPfnnrj/Gf5uYfr
v55+5PX6/Hb903NfXHri66NTpx7/6Lkn/pWvn3/52gcv/uhvHzp5+68vnXvrX6ceO//ydRnE/3W2
Fjb92fHW15+/fO71F/72xvm+33jt+x/01w8/Mkl//sxfrpz5+Lm/vXj2mcu3/nDutY9ePPrhCRxO
/5nr85v64z2JV3nu1sVy7bFXviyPj0/3c/uHN587/9GTn/3pR3Qsen399qlXnpOPeXn4z/xQOPk+
PPZ7dC+888wt7ZgoHz13eX5+9ge/evbhu9iOw4GduXV0+uprT1968l+P9aOL//jwmQ==
	]]>
	<![CDATA[
	YOLbvxCPxa/eu/DqT//6g5OwxS7J8O3TZ7+48Mbfz10+urrpX88+xr1647vzO/Pxu9c+Prrx+OP/
pVv3yOWjl1/+03bx6S9fK2effaGeFI/deYErp85/9sz2hIl+8Ho//MUd//azh/UFzz526bF+6aMz
H39wWp7MhQ8f//uzh0f85PcXPnxse/kOH/nk2Wf+8cqX/W/907fOf/bqm6d/+jbfJ3no5PeJ7vRm
Vx+9ee7yqx8+den9K89PPefTLf35+VMX1sN+9Ns7PuBxGRP/7hGPf/5Lj3j/40cvPfn6zWcuHbW/
5WdfvPnq57qu7U396wsPl/fnX7aj69++8ay+Rcf48dGfn8vv/PDKfXZ0+spfHr/4wem/P3ruLy9/
+/K51z7+7PF04+2rz20fXLhw7tmTXz18Pb2cH301/fmpW6O899f+auofP/9G+effv35Ye/P4y/zj
4g/vy3qs1v7jG1+++O3NJ67c9WOvXP3L4+c/O/rrf3/32B89lB1754XPzj77/Fcvmmh7+olL50+/
+vIfWnr54pMfppdf+fxP5R+nL19If/7so4vp5St/aP7DH/3Zz+7D0Y23bnwtTr7+9duPh1489+j5
a5fetyZ64dKpp86ee+W57ekzL5156rmXv/n87Nc3Pn7s6MY/3jorGfn1Nxcf++rs0+fevPzewxff
f+Hbr3/Mixc+/vrKuS+P/vn02Wefe++c5NjT//jrf5396tuXvji6caq+cfry8+fPXTq62frRjbM3
bp7bX/pbPbpx+R+PX3rh7Uff+v7pP3Xr9QPd1Sd1yC/UefPSG2/Wf7Vn3rr41Kep6JUub7zNk7ov
nzz3/Ec6jYsXfvjV177TG+XKM+89deaTf/75w/M3T75w8dJjL77y1VPnHnn443z0Unk1Hz369zPp
o5NPnfrZv3jo5HfaOSTePz98/ZGz31w785iZs371ydFlSzzk3SP96/TCS+zYC1ghZzici3cS5T/6
x09k8r38x5nZ+v1f5d9+yx9+4fvvzSo//4/fuvy92rF/zwL3/1xggQd3+veeBX7Dt/yG5e/pjv0s
C/xu53JbDjyA07+nLPBbd+zXLX/vz+VOLPD73sr7ywJ38S33gAX+ox276+Xv07n8iAUegEy+byxw
t9/yn7HAf75jd7P8/TyX71jgQWnk+8ECv+pbfjML3KMde5DW+G0WeKD22D1mgV//Lb+FBe7ljj1I
azxWuQu38L6ey71jgd+4Y7+SBe75uTxYa5z/us8s8Ivfck9Y4D/ZsbtngftzLg/WGr+/LHB33/Kf
ssB/vGN3xQL38VwerDV+31jgV3zLf8AC92bHfokF7ve5POjo6L1ngV/7Lb+NBe7hjv0bFvhdzuVB
R0fvKQv8pm/51Sxwr3fszizwe57Lg42O3isW+O079mtY4L6cy09Y4He/lQ82OnoPWOA/3LG7ZIH7
dy5/eOD22IONjv5nLHAvduyXWeA+n8sfHrg99oCz1b+VBe7Zjv1bFvg9zuUPD9wee8DZ6t/AAvd2
x36OBX7Hc7n3oJFf9y0POFv961jgPpzLHVjg976V95MF7uZbHnC2+q5Z4H6dyw9Z4IHI5PvEAnf9
LQ84W303LHCMHry/53KMHjxGDz640//3LHCMHvy9zuUYPXiMHnxwp38nFjhGD/6up3/XLHCMHryv
53KMHjxGDx6jB4/Rgw/s9H+eBY7Rg7/T6f9KFjhGD96fczlGD97VKo/Ot/9y6+JTf+w3z12+/NhT
Ry998PlbL87L+/h/nl/dXl7a8onXb169dv3DE++++vqJHzV4+dU9W47e+dv4+usr25Xjli3HLVuO
W7b8/7Vly+pY8P75t1P0KfjeL6I1yP75pYtnxicX3+8X3qdtw3zylTvuxN/6R+9d/CA929w4hZYJ
+U6/uNPf/qi3Cnf/B91Vji7+46PbXU9+qWXLHRd47cLp9/TQZ09/93K0Ofnpr+701898+Olr/7zw
8f63q+cuX3j7Hy++98R7l7c//f25+rO//aELfvstPnn8jXfPPvvUlTeP/vzw5a8vvf/Kl/VHm/Wz
JHd8r5e+/fLGhU++/USnf3Tj9Bufn79587UvD9z/5PcbrPxpe/Ojn3TSuPXPf/6om8kdOor8ubz3
zeWL7igiCXPoKfKDxik/6svDY3/YzeTfP/a7RiVum/LQydU45Y6P1e0889frH53d619evHNvlaP0
Kv/67A96q/zwz/Tk79+XH+zEpVPPPv239z5rD7//z1tn33n0b29e+OQPfVy6uN0oRzfe+PZGf+P6
fz1/+uMvXvp2fvr1X14U59x49vxLb5xEa1x4r//tjat/unR0Mz98dGO++PYPnbC/fvjXszev1xcu
XnukP91Onj565cLHfz9/w01CUr/x+I3vScbnt3a5fHDxmdckwl579eebl/zz7x/TfOjGW298em7/
+9fv6Q//+/ptufmaLt+Hf7t45e2Xfrqf3++jcrq//Ze/f3p0/dl/SoR9ltr++XvPfbLvp7+9Uc59
c+2l7anPzmjHUrt1+cKd/+b2s1ebk88+FfOdPXn+5p/TqaMbp95/8fuyZpwdWAB/fPGvrzzx4cWn
z6dTZ/vrj5y934bYL5l7x5CuY0jXgzv938gCx5Cue3wux5CuY0jXgzv9X8UCx5Cu+3Yux5CuY0jX
gzv9u2CBY0jX73Aux5CuY0jXgzv9n2WBY0jX73X6v44FjiFd9+tcjiFdx5CuY0jXMaTrgZ3+L7DA
MaTrdzqXY0jXMaTrGNJ1DOl6YKf/YxZ4QBr5uCHcA7bHHnR09Lgh3HFDuOOGcMcN4Y4bwj1we+wB
Z6uPG8IdN4Q7bgj3wO2xY/TgMXrwwZ3+b2SBY/TgPT6XY/TgMXrwwZ3+r2KBY/TgfTuXY/TgMXrw
wZ3+XbDAMXrwdziXY/TgMXrwwZ3+z7LAMXrw9zr9X8cCx+jB+3Uux+jB/yPQg394s53/+r/ePvvN
I+/eeurokRcfre8+/cSX7dl//MoWKCOlE+e+eSid+MtD6VQeW24n0qkxRy07/6vWVuJnaa95G/rh
ZyJ+U8Sp1T5MlObeWzfVlrb4XydeFtmm/876/3f/56HtxJ/1r59CXeqcte2tlVb1jv/3iZxPzdx6
SqlphTlPvPqQVj9VZst1K3svrZ2opZ7a2txSbrPOPk98HjStjbLnWrc2TON32fattDFOmGLr2xit
ba0sirLvqfcqyt0Uea91r3MfepQoyqk50q6/T7uWueBl9HYz7XstLc0gafu21ZnSbOXEK0GjVbep
H7ZUTbPvpebR257jTbaa9qwXGXPz77to97znlPNmgrTlXX/c85aaKareiO/fU2l+k3pq9Dp6qUNf
uJsms0wbec6NZeopEWz6Qv1ND4o0x9hL0cGUboqi8x0576X3ERTaeR1L1v7va51SahlplsER15JP
ac+avmCrW29+St5nq7Wm3Es2hRhlTI4xty0oOm+/a+c7FJt2bas7pyjWWevk2mrTNnTv/XaK/dGb
bHrgvpapY0yOaDZTaI+7Pm70tMXn5KqfDJaZXRTp1C6m1h4VHc7tZXLRE/pocw7TlD7qzPvo2z79
lK1m8WTam/7rRM3z1Ex6l6LTSt422EJcW8VN2ghTZG35ph1KMwWjlFMjd/HZ3Oa+8ZRxqu9DjCIe
2Ef1U/T1OuuZhphSFPsp/h2O6/pbU+ht2tDz9dRsCjHN7GNqZ0tf62xt3xt/Nis0XY8dYhttml5b
T9GNarOwS3UfuynEWOL4lrfN6+RT2gBxCe/qN2mnetfv9qJX36vX0anr8/R6u57STSMOLdumnR6p
+im7TgOuz209RXJh1J7E7PswRffCuWyHdZK+LvUtjdTWMvoarTx1XrWYREv0lOsQO+1+iJhETKNj
zIuiTHGbOKzpwabQtu8l5zwr/MjnjC42T4iGvNYpG5w/Z8nTJNpAMQ68pb+BIGszis5XL9e8a7C0
NnpvW5pB0cRcY0qE6fOgKENCocL2dT9xzcvoShfdlKGtr6apQwy55dzKHk/RVZGs1Z+NPuMpvSQ9
sW3r+LR/PesqaxvXi2xdx5/0fyPuKNcpV11cbU0pccSSUmIdfY8PZ+OIWxOLJ990fTBbJv4d+okJ
9qkbLHabXDcT6MV1S7T/emYss2urm34vaRU8oDu9Z91hidg9nqJ9LbrVepEaT9Elnbr54qcgkEyQ
PKkSFT3eVOJVwnRP4tm1TNdTdOCSWsHReSJz9dF1b36I5CLCRI/a43PFU+JmsR/yxRQSMBK/urO5
+OboFXWFdXxSCoevgS2kNuY0DwzJE06mpjTMSNrWjnAVGyWfje653knXuvU+S1BIvGoLYJuQBP5f
hV2RkLoWhyORJVHZxNbZNPrl6KjQPkdsioS7mEAicT1l0/boTbeuP4vv2RLSPPMBIU30alMXTV8+
1vdIUWvnxeX6hviefePtJLdrfE8eKEMUhzd/13FJjKUy9UXTFJK2ki5aTa9nCu2PpOoQy/XD8aQk
TZEL7BS7r9smNVnhYt5WVgMH0X3b4wR7zZL/VUzedlNoU4ekAyosDjDpjmgdcWd8jkjEEEnfK3YK
sSVmK+ilfY9VtELmakn8xxlLJiRsiqYXCQrperH8kEyJ7+1ZbKNtFcG2lpEqFI9KUswte9eSmG+T
Xp29jDs9ZeieV7GKfqrbbYqmu6Q/z3ryMIXkwCbxpAfPstZppchI0D/mOsCiG6u9HaEOZGAlmETH
g3zxQ8SNqemT43BklMkIkJ7R73v+6YvEMtgiulDwUzCBNl43VGKKEy1d2ozzFZPqsSU+WJpMR5Vl
182gEE9hfjTxXDCSNErRB/RlFYhmYHdgCOn+xLtskqAyhqR2+lpnl26QMp1rU6T/EvpaTBrbpn/L
En8Zq8dcP9j0KU6Z/fA5Xaew101mQTcN+q/rgvYcuyaWlnTQPQ9hoWVlE9YkbT7W4Ujl6gro6uvP
QuGPlmUGydaY4zYTSGZrH/TDZhoZTroEZWrftmBpyQ9dhAmv2PgomJMJBhwhQPWqc8iGK9wUKLQ3
Wbqx6tIdmGDqavJHUiLdlpIsMl2VberRh4shk6U2HruHLaWrkcU6El4lKKSGxWjcORNIImXdAT1i
q4erI3mpTdCx+VVkAuhIEQuynMa6ofoOrZSX7SjDUU+QypcSja9B2sogkLgPy1AraOf1t/m2AJVl
qE3VHdcnmEYnJb6SJVGWwEEMS03KoLFlKJObf9mRnyOMhk1fV3XIugUzTHsdpf5IdyVvS1fr88Tp
uuhiBNNkRKHehnu6bAJtvE5ctkM8RZpdO6vldRWW6aETRWqtR+iCJElTWQHlYBLoU9ARkvHVJNLt
0sOSBOKxMHCg0NultAWFOCgj0mTMh8HGO2Tvq41LWS9ivV0Mng5qByM8aZmmj7F3IENK/JHZS7Oa
LLodBtF7WdZDIHNTBhknsJtCng8GjiTDotAhyULVqaftYH9K/MgYk2G1YxdCI/tNXw==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	j8Kxqli8ttso+7PR4lnKYbyj0alh2qPBCXZOJU6F7z/CeKf8DvB8TlH255E47p+d4hmkeIHbklA9
lBcyQYx2Oh45Ut3RjRhziuZAUJBIHcx0MM+Ce8f6p/q1xfGQyC+BcNyWP+N29xWcymHfyMzRgw48
Q/hF9C0EElVjV+jSy/j2zUNWcK2YWF2KUyCLglhqczo+PLhKmdzuppPBbY2ICJ0JDw5cwfPCKo5H
SPAz5w/bYix3dDced4Ys9/GBdqSrSzisSGiGee2rvYl2hAZwgMMpH7VzPWgeREeaGrWSjo4we96W
X/EQD6bekQ9YFBP4GxXfLeINpIQ9KbgtRUo7r8KQD3R+jogD3cLIGE8Dt+g0liPWREceKBiB4U2M
QlYK37hKnXRqUOhrqJLCDBhrnYzcpVvlcNyQ8gGahBCd26LEtETjTpedrBgL8AeG4e2rxJRqJVgF
TIRjOWLVwoDfcWA1WoNhQntQjQNClGfRSxXkgSnwI3ERjBss+IXRgxvrPD4nRt5RIhDBKxr6OJBT
bm+bA1zT+NEIgaFOhrltHY+3DbbZezyl01a0N3yltbEyOg2FteIpLbp3YTaU/5e0e8vZHcnOxDyC
nkOOIEEGI4KM67qVAQMegCGXG20Blt1oWzc9evN5V/DPqspEK2G1WkLV3muT/HiIWIf3sDFk9Xh4
Ja/03McGtLzPcYx9EJgyYthXP3dHj44yUvCz7+vkImsc2es0yPbvq/ZEwLVOQ+z+/SjxElb1H2Wj
R1m/FjN3wsDQC1rVoWxKE84IufqJMXpn4jfTb+awdcazduyCBzG387mI4P6qnm0GTywSZ/Fy6bNc
DOpG9Y51sqyhMKWJ0AMNdi3A0HJ/XOSEr63kGPauFlGoFtU7fjeLI+/AanWUBwg2tOq7LoQNxgpb
sf5+yqPeP1IO+HtdEh16bLp9FkCZM0KOq7rlj4xmHKnW6ijvNd3xPtz9dBPCUMKijehKCc0YpNbf
YwMRVI5LVJ2FKq0e0ohc+lXqtPLCJyJGk0Nh5ieYBgnQqCSVUSTGI7OQMyjdfBKx5gM143j7nUXe
jzb1vpB1EAWZEYxco2CioIzvc+nJKv4oQvEg7+3ZHNl8ySFM5z5oH/b6SivhSQF4Zdja9bUZseco
2X/vTCBrtgNGC3/wxAxcxJ0ejXznqnnKRTH05HH4fZ7hPumW3E/Ndhi3cAKJ5bIIPUPGKzVXi2Mt
mQfEsv15klKQNYxrHyM2VIf8tEAyfnPsTm+cqP7Nmd7V95zz+bkrTX8WX3vuaRbkHl3AY18JAQB5
Yrv2XA3F34+es/3ctwYyLyfYMXo0V5Sj62rfnzKipJZX+IrlZFg/V1LWRODQnncRDkXEoeIGXvtW
6c83oNWSBOhE8E1p9XP3bxoSK7TamiRCBAZxdNbviRzqW/Un1bq8oMGzwqJ97wHhd72Bee+7cukB
wpHc+77dSibzp+88LcMgxJy9wBopceVd154lUn2epA7HOH/WNcYi+HL7WoCYqC4ce/k0yhg620ca
7qQCgAXzkOtCTCIJZK/Wa4hbartkP4/1t6v01TZZPmPcQZAmAo+VvvD4ytBkH0Un0oty37NygtVK
FIdqTaEzFyNFwlMlGBkphx7f+dE2ypNNFvmSOx+7CEbxF+HCCnCPDTtWHnqlHvB/QDk1T4YRiZfl
2MK+D8Pg6OXec4/qV4mIkc6oowScSv8hTC02RwA58A9fhkNqCB871U8m+UC9pmL74fg3QYH0gonE
GCgwgv0OEL8AEbd/33NDBnqA9f3aWWF+C45kARN40/AmanCWX1ao/aIEusvX6fm1zJAZjezabZX4
EJ3J/scRCEwTjOLZv5c8bb2cz1cjgjkxqOnpnojx+/RN07YnPcL2x0pb1hcujUrou6cnyRtxEQCG
1ibdERSXjdXPT3nkqgIQoGruS8l8Fa2qTqN9xHmuBSnr52hKxUypVRFpqKQde35OOiZiKPkkEnZp
zYsWkLeaMLFxvMyDyC0Uon/EhaTp45ZXEpkYuB/501aOiePW+7KtcmsJ6exdIa+NlBncZpJLXlxO
y2LjSj933eFLjTtu4/RWzzJeI43z7iooviUaSfRlZeR1h/sCyzYAn7StdkfifYQM6WfU4gscZPrz
ROh9l0zafSvKoXk8FLCi7djPXdzRjCStcGR1BCE8y/h3lDfBLhHTMcQWCMjT9ktjuccFL6WoDiHS
3FMeHE+WD+nFrIh4XMaC3eJ+Ro4FXNpI7hOG6UYoUQjsBTcFS5w6ofy9UqBPE4WOIlJIRDmhDfgp
LXGMEgYvEtnns/V91yz88rb1dICKuVIR3rsKr5i9i5lsCUAFyYf7cZazbExnveJBb+jDxYsiUlu9
0FI4KmhI5/Np40tekftGvfaDPgv9oPBfqqOrvqVIdG8b1XSaacmMLYhs+2atczzbXwhY+CH13vZQ
zOSQfKz3Njg0Zqz2d3XXXYMKiE8jziv99d9H4B3ZnwlU5CXAt4WatZR/QHv1sm7sXUDfifKWBiGI
Q4ZEZtRKoStHLa9EfHJ6iBWhg40m1u4fe9pWcke7rhbDFaMjAB11KXf0u597fqyBTEsmqMSxraog
9w3uY++CeQDuQCUj3FHLyREaL27d2L8HOK6zCivDK/fxIPZL1brlKAQgk6b2s3BM0ICTDuO95o5A
Wjlb6N9BVFGDgjRslbUlxgsrVT9qz6eeHqhEsv8/FcH/jJTTiJaorRgBLGo2pecohoIb75zrQ131
Ei07Atp1V9YRtZRI2wTc5V8YKZ71g//HpI4/zS/5p//8L//1v//Lf/kPOZXAAEDWgzz0auFe/Hu0
2d5X5V8rJLrKZ5AFibFRPirLGlXc0U8DSDcZqohTEnQQLKpdo0d3WBui9NS4KUmlcg9qke1xKp5G
TU/FJF+7jpiL/VPFxPPiiLFAJOTeLwoOaXO47HBcByIKERG6FV/Vdl57M5bj0qkzJK7WuDk87drz
/BqpEHKU6MCqEmPtN5s/Y9dlbyKzL8e6xqZAIU8UVX7t/a2nirzjkhry0qJc32K6XMuj1UC6pDuT
5c4xeU3XXZzBqkd+e7Y9l1jozdbTq7ZRae7DlyDTU7ONK2oc6+PfzeDOovGwrUIUu3MzROoYEhjL
bknBknMiGnDr45wVoWGB3X09pUXpOqP4tbXG7PjQYDSNtlozMEcMZeLRpN1u37408/rWPWXB2CCE
66aeJm9S+1l/j8BMYDJ8/ToLxeh+x0Ry7Nnjmylm2Djr1XQLUbtaksnMY68MvrMUGkBoNZnaB8XU
n7wxSObn9wJElIY+y2TnVUsHMiwL6rWP8j6WlR3wvmuJAjBjOdXCN/HyGh8tl7qpQD5y71GmQX+p
gYpXlanOF4NBB7VzVxKEeXaWdmMmSLQFoHyQr+fWUOzmHunPzoqYIS4kGdmnYYiazkqRSezLaMdU
GVYdhf8gZc0CjM0kCECDND3qK+G2/N6hqxr2U58yfczw7P+y9SC98j7ovdsd8fFLRlNfifagPu4I
hQgQYZp4Us7e5Dw7CsfjK6YY1kokZchJVMIaQ0lEzqhzzzoKnvmMiERdrMK75QmPtfcp6OJ0Auo0
pmrvYyePX0syL4RkEPf8YSxGPH6ZbNel4FxJIQDW65OG2pJrzVH33lzoTaqeuA6FSZhJst7fWQiQ
xYLxXV9Vb3tKaCPQxJcZ1P7e05Lp2ZUEyNyeeLLuAF+r3nw76jTvbm/q66FuCMiFi46Psr5ZpBWM
N0Fh9XAC5cpvajnmtpJ6ky4S63Ps26rwxoCAE6wIgoRvwdFqp+PMcKdsIbv+/ZqZajdeL4VloN2E
hJp/5L6yhIfGP7aLS1SZtd3utQMG6iKptxr8RyiDDi551noHzgi1+MS2SLbCO6T55+Nw8kwijVtD
exoXiAnl7Fj0WTOS9+rnXkr0WcauU+vH0KQBNioKix+DEIHPUbPz61fS94rZ50nEE1wzqe4aCGaU
jOlrpTtqvekZ8Zod9+/hsKU0Pl4FDDIfA6A2VUqRYmRNm2Rcx9qvtCL1gLRf29/JISilFg5YxNPj
/33fn8wtgnR4LuuoTEVXFjWbMt8vNTx/d4lrr5z0Hq6dsNbfSgJQ8wsEZWBF8JTU5laDhN45uxpz
lsfESVEJgO1u5x8dg+0zfPLy8pXtVplY0LucCYA1HJoUx/2dxBpqXFh81pjAXJyTbWOFNeBeA1DT
jg26ob4nk571XPBOaNQtT2b9/kLqPG63ptZd+BiO8twQIj9WP4ewQHaosaE7sHmRjPpu6Rnv4bjX
1jFanIbvyNx/JcybVuuFP4XpWhGiic1WUcapK2A8HHFVSgTPozUlN1fdthYDpjvYjnrjI6mYLPND
Vxiysj8/KwtjZ2HQgNfW6ijk4O9omI2yOoBbdd5WOxL8Rd7TKcmvjR5CCi76+SnJMMy6lGR81g1g
HRg25QhxecEBvJiW7cfxPnBmMaX84LuZ0bsxe/nxSSMn1demfPhuTg0bRhRHfWzSMEyLa9QbKw86
01O49/eKRH+Fbb+VnY1d3o25xlxysPxnyOjvq5nIYLG3uHYmd4ZDuOLk7ceAXOkRV2cpmizcG6P8
nwjCazRVDalqw31WzVQ/VdiLhS8ZEvjbikEBem9eLC++9femt9bK6gD+4qCRGZeX2tdWoPDvXd3J
vKzboOw8vmSgZ55zxwE8MVcLgCtCbzsZiFnEQuSuCItMdq5zZ93XrDZLOAYjejKl3LK2z0YPK60F
FVrCxijORHfWtREn2NseRk8BKrmj4y33yTTK1UdueVpA7kQYwWfivftzUeCr4vLaXSP9L+xr9WRd
POHDQIzmjmBWeYxYR9bFE11kVD3mTqoN7Ew/z/2FIiWT3ca1bGsnzTfX6aPP/fu6gYGadNwbPNJg
x21zR93orp9g6h6NMxFsMQnLXOuDvlzp7OiaPJU1qyNx/+Bk9yP1qdA+uyptXqk+08LabwVZnRkn
jarOjprt4hPv00SPIjljK2Hjxjce2/Js9RJITU+z7H5W4XRRaKPhdGwNcXI3LbyKLY48g9fAB9i5
TYRXQipH9fmlMCqKiFWOnXmTSBlBpJ/VRwPFuqpvNHaCmz621kN1h9kRXunlzmtnAzDFN3pSQQ84
i/BE1oDceeUTxpbm79cm6/QMgEb3D/6HS9WFxp9e7cdsBbGioVFKm6q/D/SxSu6rboqPwGEYEyVC
0ajEocxaa4OtC7M5ME1TBCJKNKnO60s9K8MF59r6yNwc3+ugylQf+vtT6D36SCsCKv5NE9eK7lWO
cQFxxOWjxI/pWT7xRzh/O08YOjmIKSxxuOOM2l9d7Bkz7+TSNQ80gDux6p46Tb/j9nOUmNZBfcot
0mz/XoIRlQBU9dG3gPKbnzJGvrawhzdLV+n6xsEGxdrKsA91XxflhNvgLgF4AjMGQs+3sBnrRloo
6K15/poWROZU19o3zXyArt5ZAjdvesdlvhX+2vr5/ieK6E8agzP2EBruHY3rqwuMMg==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	zwItFhwnjX1dums/QM0WUHOambEE0hrCT3pTkXPD1p3WLhpT5ToPdAycR3+2+BSW6Hsco6a+DTYA
+QBrdicdBjjMszT5GWzELZF7cC+hEC3mN8dfm7/iJ8Nu3pSJ5lYP5g0Qjfarfk4QDu5ByHpg6UZD
cBHXvrFXuN7cLD9xlbg9PRkk7/OcZQIHU14COmtFbdXQpd4CGlfvo7qvrW70jwHvFksKxrTvk8nC
ogf+XN8XCnM6beCFmATI8IZ2k5lR3hlwBylttsor0ah4syVZibuGBg3676e/CgBMt+5Y3xfKxY06
+jG2ghXkO/24O/lafD70BbIGbcGg05aJnLK/0SRvSw+j1XCIssR765PL7z0UM7OHVfdsPdIzBInz
+3YUE0w7nmhTRlpzhs1+pZ4QwWInYttbhs98kZQd9MvPz+GUQeZ1VQz4hp15ntuUZII/NWiDjRGN
+Lz5xFN3bUY/5/0GWt+Icx47uinz/O7ajFkp4vFWV9VdetjlHrWeGNqgMLVIWGaICJk2dh4lAkjd
DVlbMtBuOd6ctz8/K46Ja1oafd8TzOm3jJT47kfMDHKEKlIRHgQ5a2JTFYFvBwpSarK0CtHHeoa+
38/RKzzC6N4xLD9wxiM2bn10bQdo6lWaiI+/P4JSriuBjvcI30WphrPhPrKAveffrNMSmjt88Mxv
Zz/K8G5nYxLSJ8rndSEDKY/SbdiycgKws2dmKlijZiJ13Hju8eWfhutH9NQ3thPuTCHaQlYQcdEV
uBBQalAMb8FZu/etx74CrYS/PQqTmQJL52oUujA2LFYoteae0eN5o06UckvyMTMN0hajRvQ2WVLx
V/q5pQ2vDamq3KBMWqeQE+u4voxNtze4zg3c1EkBE2rntnKhqQivNgsGDC3QkS+uFd02Ni0ZE1hA
7o1JZ0Jz4GJcXz6NCYw4UX1i2trvd43l3Xd1wHBxwijUxf5jAER6C2x1jVHYiOxjkV2pFKdF3sZw
MO7pFcNtxUx67KPMkLDDV+77WrWWRwwgy8pFr+xgDnn8qIBT8MYkafs8VxWArebPuRY0Jajmo86D
x6jmepevQqo+sEDhBN5te58MIiUgL61wGu9GTuJFRfoV1rdRj/3tqN+sYo6XUv6ggZJdQVCs0AxG
NgAy12UtwfsEcsOQOKZcdFklTrfJ5fxu20ay8zXcnA9K+XpHAZD7OX0EkpimPs1yfB3Yh3J4YIAz
QwegCVykEMhRSpjbPKRtVSDD9bg4gh4pRJ+M++tNupgAWnbCmIbWwgu1mPUdQTUy1XraBLCDkFje
xY3DrxpR+6KVlilfziS1ITlWkRHL2xXlfvAlmrGXhXrc6ZapEd9CQN5/R6c/pt8pLE2Xv7WA5ATe
9RN+DXdPE4grws696nONOx2bH4Pr92fz07yS03gLCO1kYLdtU9NtYtioNVRvQaMLxXUjPEloukE3
AC01K8qIVLSEi2LhVuj2chJGOncT7l397BpXVNnApALOvqP+vVuG51sS6U8/basnl9V9x2ibu6NL
A5q9We6bXknksvoR1xwtbH0O7PukqSU3TAMxmkJ7fvCws/Y7C4LmsRtJ99KvNce4k7SQnbj/IOCJ
Ut+jnfuJJ7vL/EHPD82qWXRrxs6jEL5mH+gO9DsyjNSpnODklMvq0zjOqEUY/tSoCoJR2k4Bqs6T
JOgia3zv82DqP+V9VecZ6R6lt1dXC4QAfw7Us7/iIb0kTlEzJCaIVr5ZEuRH/MhpL4ZD9pc9Q1rU
6Yg9bCYMwzrC3Ck0RMSTswPSbpuE97f5Uu15FfEwWRjw8JvdQFDrip3Id9/eJeiIFvqxmT9PiHap
w9cvfzIivncnG8rixOkN4VkfG5fpEZbj9To24Mqqa396V7NRN0VypP88twIz0Sq2oU+ctP9dQsef
ppf8T//2f/3LX/+P/wi55NDIOeSfeKXtl/f+JH0ComPkgVxyRBWMlRWI11kxRrhQAWEgilASIHTp
PYrgcyzLPpAW322HEArprTt0tUTwJLTFX1kAE4NSBq3r70sDLjnY+cs/1d9DYk5+T6uOgXnRo+7c
cpKHFCp86/sXCYh0bd62950WoXFgxqWPnYjoYOvKzxSBYhAdQCwype4ryy6KxHuid7UQcSVT7Nuu
bYVUjd4Lzt8T8VYk4S7USGwRcCN3fkcQc59H1g70UdQzh9UUfzI/raNQ5kLpWFlxlubruxaS+XtX
7st/55XFPuLxBq8nOgGqn7OUnBMDVoNUmuViUc+RmRPxe4uVOs0R1fwzctAL1/UIwGpo09Qx8mGc
Zci7cF7Az2Mt2r/zoKrj2XZV0sKB8wmzu8o7sNVxeOllyVlqdOLO2OT3TAQJ7cM9irrAUjurwlzx
aPs8JLV4ZMwwHlbq3vC9zLxzFAzT6A6Fa77IjlJlSKOmfs8RZQ8MDdnvogCuQdpYT9Z57pDcWPLe
SWXfmEYuBzDGeihiZhKOMJTzQGeOkM+izS0CwHHRB4zK2xvBmCamVP38zpO5FURtxZxBXGUF5N2Y
iJ6tKGL/iZi6pgc9pneZFaGDYhj51JW8afcZxVCkt3Ofx7RRVVG4dDGdwafSqD85ChEsrfwVHdwV
buRMq/up0zBvZQAwgp9a1OTGiJ5Fy7BDzEGhXWZ0y6jcFFr/Q5VWBzmcFTA0vsuLd1k0MUX4vcbH
gzrOClrlvfFEmAC5FhzQX/9TQoyxIeAjO72SK1097Zyz5yCawm8Sa7JU1wEqN7OW5+PhtJL9mL1O
T8TTU0pO1WR+zbQ3acHz0q4fg+fFufqqs0BHeBhIIAkg8Af6CoxYEfEHRwetI7wbBdltud0+BycW
QvPABnVXiVeOjHPqLDB5Ks8WqTEHeTMgLfsDMTIRLd94L7lvFwqMBnxx977PQwThRhmOk447oqdP
puHMBzoDuGITuKK4t/jLn1jGEbXa5zmIeZyZbvm0jlgQ69qmNksM8CoD5dwznBdDVjKRd46Rr0gm
nInmgl8dqkoKa31HkMqbEfDOQsEsRfmdaW29AbhS/Sq3pMQEKjUjy1jnkZITfj7D516Qp+RPKeOs
etEMIJiS9WizrNg0x/UAEmH/GuV8j2idJtPCz0EGPizMde8JpwYre+0IVP0bdo1YyZUfSEQ+Lna1
3ESjJILK+64ZTb13YN1BxSdmUhWPGM7TcpQ3JYyl6xU/PgsSO6kjHc6RiLDiMRijyOz5BW1GjrX1
fZ5egs135ZdiFvof1cdn5ijXykDBnL3V4mgyznUNiD4R9/vQFWuxXlnYUtBlqMn3s88DzwSet/pR
r8GMMgeF5Hv80VFYYPPE0O7pFcDdpqqieoBhFEd7tH2nsRYZN0bmx3/XIaTs5tUREG7NxXbQLMcf
oEuCPNbT6R6G2eXW8v6H63CWHpvKw3Z3KVRWWo/BdLGUzUGkAp3gQ7TY/cEdsoqddFYEH+DW07yp
Y6StEcewuc9D6yGa90e9SZHVISxTWw7bNeKWMuFRbyw9dNpwaqwrb2eLyDZocH1cfJt5z1zX9f2a
Zbd/iPmufDqNt8rQ/Kn39YBL12099z5NgmMgt/d6AYLHMnpKIWNRzygQG+Ua3wtg4ns/UaWunAEI
n+YE7+O8roAMDUx2ZxXL0kv0hkpoPhzyZp5c4Li2drJIVN3W+j4cwFoYrR7iiCSipY1jo+v7s7jU
C+cZAx6pClTCu02b5lTE+x09P8bxUjGoDxoAx/j5cPijAAPoqlVKh6YY4ORdRzH5VpGHD7hC4YX4
v5FC8nOUwpE+eleK5KcUKo4UwN96Aycu98STqETYS0d6c93rW4PDroYEqlQa6VdSNFuta8ST72x+
O6l/YgHACWt+6QCtb+Bm0qkJ8TVyNdD/q2wg8qxHgIkiWL8dAXjuCIu6wY75VUXMuHnrLq8v67gy
Z8JzcSncWZ9CQ69sbiSxJ918vKuRiAnABX76ZFm7I82u1JvAcCKC4Joxfe1ftubtfDNuM9iKmSBz
lsZeeQd8yREo+l0Ri5z0IHJ9VATOP2scNuwVMaKq+Chf93mgldivNCSkd4HUNDxg0zUu6ijD4Iki
wvu2JcJ0ckQFsVWERjgi+/EkANyJstez+ncajJ2DUKaURwxfB42Ak71ibsqKKjwUaE+E6TIu+P5I
iSWMONcz+UpE9LRNg4753Ta68aB4lubE6HCfYSI+dbHSU+IOLTUXiQlMy0sHt54OlVjNo0k59L3D
v54xMqKq+/0anhw0zI+R954HEZMpmJ7V96tkHD9iUZKIWQi29wtMtibFhWN7v3wTIhG2UAMzOMvk
BGHIA2h1RgxvTEhn1fS+9rXyzQGcgTEU8L6KjC3oT+4L+ftLpexrcG7i/nwpLiFK6Tf1rcTw27mJ
MN2tznOyyzhLNywRrBV7ORvuLJj0woiaTl0Jp8k1gt7/EqkkuSu0STeFV8BUpWTYXZmyHcX0bp4V
QRaU7Y2ca0d4i+TKuVbOANB+LTq0v53H2qCR3RJDyQheeL7vRR0FqzfOD3UQY4RWHgy/7MXkwEMz
9kwAVlMLgOJ7B8xSAFrcpjcEjv2gZw3NuRec6PXPoEsTkeYTaQ75eCJaNEZWALsiRuwFY2jys649
ZlVQeWcdJXSWVvzo+jEndAvARB5xGWKfV/gMrdbPIJpiS+oYMfrRtaI7te+ZjivnpmDUhLj2sPVH
9vsZPTMSTGZciXgv1gIFTVvPxvca8fT3/ySCmtmIzebOb2amZmDJ+XuQlMBB2lMp7p3F5n2jdYhF
hKdIVeIYFeGDf7NcYieuM07CvHgomH5FDgmEhx5DT+9F25yXkIxmVGVIgg3SKDrwIigYDdwNZjtV
GsIBTp2RiiBuENHiuVPc3z2+sFFNK99nMeoB4/HftEfnUVfyPl52StesB6OP84Txl7/XpkXblx+M
n9Lw795VvU8iou/jXse9X+aVXtajDhLRY2YrS9yFvXHNBTrBY1yECs3Avj/z+y3vr/DgqNon5NmS
Oe+HtpcaCfWbyPCOFqCLU5rDs1a0gW8vv6ewOc4DHmjFyWKd3/o8o/535wYJYa13pnN4tb3I856+
OD0lAAuVWse19nUA2/SLtmKrCP3JW99zZBKdGKmSuvj9QoRo/+W2H/vpUuii/QUsl4gY/pwaR3XH
oAgi5Q1yI2AFEdiCWvz2tMXRSFs9MRFMPeIo1u/dlmkZhyKWjEQ0MqDQLlUS6F3hymB9v49KBAoV
TvPVnns3iGiwd8n32DGDDHknR5iGykMx9dY+gSZMBNHc6G9e+0okomBwTEcS8cQeBgzg7rlrTxxU
oN4QqN8YqUBTXCFX11FuXCRwn2yNJ8IPIOsdYHG1xGJN/Ramsi4R0fFUKd7r+RprGu7GYeoxMWYD
h9dchzkNPIbrkeSVIJ309981rafrX53EK+sq7JK19UzTJZZiqcZ235Mv/WA+bYfFYidzeUMOVA8X
R4ru5dS5ScATeaqV7zN9YB/VHWvZKxFnWCVPDz3ir+kmA7XY5yKIKsYWDijQooemrQ==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	2Pd5VNwwQe+LWK+BeoQdY5x/RGR1eVSrvV58m+d1VVf5jejpR9GYvdJdq59Hc7XfZZUjptscZeRt
HyVrWss8e+YoMy6EUJX7yUJ75E03pxQRpo3SLsYG+TRoByKh1WBvRdDsfS+SkNTLpLeRouKxWatJ
+MvBr4bV4yh6yePEVxmJUBkywwzd0SE432JQn/s1UHIAyTzb6G2vBtpccM4tTBOoEkILRy32hHQ9
5G64LaKB/R5gy08tS5F7f2QK9U7zRhiaM73sPCzTBoVQFLIVEbXwR3myllgIF/t2z683f1Hm7VRM
jjrEGZ6GHuX6TkNEmCKxEWptTC024fTJRx0FXpfiaFSC7H7vzk4z15QrEVpz+UWD8rXHSvn9u1Zd
PHWLLoL/rFVJAyTbm71gJ1gKSLq/T+0Bgcuv135R4Fa5oe1P1fJEG9FOUikDX2fo9sggeadX3nuy
aXeUxiUnThqG8VHnoZtrh3wy+Lt1RZZmaQoQfyc3GLb7U38fVKtW2Jz1CkCYKwkOK23FQOwAW0UW
TgTreDkwR9tE+BB9xj0ZwYr5CgV4i0klsHHPqm22fec5U+5R9qwEdRjWPLuxkiLsQOl1dT0RKF4A
umcqu8UlhnDv0Yuvc3O3posF43I9+6GtuCyHL7Zz6Rb15INiZ46ioaP13fiGJWV/H/GBAphES0TE
ls030s4gjKfwiYjVs29nBadP/CSE8ie+YdHgJyeSqwV3gGi5doSekiaJuUpueF0x+B3ZuhQxSEH4
Rk/AUN87EMuM63p2MQS1bfJV19pirwA3MeogUCFlRdn3q6ZQ58FUXNXY0LImCXh9P7VA32d0x3tV
h/ZzzV9ChrkQS94144i1q1BZV9Kk+/v97lS2GRqoduHHaFa3se9mRvEID6/q7gUph7FCMTNPVU+E
mXwRZZhQYI/hpN99/zZcClL/1TEyAtQ+/F401mDvYmH7qo6HZSR4MCInibh8fKQyWtEDl3TfgqRr
m4jbkD0OaEUPnD0MX1Xl9+E8V0xkFHqbRcqGmsoSU43mAZj+mJRGkCOdlXDyF7JsRbRQmuRNxezT
gTd4O8dZDy0WTJzX+yZLxWz6fiIrkQ80FsjJ0I9oMmJGX1dcxOaZLSc4riOL6bN50f2Mzi299x/3
cwa2HDG9ou5RCtBuyujhe24XNf6r2l4Eo2ac4u96S+6UxoPDWdHyzOxlpH9yHjKPd/xVNusOLppL
rfeyjgInYr1cuxWI9Y5BcNeng+Ob/ohhZ7UTYRtc1nnUUE8j5YwVswnyx8vDAnqzs/uup2+N65cx
7ZZIIMavfR+NoJbPQN7eKSqW/AG0KLr0uUeuPqdTFqFtd+5WLWi0f8E0Q0Q29jsyLCXW8P5yN7Zs
rw3D5CTOMdLHuhK9jYXA4MnWeYg1IOXOzZmLXPP7YGK4LYCON3e9qzoazdVrtDyqwIqAvRypiqtH
bkcmlFsCJAnxcqlL+qwQ0mlI3K2e2qO4pez9/Gi0n7pvoBRXvmKCmDf2EEb8nWZ9dLCnt2JvO88v
ogJFEyneeBLfWItGCbHOw6QRmxQBeJPzHmI3jMTq1wFwjfxELIYWi6HWc5DjuPZbAOtOq870smLi
qcwKdb8EwXN6V9LG++cBnSWf3u+zJxwReJJL9p2ukYxDgAg9bcccRkM0/JIm3SXmHg3KbwoCfBp9
S/3EFYCY9gycRx2DmbWeVzRZ9nkG9csQ7/dAxhkO8zIjqizLCDg27KcGUO+CbSdGda3zdOr1K3Dx
mvpEyK4TN2/peYhRAlvYrmN98yXjk+fs+6FQ2kresSdUEOk9cPG5L4RD010abzUJW1p4MHCt/7gd
lWRjDFaTsIsCBpMT4mf5iNGEjh7FPzUjOQOranva/rsRCQ39uWd2B7tc04XvDWjgcCuIiC3vQ2Pn
zSnCEcxlRNDLZ/HUaajnca5/GM4mIiJ1MFeb8fjE25P0/vp+G+md3e7OiDG8ScoEqXb2eZSVoJGr
5phTd5mHfC2wdDuXtxuvsg7x7pXsV0FWvtOQmfBRrNj4qfrl+EChre3F0Qzgju3IjojQddTra5lO
+zVE9qPOQ3afCZ6e9p8u07Rz+ze67RHGGl96w3B3PnsuZEJMHYJcUa+k0Aakqyf5LzDmMpM28Z5f
QmBiBQg7kyibVJuKxVHn2EkSqVlyjNdGY6ZDcEQm4vryjiVLeLfzQkmOwHU7+bfvNBmRkGPcylgo
9vl0np0U6saRmxoBrofg+b66M5jsvnPtyEhZ1ipCn0F14Pf7sjVuJy1stkJbYqA91Y7a6RrHjUYa
p2+IQJwPsXpr74tYrcysKISes2Ie8KBfXwGi4zrv6KEkBsJMTh5+WIusApL9Bc11/nyEBSp+pee9
I6RJIxijZ58Hx4x80UjnxLWA7iNmpVUf+Q0USZOU+95Xm6kf3fEqD8+4nxIH2VzTSTRWF33PqCJ9
kuovbmv7Wi4rmjxgpZTN8AwDvfQ0/RorXkIwRol478x4aWgbF9C1vDbGsWGsSVfMWroSt7TrQgqI
P0GePvaXrJf1wF1HYeRyRYspP+BQQTW9+buAhSQ7OB0+ZRBV55km2vxbUqwGI91qJDLufT+dGuUZ
d63AWvhzAObaZuu58bzxQz/5vELLBsw/4hq9C96U5popY9MVk2BjeT5VvhNzk1CqnAqnRYQTXJhN
Yb2QGv4DkessQKZPcKrXrx9FiCZy9vxN6wkdZ227tXw+MQKRto1t2qrsQRZ62i4izcVIrM1NqHpX
GvsOOu/3mZ7ElN8sYl3bH5g6yDlTEvVdnmO9hpZcGMbsBAC273ta74Hp4V06owXa5HSCsYjrVU0c
7tQ65z+gZyZuEZLOXECaBzlhRjM+MUyZ7RMbhN2FG7HTuDeEhrZCJ70ny5u7Nxn4YrbwVr/ykW3T
+ENtlpbumxiDlJ696M06W5wojzOwd57dAzdbo+dOBPlFDrz3/U0OYiqs0xs3VdMTrXY9jsBwSKhc
EGMRDPnZAM47WSxicAkkr2IyON/YX52iO73YaNmY4dh54+N0Flg9TAwUzqcXdnvGvMYnJvEIJH6y
Ad1CfAOygGyJUex3lneTBTRbGdfny/GV099q+yDYDk80keazv2GspgsmrqYxtDWN+mQs9Q3fQZTf
fReiUbXUsiGHtoFYClf1rZLhp4pAnSIUtbb2ALC7iWIP3Evj67xLl2xzGpai7YmrxHcaiGy/3qYs
RPg5Npnj+enPCyDxbDOLy7ttePnUzHI3qswzWvhGrGsqJFl0w4ysaRqSbGxwr2+r7vDR0o+1X4D/
Jonjz+aW/PJ3v/2b3/32v0EsaZtY8m//5nf/56//w29+9be//l9+9ff1p//uv/zhD3//D//DX/3V
3/zm7//mv/7uF3/9u9/81X//01/9r3/4/d/99m/3v/jf//Mv/zyCyi//x7/4y3/7H8b/8e9/+ze/
/NX/++vf/5t/8xd/+Zf/6T3d//b7X/3d//Xr3//F3/7Dr/7vX//0q9/+9nd/+NUffv33719++tvf
//of/vC73//6p3/4L7/7f/w37z/5wv/yL//9f/yf/uL/BzyF9XU=
	]]>
</i:pgf>
</svg>

[[Map Tiddler]]
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>
about:blank







.bigbold {
    font-weight: bold;
    font-size: 175%;
}

.orange-hilite {
    background-color: orange;
}

.yellow-hilite {
    background-color: yellow;
}

.fpnl-days {
    background-color: cornsilk;
}
.component-description {
    background-color: cornsilk;
}

.paragraph {
    color: green;
}

.class-event {
    font-weight: bold;
}

.class-topic {
    font-weight: bold;
}

.calendar-event {
    font-style: italic;
}

.project-link {
    font-weight: normal;
}

.project-title {
    font-weight: bold;
}

.project-title-overview {
    font-weight: bold;
    font-size: 125%;
}

.days-overview {
    font-weight: bold;
    font-size: 125%;
}

.project-component-title {
    font-weight: bold;
}

.project-component-text {
    font-weight: normal;
}

.project-due {
    font-weight: bold;
}

.no-assignments {
    font-style: italic;
}

.red:hover{fill:#FF0900;}

.st9{color:blue;}











































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>














<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>























<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>

<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>






<$list filter="[tag[composition]each[location]sort[location]]">
<span class="bigbold">{{!!location}}</span><$appear show="•">
<$list filter="[tag[composition]location{!!location}]">
<$link><<currentTiddler>></$link>, 
</$list>
</$appear>


</$list>
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>


<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>
<svg version="1.1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 612 792"
	 style="enable-background:new 0 0 612 792;" xml:space="preserve">
<style type="text/css">

  .red:hover{fill:#FF0900;}
	.st0{display:none;}
	.st1{fill:#BBB2B5;}
	.st2{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:0.574;}
	.st3{fill:none;stroke:#BBB2B5;stroke-width:0.574;}
	.st4{fill:#BBB2B5;stroke:#FFFFFF;stroke-width:0.574;}
	.st5{fill:none;stroke:#FFFFFF;stroke-width:0.574;}
	.st6{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:1.1565;}
	.st7{fill:none;stroke:#BBB2B5;stroke-width:1.1565;}
	.st8{fill:#B5B5B5;stroke:#BBB2B5;stroke-width:0.5338;}
	
		.st9{fill:#AD3C62;stroke:#EEE2DC;stroke-width:3.499458e-02;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:22.9256;}
</style>
<switch>
	<foreignObject requiredExtensions="&ns_ai;" x="0" y="0" width="1" height="1">
		<i:pgfRef  xlink:href="#adobe_illustrator_pgf">
		</i:pgfRef>
	</foreignObject>
	<g i:extraneous="self">
		<g id="Fondo" class="st0">
		</g>
		<g id="Guías" class="st0">
		</g>
		<g id="Primer_plano">
			<g>
				<polygon class="st1" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st3" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st4" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st5" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st4" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st5" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st4" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st5" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st6" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st7" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st2" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st3" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st4" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st2" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st4" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st5" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st4" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st5" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st4" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st5" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st4" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st5" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st4" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st5" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st4" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st5" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st4" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st5" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st4" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st5" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st4" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st5" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st4" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st5" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st4" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st5" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st4" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st2" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st4" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st3" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st2" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st3" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st2" points="510.5,347.5 508.5,347.5 510.5,351.7 510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 
					502.2,358 502.2,360.1 504.3,362.2 504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 494,380.8 
					494,383.1 491.8,383.1 491.8,380.8 477.1,380.8 477.1,383.1 475.1,385.1 470.8,385.1 468.8,387.2 466.6,387.2 464.5,385.1 
					460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 
					433.1,372.7 431,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 408,372.7 408,368.4 397.6,368.4 
					395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 393.3,353.9 395.4,353.9 
					397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 418.4,358 420.5,355.9 
					422.7,358 426.9,358 429,355.9 437.3,355.9 439.4,358 439.4,355.9 441.6,355.9 445.7,358 445.7,362.2 447.8,364.3 447.8,362.2 
					449.9,362.2 449.9,358 447.8,355.9 447.8,351.7 445.7,349.6 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					462.4,337.1 462.4,335.1 464.5,335.1 466.6,337.1 475.1,337.1 477.1,335.1 477.1,330.9 487.5,330.9 489.7,332.9 496,332.9 
					498.1,335.1 500.2,335.1 500.2,337.1 502.2,339.2 508.5,339.2 510.5,341.3 508.5,343.3 				"/>
				<polygon class="st3" points="496,379 496,380.8 494,380.8 494,383.1 491.8,383.1 491.8,380.8 489.7,380.8 487.6,380.8 
					485.6,380.8 483.3,380.8 481.3,380.8 479.2,380.8 477.1,380.8 477.1,383.1 475.1,385.1 472.9,385.1 470.8,385.1 468.8,387.2 
					466.7,387.2 464.5,385.1 462.4,385.1 460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 445.7,380.8 
					443.5,380.8 441.6,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 433.1,372.7 431,370.5 426.9,370.5 424.8,370.5 
					422.7,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 410.1,372.7 408,372.7 408,370.5 408,368.4 
					405.9,368.4 397.6,368.4 395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 
					393.3,353.9 395.4,353.9 397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 
					416.3,358 418.4,358 420.5,355.9 422.7,358 424.8,358 426.9,358 429,355.9 431,355.9 435.2,355.9 437.3,355.9 439.4,358 
					439.4,355.9 441.6,355.9 445.7,358 445.7,360.1 445.7,362.2 447.8,364.3 447.8,362.2 449.9,362.2 449.9,360.1 449.9,358 
					447.8,355.9 447.8,353.9 447.8,351.8 445.7,349.6 445.7,347.5 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					458.2,337.1 460.3,337.1 462.4,337.1 462.4,335.1 464.5,335.1 466.7,337.1 470.8,337.1 475.1,337.1 477.1,335.1 477.1,332.9 
					477.1,330.9 479.2,330.9 483.3,330.9 485.6,330.9 487.6,330.9 489.7,332.9 491.8,332.9 496,332.9 498.1,335.1 500.2,335.1 
					500.2,337.1 502.2,339.2 504.3,339.2 506.4,339.2 508.5,339.2 510.5,341.3 508.5,343.3 510.5,347.5 508.5,347.5 510.5,351.8 
					510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 504.3,358 502.2,358 502.2,360.1 504.3,362.2 504.3,364.3 
					504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st4" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st5" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st2" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st3" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st4" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st2" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st4" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st5" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st4" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st5" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st4" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st5" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st4" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st5" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st4" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st5" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st4" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st5" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st2" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st3" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st4" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<polygon class="st3" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<g>
					<g>
						<path class="st1" d="M334.3,286.2c1.2,10.3,2.5,20.5,4,30.7c1,7.1,11.7,6.1,13.4,0c2-7.1,7.8-28.5-3.5-30.7
							c-4.3-0.8-8.9,1.9-8.8,6.7c0.1,5.1-1.5,9.5,1.4,14.2c2.8,4.5,7.9,5.7,12.9,4.9c5.1-0.8,9.7-2.5,14.9-2.7
							c5.9-0.2,11.8,1.6,17.5,0c8.6-2.3,5-15.7-3.7-13.4c-3,0.8-6.9-0.5-10.1-0.6c-4.1-0.1-8.1,0.3-12.1,0.9c-1,0.2-8.8,1.1-9.3,2.1
							c-1.2,0-0.7,0.6,1.7,1.8c0-0.6,0-1.2,0.1-1.8c0.6-1.6,0.5-3.8,0.5-5.5c-2.9,2.2-5.9,4.5-8.8,6.7c0.2,0,0.4,0.1,0.6,0.1
							c-1.4-1.1-2.8-2.1-4.1-3.2c0.1,0.2-0.5,6.1-0.7,7.4c-0.4,3.2-1.1,6.3-2,9.3c4.5,0,8.9,0,13.4,0c-1.3-9-2.5-18-3.5-27
							c-0.4-3.8-2.9-6.9-6.9-6.9C337.9,279.3,333.9,282.5,334.3,286.2L334.3,286.2z"/>
					</g>
				</g>
				<g>
					<g>
						<path class="st1" d="M415.7,225c8.9,0,8.9-13.9,0-13.9C406.8,211.1,406.8,225,415.7,225L415.7,225z"/>
					</g>
				</g>
			</g>
			<g id="MvfNLW.tif">
			</g>
			<g id="DVZ8qq_1_">
			</g>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Z%C3%BCrich">
		<path id="_x3C_Zurich_x3E_" class="st9 red" d="M375.9,358.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C376,358.2,375.9,358.3,375.9,358.3z"/><title>Zurich</title>
</a>

      <!--Example-->
	<a href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Rome">
			<path id="_x3C_Rome_x3E_" class="st9 red" d="M416.6,472.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C416.6,472.6,416.6,472.7,416.6,472.7z"/>
<title>Rome</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Italy">
			<path id="_x3C_Italy_x3E_" class="st9 red" d="M454.5,497.6c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0s0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C454.6,497.5,454.5,497.6,454.5,497.6z"/>
<title>Italy</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Leipzig" >
			<path id="_x3C_Leipzig_x3E_" class="st9 red" d="M448,362.8c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C448,362.7,448,362.7,448,362.8z"/>
<title>Leipzig</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Salzburg" >
			<path id="_x3C_Salzburg_x3E_" class="st9 red" d="M458.1,337.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0

				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C458.2,337.2,458.1,337.2,458.1,337.3z"/>
<title>Salzburg</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Munich" >
			<path id="_x3C_Munich_x3E_" class="st9 red" d="M419,339.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1s0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C419.1,339.8,419.1,339.9,419,339.9z"/>
<title>Munich</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Potsdam" >
			<path id="_x3C_Potsdam_x3E_" class="st9 red" d="M400.6,291.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5s-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4
				c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2
				c0,0.1,0.1,0.2,0.1,0.3s0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5
				c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2
				c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3s-0.6-1-1.5-2
				c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7
				c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C400.7,291.6,400.7,291.7,400.6,291.7z"/>
<title>Potsdam</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Prague" >
	<path id="_x3C_Prague_x3E__1_" class="st9 red" d="M417.7,250.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1s0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C417.8,250.6,417.7,250.7,417.7,250.7z"/>
<title>Prague</title>
      </a>
      
      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Mannheim" >
			<path id="_x3C_Manheim_x3E_" class="st9 red" d="M358.9,284.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C359,284.6,358.9,284.6,358.9,284.7z"/>
<title>Manheim</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Baden_x3E_" class="st9 red" d="M381.3,276.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C381.3,276.2,381.3,276.3,381.3,276.3z"/>
<title>Baden</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Vienna" >
			<path id="_x3C_Vienna_x3E_" class="st9 red" d="M492.3,341c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4s0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C492.3,340.9,492.3,341,492.3,341z"/>
<title>Vienna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Milan" >
			<path id="_x3C_Milan_x3E_" class="st9 red" d="M364.6,391.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5s0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C364.6,391.8,364.6,391.8,364.6,391.9z"/>
<title>Milan</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Verona" >
			<path id="_x3C_Verona_x3E_" class="st9 red" d="M406.4,387c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2s0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C406.4,386.9,406.4,387,406.4,387z"/>
<title>Verona</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Bavarian_x3E_" class="st9 red" d="M396.2,414.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C396.3,414.1,396.2,414.2,396.2,414.2z"/>
<title>Bavarian</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lodi" >
			<path id="_x3C_Lodi_x3E_" class="st9 red" d="M440.1,389.4c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5s0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C440.1,389.3,440.1,389.4,440.1,389.4z"/>
<title>Lido</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Bologna" >
			<path id="_x3C_Bologna_x3E_" class="st9 red" d="M417,436.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3s-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C417.1,436.4,417.1,436.5,417,436.5z
				"/>
<title>Bologna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lausanne" >
			<path id="_x3C_Lausanne_x3E_" class="st9 red" d="M348.4,359.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C348.5,359.1,348.5,359.2,348.4,359.2z"/>
<title>Lausanne</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Donaueschingen" >
			<path id="_x3C_Donauschingen_x3E_" class="st9 red" d="M372.4,333.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2c-0.2,0.7-0.4,1.2-0.5,1.6
				s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2c-0.1,0.1-0.2,0.3-0.2,0.4
				c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C372.5,333.4,372.5,333.5,372.4,333.5z"/>
<title>Donauschingen</title>
      </a>
          
	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Paris" >
			<path id="_x3C_Paris_x3E_" class="st9 red" d="M292.1,283.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9s-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5
				c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6
				c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5s0.4-0.2,0.5-0.2
				c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2
				c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1
				c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				s-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7s0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C292.2,283.6,292.2,283.7,292.1,283.7z"/>
<title>Paris</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Linz" >
			<path id="_x3C_Linz_x3E_" class="st9 red" d="M337.8,271.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C337.8,271.2,337.8,271.3,337.8,271.3z"/>
<title>Linz</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Hague" >
			<path id="_x3C_Hague_x3E_" class="st9 red" d="M325.9,248.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C325.9,248.1,325.9,248.2,325.9,248.3z"/>
<title>Hague</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Amsterdam" >
			<path id="_x3C_Amsterdam_x3E_" class="st9 red" d="M343.5,231.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C343.6,231.1,343.5,231.2,343.5,231.2z"/>
<title>Amsterdam</title>
      </a>

			<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#London" >
				<path id="_x3C_London_x3E_" class="st9 red" d="M266.6,223.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
					c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
					c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
					c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
					c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
					c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
					c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
					c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
					c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
					c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
					c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
					c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
					c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
					c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
					c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
					c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
					c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
					c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
					c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
					c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
					s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
					c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
					c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
					C266.7,223.2,266.7,223.3,266.6,223.3z"/>
<title>London</title>
			</a>
      
		</g>
	</g>
</switch>
<i:pgf  id="adobe_illustrator_pgf">
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	jiHtOcWb7lZjOJtuEmt745jP7xKOtrDC1aV01vckhm387/V3eJHtFTKUMhz9OkyEy0IG8Ya7resr
Xd1wtzp50mkZbnfDnbZiyHjH3QbL0OSGuw0rH9e84c76prwdLB/5hrvtb8rbSV3STm64W0kYqzvu
XAJzuOFOuSttJ4W11J4pAdeVY5sdfmxZ+9ZwUQvrxswBUK397e96fnKR4+Sq8nGbwlo5GwrD2b6w
FqBYudbaexJdwNnokCqdtERwrM+Fc1Xfrpow+xzF9evbo8ZQMi6VkhahdV6fu2WYCrgpWdFpMcui
nMbMZcmKKSn158M87+zgOQAlu+1WFHN9tDkC5ui228UttRRzFThzVTGUChCuXHjbIqaj00e9YFZj
WbPGFbrktojJY+qhGWpcc0TUYBjmCMc7v1eGoei9WpqGL1tf96jWyHT2uWd5UsO61z3mCMbJHnNf
45ojXBWLizaMU41rjljvbD5biunyNzaucX0x28DRVw0417iiS/LWuO7R4Qyilw1rXHXKQW0nk7Fi
I2qGb1VoJuRms3PKLxbp1c/5l/xr8aWefy3M0pkyV7/MZYl2LpeNXaE0ztp0pXj8Qz3FpH0V3T1s
D9Phm3k93Invzeaau7tUVbuTqKmICx+3b/VleGHlHjb/iW9iVYRnXfnn8c/3ip2Ymn91tX/17J0F
Um5fUyWmR/qlIBXjMNqL7qJJFVL9PWyp8FxGqi9Niz/3KsdmpWkePxB4L2BZmjZbflGEJdLwyfHI
+sY55W49yUfWjvXNrvZvpC84VJN3Uq+bIfX4MdrDitDrWJXhCXZFeHfP1kgLN28l1Z6FnsCaywv1
SO8MrARLU0KPP0l8njKZffOWx64gxt8r9u0QFqkSsyq2lNRkhTMxOlcLt7gc6lWnXZQ4ra7fd5E4
CUIjbDxfrno4cZ8/Zqeb3/JOqTD6CIm6+kdr81cPf3eRywld0iZWmZzc4ra0yZhaZWnp2t/M8pZf
K7XKMpyL1n71aK0UNGs6WSZWrV+VZpNatWZVmlOBgh0/6UBh1nSX0+s0PqcsLV32oF2n1sr603ZJ
U8XpMk/LTdWdNkq8xXqxydJKi70xu2lCK66IiUFcvUSmG8aYdd7rZ2Hr7UuzU+M2vfupsNa+tcjJ
Vg7wZ2Hr8DIM7X37+NhnwUVcyzk+BnO+9ZY1rhTOu9nZdLxRz+YQWo/fNWG2OLLRwMl2eVqur+Re
GdUteoKtEN0ddhX7o3fdSZgWvdyVj7xWMHiVdWMRDi7aHgnsOhCwuoe3uXdtfdiVm5OHtDEV8QQJ
2U4UPfGS87UyLmNvnZKZ3bbGGRGq+R0kFmsVkuGotWUp4Kf9OQdr1Vg5mW+aaKx1lwT9OQfrWePq
iiidvHd5rZ5ZnlKnpJX3W5RyJlVZBNuVAqJAZdTZs3APzLHmxwKU4WQwYwh1q0GSu6SYw/7gehRz
KAxaj2KOl/y471fchmKGcmG1Ht7gRj0T/bJGFaDbGkCzVem+CtCyD7qqLDNr3H0VoNsaQKd4sn0V
oNsaQNc3sFuWvbmpAZQyui1o4lQF6LYG0PacXscqQLeFPzZZnS6qAN3WAK7hI29xo57OR16zCnBl
mYi9MYxKtp6kvL5/+FI+15xsX0vocCmfPgr3z1zKp5Ew/9ilfKJtuSGdXF/KZ+8j7+pSPnznY89B
bW99KZ/VWWq7vZTPTIvt/lI+W0vJLZ0q8Xcr2/nB3dlQLu/1s/dyLU7UWftePxMxernDs6Gke/3s
4yfuzoZyvtfPTbbt9vf62d/q5/5sKPt7/VyfDbXVvX7KNO3ibCire/3sc1asaxK3yR3Q3+onyuTt
7/Uz0k59q982lVyUfcxTFXOQrD4rB9/1vX72+UxY8u/gXj/7W/3cxi2d7vVzdwPItvf6yVV3Ls+B
3+xevzXrK3d0+Yf2Vj9bTl7jXj+t9au/1c/8/sr17/Wzn0mHqjTX9/o5nUC1m3v95H6Zpl+umQVt
ea/fWjy28b1+9rf6bXMfn3uVZ38f3yYr0OxWPzc7Vm7u9bOvwlVJy63u9bPX0p414rZ29/rZJxWY
3WS0yb1+VqQUb/VzMy9u7vWzv9XPtmJojXv9dlOV5nSvn/1GgbpWdJt7/Yz9Ut/qt+na19/rZ28G
2N7Ht2XdQ1i+1W8n9/E5Hing8j6+LS/nlk6c3l3dg+mtfioe2+pePxmL6a1++hOoNr3Xz94rs6xK
W/NePytzXrzVb105ZrkMbW/1c2uNO93rt859fNsvQ/Nb/Ta7j2/dkz2s7uPbchmGtbf6yXtJ61zF
pwemzdQwAeX+RB37e/3sHWrVWTdb3evnqiptZ9cXm9/qp62s3/xeP3sn1KK2eu17/UzlgXyr3/b3
8bk8vWEn9/q5uY9v+3v9jLf6qSPHSFru4l4/+2J4jQ2jX4Zr3OtnH9cyPYVmg3v97G/1s9Zi69Y8
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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
/OLqN/9z4ox+dOL0W7e++eSLj07Ed13xp1z/8MrrV299/OSJp0XxjP7/9ha87UDSux8+1NcPjh3j
Y8f42DH+XR3j1/T/T+hDL4nrL+kS3uJGHv3kh9vtH8r+lSvgH+Y7UZY7/bDGD+8gMk7/wr//koS8
LXHyEjAH2fPSF9/euvrFtetXjq7eunrlpaMrr179Kkh+vEQiIEi7wsQwVe3T6TevX72p53zx0c3r
b37xYfxVYpYTqcroIaqDW2RHn1z9/Pqt6998jxJjlisni3vHklyUb375ry8+/OL6t9/eJn3mp+99
7qV55eL/un7tX7ziD7/ieyJ04/W+/OKEjrt9p05+FHpMJ9706/zWwPGdgpc6ylf1i8ocPvrPyJaa
2OBSy7LHUKPSUGJly+n/naIuP31jeVa6t0wC6zwZpD/DQGWANMD1O9rnxzSmqDRozeRY2wkZhrKI
JWbkWuinumQ/WefHFNceqig1KSrZXBhQd3qKgxsNe09cl+/0Jr/4Pdfu4pvvjU0yzp/bLrRysZE/
O18uHdWL7eL8/4pNcne8fixIEaSNgdXaH1nWSW7Mz0lSKXx6lCT7EOXfSFJ62koQTIIZNY37K0n7
4oA77u8PuGSJrp8hPf3uq6+8/dLRiTMnnnj1/7rx2it/PXXrkxtPnuDFXtrSFf2Bfru28Pwn8Wcn
Tp9768JLL412dP3alx9e55f1hS+eSGfP/OWJq5eeffHkE+fbk/1PT9eLp/77qW/PXN7qu3/85oN5
/R9n3uv/nb6+NM488syNZz56NT979tt3vnqkXPr02X/Vrz49+rZ8+Pwr7x2devPGracunbz6/NHL
Zz99v7771LOXjj78fD730El+8Pa5y++80J/69pmnPnvxva+Pzl34018/+69z44OvPnrq/Dsv7E+d
vfD4jXMv//WTK/nosaMvtmuP7q2c++OjF9ONJ/5+6XT60z9OphuvXH2+nCuPXzr96p+/eCFd/+yf
F7c/nn3vn089+86Hrzx08qlnP/nXO/zvjy9+8Ni1C89cunjrWy019kuPfPH86+c+Pfn8Xy5dPHrp
Sjp98rUvXjzzxRNfn/7y9WsX0un20ks89lw6/fyZnb/tl/74zn9fOvvs1XPnLj189Nnnj/a3/9T9
5IdO+tn91iuXXrn4weWX9/M3z94s/tnZM5dO3br0wis3bt4mfyX+cdiT985/duHbF54++a8nXrj4
2Jfv/lE/u/Sct+D0F+OjM6lf+PKFcx+//tlnknp/fu7tv37vEfzj8C2vX7n4eLvw34dvKVdPf/HY
mdNn3zmZTh7dOHnq9bPPfP7ZW6c/vv71Yz/3Iq+c/fzJR7Rjh0fM6xc/+Pzsny5+cPbkPPvZO0fp
3Fs3H/7m0sX55CenP/7yD4//3HPePf/GYw/nS0/ceDnruN/4x6Wjb8eXqX3w8ftnz7x75tq5V0/9
Oev0n7jx6bmjGze+fO78Gyc/uZCuv36qPf3wn55/57sn1ouvn3nl3Cfvv/rI2TPfnnrj/Gf5uYfr
v55+5PX6/Hb903NfXHri66NTpx7/6Lkn/pWvn3/52gcv/uhvHzp5+68vnXvrX6ceO//ydRnE/3W2
Fjb92fHW15+/fO71F/72xvm+33jt+x/01w8/Mkl//sxfrpz5+Lm/vXj2mcu3/nDutY9ePPrhCRxO
/5nr85v64z2JV3nu1sVy7bFXviyPj0/3c/uHN587/9GTn/3pR3Qsen399qlXnpOPeXn4z/xQOPk+
PPZ7dC+888wt7ZgoHz13eX5+9ge/evbhu9iOw4GduXV0+uprT1968l+P9aOL//jwmQ==
	]]>
	<![CDATA[
	YOLbvxCPxa/eu/DqT//6g5OwxS7J8O3TZ7+48Mbfz10+urrpX88+xr1647vzO/Pxu9c+Prrx+OP/
pVv3yOWjl1/+03bx6S9fK2effaGeFI/deYErp85/9sz2hIl+8Ho//MUd//azh/UFzz526bF+6aMz
H39wWp7MhQ8f//uzh0f85PcXPnxse/kOH/nk2Wf+8cqX/W/907fOf/bqm6d/+jbfJ3no5PeJ7vRm
Vx+9ee7yqx8+den9K89PPefTLf35+VMX1sN+9Ns7PuBxGRP/7hGPf/5Lj3j/40cvPfn6zWcuHbW/
5WdfvPnq57qu7U396wsPl/fnX7aj69++8ay+Rcf48dGfn8vv/PDKfXZ0+spfHr/4wem/P3ruLy9/
+/K51z7+7PF04+2rz20fXLhw7tmTXz18Pb2cH301/fmpW6O899f+auofP/9G+effv35Ye/P4y/zj
4g/vy3qs1v7jG1+++O3NJ67c9WOvXP3L4+c/O/rrf3/32B89lB1754XPzj77/Fcvmmh7+olL50+/
+vIfWnr54pMfppdf+fxP5R+nL19If/7so4vp5St/aP7DH/3Zz+7D0Y23bnwtTr7+9duPh1489+j5
a5fetyZ64dKpp86ee+W57ekzL5156rmXv/n87Nc3Pn7s6MY/3jorGfn1Nxcf++rs0+fevPzewxff
f+Hbr3/Mixc+/vrKuS+P/vn02Wefe++c5NjT//jrf5396tuXvji6caq+cfry8+fPXTq62frRjbM3
bp7bX/pbPbpx+R+PX3rh7Uff+v7pP3Xr9QPd1Sd1yC/UefPSG2/Wf7Vn3rr41Kep6JUub7zNk7ov
nzz3/Ec6jYsXfvjV177TG+XKM+89deaTf/75w/M3T75w8dJjL77y1VPnHnn443z0Unk1Hz369zPp
o5NPnfrZv3jo5HfaOSTePz98/ZGz31w785iZs371ydFlSzzk3SP96/TCS+zYC1ghZzici3cS5T/6
x09k8r38x5nZ+v1f5d9+yx9+4fvvzSo//4/fuvy92rF/zwL3/1xggQd3+veeBX7Dt/yG5e/pjv0s
C/xu53JbDjyA07+nLPBbd+zXLX/vz+VOLPD73sr7ywJ38S33gAX+ox276+Xv07n8iAUegEy+byxw
t9/yn7HAf75jd7P8/TyX71jgQWnk+8ECv+pbfjML3KMde5DW+G0WeKD22D1mgV//Lb+FBe7ljj1I
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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	28m7khdRNsjsMUBgNHOePdYBWNAiOYLy9VsGHD6ZFnhwg59I2NhYZkG6yFa8+SRfqaDjI3KmuNxX
o/+mnAmwcSPoeTtfwYwX6ryxkKKbfq3iBAQSZmXvO8K8GKY2ROUwD/TA3wQ8BV8tfZDUD7XU7zx0
4CiJjOhxW+uziLXIo+Yoiw7J+wDGscH89U2irsy+I5gv6n6szXDg02zNLcP4iiHnDBbQasvXYUp7
Ks2Cfypi3qPoDfPcKKkWj7XZthCzGMsh7fe1sVYRwQEGH2kcHrxBJY84pPfGdPFB7OGC/kNOxz9N
MPk///3/+o///hfoJT1dNLwWXyTLhNvqd+pEBvzx678qRnHDs5jvrJAzdx8yEwUORR+XPpCvmQjK
qDHsWBHHpz/zvhZX5DbvikCzM4seGTEl5sT/fkr4S8wZykqIxuvXvyUGcTyar7ESvOnSSuZhENbM
me4WH6wzXJ1+x4+iR1citmXWthBIr1KQEwGYfEekowy4bOkh0l+I/hVDQR6v6Ilb2BtxhM4FHzgT
wPUQzO0kJ9btxpgfmrIXlwgWsrSolJV3WeSJOWJM9J6Yl+sdyRXAKNX8maMAtkQvRlb+ZjO/6edL
DmOpngj9o9uexsiz642b1Y5wCvd5tBWfWEWgJHaeeXfQSekFJILe94y62UwE8okRbzpGiTh1TN4j
wf+IYEQRteU1vvPAkWlJEjN5Y0I+OEiIGiLkKLfXyHK/KgCsnT66byUB8Z64Ylz2nrc/QfrhWyjX
9mkgGej5RB5AjIbmmQr21/tZUpL00Ftmvm9ul10yfLw4S0hPkuOcUcN+IyiJwDDL3FMyibHds90+
2W8ww6SyE3bFWQe5gmF8Y3pOc8UhlTy51SIR7MpQNDkYvhEpK8kJvZnR2mcJw+qJfrWAd1OeoC9X
rJ3MQnS5qDnaqERAJAHkxU88ESSpnkAd6iTvUimLjIlczoJvQ3ABnsltFkMk8i0wjA1/iZjabvTT
DN9FbLlcHjNPIiJ7xBK35VW8wP7CzqDLts8TJkcDTMr9AFeUTmsf5c90BW5iOjvCxHSc6YWMiuA/
aP1kCCHCNnxo9PFW+UtOEquncjDuiTFj7xldrLqY0ChxsXFjnWbGAsSaXKeJwp3vZswnEWhit/22
XF7EEE9oxvzYELkcGT3PYI1xEYGMFx+zfqyWHmt0TyAR1jMpBfJZIpD1zTTMBvZ5iDQF2/vsyzF+
JqzN5beOEjXPNBwqwosfCd521XkQXu6wza+6Hi4TQOyjnd/1HB1IjmTgue/KqT0Bl/L++hk2JS9Y
NJP6KFh9aRUFf59DxL7ayu+8nUhPC9+y18aVHwswdkZ3tT4+cOYrRWc9HFihHnsvR32/3hu2b90R
PKwIcEWVaV1vPOtmbBVoF9dL8CabgRkzfc9KQjgnRtKj9bprBidHqrs6D3lnGBSwv7pg33agnKwm
Oy4EUjlEdO0ExqZHvKZ7vFDFUPRUlr43vOcoNJp0TN/k90lECf9xTPVyGeCi0S8YYGtpTx06eL1f
xfYVE8Vq4glxDmYUzLtpIOxbCOfIIHzEJqMen7/j86mjEwCwwkw7MoR5fla8VQr6+zRH+c0x1lkV
w1rDHpkVSISl501MjNNraUxPy/yy1W1LPqfj1nfEihVQKrP5nYfT0dS1tw2zec7rCEd23392FN5M
to2BiGG1QPpReysXZh0D2wXOplAJCeFiQgld0ZgneIfPc+vd5SAaz6Hf2FAd4zZvNz2XzWTMf5jO
vt9g9s+/+x11GglEGJsYwXmnnzCcDrVKjkLxBq0Qg6Wu16WmY8PIfZJivlFSehytcow4khKoCcY7
MYhhiz41E89Oq5+LZhC/5z7PikYBibG81HTkiOY+7anr6VfM0kP3y9eVSjw+uuc+zU2K29B+7YMo
l9LJtMjmptxxSHx/TW79+K2MF0xb9w+ZUbIKpnYmwhyRH0QIjt9LQGsazTPpQNRX/FSdx1nvNAIa
9tfaaceTPehdllAG8+34K1uykRtLXofMSgZi38v2FvMUClp8I8TEL5I87b1f2Rap4i5tvSuN0hMg
gNfyGqSXCd1BbWwmgormOgL9+r5RAj3m3Cv3TUoHvPLgXo96qSnf4f+l15y8kTbUY/G+6oprdCxD
uubOT+Uhd8hd+zwk5x/6HrQOZLmMRBii6TN9CzGJdW7ET+XTo2tsjVr63o/5zNyYX4U/a5jbh1lp
fFt1n2mL2JArxo7/XiAb1koJzti2wM9VhLc9NDVJUzIPbZUWbfMKIN5rrjH7lxG8ZfYMxhlk783t
fzPqX/l1OQaydXS9eXT7O4DMVHGcWaWJSAaoc8RA9waLO5Pw++k7iYJVPDPlbVfF+NZCxTwrJaSv
oC0UD00RETZEMFuzLiZ+Xs0DlnmISNGKYFbWlWIaq0qZ9p2Q0QIEk2g+dZAjKX6l83R7FXUYhPJu
PyPGqhBN+2LcnRbOa2W3YoCq79gKKBy0Jmj4wP2POksPaCxOWXciGv0KCgBf1njFqMr7Kmvk3RT9
7/fD7d89C+hEH+HqdZD+JLdDP66DRLvVvwPvFkFJ/bh5Jt479XSLQj2yxcaCiFvifO7Sp84LwLaY
yN7IC8/byM6Xa9pHeTMmRV1KgNj2oOkPJhz7PaMycER7oCXiToWnkxnd28RYEk/5gF2YXxnjQhiE
cdZdM6xHOD/ZvrGbmxnc9bBO/+SX3vo9kv4LMvy7mhbU7k0kNDGw/SNZ/VE5ErgfWsTMysLbYKRX
yvd77SxYrwfW1eIaLxWUlTgKtH2eynGBMkedxzSVDPa8eh3lTvZ+e/9csJ0g5kZAjHWEo4a9QPD+
fgZPkqZ6//0sZ48uggqGG4DtNoj3sc8yo4Gk4lgVYcPmABsL4qwj7xYX8s7VEoH2rxPVrv6dhyE4
OiWZjcRoVz6lh1UpLnWILGEGHp2S/4XWMkz4c4QopSs1Z/7M+fJNIs9vUyMYcIeWpu+aEK5OkTCq
94y+yDKBpSBf54hQ+gVet58dAzA9w+c86zSgUlxc7qd96Trk8yBS/6Sux0LqeFWE9upaFBZHUIFS
uei0XJQsldN1NTSHZuDRaXUgz0NSaI4e93cebcMeoErFxMSQd099Fkafqjwd/6fOQzZKG3v2q57N
HdF3S4n06KbxGqZvwDF7G2i0Np4okSXEXjpT+e7aAiXyXU/YnnvRFv0pGMwy1KlXHlKmISrNRMjT
SI1AQ3yP528eYEwXsefhnfdXwa+NIiPhXxHKakO9697v4oMkqrWasv+mdRZBsSN6hrs2/Nv3FWb6
INTsie7acJmBEDry6wn5Pz4CqfS5v+CGYKtP4V2k08/J47LFXN9boJklpadhnRhjX7wmsoS13FhI
ocualSIy/I/SkEp9RWixYdwfKQvI8FPiydhnfau0mjazQV42YiL7Bap7t73Ukwcmzk3U8P2oQCGf
6J1CVifivrSCLQR3Is47A7p3ef9ZPq/MXyXGlpcnXbIzwlW5TSJ8bGRA0iB45BSKp3VUfWxbSvMi
BocJIJPLvv35eh1qX2TC59onicYcLtK86ySun/DqAKQXobmHiK4ITYTd9oi0kLz6gd0iHGiQ8nw3
DbnBG/iMHUMAsWsImaGngxTpfGQQnyiV/id65VSPKuLkERddgzycUyLaoi9p8/tL+lDIYnAdZ54o
nf7DG2tz203AC/q7xUt0JgLApgUivarfFaspyjzGDJ1KP1qSBnvLbDBNs6fG27F1E3MS0cOZhlVO
I1EhP+nyyqOp9JP2J6r/PNVIXMXLZXx7JYLS8Zs1+KL61/WEHmThlk//jYnQOOzjFYdZsExj3lVE
zkTAIRwaAFdFwLxxOFlwjSImjkfs/ead+0ZURsfmCHnsjYnWf0RuSRu+RzkzxkOXUdAnQirGhnbW
fTOGzofDEaci1PoYtLgdOc8Z9RdonWpFMAQYEaG87+y8NXgnR3TUJskOIBh+SLJZ51EH6WxH1kTE
jLu881RRDQQQ5V9aFEf9lhWE/RPpwhxl0bWxNjAHe//Ep8w+GlHXNyIS+6DnisFeEStVOf2RpFIw
NpJzG/A4K6ZBQLfAyVuO0umFtfjhzUTIkpJejHjqsvlUyDMsuOoYDFq1HzVC9nkenKjoDsyKAX7F
v5v2jUTMpPBnS1nDvABCXTpy3BVh5SNTciYDjZScgookS7v2eZZm8m3jsGYyOKDGwVP21mGDcAL8
PIiyHnWeyent4usZU2QCzxAnb6mH/C+CbFr24zvDaDHkdWkkAF5XTMfq7h7HylEiOtxtuH1HAKxw
HPXUV6AFEm7g0qcCvPkEcdruskdjIM3tMpd+CHSgPnoJ4mpNg2pYZ9JcSUSAAZEy1LRanhdDS9eb
V+lJ7vDEs7LVa8DaK5w02W8dJX6G2kc68yvm0rFmeNL0EAD3oMWe1OGNuHUlT1MnH3Yi1KTcfGsV
XfogGV/74lrFuBuYQ8mgl9uIacJtce4fq6HGvvHJ8+P83Y8Y56XrI8ISFT+ASqgWrC3GAGJQrxBv
SnwTomxIlOWBOn9Iw9UP8X0ieY8sf9oVPfqR1fXhYKFJ29Xq++k8kUjg1m6/SsyNZUm6yzRQRCSi
uTN895VCElEWo+QoORKxDJu39kBu9QGKQ37XbYvKwBX1s2tWTJqMpM4xeEUAUNZt8O07So9VOC3X
ipgywxNeYtWb9CB5v6c5Vr0E05szwreqDRvv0gj7tl6vEqZEEnj/B97kdcEhq1Lf2Pbod9xCO+PK
fRr6mJFDaD1rqLQaJXF5T+vmq7z56JypTBbQIbV+i/FZzzi7EDmZcxuXF0/zapHezy0xa7jUP0+d
B/xxBIvKX69ixizBxOMpg23wNpwxvL2KWO+eYJGdpdaJQ0O2tdog++l01pZHlPcjgjn0niYn+vqx
ZBpyD45WbtHvrjjDXLv20+m0VuBbx1EuzrrsEESR/K8Pgw6I0XGUNeM5zcPx3W2iASqEB206Dvsg
pjxGxjL0Og2oKh3Uczt9vzdUt1TPsH6qRY2eypkNIW7RcH+wgmsf5CrBqr7WthTHvTjyYpz1Q1ps
dk027rKT5svGuKVXcqGFqjHmYaQhFdXPi+5OJDlq9dOOwgO5YmokAntDwtiPvdxzbpEJRRlPhFWu
xwG71aZyu7ZTGja/86wsQGn51vaFYNXgx1eZOJdMj87wtXfJ97XPMY86jURO7i4Tq7145Mu3X+2z
0EYmJf2kF2RLL3sU9zHHUHUiet29tnM56sgatLVlqSArF56j8orHFBMQuUU3nMQphwB+GQ/yphiy
uPkKjshG2fGn/wsLXacJvITAR49s6BvxvtB2s0jLJpc6WJmd0qtcS2DswY9GL02I6Rrv5HP1MnI/
0DRRnLMuPKaUyIKXvGFH9Dsewkdt98ia8Nfx+9ynoYAdqxdQ1mSp4KTQ5OPcv9X6K0EOBuBx3ieM
yHjzxRd7ehI9lqjJhU3fDr6HZOLrroWzf2n83JVRP+G7RtGpjtJx9iEQ79xXKRzI8A==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	oQL17DxnBD76GfyGRx99D+6V9pXCaJGLtLO2KP0zpDwDTJj+XfUj7OQaoKOyZYaU/KVlT18MAE+0
4tMmZ0h594Af6VdUM8EQjH82Vu5VYr4MSsZ3iBOytWO0PX2fxkCLKcxT+Bx99OhlxAhbAIoKoTpV
RnU9kGMD3cdl5jYJDclPDdQmd/NeKnwW6P4+DfkWxSvQSz2TmMYvwgZ1sczUw01Z9dCuwBgp5I06
DdyjUX3MJkWgSUJFMalRNV+ZFZFOQbocBY8LmiMeAX7hK/Y676707L/TOAqTeeW7yfxt0A1Yq05C
Bcr4uG2hcK6XjfSrDX2D48z0ot4MrCuCJKZRU883fkZ3602ibij1ikB/QjBpge+86Vn85dFuq0cX
S8s34TQ1n0f9ejcILlFBuC8RVlrWqaSuKyLDJch4SeyVKS42452BZC5VIgXMcPe1z2PxGtrxV6+Y
ZM6wN9FH5LUVWKpbOvpu493RvUWgrPNAEp2GrKO+LN4vuvc+5O9+8EhBbSom4iwAQGh5M0e5owby
3vA6qiPMwnSVMcO9I8i668LOr6lMqJ5o7RVFcjEcIloZZu/mtMFlOC9nPfz3WWVGfmX1tODe+XEC
v84dU7KIqu7Zdk9Y2u5HL9GXuIfhGbfQBup+3tQzqp+tLja0cnJefWzoIvrXHXucupCIoIcS/bVh
CY2Hs15MZU6ghPKsLmmu6LOe6diwinQeJcTC9ePaUi81ZVl6kPgMiSC3y1EvdMj8gF6K2NLtt9qc
DmuaMOF+De4zMuxpcuYonEnUVNxsciV0uEyP4qKVCGnzxQ1lgzVJKUDBRvtinyd050mqqhrlRG/a
Gbb8zx0EwkHNv0ry8oqtaZLTNBeqG89CvZmfXt9jY7J1FHmvYgi46BNVv4n1KTBuwLMF1hylq231
yN+9zq1n/7/++XU4C72BFjb76vtmGuyxji7WpQga33QiqL3X7doMkRDrscqDVYyOsyP0M7Tw7yJe
JAbNiAPA+RT2lN6AuW2pPzmPVkOshff9vv86jZAYUudaiQSA4aeXFEgop5kMjZ/91GwFb/n3Vun7
C8Rm5ly+ouPgqbwL0hphrtVRYtjyBOw2EqHwlOZGgSe7PczdiHb59xL0tLMhNlsNqt6d/c6HzwIp
L3VkEVo/C655xwBX/x73vT4ePYNSZ6qRWvJ3Ks/H870FgXozXzpHjQjfdExnw9ow96fBONiwa8MK
UflIj3TdoUSMyGydkaqvYSUMC2WVMisSQ7mBYuD9VOIYQ8ej+lauQx8WmfXYSR/OuM3aiDYRxD98
gZbaSk5DcZtx0dsrTkmMqDwyFwfdf8s/owGQor0O23ctKzuZlgGCi0Rj3f4WB2fiWveG6kl/3p/H
0OvbrKljEL8rPAI4HxW/6mbtpMC6hrm1z5OSeUkx105OdPRl/sdVyEP681cs59aP3INIBSHdts9j
PFg9+FZHofzrDgKnCJ6PtyZSc7Q2JVt3CLw2gKuwAh4IBuGophOD8JEkgRT5xhPcYUJ7klfyPuJA
tBJm1nuYBL26JzP7lgitXY3EDDECWoBNM/modpCQky2NOdq6Np6PZ98VrF2d5iFnRUy57YjcXThW
oyLuw8aUeWzBJ97tPXrj2wtTzFFwvIg3BYShfaYXrc+RGwYSZOd+bGShXyHfIEZDHhshdLI2x1mA
kgMeao1oi+zH9pYsDz87u0sB8gDVOQmsu44iRyVen6ZZYHIEifgez+81AIy9CZB+ILgMpJlo//E1
ALowTp47Bl/zTbhh0p79MtG7hA+chcTSsSZ3FMW8RBAu19LMXtskpeTzWiiLOznUNjHoyPbVDK8I
4JNc+/JlbHhdjSPg0J4hoDI0sqw/c6mxlp9AOEf/XrasH09mwXWtkb4NpWO/1C0+UplAvAEMnGJQ
JpGony8zxNDONNPfiH7EaL2y1H/3J5luEO1XYmaKlPcNQM5MBNHZ9/nE90vEjVUPr1Ovo4j3s2Kc
+Yw6RtQcrcmz//E0FBLMFt0NKcYWvv8TdRIRTGgpi4Wx29AmzzggmkPX7XDVjVVCMCOolw8it4/h
O4+25A0ZsBKhhAx28LjqmV1B3QHRZIFlthnhwW5VrafKB3WRzs7fuSHQ4ADX+c5BnW2xyvT760mt
TJUlE3Ur/L5w+a/8dGwuqLcMb3TluWaJdMTuakQsCvozzfirf3l7uUYHFtcSMz1Tv3ElbDJUUn+n
HsGdCLNCKI2nfhnH4ORhzQ3ilouudr6K4/ryTwgi3sw1pmoZyngiOld1sXTVfEphEzFwXhFie9fL
+nxtWGeYE3bQFvuUO7oZ54/3LLVNeYk+iZkxqHgvY8xagb1j/j+4x0Swfo8AWAYDKRAV/z0+0W8E
+eo89OMoiOo/+/kw3Wjlv3+Y3zdBppLK2MozwxBgy7iOiPokohHfsbbkmYEMvdu2GY6PddeH//hl
5YthltDSC69nYij8RCWtJSIbTKej1WsxelPGbH5Hvk4Wz/DWtq5nbwV9F693SSGJoYnKHKOkALPW
6BcY/42K6NFgGuQJ6kpId0Jq06lLBN+emIwcZY9nGedzRo0r69EFkAgY/N5k2+W7ZnZDGwhq843g
/TNmOIN1JbchxUl7QhXJLx6A8+Dr9mPpvLOkvZerMfRunVzJHiXS2K+SLQHm4E0OZwJIThdCb3dF
MLBv/L1jR1hW3n0MOHJ9OxszVuClQGTeGG1D2dYZ50h7rGrxjLlfXQg5ZLZO75ZYTZ4Llc+W2yog
2+Bp7F/6wPpA+o2+FR+kGJUsMBc4ezpJpKEajp20Xl6Mqhso4aqIDLffjREgLRFtRDcjQIc8tFFP
mgE3MWMxPd5/jC5XXettRPzQxttHgSU5tDyOsxpSEK7gJe9CVldyx3GUdXd5u2ieefItghNegkxJ
1d/vxd7VpCODGoha8BMyyVM/rWUvT0QPUO7RKrkS4dMLOP/aBS/vQnu7lAdkNj7d/Yhgc3zJLizs
oPykRnWU5PnEM3o6rGaTPKGRHGdF8KegpLr2u5bmYARy0BYSsq6kJjPm5iIoRhzniKhOItTG/K+u
emyMP5scBLLfg+3Jzcyt0jio89xJIAKTrhhEdaMhrbscxThe6hlplOz+LfqrfMjegLuQnO+3h1Wf
CFQFI8BzY5MupECOCKTxKgShbtgNqk2AutZAeSZr74pgVTiZmaXBhoi3QnBcbV+INBPehH7sPk0o
aEB8M6+sL1LZKekF7ryMLFA8UA0hMHyRUR+UE6QF9wSKHiu6liei1Rk8czr/OQ8dLUbMMKFnQigK
4AZdsQ4UEDuBm6BDT0S7pbe5yTMR70OMk7tZXSJiPB6RsDL9u1RhMVsY1XK6kC0pnTRY3LpY5Br9
oTtNZR8tKIDxyfNUhF7iyPwuj2SAyr1JIsHfe+7zPDU7B8WtayHEMwE1U1L14xdnBIKj4FkB1Fci
PuHT6QYAjBceJMi6VCPzC/zurtN0ck3o4QU8SAyBU526IFW7ubgF7M355lMHialyGdzsCOOyRoPr
qkM88cg4CZCf+zQLiPyOsYBXaRrPxrEoqlAi7qK9kt1bFcEzySA4Kn79VLniHVIcOXeEJZddXQ0O
OltoRQvMiaTgCgO1RTM44qOdRe4ZA7AWwoGIA1aSoiAJ9jfCfO2ECdvvGplbyA5LzD6NNIMNwdyP
HnUfQ8r8JMcAjZl6e/exr4Phnz0d/+tdiegDv18TFZ1Wd/PmEcAexQ9yGjYDkbf2stdTe+/1yFCH
EY8IZHB7rG0iET18A1WXTfSNCJTzoc+06rkOnh8rKjv3Pk8gRoDRWI+J6S52eGzvG9sJmWQvh4WY
+zw6B+phrcsOlomY+IS3k4DQGePBmoyt67PG/tUIrW4ZHW6aLINUiIDswdO5I76QGzamk7Crczos
pxTdmnLtY1wBhOimp8/aYzlCoWGtutQrFh085PVQ37+b6t0Zivd6rG/Ft3IvT15G43hSjbpN134g
0aLQ1L+ffRb63YtN4FTsinkCXD2itfQuMqBHsabr0bS4QlPGjaHCPxJxeYHBd9Nh2z8O0aRjVdbe
df/0xrgZPPt+HrlkXuuWo0AoRJSx1S+sRa6zBF+QAKwbeN/YttSXw6iGX2zV7j0ybdHkYIpZMYo6
YqhK9zeASCr1qe4zyGnCkLJ56Uu+EZrok8xZpUDvIQAp3hxhbX31jgB1R1noJkK8F4IYm/Z0z/oy
yON1AEBYiyPSFXGeygu7th3tFJOfvaxpQtKaPUvruKNQP3e8r3tSYbBofs8mSOa/IkKXbpGDTwTV
TRy+mcxDBE0ePu3c+bKjgF6z6t3WBGLI7AEOf7sOQYs3t4rGZY5it6S3MclqZvvDm/U57bsBH31X
fyiF2kNn7NEJOBRStaNipXeoV1F76IiACsAI1lDH1H7f1hYIXgWEXnrH9ScBPSB2xsB3HeKKupHx
UyU4PUKJhI97rCCTnIxopD4j/pL9Lo4Q5d5e+Y03BMPvlG33QPjes5JD6ZVFsW5ENLLs7puJmzzb
X9tucj6/ls8iEzfXQa+V2vHcWSFpgjfNksbuiB7GkcVxJvtUsuBxEp/e50m39Igo785Q39yl+1UZ
keZK4hvoZ551FD5wU82c4q4HtPjuoO//yoW0wO0PQDed3HpoOnhXwDprJ9NBfVhcrnoodpMHOKSv
Ok00BdJob/VYw62LG5PhvLxfhxI07FzfY3sI3WT+mRU2dvBMSFQvdTug2prQEocqQYCxS+76rtvB
BcHUuGbbZYzFkHTxj5/H2hdruoiOKIdu0E6ujGbRXiUa9E/896oYciNknG5sShGkq2hPThZ/Ig4z
4/Czvnft0q6AVqjC7QhaMOhNDo25kFUtMBjIKkQlFMCS1tP9+4VZHx2+FLw3bKxR7PG9BZlNkjMJ
e6XFcfkRhhNTjw1xFwMvsl5vBFevtHfPvn+dHqlMPr0JsJi+i9JhfvL9Ojkr38D00ekxWHOfCGbW
UVZYJDwzK4JZniaPseAb8WTyDGZ5tQqYMQ7zwu27AdVVdibVT4jhoPaTZDLHAEAFMYVYqtYKWQmL
h2FEIlT2UUNNR+PONDA2C6bGdZpT6xSXiptB+kBXgZcum2oiIPvVBlFQ0UsCahlhsVeAQrwHh1Mt
q8y9vNe7X+xuRsRgNOuvanypL/NEZvvjQ0NxelZdyBG1Z5Y/Vy18QCAL/6MGCyTngGLQP0b/kx/H
MOkI7qGFhku2S3tlHwV8AcB57E4gyF9a9UimuR/Z6h17tDoP3qBuqXHgvh+TFzJs15h1lBY7Ch1S
I6g3Yt6B48iOq7HJQyIey1edBgDgiAjJvTusyoKHoUVNDcbB3eCGfqwSv5nvjivttXznAzvuGcFY
5McJhnRoFc5sF4PGw7uKKyIDJ2khiBgnWevufZoBthIb5qva0jq277cBpd5zFJosod62Zzed467F
JU+5K4IeMZTs3Exlgpxdz3nVHFmM8Tcw2rWb24Rt3gX4TSC/83SULaq/m3j7QHFoAQ==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
</i:pgf>
</svg>
<h1>Compositions By W. A. Mozart </h1>
<br>
<h2>Compositions By location</h2>
<h4>Click On Mozart’s Head
<br>


<svg version="1.1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 612 792"
	 style="enable-background:new 0 0 612 792;" xml:space="preserve">
<style type="text/css">

  .red:hover{fill:#FF0900;}
	.st0{display:none;}
	.st1{fill:#BBB2B5;}
	.st2{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:0.574;}
	.st3{fill:none;stroke:#BBB2B5;stroke-width:0.574;}
	.st4{fill:#BBB2B5;stroke:#FFFFFF;stroke-width:0.574;}
	.st5{fill:none;stroke:#FFFFFF;stroke-width:0.574;}
	.st6{fill:#BBB2B5;stroke:#BBB2B5;stroke-width:1.1565;}
	.st7{fill:none;stroke:#BBB2B5;stroke-width:1.1565;}
	.st8{fill:#B5B5B5;stroke:#BBB2B5;stroke-width:0.5338;}
	
		.st9{fill:#AD3C62;stroke:#EEE2DC;stroke-width:3.499458e-02;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:22.9256;}
</style>
<switch>
	<foreignObject requiredExtensions="&ns_ai;" x="0" y="0" width="1" height="1">
		<i:pgfRef  xlink:href="#adobe_illustrator_pgf">
		</i:pgfRef>
	</foreignObject>
	<g i:extraneous="self">
		<g id="Fondo" class="st0">
		</g>
		<g id="Guías" class="st0">
		</g>
		<g id="Primer_plano">
			<g>
				<polygon class="st1" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="188,406.1 186,406.1 183.7,403.9 179.8,403.9 175.6,401.8 173.3,399.7 171.3,399.7 169.1,399.7 
					165,399.7 162.9,397.6 160.8,393.5 156.6,393.5 154.5,391.4 152.6,391.4 148.3,391.4 146.1,391.4 144.1,389.4 141.8,389.4 
					139.9,389.4 137.9,387.2 135.7,385.1 133.7,385.1 129.4,383.1 127.2,383.1 123.1,380.8 123.1,379 118.9,379 116.8,376.7 
					114.8,376.7 110.7,376.7 108.4,374.8 106.3,372.7 102.2,374.8 100,370.5 98,368.4 98,366.3 98,364.3 93.8,366.3 91.7,366.3 
					89.5,364.3 89.5,366.3 87.6,366.3 85.4,366.3 83.3,366.3 85.4,368.4 83.3,370.5 81.2,372.7 81.2,370.5 79.1,368.4 77,368.4 
					74.9,368.4 72.9,366.3 70.8,370.5 68.6,368.4 66.5,370.5 64.4,372.7 66.5,374.8 66.5,376.7 68.6,374.8 68.6,376.7 66.5,379 
					64.4,379 64.4,380.8 66.5,380.8 66.5,379 70.8,379 70.8,380.8 68.6,383.1 68.6,385.1 66.5,387.2 68.6,387.2 68.6,389.4 
					66.5,391.4 64.4,389.4 62.3,391.4 62.3,395.5 66.5,395.5 68.6,395.5 68.6,393.5 72.9,395.5 74.9,395.5 74.9,397.6 74.9,399.7 
					74.9,401.8 77,401.8 79.1,401.8 81.2,401.8 83.3,403.9 85.4,403.9 87.6,406.1 89.5,408 89.5,406.1 91.7,406.1 93.8,406.1 
					93.8,408 95.9,408 98,408 100,410.2 98,412.3 98,414.4 98,416.5 100,416.5 102.2,418.5 102.2,420.6 100,420.6 100,422.7 
					98,422.7 95.9,422.7 95.9,424.7 93.8,424.7 91.7,424.7 91.7,426.9 89.5,426.9 87.6,428.9 87.6,431 85.4,433.3 85.4,435.1 
					83.3,437.4 83.3,439.4 83.3,441.5 83.3,443.6 83.3,445.7 81.2,445.7 79.1,445.7 79.1,447.7 74.9,451.9 74.9,454 72.9,456.2 
					72.9,458.1 70.8,458.1 66.5,456.2 66.5,460.2 66.5,462.3 66.5,464.5 68.6,466.4 68.6,468.6 68.6,470.8 66.5,472.8 64.4,474.7 
					64.4,477 62.3,477 60.2,479 60.2,481.2 58.2,483.2 60.2,485.3 62.3,485.3 62.3,487.3 62.3,489.4 60.2,489.4 58.2,491.5 
					56.1,491.5 54,491.5 54,493.7 51.9,493.7 51.9,495.8 49.8,497.9 49.8,501.8 49.8,506.1 51.9,506.1 54,506.1 56.1,508.3 
					58.2,510.3 60.2,512.4 60.2,514.5 64.4,516.5 66.5,518.7 66.5,520.7 64.4,522.9 66.5,522.9 68.6,522.9 66.5,526.9 66.5,529.2 
					62.3,529.2 64.4,531.2 64.4,535.4 66.5,537.5 68.6,537.5 70.8,539.5 72.9,543.7 74.9,541.6 74.9,539.5 79.1,537.5 83.3,537.5 
					85.4,535.4 87.6,535.4 91.7,537.5 93.8,537.5 95.9,533.3 100,533.3 104.2,535.4 106.3,537.5 110.7,537.5 112.6,541.6 
					116.8,541.6 123.1,541.6 125.2,541.6 129.4,543.7 131.4,541.6 135.7,541.6 137.9,543.7 139.9,543.7 139.9,545.8 141.8,545.8 
					144.1,543.7 144.1,541.6 144.1,539.5 148.3,537.5 148.3,535.4 152.6,535.4 154.5,533.3 158.8,533.3 160.8,533.3 165,535.4 
					167.3,533.3 171.3,531.2 171.3,526.9 173.3,525 175.6,525 177.5,522.9 177.5,520.7 181.8,518.7 183.7,518.7 188,518.7 
					192.2,514.5 190.2,512.4 190.2,510.3 188,508.3 188,506.1 188,504.1 188,500 188,495.8 190.2,493.7 192.2,491.5 196.4,489.4 
					200.5,485.3 202.6,485.3 204.9,483.2 209.1,479 211.1,477 215.3,474.7 217.4,474.7 215.3,474.7 215.3,472.8 217.4,472.8 
					217.4,470.8 219.6,468.6 221.7,468.6 225.6,468.6 230,468.6 234.1,468.6 236.3,468.6 238.3,468.6 240.4,468.6 244.5,466.4 
					246.8,466.4 248.8,464.5 253,464.5 255.1,464.5 257.2,462.3 259.3,462.3 261.4,460.2 263.6,458.1 263.6,456.2 265.5,454 
					265.5,451.9 265.5,447.7 264.4,446.1 263.6,447.7 261.4,447.7 259.3,445.7 257.2,447.7 255.1,445.7 250.9,445.7 248.8,445.7 
					246.8,443.6 244.5,441.5 242.6,441.5 240.4,441.5 238.3,441.5 236.3,439.4 236.8,436.7 235.2,434.8 233.4,433.1 230.4,431 
					227.9,433.3 223.7,433.3 223.7,431 221.7,431 217.4,428.9 215.3,428.9 211.1,426.9 211.1,424.7 206.9,422.7 204.9,422.7 
					200.5,418.5 198.5,418.5 196.4,416.5 194.5,414.4 192.2,414.4 192.2,412.3 192.2,410.2 190.2,408 				"/>
				<polygon class="st2" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st3" points="52.3,505.9 45.9,508.1 43.8,508.1 43.8,505.9 41.9,508.1 39.6,505.9 35.4,503.8 33.4,501.7 
					31.3,501.7 29.3,501.7 29.3,499.7 27.2,497.6 24.9,499.7 23,499.7 20.7,499.7 20.7,497.6 23,495.5 24.9,491.4 24.9,489.1 
					27.2,487.2 29.3,487.2 29.3,485 31.3,481 29.3,478.7 31.3,476.7 31.3,474.5 33.4,472.6 35.4,470.5 35.4,468.4 35.4,464.2 
					33.4,464.2 31.3,462.1 27.2,462.1 27.2,459.9 27.2,458 29.3,455.9 31.3,453.8 31.3,451.6 31.3,449.5 31.3,447.4 33.4,445.4 
					37.6,445.4 39.6,445.4 41.9,441.2 43.8,439.1 43.8,437.1 45.9,434.8 48.1,433 50.2,428.8 52.3,426.7 52.3,422.4 54.3,420.3 
					56.5,418.3 56.5,414.1 58.5,412 60.6,410 60.6,405.8 60.6,403.7 62.6,401.5 62.6,399.6 62.6,397.3 62.6,395.4 67,395.4 
					69.1,395.4 69.1,393.2 73.2,395.4 75.3,395.4 75.3,397.3 75.3,399.6 75.3,401.5 77.3,401.5 79.5,401.5 81.5,401.5 83.8,403.7 
					85.9,403.7 87.8,405.8 89.9,407.8 89.9,405.8 92.1,405.8 94.2,405.8 94.2,407.8 96.2,407.8 98.4,407.8 100.2,410 98.4,412 
					98.4,414.1 98.4,416.2 100.2,416.2 102.5,418.3 102.5,420.3 100.2,420.3 100.2,422.4 98.4,422.4 96.2,422.4 96.2,424.6 
					94.2,424.6 92.1,424.6 92.1,426.7 89.9,426.7 87.8,428.8 87.8,430.7 85.9,433 85.9,434.8 83.8,437.1 83.8,439.1 83.8,441.2 
					83.8,443.4 83.8,445.4 81.5,445.4 79.5,445.4 79.5,447.4 75.3,451.6 75.3,453.8 73.2,455.9 73.2,458 71.2,458 67,455.9 
					67,459.9 67,462.1 67,464.2 69.1,466.3 69.1,468.4 69.1,470.5 67,472.6 64.8,474.5 64.8,476.7 62.6,476.7 60.6,478.7 60.6,481 
					58.5,482.9 60.6,485 62.6,485 62.6,487.2 62.6,489.1 60.6,489.1 58.5,491.4 56.5,491.4 54.3,491.4 54.3,493.4 52.3,493.4 
					52.3,495.5 50.2,497.6 50.2,501.7 50.2,505.9 				"/>
				<polygon class="st4" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st5" points="249.2,515 249.2,513 247.1,513 245.1,508.7 242.8,508.7 238.7,508.7 238.7,506.6 240.9,506.6 
					242.8,506.6 247.1,506.6 247.1,504.5 249.2,502.4 251.3,504.5 251.3,506.6 253.4,508.7 255.5,508.7 257.7,508.7 255.5,510.8 
					253.4,510.8 253.4,513 251.3,515 				"/>
				<polygon class="st4" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st5" points="272.3,508.7 270.2,506.6 268.1,506.6 266,504.5 266,502.4 268.1,502.4 270.2,504.5 272.3,504.5 
					274.4,504.5 274.4,506.6 274.4,508.7 				"/>
				<polygon class="st4" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st5" points="215.8,519.2 217.7,519.2 217.7,517.1 220,515 217.7,515 215.8,515 215.8,517.1 211.5,517.1 
					211.5,519.2 211.5,521.3 				"/>
				<polygon class="st6" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st7" points="343.4,433.4 345.5,431.3 345.5,429.2 347.5,427.1 345.5,425 341.4,425 339.2,425 337.2,420.9 
					337.2,418.8 337.2,414.5 337.2,412.4 339.2,410.4 339.2,408.3 339.2,406.4 337.2,404.1 334.9,404.1 332.8,402.1 332.8,400 
					334.9,400 337.2,400 339.2,400 341.4,397.9 343.4,395.8 345.5,393.6 343.4,391.7 343.4,389.6 341.4,387.5 341.4,385.3 
					343.4,385.3 343.4,383.4 343.4,381.1 341.4,379.1 341.4,377 343.4,377 341.4,374.9 341.4,372.9 343.4,372.9 345.5,372.9 
					345.5,370.7 343.4,366.6 341.4,366.6 341.4,368.7 339.2,368.7 337.2,372.9 332.8,374.9 330.9,370.7 332.8,366.6 337.2,362.5 
					337.2,360.4 339.2,358.3 343.4,358.3 347.5,356.1 349.6,352 349.6,349.9 351.7,347.8 353.8,349.9 356.1,352 358.1,347.8 
					360.2,349.9 360.2,343.6 362.2,341.5 362.2,339.5 362.2,335.4 362.2,333.2 364.4,331 364.4,329.1 366.4,325 368.6,322.7 
					372.7,318.6 370.6,316.5 368.6,316.5 366.4,316.5 364.4,314.4 360.2,314.4 356.1,312.3 353.8,310.3 351.7,306.1 349.6,301.8 
					345.5,301.8 343.4,299.9 341.4,299.9 339.2,299.9 337.2,301.8 337.2,299.9 334.9,297.7 332.8,295.6 330.9,295.6 330.9,293.5 
					328.7,291.6 328.7,289.3 326.7,287.5 326.7,285.2 324.5,285.2 324.5,287.5 322.5,287.5 320.3,287.5 318.2,285.2 320.3,283.1 
					320.3,281.1 320.3,276.9 318.2,276.9 316.2,276.9 314.1,276.9 311.9,272.8 311.9,270.7 309.8,270.7 307.7,270.7 307.7,268.5 
					307.7,266.4 305.6,266.4 303.6,266.4 303.6,264.3 301.5,262.2 301.5,260.2 301.5,258.1 301.5,256 297.3,256 295.2,256 293,256 
					290.9,256 289,256 286.9,258.1 286.9,260.2 286.9,262.2 284.9,264.3 284.9,266.4 284.9,270.7 284.9,272.8 282.6,272.8 
					280.5,272.8 278.4,274.8 276.2,274.8 272.2,276.9 267.9,278.9 263.7,278.9 259.6,278.9 259.6,281.1 261.7,281.1 265.8,283.1 
					267.9,285.2 265.8,285.2 265.8,287.5 261.7,285.2 257.5,285.2 253.3,285.2 253.3,283.1 249,283.1 245,281.1 240.7,278.9 
					240.7,281.1 236.5,278.9 238.6,276.9 236.5,274.8 236.5,272.8 238.6,270.7 236.5,270.7 234.5,270.7 232.4,268.5 230.3,268.5 
					230.3,270.7 228,272.8 228,276.9 228,278.9 230.3,283.1 228,285.2 228,287.5 228,289.3 230.3,291.6 230.3,293.5 226.1,293.5 
					223.8,291.6 221.8,291.6 219.8,291.6 221.8,289.3 217.7,289.3 213.5,289.3 211.4,287.5 211.4,289.3 207.3,289.3 207.3,287.5 
					207.3,283.1 205,283.1 203.1,283.1 203.1,281.1 205,278.9 203.1,281.1 198.8,278.9 196.7,281.1 196.7,283.1 192.6,283.1 
					192.6,281.1 188.4,281.1 186.1,281.1 184.2,278.9 181.9,281.1 180.1,281.1 178,281.1 175.8,281.1 175.8,283.1 178,283.1 
					180.1,283.1 181.9,283.1 181.9,285.2 181.9,287.5 180.1,287.5 180.1,289.3 178,289.3 175.8,289.3 173.7,291.6 175.8,291.6 
					178,293.5 180.1,297.7 180.1,295.6 184.2,297.7 184.2,295.6 186.1,295.6 186.1,297.7 190.4,301.8 192.6,301.8 192.6,304 
					194.6,304 194.6,306.1 194.6,308.2 198.8,308.2 203.1,308.2 200.8,310.3 203.1,310.3 205,312.3 203.1,316.5 205,316.5 
					207.3,318.6 211.4,318.6 207.3,318.6 207.3,320.8 209.1,320.8 209.1,322.7 205,326.9 205,329.1 207.3,333.2 209.1,333.2 
					209.1,337.4 211.4,339.5 211.4,341.5 215.6,343.6 217.7,341.5 217.7,343.6 217.7,345.7 215.6,347.8 217.7,347.8 215.6,349.9 
					215.6,354.2 215.6,356.1 213.5,358.3 213.5,360.4 215.6,360.4 215.6,362.5 215.6,364.5 217.7,366.6 217.7,368.7 217.7,372.9 
					217.7,374.9 215.6,372.9 215.6,370.7 215.6,368.7 213.5,366.6 213.5,364.5 211.4,362.5 211.4,360.4 209.1,362.5 209.1,368.7 
					209.1,370.7 207.3,372.9 207.3,377 205,377 209.1,379.1 207.3,381.1 203.1,381.1 203.1,383.4 203.1,385.3 200.8,387.5 
					200.8,389.6 198.8,389.6 198.8,393.6 196.7,393.6 194.6,395.8 194.6,397.9 190.4,402.1 186.1,406.4 188.4,408.3 190.4,410.4 
					190.4,412.4 190.4,414.5 192.6,414.5 194.6,414.5 198.8,418.8 200.8,418.8 203.1,423 205,423 207.3,423 209.1,425 213.5,429.2 
					215.6,429.2 219.8,431.3 221.8,431.3 221.8,433.4 226.8,433.7 231.6,432.3 234.1,434 234.9,436.5 234.5,439.6 236.5,441.8 
					238.6,441.8 240.7,441.8 242.7,441.8 245,443.9 247.1,446 249,446 253.3,446 255.4,447.8 257.8,448.3 259.6,447.8 261.7,447.8 
					263.3,448.8 265.7,446.8 264.7,446.1 264.1,445 263.7,443.9 265.8,441.8 263.7,439.6 265.8,435.4 265.8,433.4 267.9,431.3 
					270.1,431.3 272.2,429.2 274.3,429.2 276.2,429.2 278.4,429.2 280.5,427.1 282.6,425 284.9,425 286.9,427.1 289,429.2 
					290.9,429.2 295.2,429.2 295.2,433.4 297.3,431.3 299.4,431.3 301.5,429.2 303.6,429.2 303.6,431.3 303.6,433.4 305.6,433.4 
					307.7,433.4 307.7,435.4 307.7,437.5 309.8,435.4 311.9,437.5 314.1,439.6 314.1,441.8 316.2,443.9 318.2,443.9 320.3,443.9 
					322.5,443.9 324.5,443.9 326.7,443.9 328.7,441.8 328.7,439.6 328.7,437.5 330.9,437.5 332.8,437.5 334.9,437.5 334.9,435.4 
					337.2,435.4 339.2,435.4 339.2,437.5 343.4,433.4 341.4,435.4 				"/>
				<polygon class="st2" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st3" points="205,158.7 203.1,160.7 203.1,158.7 200.8,158.7 203.1,160.7 200.8,162.9 200.8,164.9 200.8,169.1 
					198.8,171.1 198.8,173.4 198.8,175.3 196.7,177.5 196.7,179.6 196.7,181.7 196.7,183.8 194.6,183.8 194.6,185.8 192.6,187.9 
					190.4,187.9 190.4,190 188.4,192.1 184.2,194.1 181.9,192.1 178,192.1 173.7,192.1 169.5,192.1 167.4,192.1 165.4,194.1 
					163.1,194.1 163.1,192.1 161.2,194.1 158.9,194.1 158.9,196.2 154.8,196.2 152.7,194.1 150.7,196.2 146.5,196.2 144.2,194.1 
					142.3,194.1 138.2,196.2 138.2,194.1 138.2,192.1 131.8,194.1 133.8,194.1 138.2,192.1 131.8,192.1 136.1,190 133.8,190 
					131.8,190 131.8,187.9 133.8,185.8 136.1,185.8 138.2,185.8 136.1,185.8 133.8,185.8 131.8,183.8 129.6,185.8 127.6,183.8 
					129.6,181.7 131.8,179.6 133.8,179.6 136.1,179.6 138.2,179.6 136.1,177.5 131.8,177.5 129.6,177.5 129.6,175.3 131.8,173.4 
					133.8,173.4 140,173.4 140,171.1 144.2,171.1 146.5,171.1 148.5,173.4 152.7,173.4 154.8,173.4 152.7,171.1 150.7,171.1 
					148.5,171.1 146.5,169.1 142.3,171.1 140,169.1 144.2,169.1 148.5,164.9 154.8,162.9 157,162.9 158.9,160.7 158.9,158.7 
					157,158.7 152.7,158.7 150.7,160.7 150.7,156.6 148.5,156.6 148.5,154.6 146.5,150.4 148.5,148.3 150.7,148.3 152.7,146.1 
					154.8,144 157,144 154.8,144 154.8,142 154.8,139.9 152.7,137.8 154.8,137.8 157,133.6 161.2,133.6 163.1,135.9 165.4,137.8 
					165.4,139.9 169.5,142 171.5,144 175.8,142 175.8,139.9 175.8,137.8 180.1,137.8 181.9,135.9 180.1,135.9 175.8,133.6 
					173.7,131.5 180.1,129.5 181.9,127.4 184.2,127.4 181.9,127.4 184.2,125.4 188.4,125.4 190.4,123.1 194.6,125.4 196.7,125.4 
					198.8,125.4 200.8,125.4 200.8,123.1 203.1,125.4 205,127.4 203.1,129.5 200.8,129.5 198.8,129.5 200.8,131.5 198.8,131.5 
					194.6,131.5 192.6,133.6 190.4,135.9 190.4,137.8 188.4,139.9 186.1,137.8 184.2,137.8 184.2,139.9 181.9,142 184.2,144 
					186.1,146.1 188.4,148.3 190.4,150.4 192.6,148.3 194.6,148.3 196.7,148.3 200.8,150.4 200.8,152.5 203.1,154.6 				"/>
				<polygon class="st4" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st2" points="200.4,131.6 198.3,131.6 194,131.6 192.2,133.7 190,135.9 190,138 187.8,139.9 185.7,138 
					183.6,138 183.6,139.9 181.5,142.2 183.6,144.2 185.7,146.3 187.8,148.4 190,150.5 192.2,148.4 194,148.4 196.3,148.4 
					200.4,150.5 200.4,152.6 202.5,154.6 204.6,158.8 206.7,156.7 208.7,154.6 211,154.6 212.9,154.6 212.9,150.5 215.2,148.4 
					215.2,150.5 215.2,152.6 217.2,152.6 217.2,150.5 217.2,148.4 215.2,146.3 212.9,148.4 211,146.3 212.9,144.2 215.2,144.2 
					215.2,142.2 215.2,139.9 212.9,135.9 212.9,133.7 212.9,131.6 211,131.6 208.7,131.6 206.7,131.6 206.7,129.6 204.6,129.6 
					202.5,131.6 				"/>
				<polygon class="st4" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st5" points="364.4,486.7 363,486.5 361.7,484.5 361.7,482.4 360.2,480.5 358.9,478.3 360.3,477 360.2,476.3 
					360.2,474.2 359.3,472.4 358.9,470.1 359.3,467.8 358.9,466 360.3,464.6 362.2,462.3 364.4,461.5 365.4,460.1 366.4,459.7 
					368.6,459.7 370.8,458.7 372.6,459.1 373,458.7 374,459.7 374.9,461.6 374.9,463.9 374.9,465.9 374.9,470.1 372.7,472.2 
					370.6,474.2 370.6,476.3 370.6,478.4 368.6,482.6 368.6,484.6 366.4,486.7 366.4,488.9 				"/>
				<polygon class="st4" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st5" points="345.5,497.3 347.5,499.3 349.6,497.3 353.8,497.3 356.1,497.3 358.1,495.1 360.2,495.1 
					362.2,495.1 362.2,493.1 364.4,493.1 366.4,491 366.4,493.1 368.6,495.1 370.6,497.3 368.6,497.3 370.6,499.3 370.6,501.3 
					372.7,501.3 372.7,503.5 370.6,507.8 372.7,507.8 372.7,509.7 370.6,511.8 368.6,511.8 368.6,513.8 368.6,516 368.6,518.1 
					368.6,520.2 368.6,522.3 366.4,526.4 366.4,530.6 366.4,534.8 366.4,536.9 364.4,538.9 362.2,536.9 360.2,536.9 356.1,534.8 
					353.8,536.9 353.8,538.9 353.8,541 351.7,541 349.6,541 345.5,538.9 345.5,536.9 345.5,534.8 343.4,532.7 345.5,528.5 
					343.4,526.4 345.5,526.4 347.5,524.4 347.5,522.3 347.5,520.2 349.6,518.1 351.7,516 347.5,516 345.5,516 345.5,511.8 
					345.5,509.7 343.4,505.5 343.4,503.5 343.4,501.3 345.5,499.3 				"/>
				<polygon class="st4" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st5" points="473.3,566 473.3,568.1 473.3,570.2 471.2,574.5 469.2,574.5 467.1,576.4 467.1,578.7 467.1,580.7 
					467.1,582.8 465,584.9 465,586.9 465,589.2 467.1,589.2 465,591.1 467.1,591.1 467.1,595.3 462.9,597.3 462.9,601.6 
					458.6,599.6 456.4,601.6 452.4,599.6 450.3,595.3 450.3,593.1 446.1,591.1 441.8,591.1 439.9,589.2 435.7,589.2 433.5,584.9 
					431.4,582.8 425.2,580.7 422.9,578.7 421,578.7 416.7,576.4 414.5,574.5 414.5,572.4 416.7,570.2 416.7,566 418.7,566 421,564 
					422.9,566 422.9,568.1 427.2,566 431.4,566 433.5,568.1 437.6,570.2 441.8,572.4 446.1,572.4 450.3,570.2 452.4,570.2 
					454.5,570.2 456.4,570.2 458.6,568.1 460.6,568.1 462.9,570.2 465,568.1 469.2,568.1 				"/>
				<polygon class="st4" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st5" points="223.8,182.1 221.8,182.1 219.8,182.1 219.8,178 221.8,178 223.8,178 226.1,180.1 				"/>
				<polygon class="st4" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st5" points="241.9,249 246.1,249 248.2,249 248.2,251.1 246.1,251.1 244,251.1 				"/>
				<polygon class="st4" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st5" points="284.9,65.3 282.6,63.2 280.5,61.2 282.6,61.2 284.9,59.1 284.9,61.2 284.9,63.2 				"/>
				<polygon class="st4" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st5" points="309.8,50.6 311.9,48.5 311.9,46.6 309.8,44.5 309.8,42.3 314.1,42.3 314.1,40.2 316.2,34 
					316.2,38.1 316.2,40.2 316.2,42.3 316.2,44.5 314.1,46.6 314.1,48.5 				"/>
				<polygon class="st4" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st5" points="228,75.6 230.3,71.5 232.4,69.6 234.5,71.5 234.5,73.8 236.5,71.5 236.5,69.6 238.6,67.3 
					240.7,67.3 240.7,65.3 242.7,63.2 242.7,61.2 240.7,63.2 238.6,63.2 234.5,63.2 234.5,67.3 232.4,65.3 232.4,63.2 230.3,65.3 
					230.3,67.3 228,71.5 228,73.8 				"/>
				<polygon class="st4" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st5" points="226.1,161.4 228,159.1 230.3,157.1 232.4,159.1 232.4,161.4 228,163.3 				"/>
				<polygon class="st4" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st5" points="236.6,88.6 236.6,86.6 236.6,84.4 238.6,82.4 238.6,80.3 236.6,82.4 234.4,84.4 234.4,82.4 
					234.4,80.3 230.1,82.4 230.1,84.4 230.1,86.6 234.4,84.4 232.4,88.6 234.4,90.7 234.4,92.8 				"/>
				<polygon class="st4" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st5" points="230.1,109.5 230.1,107.5 228,107.5 230.1,105.2 230.1,103.1 228,103.1 232.4,105.2 232.4,107.5 
					230.1,107.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st2" points="183.6,241.5 187.8,239.4 190,239.4 190,237.4 196.1,235.1 200.4,235.1 202.5,231 202.5,228.9 
					204.6,228.9 206.7,231 208.9,228.9 206.7,227 208.9,227 210.8,227 212.9,227 212.9,228.9 215,228.9 217.2,231 219.3,231 
					221.4,231 225.5,231 227.6,231 227.6,228.9 229.7,227 231.8,227 234,227 236.1,224.8 238,222.7 236.1,222.7 231.8,222.7 
					231.8,220.7 234,220.7 234,216.5 231.8,216.5 231.8,214.4 231.8,212.3 234,210.2 236.1,206.1 234,206.1 236.1,206.1 238,204 
					238,201.8 238,199.9 240.1,197.6 242.3,195.7 242.3,193.5 240.1,191.4 240.1,189.4 242.3,187.2 242.3,189.4 244.4,189.4 
					246.5,187.2 244.4,187.2 244.4,185.2 244.4,183.1 242.3,183.1 242.3,181.1 244.4,179 246.5,179 246.5,176.9 246.5,174.8 
					248.6,174.8 248.6,172.6 252.7,172.6 252.7,170.5 248.6,168.4 246.5,168.4 244.4,170.5 248.6,166.4 246.5,166.4 244.4,164.3 
					244.4,162.3 244.4,158 244.4,156 246.5,153.9 248.6,151.9 250.6,153.9 250.6,151.9 252.7,151.9 254.8,149.7 254.8,151.9 
					256.9,151.9 259.1,149.7 261.2,147.7 263.3,147.7 263.3,145.6 265.3,145.6 265.3,143.5 267.4,143.5 269.5,145.6 271.6,143.5 
					269.5,141.5 271.6,141.5 273.7,137.3 275.8,141.5 278,143.5 275.8,147.7 275.8,149.7 275.8,151.9 278,153.9 278,156 275.8,158 
					275.8,160.1 275.8,164.3 275.8,166.4 278,166.4 279.9,168.4 282,168.4 282,170.5 284.1,172.6 284.1,174.8 284.1,176.9 
					284.1,179 284.1,189.4 282,187.2 279.9,187.2 278,187.2 278,189.4 279.9,189.4 284.1,191.4 284.1,193.5 286.4,195.7 
					286.4,197.6 286.4,199.9 286.4,201.8 284.1,204 282,206.1 279.9,206.1 279.9,208.2 279.9,210.2 282,212.3 284.1,210.2 
					286.4,210.2 288.4,208.2 290.5,210.2 294.6,210.2 298.8,212.3 301.1,214.4 301.1,218.6 301.1,220.7 298.8,224.8 298.8,227 
					296.7,228.9 294.6,231 292.6,231 290.5,231 290.5,233.3 288.4,233.3 286.4,233.3 284.1,233.3 282,235.1 284.1,235.1 
					284.1,237.4 282,239.4 279.9,237.4 278,237.4 275.8,237.4 275.8,239.4 278,241.5 279.9,243.6 282,243.6 284.1,245.7 
					286.4,243.6 288.4,243.6 290.5,245.7 288.4,247.8 286.4,249.8 284.1,249.8 282,251.9 279.9,254 278,251.9 275.8,251.9 
					271.6,254 269.5,251.9 267.4,251.9 265.3,249.8 263.3,249.8 261.2,249.8 259.1,249.8 254.8,249.8 254.8,247.8 252.7,247.8 
					250.6,247.8 248.6,245.7 246.5,243.6 244.4,245.7 244.4,247.8 240.1,247.8 238,245.7 234,245.7 231.8,247.8 229.7,247.8 
					229.7,245.7 227.6,243.6 225.5,241.5 223.4,241.5 221.4,241.5 219.3,241.5 217.2,241.5 215,239.4 212.9,241.5 212.9,243.6 
					212.9,245.7 210.8,247.8 206.7,247.8 204.6,245.7 204.6,243.6 200.4,243.6 196.1,241.5 192.1,243.6 190,245.7 190,243.6 
					187.8,243.6 187.8,245.7 185.7,245.7 183.6,245.7 183.6,241.5 181.6,241.5 179.5,241.5 				"/>
				<polygon class="st4" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st2" points="241,189.7 238.7,187.6 238.7,185.5 236.8,185.5 234.7,185.5 234.7,183.5 228.3,185.5 226.2,185.5 
					224.1,187.6 220,187.6 217.9,189.7 215.8,189.7 215.8,191.8 217.9,191.8 220,189.7 222.2,191.8 224.1,189.7 226.2,189.7 
					226.2,191.8 224.1,193.8 224.1,195.9 224.1,198 222.2,198 224.1,200.2 222.2,202.3 220,202.3 217.9,204.2 215.8,206.5 
					213.6,204.2 211.5,206.5 209.5,206.5 207.4,206.5 205.3,206.5 203.2,204.2 201.1,206.5 201.1,208.5 199,210.6 203.2,210.6 
					205.3,210.6 205.3,212.6 203.2,212.6 203.2,214.7 207.4,214.7 209.5,212.6 211.5,212.6 213.6,212.6 213.6,214.7 213.6,217 
					215.8,217 213.6,217 213.6,218.9 217.9,218.9 220,218.9 217.9,221.2 220,223.1 222.2,225.1 224.1,225.1 228.3,225.1 
					230.4,225.1 232.6,223.1 232.6,221.2 234.7,221.2 234.7,217 232.6,217 232.6,214.7 232.6,212.6 234.7,210.6 236.8,206.5 
					234.7,206.5 236.8,206.5 238.7,204.2 238.7,202.3 238.7,200.2 241,198 243,195.9 243,193.8 241,191.8 				"/>
				<polygon class="st4" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="254.7,150.5 254.7,148.4 252.6,150.5 250.5,150.5 248.5,148.4 246.4,148.4 246.4,150.5 
					244.3,150.5 244.3,148.4 240.1,150.5 240.1,148.4 237.9,146.3 235.9,148.4 235.9,150.5 235.9,152.6 233.8,150.5 233.8,148.4 
					231.7,146.3 229.6,146.3 229.6,148.4 229.6,150.5 227.5,150.5 227.5,148.4 227.5,144.2 227.5,142.2 229.6,142.2 229.6,139.9 
					231.7,139.9 233.8,138 233.8,135.9 235.9,135.9 237.9,133.7 240.1,131.6 242.1,129.6 242.1,127.5 244.3,127.5 244.3,125.6 
					242.1,125.6 240.1,123.3 237.9,123.3 235.9,123.3 235.9,121.2 237.9,121.2 240.1,119.2 240.1,116.9 237.9,115.1 235.9,115.1 
					233.8,119.2 231.7,121.2 231.7,119.2 231.7,116.9 233.8,112.8 235.9,110.9 237.9,110.9 240.1,110.9 240.1,108.8 237.9,108.8 
					240.1,106.7 242.1,104.5 244.3,102.5 242.1,102.5 240.1,104.5 237.9,104.5 235.9,108.8 233.8,106.7 231.7,104.5 235.9,102.5 
					235.9,100.4 235.9,98.3 237.9,96.2 240.1,96.2 240.1,94.1 240.1,92 244.3,92 244.3,89.9 242.1,87.9 240.1,87.9 242.1,87.9 
					242.1,85.8 242.1,83.7 242.1,81.7 244.3,79.4 246.4,79.4 248.5,79.4 248.5,81.7 250.5,81.7 252.6,83.7 252.6,81.7 252.6,79.4 
					250.5,77.3 252.6,75.5 254.7,75.5 252.6,73.2 256.8,75.5 259.1,73.2 256.8,73.2 259.1,69 259.1,67 261,67 265.1,69 263.3,69 
					265.1,71.2 267.2,69 267.2,71.2 271.5,73.2 275.7,71.2 275.7,73.2 277.8,73.2 279.8,73.2 282,75.5 279.8,77.3 279.8,79.4 
					275.7,79.4 273.7,81.7 271.5,83.7 269.3,83.7 267.2,83.7 265.1,85.8 265.1,87.9 263.3,87.9 259.1,89.9 259.1,92 261,92 
					259.1,92 259.1,94.1 259.1,96.2 261,96.2 265.1,94.1 267.2,94.1 271.5,94.1 273.7,94.1 277.8,94.1 279.8,94.1 282,96.2 
					282,98.3 284,98.3 286.3,98.3 288.2,98.3 288.2,100.4 288.2,102.5 286.3,104.5 284,104.5 284,106.7 282,106.7 279.8,108.8 
					282,110.9 282,112.8 279.8,115.1 275.7,116.9 275.7,119.2 273.7,119.2 271.5,121.2 269.3,119.2 267.2,119.2 263.3,119.2 
					263.3,121.2 265.1,121.2 267.2,123.3 269.3,123.3 267.2,125.6 263.3,125.6 263.3,127.5 261,127.5 259.1,127.5 256.8,125.6 
					254.7,125.6 254.7,127.5 256.8,127.5 259.1,129.6 261,129.6 265.1,129.6 267.2,129.6 269.3,131.6 271.5,133.7 273.7,138 
					271.5,142.2 269.3,142.2 271.5,144.2 269.3,146.3 267.2,144.2 265.1,144.2 265.1,146.3 263.3,146.3 263.3,148.4 261,148.4 
					259.1,150.5 256.8,152.6 254.7,152.6 				"/>
				<polygon class="st2" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st3" points="340.7,434.8 344.8,433 346.9,430.7 349,430.7 351.2,430.7 355.4,428.8 357.5,426.7 357.5,424.6 
					359.5,422.4 361.6,420.3 365.8,420.3 368,420.3 372.2,424.6 374.1,422.4 380.5,426.7 380.5,424.6 382.6,422.4 384.7,422.4 
					386.8,422.4 384.7,424.6 384.7,426.7 386.8,428.8 384.7,430.7 388.8,434.8 391.1,443.4 393,451.6 395.2,453.8 399.4,464.2 
					401.5,464.2 405.7,468.4 407.7,472.6 410,474.5 412,476.7 418.1,482.9 430.7,495.5 432.9,495.5 434.9,499.7 439.2,499.7 
					441.3,503.8 443.4,501.7 449.6,508.1 451.9,510.2 453.8,512.1 455.8,512.1 460,516.4 462.3,516.4 464.3,518.5 464.3,522.6 
					464.3,524.8 464.3,526.6 468.5,528.9 470.6,528.9 472.6,528.9 476.9,531 478.9,533 478.9,535.3 481.1,537.2 483,543.4 
					485.3,549.8 485.3,556 483,558.1 481.1,558.1 478.9,558.1 478.9,560.2 478.9,562.3 478.9,564.3 478.9,566.3 476.9,568.5 
					474.8,570.5 474.8,572.8 476.9,574.8 478.9,574.8 481.1,574.8 483,574.8 485.3,572.8 487.2,572.8 487.2,570.5 491.6,568.5 
					491.6,566.3 491.6,562.3 493.7,560.2 495.7,558.1 497.8,556 500,556 501.9,556 504.2,556 504.2,553.9 504.2,551.9 504.2,549.8 
					504.2,545.6 504.2,543.4 504.2,541.3 501.9,539.4 497.8,541.3 495.7,537.8 495,532.3 495.7,528.9 497.8,528.9 497.8,526.6 
					500,524.8 497.8,524.8 500,522.6 501.9,520.6 504.2,520.6 506.1,520.6 506.1,522.6 510.4,524.8 512.5,524.8 514.6,524.8 
					516.7,524.8 518.8,524.8 518.8,526.6 518.8,528.9 520.8,531 520.8,533 523.1,535.3 524.9,535.3 527.2,535.3 529.3,533 
					529.3,528.9 529.3,524.8 529.3,522.6 524.9,520.6 523.1,516.4 520.8,514.2 516.7,512.1 512.5,512.1 510.4,510.2 508.4,508.1 
					501.9,505.9 500,503.8 497.8,501.7 495.7,501.7 491.6,501.7 489.5,499.7 485.3,497.6 483,497.6 485.3,495.5 487.2,495.5 
					489.5,493.4 489.5,489.1 483,487.2 481.1,487.2 474.8,487.2 470.6,487.2 466.5,485 464.3,481 462.3,478.7 458.1,474.5 
					455.8,470.5 451.9,466.3 451.9,462.1 453.8,459.9 451.9,455.9 449.6,451.6 449.6,449.5 447.6,447.4 447.6,443.4 445.4,443.4 
					441.3,441.2 437,439.1 434.9,439.1 430.7,437.1 430.7,434.8 428.7,433 428.7,430.7 426.6,426.7 428.7,424.6 428.7,422.4 
					428.7,420.3 430.7,418.3 432.9,416.2 432.9,414.1 430.7,414.1 428.7,412 428.7,410 426.6,410 428.7,407.8 430.7,407.8 
					430.7,403.7 434.9,403.7 437,403.7 439.2,403.7 441.3,403.7 443.4,401.5 445.4,401.5 445.4,399.6 447.6,399.6 449.6,399.6 
					449.6,401.5 451.9,403.7 451.9,399.6 453.8,399.6 455.8,397.3 453.8,395.4 451.9,393.2 455.8,391.1 455.8,389.1 453.8,386.9 
					453.8,384.9 453.8,382.8 451.9,382.8 449.6,380.7 445.4,380.7 443.4,380.7 441.3,380.7 439.2,380.7 437,378.7 434.9,376.4 
					434.9,374.5 432.9,372.4 430.7,370.3 426.6,370.3 424.5,370.3 422.4,370.3 420.4,370.3 418.1,368.1 416,368.1 416,370.3 
					412,372.4 410,372.4 407.7,372.4 407.7,370.3 407.7,368.1 405.7,368.1 403.5,368.1 403.5,370.3 403.5,372.4 403.5,374.5 
					401.5,374.5 399.4,372.4 397.3,374.5 395.2,376.4 397.3,378.7 395.2,380.7 393,378.7 391.1,378.7 388.8,378.7 386.8,378.7 
					386.8,376.4 384.7,374.5 382.6,374.5 382.6,376.4 382.6,380.7 380.5,380.7 378.4,382.8 376.3,384.9 376.3,386.9 374.1,384.9 
					372.2,382.8 370.1,380.7 370.1,378.7 370.1,376.4 368,374.5 365.8,374.5 363.7,376.4 363.7,378.7 361.6,382.8 359.5,382.8 
					355.4,382.8 353.3,380.7 344.8,382.8 342.8,382.8 342.8,384.9 340.7,384.9 340.7,386.9 342.8,389.1 342.8,391.1 344.8,393.2 
					342.8,395.4 340.7,397.3 338.6,399.6 336.5,399.6 334.4,399.6 332.3,399.6 332.3,401.5 334.4,403.7 336.5,403.7 338.6,405.8 
					338.6,407.8 338.6,410 336.5,412 336.5,414.1 336.5,418.3 336.5,420.3 338.6,424.6 340.7,424.6 344.8,424.6 346.9,426.7 
					344.8,428.8 344.8,430.7 342.8,433 				"/>
				<polygon class="st2" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st3" points="343.1,381.1 341.1,379.1 341.1,377 343.1,377 341.1,374.9 341.1,372.9 343.1,372.9 345.2,372.9 
					345.2,370.7 343.1,366.6 341.1,366.6 341.1,368.7 338.9,368.7 336.9,372.9 332.7,374.9 330.6,370.7 332.7,366.6 336.9,362.5 
					336.9,360.4 338.9,358.3 343.1,358.3 347.3,356.1 349.3,352 349.3,349.9 351.6,347.8 353.6,349.9 355.8,352 357.8,347.8 
					359.9,349.9 359.9,347.8 361.9,349.9 361.9,347.8 366.2,349.9 368.4,349.9 370.5,349.9 372.5,349.9 374.6,349.9 376.5,349.9 
					378.8,349.9 383,349.9 383,352 385.1,352 387.1,352 387.1,354.2 391.3,356.1 391.3,358.3 389.2,360.4 389.2,362.5 391.3,362.5 
					391.3,364.5 393.5,364.5 395.4,366.6 397.7,368.7 406,368.7 403.9,368.7 403.9,370.7 403.9,372.9 403.9,374.9 401.8,374.9 
					399.7,372.9 397.7,374.9 395.4,377 397.7,379.1 395.4,381.1 393.5,379.1 391.3,379.1 389.2,379.1 387.1,379.1 387.1,377 
					385.1,374.9 383,374.9 383,377 383,381.1 380.8,381.1 378.8,383.4 376.5,385.3 376.5,387.5 374.6,385.3 372.5,383.4 
					370.5,381.1 370.5,379.1 370.5,377 368.4,374.9 366.2,374.9 364.1,377 364.1,379.1 361.9,383.4 359.9,383.4 355.8,383.4 
					353.6,381.1 345.2,383.4 				"/>
				<polygon class="st2" points="510.5,347.5 508.5,347.5 510.5,351.7 510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 
					502.2,358 502.2,360.1 504.3,362.2 504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 494,380.8 
					494,383.1 491.8,383.1 491.8,380.8 477.1,380.8 477.1,383.1 475.1,385.1 470.8,385.1 468.8,387.2 466.6,387.2 464.5,385.1 
					460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 
					433.1,372.7 431,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 408,372.7 408,368.4 397.6,368.4 
					395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 393.3,353.9 395.4,353.9 
					397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 418.4,358 420.5,355.9 
					422.7,358 426.9,358 429,355.9 437.3,355.9 439.4,358 439.4,355.9 441.6,355.9 445.7,358 445.7,362.2 447.8,364.3 447.8,362.2 
					449.9,362.2 449.9,358 447.8,355.9 447.8,351.7 445.7,349.6 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					462.4,337.1 462.4,335.1 464.5,335.1 466.6,337.1 475.1,337.1 477.1,335.1 477.1,330.9 487.5,330.9 489.7,332.9 496,332.9 
					498.1,335.1 500.2,335.1 500.2,337.1 502.2,339.2 508.5,339.2 510.5,341.3 508.5,343.3 				"/>
				<polygon class="st3" points="496,379 496,380.8 494,380.8 494,383.1 491.8,383.1 491.8,380.8 489.7,380.8 487.6,380.8 
					485.6,380.8 483.3,380.8 481.3,380.8 479.2,380.8 477.1,380.8 477.1,383.1 475.1,385.1 472.9,385.1 470.8,385.1 468.8,387.2 
					466.7,387.2 464.5,385.1 462.4,385.1 460.3,385.1 458.2,383.1 458.2,385.1 454.1,383.1 452,383.1 449.9,380.8 445.7,380.8 
					443.5,380.8 441.6,380.8 439.4,380.8 437.3,379 435.2,376.7 435.2,374.8 433.1,372.7 431,370.5 426.9,370.5 424.8,370.5 
					422.7,370.5 420.5,370.5 418.4,368.4 416.3,368.4 416.3,370.5 412.2,372.7 410.1,372.7 408,372.7 408,370.5 408,368.4 
					405.9,368.4 397.6,368.4 395.4,366.3 393.3,364.3 391.2,364.3 391.2,362.2 389.1,362.2 389.1,360.1 391.2,358 391.2,355.9 
					393.3,353.9 395.4,353.9 397.6,355.9 399.5,358 401.6,358 403.8,360.1 405.9,358 408,358 410.1,353.9 414.2,355.9 414.2,358 
					416.3,358 418.4,358 420.5,355.9 422.7,358 424.8,358 426.9,358 429,355.9 431,355.9 435.2,355.9 437.3,355.9 439.4,358 
					439.4,355.9 441.6,355.9 445.7,358 445.7,360.1 445.7,362.2 447.8,364.3 447.8,362.2 449.9,362.2 449.9,360.1 449.9,358 
					447.8,355.9 447.8,353.9 447.8,351.8 445.7,349.6 445.7,347.5 445.7,343.3 452,343.3 454.1,341.3 456.1,339.2 456.1,337.1 
					458.2,337.1 460.3,337.1 462.4,337.1 462.4,335.1 464.5,335.1 466.7,337.1 470.8,337.1 475.1,337.1 477.1,335.1 477.1,332.9 
					477.1,330.9 479.2,330.9 483.3,330.9 485.6,330.9 487.6,330.9 489.7,332.9 491.8,332.9 496,332.9 498.1,335.1 500.2,335.1 
					500.2,337.1 502.2,339.2 504.3,339.2 506.4,339.2 508.5,339.2 510.5,341.3 508.5,343.3 510.5,347.5 508.5,347.5 510.5,351.8 
					510.5,355.9 508.5,358 508.5,360.1 506.4,360.1 506.4,358 504.3,358 502.2,358 502.2,360.1 504.3,362.2 504.3,364.3 
					504.3,366.3 502.2,366.3 502.2,370.5 500.2,374.8 498.1,374.8 496,379 496,380.8 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st2" points="347.6,287.6 347.6,289.6 349.7,291.7 351.8,293.8 351.8,295.9 351.8,298 351.8,300.1 351.8,302.1 
					349.7,302.1 351.8,306.2 354,310.5 356.1,312.6 360.2,314.7 364.6,314.7 366.5,316.6 368.8,316.6 370.8,316.6 372.9,318.9 
					368.8,323 366.5,325.1 364.6,329.3 364.6,331.3 362.3,333.4 362.3,335.6 362.3,339.6 362.3,341.7 360.2,343.9 360.2,348.4 
					360.2,348.1 362.3,350.1 362.3,348.1 366.5,350.1 368.8,350.1 370.8,350.1 372.9,350.1 374.9,350.1 377,350.1 379.1,350.1 
					383.4,350.1 383.4,352.4 385.4,352.4 387.5,352.4 387.5,354.3 391.8,356.4 393.8,354.3 395.9,354.3 398,356.4 400.1,358.5 
					402.2,358.5 404.2,360.5 406.5,358.5 408.4,358.5 410.7,354.3 414.6,356.4 414.6,358.5 416.7,358.5 418.9,358.5 421.1,356.4 
					423.1,358.5 425.3,358.5 427.3,358.5 429.4,356.4 431.4,356.4 435.7,356.4 437.8,356.4 440,358.5 440,356.4 442,356.4 
					446.1,358.5 446.1,360.5 446.1,362.8 448.3,364.8 448.3,362.8 450.3,362.8 450.3,360.5 450.3,358.5 448.3,356.4 448.3,354.3 
					448.3,352.4 446.1,350.1 446.1,348.1 446.1,343.9 452.6,343.9 454.5,341.7 456.5,339.6 456.5,337.7 458.8,337.7 460.7,337.7 
					463,337.7 463,335.6 463,333.4 460.7,331.3 458.8,329.3 456.5,327.2 454.5,327.2 452.6,325.1 450.3,320.9 448.3,316.6 
					446.1,314.7 446.1,312.6 446.1,308.5 444.1,306.2 442,304.2 442,300.1 440,300.1 437.8,295.9 437.8,291.7 440,293.8 440,295.9 
					444.1,293.8 446.1,295.9 450.3,295.9 454.5,293.8 456.5,293.8 458.8,291.7 460.7,291.7 467.2,287.6 469.2,285.5 471.3,283.4 
					475.5,281.4 477.7,283.4 477.7,285.5 479.7,285.5 481.9,283.4 481.9,281.4 481.9,275 483.9,272.9 481.9,272.9 481.9,271 
					481.9,268.7 481.9,262.5 481.9,260.5 479.7,256.3 479.7,254.2 479.7,252.1 481.9,249.9 479.7,249.9 477.7,247.8 477.7,245.8 
					475.5,243.7 473.4,239.5 475.5,237.5 477.7,235.3 477.7,233.4 477.7,231.2 477.7,229.1 477.7,227.1 477.7,220.9 471.3,220.9 
					471.3,216.6 471.3,212.4 467.2,212.4 465,212.4 465,210.3 463,208.3 463,206.2 460.7,206.2 458.8,208.3 456.5,208.3 
					454.5,208.3 450.3,210.3 446.1,212.4 444.1,210.3 444.1,212.4 442,212.4 437.8,212.4 435.7,212.4 431.4,210.3 433.7,210.3 
					433.7,208.3 435.7,208.3 435.7,206.2 435.7,204 433.7,204 431.4,204 429.4,206.2 427.3,202 425.3,202 423.1,202 423.1,199.9 
					421.1,199.9 418.9,199.9 418.9,197.8 421.1,195.7 418.9,193.7 416.7,191.5 414.6,189.6 410.7,189.6 408.4,187.3 406.5,187.3 
					406.5,191.5 406.5,193.7 408.4,195.7 408.4,197.8 404.2,199.9 402.2,199.9 402.2,202 404.2,202 404.2,204 404.2,206.2 
					408.4,208.3 406.5,210.3 408.4,212.4 412.6,214.5 412.6,218.8 410.7,214.5 408.4,212.4 404.2,212.4 400.1,212.4 400.1,214.5 
					400.1,218.8 400.1,220.9 398,222.9 398,224.8 395.9,220.9 395.9,218.8 395.9,216.6 393.8,216.6 393.8,218.8 391.8,218.8 
					391.8,216.6 393.8,214.5 389.5,212.4 385.4,212.4 381.2,212.4 379.1,212.4 379.1,214.5 377,216.6 377,218.8 379.1,218.8 
					379.1,220.9 381.2,222.9 379.1,224.8 379.1,227.1 379.1,229.1 379.1,231.2 377,231.2 377,233.4 377,237.5 377,239.5 
					374.9,241.6 377,243.7 377,245.8 374.9,252.1 372.9,252.1 370.8,252.1 368.8,252.1 366.5,252.1 364.6,249.9 358.2,252.1 
					354,254.2 354,256.3 354,258.3 354,262.5 354,264.6 349.7,266.7 349.7,268.7 349.7,271 349.7,272.9 347.6,277.2 349.7,277.2 
					349.7,279.1 349.7,281.4 347.6,281.4 347.6,283.4 347.6,285.5 				"/>
				<polygon class="st4" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st5" points="407,187.8 409,187.8 411.2,189.7 415.5,189.7 416.3,190.8 415.2,191.8 417.4,189.7 419.5,189.7 
					417.4,187.6 415.2,185.5 417.4,183.5 419.5,183.5 417.4,181.4 417.4,179.4 419.5,179.4 419.5,177.2 419.5,175.2 421.7,175.2 
					423.6,173.1 425.9,173.1 425.9,171 430,168.8 432.1,164.7 430,162.6 432.1,160.5 434.2,160.5 434.2,162.6 436.3,162.6 
					438.3,160.5 438.3,158.4 438.3,156.3 436.3,154.3 434.2,154.3 432.1,154.3 432.1,152.2 430,152.2 430,150.1 432.1,148 
					434.2,148 432.1,146 432.1,143.8 430,143.8 428,143.8 428,146 423.6,146 421.7,146 419.5,148 421.7,150.1 421.7,152.2 
					421.7,154.3 421.7,152.2 419.5,150.1 417.4,152.2 417.4,150.1 417.4,148 415.2,148 413.4,150.1 413.4,152.2 411.2,152.2 
					411.2,154.3 411.2,152.2 409,150.1 407,150.1 407,148 404.9,148 404.9,150.1 402.8,152.2 402.8,154.3 402.8,158.4 402.8,160.5 
					402.8,162.6 402.8,164.7 402.8,166.7 402.8,168.8 400.7,171 402.8,173.1 404.9,173.1 404.9,175.2 407,177.2 407,179.4 
					407,181.4 407,185.5 407,187.6 407,189.7 				"/>
				<polygon class="st2" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st3" points="349.7,264.9 345.5,260.8 343.5,258.5 341.4,256.4 339.3,256.4 337.2,258.5 335.1,258.5 
					335.1,256.4 328.9,254.5 326.7,254.5 324.6,256.4 324.6,258.5 320.4,258.5 318.3,258.5 316.3,258.5 316.3,256.4 314.2,254.5 
					312.1,254.5 312.1,252.2 310,252.2 307.8,254.5 305.7,252.2 305.7,254.5 301.7,256.4 301.7,258.5 301.7,260.8 301.7,262.6 
					303.8,264.9 303.8,266.9 305.7,266.9 307.8,266.9 307.8,269 307.8,271.1 310,271.1 312.1,271.1 312.1,273.2 314.2,277.3 
					316.3,277.3 318.3,277.3 320.4,277.3 320.4,281.5 320.4,283.7 318.3,285.6 320.4,287.9 322.5,287.9 324.6,287.9 324.6,285.6 
					326.7,285.6 326.7,287.9 328.9,289.8 328.9,292 331,294.1 331,296.1 333,296.1 335.1,298.3 337.2,300.3 337.2,302.4 
					339.3,300.3 341.4,300.3 342,300 342.8,296.5 341.7,294.1 341.7,292 341.7,289.8 343.8,287.9 345.8,285.6 347.6,285.6 
					347.6,283.7 347.6,281.5 349.7,281.5 349.7,279.4 349.7,277.3 347.6,277.3 349.7,273.2 349.7,271.1 349.7,269 349.7,266.9 				
					"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st8" points="341.7,298.1 342.5,295 341.4,292.9 341.4,291.1 341.4,289.3 343.5,287.6 345.5,285.6 347.6,287.6 
					347.6,289.3 349.7,291.1 351.8,292.9 351.8,294.7 351.8,296.6 351.8,298.3 351.8,300.1 349.7,300.1 				"/>
				<polygon class="st4" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st2" points="376.7,223.1 374.7,223.1 374.7,214.8 372.6,214.8 370.5,214.8 368.5,217.1 364.3,219.1 
					364.3,217.1 364.3,214.8 362,217.1 360.1,217.1 357.9,217.1 353.7,219.1 351.6,221.2 351.6,223.1 351.6,225.3 351.6,227.4 
					351.6,229.5 351.6,233.7 347.5,237.8 345.4,237.8 343.3,237.8 343.3,233.7 345.4,231.5 343.3,231.5 345.4,229.5 347.5,227.4 
					347.5,225.3 345.4,223.1 341.3,223.1 341.3,221.2 341.3,223.1 339,227.4 339,231.5 337,233.7 337,235.7 334.8,235.7 
					334.8,237.8 332.8,239.9 328.6,239.9 328.6,244.2 330.7,244.2 330.7,246.1 326.6,248.2 326.6,244.2 324.4,244.2 324.4,246.1 
					324.4,248.2 324.4,252.3 326.6,252.3 328.6,254.6 334.8,256.6 334.8,258.7 337,258.7 339,256.6 341.3,256.6 343.3,258.7 
					345.4,260.8 349.4,265 349.4,267 353.7,265 353.7,262.8 353.7,258.7 353.7,256.6 353.7,254.6 357.9,252.3 364.3,250.3 
					366.2,252.3 368.5,252.3 370.5,252.3 372.6,252.3 374.7,252.3 376.7,246.1 376.7,244.2 374.7,242 376.7,239.9 376.7,237.8 
					376.7,233.7 376.7,231.5 378.9,231.5 378.9,229.5 378.9,227.4 378.9,225.3 380.9,223.1 378.9,221.2 				"/>
				<polygon class="st4" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st5" points="411.4,147 411.4,145 411.4,142.8 413.5,140.8 415.3,140.8 417.6,140.8 419.5,140.8 421.8,140.8 
					423.8,140.8 426,138.6 428.2,138.6 432.3,138.6 434.4,140.8 436.5,142.8 436.5,140.8 438.5,138.6 440.7,136.7 440.7,132.5 
					438.5,132.5 438.5,130.3 440.7,128.2 442.7,126.2 440.7,126.2 438.5,128.2 436.5,128.2 434.4,128.2 432.3,130.3 430.1,130.3 
					428.2,132.5 426,134.6 426,136.7 423.8,138.6 421.8,138.6 419.5,138.6 413.5,138.6 411.4,138.6 409.1,140.8 409.1,142.8 				"/>
				<polygon class="st4" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st5" points="434.4,186.6 432.3,186.6 428.2,186.6 428.2,184.6 423.8,184.6 423.8,180.4 423.8,178.4 426,178.4 
					426,176.2 428.2,178.4 430.1,176.2 432.3,178.4 434.4,178.4 434.4,180.4 434.4,182.5 434.4,184.6 434.4,186.6 432.3,186.6 				
					"/>
				<polygon class="st4" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st5" points="448.2,190.7 444,188.7 446.1,188.7 446.1,186.5 444,186.5 439.7,186.5 437.6,184.5 437.6,182.4 
					439.7,180.4 437.6,178.3 437.6,176 439.7,174.1 441.8,174.1 444,172 444,169.8 446.1,169.8 446.1,172 444,174.1 446.1,176 
					448.2,176 448.2,174.1 448.2,172 450.3,172 452.3,172 454.4,169.8 452.3,167.9 450.3,167.9 452.3,165.7 454.4,165.7 
					458.6,165.7 456.5,167.9 458.6,167.9 456.5,169.8 458.6,174.1 456.5,176 452.3,180.4 454.4,182.4 452.3,186.5 450.3,186.5 
					448.2,188.7 450.3,190.7 				"/>
				<polygon class="st4" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st5" points="441.8,199 439.7,199 437.6,196.9 435.5,194.9 435.5,192.8 437.6,192.8 439.7,192.8 439.7,194.9 
					441.8,194.9 444,196.9 444,199 				"/>
				<polygon class="st4" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st5" points="446.1,196.9 446.1,194.9 446.1,192.8 448.2,194.9 450.3,194.9 450.3,196.9 448.2,196.9 448.2,199 
									"/>
				<polygon class="st4" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st5" points="575.6,512.1 577.7,514.2 577.7,516.4 577.7,518.5 575.6,520.6 573.4,524.8 571.3,526.6 
					569.2,526.6 571.3,528.9 567.2,531 565.1,531 563,533 563,535.3 563,537.2 560.9,537.2 558.8,533 558.8,531 554.5,531 
					552.5,528.9 548.3,528.9 548.3,524.8 550.4,524.8 550.4,522.6 548.3,522.6 548.3,520.6 550.4,518.5 548.3,516.4 548.3,514.2 
					548.3,512.1 550.4,510.2 550.4,505.9 550.4,503.8 550.4,501.7 550.4,499.7 550.4,497.6 550.4,495.5 552.5,495.5 552.5,493.4 
					552.5,491.4 550.4,489.1 550.4,485 550.4,482.9 550.4,481 550.4,478.7 552.5,476.7 554.5,476.7 558.8,474.5 560.9,476.7 
					563,478.7 567.2,478.7 567.2,481 569.2,485 569.2,487.2 567.2,489.1 567.2,491.4 567.2,495.5 569.2,497.6 569.2,499.7 
					569.2,503.8 571.3,503.8 571.3,508.1 573.4,510.2 				"/>
				<polygon class="st2" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st3" points="240,442 241.1,440.2 242.7,439.6 245.2,439.1 246.8,439.1 248.8,441.8 248.6,444.9 246.8,446.7 
					245.4,446.7 243.4,446.3 241,445.4 				"/>
				<polygon class="st4" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<polygon class="st3" points="391.9,358.3 394.6,360.4 394.6,363.6 394,365 391.9,365.4 390.4,365.4 389.1,363.6 389.1,360.1 
					391.3,358.7 				"/>
				<g>
					<g>
						<path class="st1" d="M334.3,286.2c1.2,10.3,2.5,20.5,4,30.7c1,7.1,11.7,6.1,13.4,0c2-7.1,7.8-28.5-3.5-30.7
							c-4.3-0.8-8.9,1.9-8.8,6.7c0.1,5.1-1.5,9.5,1.4,14.2c2.8,4.5,7.9,5.7,12.9,4.9c5.1-0.8,9.7-2.5,14.9-2.7
							c5.9-0.2,11.8,1.6,17.5,0c8.6-2.3,5-15.7-3.7-13.4c-3,0.8-6.9-0.5-10.1-0.6c-4.1-0.1-8.1,0.3-12.1,0.9c-1,0.2-8.8,1.1-9.3,2.1
							c-1.2,0-0.7,0.6,1.7,1.8c0-0.6,0-1.2,0.1-1.8c0.6-1.6,0.5-3.8,0.5-5.5c-2.9,2.2-5.9,4.5-8.8,6.7c0.2,0,0.4,0.1,0.6,0.1
							c-1.4-1.1-2.8-2.1-4.1-3.2c0.1,0.2-0.5,6.1-0.7,7.4c-0.4,3.2-1.1,6.3-2,9.3c4.5,0,8.9,0,13.4,0c-1.3-9-2.5-18-3.5-27
							c-0.4-3.8-2.9-6.9-6.9-6.9C337.9,279.3,333.9,282.5,334.3,286.2L334.3,286.2z"/>
					</g>
				</g>
				<g>
					<g>
						<path class="st1" d="M415.7,225c8.9,0,8.9-13.9,0-13.9C406.8,211.1,406.8,225,415.7,225L415.7,225z"/>
					</g>
				</g>
			</g>
			<g id="MvfNLW.tif">
			</g>
			<g id="DVZ8qq_1_">
			</g>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Z%C3%BCrich">
		<path id="_x3C_Zurich_x3E_" class="st9 red" d="M375.9,358.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C376,358.2,375.9,358.3,375.9,358.3z"/><title>Zurich</title>
</a>

      <!--Example-->
	<a href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Rome">
			<path id="_x3C_Rome_x3E_" class="st9 red" d="M416.6,472.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C416.6,472.6,416.6,472.7,416.6,472.7z"/>
<title>Rome</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Italy">
			<path id="_x3C_Italy_x3E_" class="st9 red" d="M454.5,497.6c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6s-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0s0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C454.6,497.5,454.5,497.6,454.5,497.6z"/>
<title>Italy</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Leipzig" >
			<path id="_x3C_Leipzig_x3E_" class="st9 red" d="M448,362.8c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C448,362.7,448,362.7,448,362.8z"/>
<title>Leipzig</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Salzburg" >
			<path id="_x3C_Salzburg_x3E_" class="st9 red" d="M458.1,337.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0

				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C458.2,337.2,458.1,337.2,458.1,337.3z"/>
<title>Salzburg</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Munich" >
			<path id="_x3C_Munich_x3E_" class="st9 red" d="M419,339.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				s-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1s0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C419.1,339.8,419.1,339.9,419,339.9z"/>
<title>Munich</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Potsdam" >
			<path id="_x3C_Potsdam_x3E_" class="st9 red" d="M400.6,291.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5s-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4
				c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2
				c0,0.1,0.1,0.2,0.1,0.3s0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5
				c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2
				c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3s-0.6-1-1.5-2
				c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7
				c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C400.7,291.6,400.7,291.7,400.6,291.7z"/>
<title>Potsdam</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Prague" >
	<path id="_x3C_Prague_x3E__1_" class="st9 red" d="M417.7,250.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1s0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C417.8,250.6,417.7,250.7,417.7,250.7z"/>
<title>Prague</title>
      </a>
      
      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Mannheim" >
			<path id="_x3C_Manheim_x3E_" class="st9 red" d="M358.9,284.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C359,284.6,358.9,284.6,358.9,284.7z"/>
<title>Manheim</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Baden_x3E_" class="st9 red" d="M381.3,276.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C381.3,276.2,381.3,276.3,381.3,276.3z"/>
<title>Baden</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Vienna" >
			<path id="_x3C_Vienna_x3E_" class="st9 red" d="M492.3,341c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4s0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C492.3,340.9,492.3,341,492.3,341z"/>
<title>Vienna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Milan" >
			<path id="_x3C_Milan_x3E_" class="st9 red" d="M364.6,391.9c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6s-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3s0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				s0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5s0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9s0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2
				C364.6,391.8,364.6,391.8,364.6,391.9z"/>
<title>Milan</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Verona" >
			<path id="_x3C_Verona_x3E_" class="st9 red" d="M406.4,387c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2s0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C406.4,386.9,406.4,387,406.4,387z"/>
<title>Verona</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Baden" >
			<path id="_x3C_Bavarian_x3E_" class="st9 red" d="M396.2,414.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2s-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4s0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C396.3,414.1,396.2,414.2,396.2,414.2z"/>
<title>Bavarian</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lodi" >
			<path id="_x3C_Lodi_x3E_" class="st9 red" d="M440.1,389.4c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5s0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5s0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6s0-0.3-0.1-0.2C440.1,389.3,440.1,389.4,440.1,389.4z"/>
<title>Lido</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Bologna" >
			<path id="_x3C_Bologna_x3E_" class="st9 red" d="M417,436.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3s-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4s0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				s0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5s-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C417.1,436.4,417.1,436.5,417,436.5z
				"/>
<title>Bologna</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Lausanne" >
			<path id="_x3C_Lausanne_x3E_" class="st9 red" d="M348.4,359.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4s0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C348.5,359.1,348.5,359.2,348.4,359.2z"/>
<title>Lausanne</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Donaueschingen" >
			<path id="_x3C_Donauschingen_x3E_" class="st9 red" d="M372.4,333.5c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5s-0.4,1.4-0.6,2c-0.2,0.7-0.4,1.2-0.5,1.6
				s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2c-0.1,0.1-0.2,0.3-0.2,0.4
				c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5s0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2s0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C372.5,333.4,372.5,333.5,372.4,333.5z"/>
<title>Donauschingen</title>
      </a>
          
	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Paris" >
			<path id="_x3C_Paris_x3E_" class="st9 red" d="M292.1,283.7c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6s-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2s-0.2,0.3-0.4,0.8s-0.3,0.9-0.5,1.3
				c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9s-0.2,0-0.3,0.1c-0.1,0.1-0.3,0.3-0.3,0.2
				c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9c0-0.3,0.1-0.7,0.3-0.9
				c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5c0.1-0.2,0.4-0.3,0.5-0.5
				c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6
				c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5s0.4-0.2,0.5-0.2
				c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2
				c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1
				c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9s0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1s-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				s-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7s0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C292.2,283.6,292.2,283.7,292.1,283.7z"/>
<title>Paris</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Linz" >
			<path id="_x3C_Linz_x3E_" class="st9 red" d="M337.8,271.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2s-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				s-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9s0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1c0-0.1,0-0.1,0-0.2
				c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5c-0.1-0.2-0.2-0.4-0.3-0.6
				c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5c-0.1-0.2-0.1-0.5-0.1-0.6
				s0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5c0-0.2-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5s0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4
				c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5
				c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2
				c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1
				c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1
				c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4
				c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3s0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6
				c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9
				c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7s-0.1,0.3-0.2,0.4
				c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6
				c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3
				c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4
				c-0.1,0.2-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0
				c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3
				c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2s-0.7,0.3-0.6,0
				c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2C337.8,271.2,337.8,271.3,337.8,271.3z"/>
<title>Linz</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Hague" >
			<path id="_x3C_Hague_x3E_" class="st9 red" d="M325.9,248.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7s0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
				c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
				c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
				c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
				c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
				c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
				c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
				s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
				c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
				c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C325.9,248.1,325.9,248.2,325.9,248.3z"/>
<title>Hague</title>
      </a>

      	<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Amsterdam" >
			<path id="_x3C_Amsterdam_x3E_" class="st9 red" d="M343.5,231.2c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
				c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
				c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7c0-0.1-0.1,0-0.2,0.2
				c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
				c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
				c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
				c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
				c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
				c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.1,0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
				c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5c0-0.2,0-0.3,0.1-0.5
				c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
				c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
				c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
				c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
				c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2s0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0,0.6,0
				c0.3,0,0.6,0.2,0.8,0.4s0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3c0.2,0.2,0.2,0.6,0.2,0.8
				c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5c-0.1,0.1-0.3,0.3-0.3,0.5
				c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5c0,0.2,0,0.5-0.1,0.7
				c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4c0.1,0.1,0.2,0.3,0.2,0.5
				c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4c0,0.2,0.1,0.4,0.1,0.5
				c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3c-0.1,0.1-0.2,0.1-0.4,0.2
				c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4c-0.2,0.1-0.4,0.1-0.5,0.1
				c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9c0.3,1.1,0.8,2.7,1,3.7
				c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5c-1-0.2-1.8-0.2-2.2-0.2
				c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
				C343.6,231.1,343.5,231.2,343.5,231.2z"/>
<title>Amsterdam</title>
      </a>

			<a xlink:href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#London" >
				<path id="_x3C_London_x3E_" class="st9 red" d="M266.6,223.3c0,0.1-0.1,0.1-0.1,0.2l0,0c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.2-0.4,0.4-0.6,0.5c-0.1,0.3-0.1,0.7-0.1,1c0,0.4,0,0.8,0,1.2c0,0.4-0.1,0.9-0.3,1.5c-0.2,0.6-0.4,1.4-0.6,2
					c-0.2,0.7-0.4,1.2-0.5,1.6c-0.1,0.4-0.1,0.6-0.2,0.6c-0.1,0-0.2-0.3-0.3-0.6c-0.1-0.3-0.1-0.6-0.1-0.7s-0.1,0-0.2,0.2
					c-0.1,0.1-0.2,0.3-0.2,0.4c-0.1,0.1-0.1,0-0.1-0.2c0-0.2-0.1-0.7,0-1.4c0.1-0.7,0.3-1.8,0.3-2c0-0.2-0.2,0.3-0.4,0.8
					c-0.2,0.5-0.3,0.9-0.5,1.3c-0.1,0.4-0.3,0.7-0.3,0.7c-0.1-0.1-0.1-0.5-0.1-0.9c0-0.4,0-0.8-0.1-0.9c-0.1-0.1-0.2,0-0.3,0.1
					c-0.1,0.1-0.3,0.3-0.3,0.2c0-0.1,0-0.6,0.1-1c0.1-0.4,0.2-0.8,0.4-1.2c0.2-0.4,0.4-0.9,0.7-1.4c-0.2-0.4-0.4-0.6-0.4-0.9
					c0-0.3,0.1-0.7,0.3-0.9c0.2-0.3,0.6-0.4,1-0.6c0.2-0.1,0.4-0.1,0.5-0.1c0-0.4,0.1-0.6,0.4-0.8c0.1-0.1,0.2-0.1,0.2-0.1
					c0-0.1,0-0.1,0-0.2c-0.1-0.3-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.3-0.3-0.5c-0.1-0.2,0-0.5,0-0.7c0-0.2,0-0.4,0-0.5
					c-0.1-0.2-0.2-0.4-0.3-0.6c-0.1-0.2-0.1-0.4-0.1-0.6s0-0.2,0.1-0.4c0.1-0.2,0.2-0.4,0.1-0.6c0-0.2-0.2-0.3-0.3-0.5
					c-0.1-0.2-0.1-0.5-0.1-0.6c0-0.2,0.1-0.3,0.2-0.4c0.1-0.1,0.2-0.4,0.2-0.5s-0.1-0.3-0.1-0.5s0-0.3,0.1-0.5
					c0.1-0.2,0.4-0.3,0.5-0.5c0.1-0.2,0.1-0.3,0.2-0.4c0-0.1,0-0.3,0.1-0.4c0.1-0.1,0.2-0.3,0.4-0.4c0.2-0.1,0.3-0.3,0.4-0.5
					c0.1-0.2,0.1-0.4,0.2-0.6c0.1-0.2,0.3-0.4,0.5-0.5c0.2-0.1,0.5-0.2,0.7-0.3c0.2-0.1,0.4-0.3,0.5-0.5c0.1-0.2,0.2-0.4,0.4-0.5
					c0.2-0.1,0.4-0.2,0.5-0.2c0.2-0.1,0.3-0.1,0.4-0.2c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.3-0.2,0.5-0.2c0.2,0,0.4,0,0.6-0.1
					c0.2,0,0.3-0.2,0.4-0.2c0.1-0.1,0.2-0.2,0.3-0.1c0.2,0,0.4,0.1,0.6,0.1c0.2,0,0.4-0.1,0.5-0.2c0.2-0.1,0.3-0.3,0.5-0.3
					c0.2,0,0.5,0,0.7,0.1c0.2,0.1,0.5,0.1,0.7,0.1c0.2,0,0.3-0.1,0.5-0.2c0.2-0.1,0.5-0.1,0.7,0c0.2,0.1,0.5,0.3,0.7,0.4
					c0.2,0.1,0.3,0,0.6,0c0.3,0,0.6,0.2,0.8,0.4c0.2,0.2,0.2,0.3,0.2,0.5c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.4,0.2,0.6,0.3
					c0.2,0.2,0.2,0.6,0.2,0.8c0,0.3-0.1,0.4-0.1,0.6c0,0.1,0.2,0.2,0.2,0.4c0.1,0.2,0.1,0.4,0.1,0.6c0,0.2-0.1,0.3-0.2,0.5
					c-0.1,0.1-0.3,0.3-0.3,0.5c0,0.2,0.2,0.6,0.3,0.9c0.1,0.3,0.2,0.6,0.2,0.9c0,0.2,0.1,0.4,0.1,0.6c0.1,0.1,0.1,0.3,0.1,0.5
					c0,0.2,0,0.5-0.1,0.7c-0.1,0.2-0.1,0.3-0.2,0.4c0,0.1,0,0.2,0.2,0.5c0.2,0.3,0.5,0.7,0.7,1c0.2,0.3,0.4,0.3,0.5,0.4
					c0.1,0.1,0.2,0.3,0.2,0.5c0,0.2,0,0.5-0.1,0.6c-0.1,0.2-0.3,0.2-0.5,0.3c-0.2,0-0.3,0-0.5,0.1c-0.1,0.1-0.2,0.2-0.1,0.4
					c0,0.2,0.1,0.4,0.1,0.5c0,0.2,0,0.3,0,0.3c-0.1,0.1-0.2,0.1-0.2,0.2c0,0.1,0.1,0.2,0.1,0.3c0,0.1,0,0.2-0.1,0.3
					c-0.1,0.1-0.2,0.1-0.4,0.2c-0.1,0.1-0.3,0.2-0.4,0.4s-0.1,0.3,0,0.5c0,0.2,0,0.3-0.1,0.5c-0.1,0.2-0.3,0.3-0.5,0.4
					s-0.4,0.1-0.5,0.1c-0.2,0-0.3-0.1-0.4,0c-0.1,0-0.2,0.1-0.4,0.2c-0.7,0.5-0.5-0.1-0.2,0.9c0.1,0.4,0.3,0.9,0.6,1.9
					c0.3,1.1,0.8,2.7,1,3.7c0.2,1,0.3,1.5,0.1,1.3c-0.2-0.2-0.6-1-1.5-2c-0.9-1-2.4-2-3.7-2.8c-1.4-0.8-2.6-1.3-3.6-1.5
					c-1-0.2-1.8-0.2-2.2-0.2c-0.5,0.1-0.7,0.3-0.6,0c0.1-0.3,0.4-1,0.5-1.7c0.2-0.7,0.2-1.3,0.2-1.6c0-0.3,0-0.3-0.1-0.2
					C266.7,223.2,266.7,223.3,266.6,223.3z"/>
<title>London</title>
			</a>
      
		</g>
	</g>
</switch>
<i:pgf  id="adobe_illustrator_pgf">
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	jiHtOcWb7lZjOJtuEmt745jP7xKOtrDC1aV01vckhm387/V3eJHtFTKUMhz9OkyEy0IG8Ya7resr
Xd1wtzp50mkZbnfDnbZiyHjH3QbL0OSGuw0rH9e84c76prwdLB/5hrvtb8rbSV3STm64W0kYqzvu
XAJzuOFOuSttJ4W11J4pAdeVY5sdfmxZ+9ZwUQvrxswBUK397e96fnKR4+Sq8nGbwlo5GwrD2b6w
FqBYudbaexJdwNnokCqdtERwrM+Fc1Xfrpow+xzF9evbo8ZQMi6VkhahdV6fu2WYCrgpWdFpMcui
nMbMZcmKKSn158M87+zgOQAlu+1WFHN9tDkC5ui228UttRRzFThzVTGUChCuXHjbIqaj00e9YFZj
WbPGFbrktojJY+qhGWpcc0TUYBjmCMc7v1eGoei9WpqGL1tf96jWyHT2uWd5UsO61z3mCMbJHnNf
45ojXBWLizaMU41rjljvbD5biunyNzaucX0x28DRVw0417iiS/LWuO7R4Qyilw1rXHXKQW0nk7Fi
I2qGb1VoJuRms3PKLxbp1c/5l/xr8aWefy3M0pkyV7/MZYl2LpeNXaE0ztp0pXj8Qz3FpH0V3T1s
D9Phm3k93Invzeaau7tUVbuTqKmICx+3b/VleGHlHjb/iW9iVYRnXfnn8c/3ip2Ymn91tX/17J0F
Um5fUyWmR/qlIBXjMNqL7qJJFVL9PWyp8FxGqi9Niz/3KsdmpWkePxB4L2BZmjZbflGEJdLwyfHI
+sY55W49yUfWjvXNrvZvpC84VJN3Uq+bIfX4MdrDitDrWJXhCXZFeHfP1kgLN28l1Z6FnsCaywv1
SO8MrARLU0KPP0l8njKZffOWx64gxt8r9u0QFqkSsyq2lNRkhTMxOlcLt7gc6lWnXZQ4ra7fd5E4
CUIjbDxfrno4cZ8/Zqeb3/JOqTD6CIm6+kdr81cPf3eRywld0iZWmZzc4ra0yZhaZWnp2t/M8pZf
K7XKMpyL1n71aK0UNGs6WSZWrV+VZpNatWZVmlOBgh0/6UBh1nSX0+s0PqcsLV32oF2n1sr603ZJ
U8XpMk/LTdWdNkq8xXqxydJKi70xu2lCK66IiUFcvUSmG8aYdd7rZ2Hr7UuzU+M2vfupsNa+tcjJ
Vg7wZ2Hr8DIM7X37+NhnwUVcyzk+BnO+9ZY1rhTOu9nZdLxRz+YQWo/fNWG2OLLRwMl2eVqur+Re
GdUteoKtEN0ddhX7o3fdSZgWvdyVj7xWMHiVdWMRDi7aHgnsOhCwuoe3uXdtfdiVm5OHtDEV8QQJ
2U4UPfGS87UyLmNvnZKZ3bbGGRGq+R0kFmsVkuGotWUp4Kf9OQdr1Vg5mW+aaKx1lwT9OQfrWePq
iiidvHd5rZ5ZnlKnpJX3W5RyJlVZBNuVAqJAZdTZs3APzLHmxwKU4WQwYwh1q0GSu6SYw/7gehRz
KAxaj2KOl/y471fchmKGcmG1Ht7gRj0T/bJGFaDbGkCzVem+CtCyD7qqLDNr3H0VoNsaQKd4sn0V
oNsaQNc3sFuWvbmpAZQyui1o4lQF6LYG0PacXscqQLeFPzZZnS6qAN3WAK7hI29xo57OR16zCnBl
mYi9MYxKtp6kvL5/+FI+15xsX0vocCmfPgr3z1zKp5Ew/9ilfKJtuSGdXF/KZ+8j7+pSPnznY89B
bW99KZ/VWWq7vZTPTIvt/lI+W0vJLZ0q8Xcr2/nB3dlQLu/1s/dyLU7UWftePxMxernDs6Gke/3s
4yfuzoZyvtfPTbbt9vf62d/q5/5sKPt7/VyfDbXVvX7KNO3ibCire/3sc1asaxK3yR3Q3+onyuTt
7/Uz0k59q982lVyUfcxTFXOQrD4rB9/1vX72+UxY8u/gXj/7W/3cxi2d7vVzdwPItvf6yVV3Ls+B
3+xevzXrK3d0+Yf2Vj9bTl7jXj+t9au/1c/8/sr17/Wzn0mHqjTX9/o5nUC1m3v95H6Zpl+umQVt
ea/fWjy28b1+9rf6bXMfn3uVZ38f3yYr0OxWPzc7Vm7u9bOvwlVJy63u9bPX0p414rZ29/rZJxWY
3WS0yb1+VqQUb/VzMy9u7vWzv9XPtmJojXv9dlOV5nSvn/1GgbpWdJt7/Yz9Ut/qt+na19/rZ28G
2N7Ht2XdQ1i+1W8n9/E5Hing8j6+LS/nlk6c3l3dg+mtfioe2+pePxmL6a1++hOoNr3Xz94rs6xK
W/NePytzXrzVb105ZrkMbW/1c2uNO93rt859fNsvQ/Nb/Ta7j2/dkz2s7uPbchmGtbf6yXtJ61zF
pwemzdQwAeX+RB37e/3sHWrVWTdb3evnqiptZ9cXm9/qp62s3/xeP3sn1KK2eu17/UzlgXyr3/b3
8bk8vWEn9/q5uY9v+3v9jLf6qSPHSFru4l4/+2J4jQ2jX4Zr3OtnH9cyPYVmg3v97G/1s9Zi69Y8
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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	Ch0VYgJ5tJ3gslgkvEnKf/VrqRhtJ5P4Jj5EqDyTsO3kRWrjBLOneFkR1XZU0BWje0r6Mntc2nEY
splPfsEUrelLmQWG1iMMVjl1lo+p+HhmDJILQ5vLS4x2legTMRFugNivKdRPV4xOs2J0uWQ8RsSk
HRVmhejGUowwWDMcYcKCMYya6WFhQHPk8Thdc4tB94O5FAvfQHXfV2RM8ODxRthsWTFxucsMp+bd
ystm9NPP+xyLoYefGCOMf3wBYawszRX2bQzRroRitJ0AVwY2ta8UjOQXrzDal2JUwEKBnss8a+DJ
8xeYdZASWDWA4RPvMEaHSV9mU7xoh6kcYUPwmw0mKdl2YO2hU1nBmhc1qfp2Tox+V5zkIK2yVkR4
CTE9DTKQWhg9NBh0azHUIutlHJOVWieJ+dFBb3faSjrL7ssHfw32k6VP+VTEtcNYmMaHzHBJeMRm
MTD7VBqZiVOHX4lOo86XBpG1RK3lUoyZQunLYc4xG4x8+yvMqVINRDaXGc4bjGxk8+kGI1NoMPgR
E6HzfnOJmOpC047BHOMx6lu+yxziGIwc0Ig4u3YUY9o5ts47jOlrPvCIKst/RPAGd8h17vY3kLG4
JLQ9q8RszQPWw6TFhVnDWZf2DUTOEQ0GXhWrE9At7dMqS4MRpWsxAT/qVJZpPSgxZ5+mHYM5jIA5
Z9V29NhX23GYwwCao2oxyA7zph3FRLiUrbJIUx/77fdZn+AVRo/g9dtX+mXw3JpXXWOPkSsBHbNe
P+h4XmF4yNR5ZZJzWftP51mvTAxGrl4YqcKwtcyyBolyqFc4wudsOyfmTTuFE8Yi3rQM2xvQ8cjV
lGnHYKQdub5STObmnnxrwRsAPx69ATy5rLlIVIhcWZqe3mCOy1FFsM4BL5hWbEK2YVt6C2sgcnGs
GL04Nhi5ONYhu3bks+Ry2WDMmI91MF9+Isz8nftKV0EQupayy6UVQZgPUoxOjOglM8GKkVAL1YEO
c45HQz9MXxJCojbrDUbDVQxGwl7UFmuIjcFIqI5ygxcYEzokjpTFHFzFhCkZjIQ7CUczUVzC9TSg
TDwyE5amXWl0m8FIkJxiNNju5IwWcs6Ow5yrpbF/IhkWc0ghqy4UFuDEL2KQ9ujAYo6dYzFn1SaN
ezyVnMZpijJ1kB9Pi0xAqJwWvcKcwafEMB9BXsfUtXA9WSEmxBIba1Zti59BSviAljk48Df6AhMO
vJZkjY99hCNFktBOWfG3mNpdXIxHqCwbG7menQWZKpkwrxwLn1jmb+aYFYQbDBZSB98F49rtHMe1
uQa+64a67OAPex3OY1+HOY+zLYaOAegohsQCkR5zHK+zQA2EDVDWGNmHn+dLKQZAVdY2Srzh698r
Mv1wlO8wx42AhRSYSGaq4L1baqt+D+siYm4773MWBuwB24WXWrmHXU4o8bV/5zX8Xq7j5sY1c96D
WAzTpCUGvrDOfFrJnRor67EYYvjkKavUaVCfg5t4v/inesMC81JtF2TCCCOzN5Bm9vpFkSSISsmR
L8vzyi1QWc0EEhx6aB/ID7dabq3OGyC35tKOkVNth4FViaWDoPDHFxjdo+e9ltvrUFfwqyYWjOkf
vM748V7Q6B3q1zEnqyWWlenAQI77Rwf58RbTIM67UA1VlytVp2vPq1mLOa6TXVfH7bYZ8HlJ7iDH
ffwbiFnr4+bfLSM5C8QwkpMMq/klxsA8FzjDIl5BTE8nRr9JIjks5ogIeYeR/WQw5eFMrNq+O62F
RLq4ds6IGdfOGZ1jdIDBiC6RSCCjkySiyGKOyCSHOQOuLOYI3LKYI0TMYo5wNPftitE5VIyuxRlC
ZzHnmwmHOd9MvMKo/Mi7Coc53lW8gehofvrEyD3PMF29aOfP90HTfdB0HzTdB033QdN90HQfNN0H
TfdB033QdB803QdN90HTfdB0HzTdB033QdN90HQfNN0HTfdB033QdB80ecx90HQfNH0zUUn3QdN9
0HQfNN0HTfdB033QdB803QdN90HTfdB0HzTdB01ul98HTfdB033QdB803QdN90HTfdC0MPdB033Q
dB803QdN90HTfdB0HzTdB02v2vn1YlGkjGBS6BK/9hel5pixhw4BrEurGOhvyvAbb9nBnlmWfGbr
BJytGF/CQV50dLaSYHZ5GFdIenr3GB7MsJBxLfhx9Rj68gWsb3ZI73AeEqb7IS3HVoBz0pLFRPrp
+CJw+by1uMHQT2fsFq3QmM4vbpF+euT7HsxGtb5zo6sDBggpGK2U4jF8mgOlNgaZ5LCYsEpxwgld
HutwHuQ7DP10RofAl95V209nFRYK/jY0UMBfcTbn877DQFTAMApv0PqIzk9vXGPwQ5Js6Fp/Kzr5
9AubmueZ43NscFzpuXbOqy+LOa7ZHKbxxmxiCTPFrnoMb6ioNUKA/ugeA60EJ4QhG3DOo/2uxhDr
VjhFCSriFcb2FeA9cNKhf1vw7dD3hNyHwvCP9hYDueTR4sTa0CUiBgQzwqhxS9GbsRg6iH1CbUBI
0xd90dGkX8IfJt9OYZl4ngUxMofhdg6TGQKV+I4SysL3VVhOnQ83EnQLtLbD5E7vCoonQElU/+2K
+Xk7br2gRGF4IYmTrxh8M1B+VMVk3yN+gfnP78pCeP+EVWfhwTC63cnncCzm7OoFRPWK9qQqTEds
MDI5v7OdN+M5P0s1M4ziOvmHV4ChRdsMjCLsAmwQTAH087t2jDU5h2OMknyVw5yz4zDnLL9qRw2p
DFkh+uVvMGrXpSulBzo7BgOWE9dhDQO1yzuMoSun/rKYQw9aTOe5YakgaxADP55TL1vMod9ftWPG
c+r3V2N+9e1KC0/97trRtTDtyFoYjIxZqKzOoVLiWBv4CgZXGfr1Feawx8q+DeTk8NqTgZwLaiDn
epqxCKQ+M/MJQuQFdbfT9wpDHtk5GmiR4MWCh9IgdvhGDHtFJGg7PNBlhBvPv+OOwpExO8w5Ozxl
hUqjy5fnB3MuOXx/CA7EAu553qIjC+Ewb9o5MZWPbvnckCQxW5qGTuloElZ4jWC/q/KkusM150HH
vmrTdgzm/C4IJbnv4HXcR+ueFNViTqqLhuEmc8zwhtfBpNBqNx7F6LcLzTdz2MPDO0jeTeaOqXdr
cUbl2XYEo+NRjH7XGZXnMOIqmTnUdgxGxqPrJe5UY6QOw5jQ9Yq20K7augtkMzOGvZVlyG2djUJP
w0UPW7WcXqLF/K52eOgDROiljq1+xGt1mNP7bfMBPPdZ0FXzzrhpRxx/hzkPKxSjhyevMDJmPe9x
7ZznUzrPph1ZdzMelQ399jftiBhqMwqR1VLIcXJitoTIhdlaijHb+JRBozLOQAnbzinvrzCmL1Er
quakHaMuZczGlMq3G5Msc2jM/7lcphlZdIc5t6hiVAR1OAbDCCySGhjQvuP/9LhVmM9Pj4eZY+ue
Id8z5HuGfM+Q7xnyPUO+Z8j3DPmeId8z5HuGfM+Q7xnyPUO+Z8j3DPmeId8z5HuGfM+Q7xnyPUP2
Z8i/HNb8bf/9R3w85rljWIGB5mTWsOMQH0wqaEOFM/cbMP1hhq5c+RKnGAwnMT81zZiYoOorSOTT
fAjEqBzz2l69RYoqH3+Nz7IzH8rgjDH9wxfb68BwwpgjjI+vtksKEcsZCgs8OyWyR7+98GfwFyZz
yzTfTobmG7WiFSij+RJj+uL7lgy3hDmOU17bKwfOJ1yPmG0zhToNe2DyJcHn3ew55ELZDZC2Oct+
fKCfDnGOEU4HCHCfMdkphDjzqJPJJ1rd0yzLZdo5V91B6sM3qhAxPkisHnMKoRvOiYG/N/ATfEfF
xt0vvCM4X+Y7pJj4DuSL3RWwr7AU2/PPVGp8Cj2wncf3R/KptMq4f7TQlwsDYttrhwX8ZCoI40mh
ht6gJyANtqsIFdpz4JtGJrDzmPSAe6Nhvmpen/UCo9OTYnnAwAJPiWCi7TQbzIt2zDRH7Ek+lWsB
nleJ7zCuL8G8GbNIvJkf0865Fq/akR1oxvMCI5vdQERn6HBUFxqM6FTFqG7W6TEYEXmHObfOKwxf
UA0oxti/52w5d6mDnJvdmZyfWTfex9KOxjrAawLff45lNRvf/QQ+3u8BOz6sZ8Ow6JlZGjG7n+dB
v+83r929dvfa3Wt3r929dvfv2+7+qv8qNWr4dr+vjMxwnXkp/RswWONQRkFLZaV6wUxALdaUR8Un
rMfETAySoeIhMytvcg5M9hVaGsz4VbrFYPUgN3yPPAsTl5h6OHyXP/HVtPx9l5XjjU6A0sN+TJOZ
hCCUzHfIl/Jo53tZnZGXWPLGKH/jk/vCZ9W9pNF3cUTtCgscAvMhNKbC8RhsGya86bNhY+TPeEaG
/ljpuyb6SvgsTBfEpDPTlB1zSk8ezEEx+yzli3aYPoJViNI6iffttKdMqK8coDOS//YE1cwGZl/J
jL6Z8k58Th8bazViL+W+l+sUDaYFCqENULO2c/pl3iSEHAIvBFOHaPDJPTfAzLyp2JijVBIxUKc9
9twwrI05Si45TIcwQ3IGpgSKawDDc50ZmQ4Ucvi9BFTg7yXMO0ti8qKaRSQm/q67PAgglfegpUCs
6hfNZOaRiSHhr9n8aJiLZJ37Uh/UNYMD+5GHV+17sakTk8bDvEos0dTHLhKlGGjLCDKMDYxVHh6j
0nMWv6IUpjaZtQALsTJ4SvErJ82K0V2hmHVMWCEy83tlFFnRwBPJzKAC2o/kMZDUlphzq1NirPSc
CspimHy6zgrDlduneNrPFN0q33rV4VWHVx1edXjV4a/fkkihQOjIJ/aOX2HBj10K+6gKmibTrK0M
shXfsEvpHjUJz2b+pOUPHeTHIooOcZTyTJNp2FgmkEJTrZJ0mFOZvMOwHEDmWUulPXBLZDGy1PGh
EQIey9aGw9h2DtFzYz7F3EyhNiMQbUVXXDFMOwh7xiDKuOvJnhv8FWaMZ1ZmjGOetGE3OJPMdbTT
AqMfd7FBbecNJj0dDCGs+Rvd98UU/QwMwDp/sjvJFL7BdChSOMDQEvjy5le0twfNVFhLWlFb6DRB
sxaWJcCeHJ8Ct4qBsgUi0KR+CnQrhvlCW14ZyWewZi81Zr5NxLRPJn+DAduBBsk1RmYQs5jKCNvl
brPynd0VYBBMlpiYhpVHJ3Z3VSZu65FZ28JfCdqPm9Q0IwrBYQ7VY0YsCsw1IxgZsUJYkReaoPJk
blvPswysw4jKdZhTu+twFKJfpRidnTNTGTOVdpYjbDD99Yu+GpPaNdCjwTgJ346RQW3HYE6rhQ0Q
eDLDWMH+KV5+YsyeUIzuLVkKs0dlSc1e174M5vz2NxijnxSjulDWYnCAA3QIJqd9AVH1LRhjBpSH
GJLxE66yvMNLaC6huYTmEppLaC6huYTmEpq/bULzq+c7pXMSRp0s8BSwSDx8HRjEWC9mSIcUUp7c
JowKRramTREwO5VJ/DNz0ucFCTQGFLMcZsKnxF1IaLLiwSoQXiCvHSSh8eg3DovAyg==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
/OLqN/9z4ox+dOL0W7e++eSLj07Ed13xp1z/8MrrV299/OSJp0XxjP7/9ha87UDSux8+1NcPjh3j
Y8f42DH+XR3j1/T/T+hDL4nrL+kS3uJGHv3kh9vtH8r+lSvgH+Y7UZY7/bDGD+8gMk7/wr//koS8
LXHyEjAH2fPSF9/euvrFtetXjq7eunrlpaMrr179Kkh+vEQiIEi7wsQwVe3T6TevX72p53zx0c3r
b37xYfxVYpYTqcroIaqDW2RHn1z9/Pqt6998jxJjlisni3vHklyUb375ry8+/OL6t9/eJn3mp+99
7qV55eL/un7tX7ziD7/ieyJ04/W+/OKEjrt9p05+FHpMJ9706/zWwPGdgpc6ylf1i8ocPvrPyJaa
2OBSy7LHUKPSUGJly+n/naIuP31jeVa6t0wC6zwZpD/DQGWANMD1O9rnxzSmqDRozeRY2wkZhrKI
JWbkWuinumQ/WefHFNceqig1KSrZXBhQd3qKgxsNe09cl+/0Jr/4Pdfu4pvvjU0yzp/bLrRysZE/
O18uHdWL7eL8/4pNcne8fixIEaSNgdXaH1nWSW7Mz0lSKXx6lCT7EOXfSFJ62koQTIIZNY37K0n7
4oA77u8PuGSJrp8hPf3uq6+8/dLRiTMnnnj1/7rx2it/PXXrkxtPnuDFXtrSFf2Bfru28Pwn8Wcn
Tp9768JLL412dP3alx9e55f1hS+eSGfP/OWJq5eeffHkE+fbk/1PT9eLp/77qW/PXN7qu3/85oN5
/R9n3uv/nb6+NM488syNZz56NT979tt3vnqkXPr02X/Vrz49+rZ8+Pwr7x2devPGracunbz6/NHL
Zz99v7771LOXjj78fD730El+8Pa5y++80J/69pmnPnvxva+Pzl34018/+69z44OvPnrq/Dsv7E+d
vfD4jXMv//WTK/nosaMvtmuP7q2c++OjF9ONJ/5+6XT60z9OphuvXH2+nCuPXzr96p+/eCFd/+yf
F7c/nn3vn089+86Hrzx08qlnP/nXO/zvjy9+8Ni1C89cunjrWy019kuPfPH86+c+Pfn8Xy5dPHrp
Sjp98rUvXjzzxRNfn/7y9WsX0un20ks89lw6/fyZnb/tl/74zn9fOvvs1XPnLj189Nnnj/a3/9T9
5IdO+tn91iuXXrn4weWX9/M3z94s/tnZM5dO3br0wis3bt4mfyX+cdiT985/duHbF54++a8nXrj4
2Jfv/lE/u/Sct+D0F+OjM6lf+PKFcx+//tlnknp/fu7tv37vEfzj8C2vX7n4eLvw34dvKVdPf/HY
mdNn3zmZTh7dOHnq9bPPfP7ZW6c/vv71Yz/3Iq+c/fzJR7Rjh0fM6xc/+Pzsny5+cPbkPPvZO0fp
3Fs3H/7m0sX55CenP/7yD4//3HPePf/GYw/nS0/ceDnruN/4x6Wjb8eXqX3w8ftnz7x75tq5V0/9
Oev0n7jx6bmjGze+fO78Gyc/uZCuv36qPf3wn55/57sn1ouvn3nl3Cfvv/rI2TPfnnrj/Gf5uYfr
v55+5PX6/Hb903NfXHri66NTpx7/6Lkn/pWvn3/52gcv/uhvHzp5+68vnXvrX6ceO//ydRnE/3W2
Fjb92fHW15+/fO71F/72xvm+33jt+x/01w8/Mkl//sxfrpz5+Lm/vXj2mcu3/nDutY9ePPrhCRxO
/5nr85v64z2JV3nu1sVy7bFXviyPj0/3c/uHN587/9GTn/3pR3Qsen399qlXnpOPeXn4z/xQOPk+
PPZ7dC+888wt7ZgoHz13eX5+9ge/evbhu9iOw4GduXV0+uprT1968l+P9aOL//jwmQ==
	]]>
	<![CDATA[
	YOLbvxCPxa/eu/DqT//6g5OwxS7J8O3TZ7+48Mbfz10+urrpX88+xr1647vzO/Pxu9c+Prrx+OP/
pVv3yOWjl1/+03bx6S9fK2effaGeFI/deYErp85/9sz2hIl+8Ho//MUd//azh/UFzz526bF+6aMz
H39wWp7MhQ8f//uzh0f85PcXPnxse/kOH/nk2Wf+8cqX/W/907fOf/bqm6d/+jbfJ3no5PeJ7vRm
Vx+9ee7yqx8+den9K89PPefTLf35+VMX1sN+9Ns7PuBxGRP/7hGPf/5Lj3j/40cvPfn6zWcuHbW/
5WdfvPnq57qu7U396wsPl/fnX7aj69++8ay+Rcf48dGfn8vv/PDKfXZ0+spfHr/4wem/P3ruLy9/
+/K51z7+7PF04+2rz20fXLhw7tmTXz18Pb2cH301/fmpW6O899f+auofP/9G+effv35Ye/P4y/zj
4g/vy3qs1v7jG1+++O3NJ67c9WOvXP3L4+c/O/rrf3/32B89lB1754XPzj77/Fcvmmh7+olL50+/
+vIfWnr54pMfppdf+fxP5R+nL19If/7so4vp5St/aP7DH/3Zz+7D0Y23bnwtTr7+9duPh1489+j5
a5fetyZ64dKpp86ee+W57ekzL5156rmXv/n87Nc3Pn7s6MY/3jorGfn1Nxcf++rs0+fevPzewxff
f+Hbr3/Mixc+/vrKuS+P/vn02Wefe++c5NjT//jrf5396tuXvji6caq+cfry8+fPXTq62frRjbM3
bp7bX/pbPbpx+R+PX3rh7Uff+v7pP3Xr9QPd1Sd1yC/UefPSG2/Wf7Vn3rr41Kep6JUub7zNk7ov
nzz3/Ec6jYsXfvjV177TG+XKM+89deaTf/75w/M3T75w8dJjL77y1VPnHnn443z0Unk1Hz369zPp
o5NPnfrZv3jo5HfaOSTePz98/ZGz31w785iZs371ydFlSzzk3SP96/TCS+zYC1ghZzici3cS5T/6
x09k8r38x5nZ+v1f5d9+yx9+4fvvzSo//4/fuvy92rF/zwL3/1xggQd3+veeBX7Dt/yG5e/pjv0s
C/xu53JbDjyA07+nLPBbd+zXLX/vz+VOLPD73sr7ywJ38S33gAX+ox276+Xv07n8iAUegEy+byxw
t9/yn7HAf75jd7P8/TyX71jgQWnk+8ECv+pbfjML3KMde5DW+G0WeKD22D1mgV//Lb+FBe7ljj1I
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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	SAhND3y0tJwClAmwJ/mw8a5SJQRxc3EYER4AnMp7kuQzWHMns6gHbIEsJexCUr0BT1iwNJkTlc/R
LdwdZAJzYAzaXgJQVjOxhEymMMJqMKfeX2LNz5hyAUhhkmFsh6CnHkjcLMHHgXxiWbISFc1GDFfH
vREqL2yKuKB2khBAJpx1J6yPqSZ/sIKeAjCNB48fsC1sacfAExdzrQNTTUAFbDRhBqc2JjbeBpC3
5jtT6Ol7a0bDBcUA/goS7BDFJ0TUCMBqKQtyQEwA30C5lACRD+SEnP8trCQxteHV8k9GALcR8foj
ab49HjEciJUUrgvkg4fN4W3GTvrmkHsjlW1zAPA+oWX2w56hr7AOEOUn/omUERIAyMjeluDDQevg
BuqqEmhY3ZVYbw+EP4UHEsragZV3ImZoB2XauSh8nVw/LNJ9EQAyB66xh+aDRTCqDlldImIOnZcA
kKOEN8PUNonZyEvdBYV4d5fBkfcZGtbnL5mX+qo04PgwOUjQlYW/koxLmx4xRnxN5dsTmMKDnh5g
zjfDtk78cgnHhYc++MXJu1f+V7lw5W//+uaTax/rf178mQG8+4nTL31x68QTb73z4pW3Pr761fXL
//PV9e9Vu0gKgDtsXAFwxSd0ArKiiPeBJtGufB40OiynBTEARAIIATy/rq3Oa8MuJoGkf25oEChk
miZEt60ZKGCCAcRjxjISjDL/JoyPmjWNAzPbILQbNI3QHABHXfRXTDPQ1ZJtHaErEse4UQiTaBwE
+hLgG+CJTCFxQs5BtlMOCqAaG8UeZC6gIMdZADNiNsWrAKyRGSmGAXO8DdB8ZMD0wxwfhHcFGqpb
wW/4shQfSN8XjARRJBC54lrtXjcFWI3USJ/mwzqEvEFkYNqaRoyCbJ7dn1PJvLDtYM35YDmq9o+l
QmZbFOTnEhvr08GGB08k5UPmgmVQka400KkQlN+cSiRxZLBZPIVMGoDaSrZ4Q82QnWoY2VtQuPoE
eK23HnEvPxbcc+9lrTNcAGTwLzQ60m4z12F1P0ULyEtH0XLn2OmUq3FMhuaJohOsG5wJCo8/AV4b
mb251tEuD5kgcqRKMw0VQtzBRjR1c40N4FmxaYIhwWcYciPbbn1wsqDHVWWVfMo42A1jusQqBdA/
0bcNcW0aCcqNyEzi86DooDN2ihqwJLYNx1S+LHU4JShk8mDzcUTFFOLdhI9f69jWOhVxxsZX4gob
gNQMxnifxg+JQtyaACPMuD2GYYMtdIw1KIDNUs9QCRtAMaxGgb60tY60FjDIQgzGNMR/AG3I2+t+
CoU9Et+NMLQpALnYuHI4fAPAuE0jgRIpyc0wevIszl54HQNsQdFRqtNNo4uxO0/p8OFmkGNyrYih
aKIAh9/FxLLjF0XGVajA4uIZ046C+V5eMySDWK82JXgaTNWOfS0TBosFArJmHUTYiNOZzYpVvqjv
DlU65OqmtPVc7yHpIflCnmVbX9MJBzsb53U2vEpg4/K68Pk3VB7YElI4I94VrN6gomHvQaEndFAV
zTAzKMjFUaaUFrdluKBRySFdkE1TDKXRQ5ulLEAs2RXZ2fzY+woMNiRiNUUBZ6K/MOafV23kMSQ6
hkOBJqkEtWQplBIP4c8J9MkgjG0jZ13MKiM2llCUBKYMrtg16UtKscgkbr5cpFEwC5Jtf79qBRsz
CYxNk5DcIXNbcJq9rZILCYe/j7jCA/8YQIShwFBU5y60EF40wlL+1EaaU0e2eKADwAHd7Dch6EHE
GJj4eggxXjlvMkH9ECBHpGr0N6XFi7Bb2vROKVXIEux67Ku51IEuPv4C4gKoIV/T/Qg5uESyzVlk
MxEEuOLcR1AopCSdyzdn9WxYvTMRcDje0Ibeik2j1EecpVufXbsFY2kHdX1nc3xxcxlgB79TjHnk
5Yur9chcmqDCQMNVVjnOLjmvJHfX/hI0xcY1Pgb4FZ8nznoBOJf9FJIsO5AGh2W5ScTCJemI1QYF
abaEeVpCvvJtDdXXaz+sA7g7G0E9TNOJzOspuaxd+8lTJmEEfbXL9aAAhSb7Ubu4uIRocDbKbM61
DkVzxMGALscBUuII+t7KQP4gZTOytg0C8UOwZ7CeM0EBxFwh7dlw+9pPX4RlKDXYAdcExNraoWKr
jM1VVUhc0FOZUsIRFGbgSZKnxTKEvrECdc1jRygQKWBgJJLXMk7r4wNth1fZAMPjI1rpaB388g3t
4DOu9rtwDmTOdlOQXARax+sE08vQ7Y7XprLWIa9N8A9z2FcHvG13MASXnk3BYBYLkF0JVV3B1cjs
cbnvhrtAhSzuW17qfgCJaLI81jpwAf/iCoYwLGrEyAGNBc82nLbhGEU1xczGRoOdCH60+SPlQQmN
zRdKYannAA+01mm2MIH3lDCUHMUc3t14W6P10alhE+wU5ej7tAdjX7dHxhnqneIOW2MZx4YzlUmz
1qnG/0kmDb8LyCXUHWVxfV3SyvFVQkomwAOcJDQMyBEBEdhiKVzDiAVdTTF2ngf5CeQ2I0Sd6duI
SMhR2QdAunkQwto1TPewlbtR2Tu2VhBwIWS175J+y7DXgRNbzyCol6Z21RnQ9BY0g2ThtG0Uloer
MbmhO8EFKKYhBfu+L4qC2SIpDAbJFFYeCX+mHgwPR7e9ueLHDPCnY+Lpnk4/gxo6/Zt4lMPL5NIo
zxQDTCLv3CUZ8PYnjDkWhTaxE0zhg9YysK/uZ6ougc7weAZpYcSwn0K0F7S0DIF4ER0iWT3Ao2EB
kfgm25Y3YsiZKiVCHPgKeV/r4PzuJM0LdiE0g4QrKJxljU3wPYmkBhZQlgiqVI8QmMrxxYOa1gIG
kkpeKPTURGo7bf1gf/IE4L1p0QBt3612e6xDMRhwMd8DKAC1gGqqLQ6HAgeC7vEWJLF3km1UBsUa
YGCqpBJFG6YhJwu7zn09Qnwq1t552XiL6SwE7sSBAxoRNl3oAaI1U8ZLvS0Bs3L4FiIxYG9SXzQk
BDb0UuvrKc7RkujBusmUIGUcUaA0NSgk+BuF29VvgoG3WwAbpXzN6+DhBDYMiyADfnZKGnZdTwH4
DHpzYiRlgM0JSQnM9cQdXtXPLCSTttpuf44WpSbS2dGMmT+4/4U4XdjJkpEF9BBVAVAQC6Tmto0w
5uQ8a4fLCKMxGyLQjQQnTHLhOwu3UV+DvshE/GlxgKNQwhQbHZAQogHDMpNZkJwc2HtLDAwZmuDh
MfNM0YgLuVY99e/WIeO044+bRjer49xPggKmGBTEDarZYh2pF64O4JmgoIIustklngEmSxTJLmbs
GjGE6lYBaC5K3uVlVoKBIWsonxuOYW3+dTHgdzdYKHaVYAzCIjaNRBmgb/DKaRwWIUcfda/FNHY+
wYFYO+LpUefGr2u8hZ5ILFESa0lOfBcQv8B3i3sE8DRKeNLBWne1BtkrX7wu32pHHiAsl/UKXLki
eizSOq+aAaTpXePsOvZExzYvJgADLa0B7LIdVpl4MziYKHLRULVGdSa1ifGu1WAAImPdFMByQIdX
48D5XC4u7kni/Ek0yZJrtj4PH0MOgSgyEEtIKLnbHUDIcSUkzXBoGuEAU1Rq9Ajj7jkvfsfU45r5
aJ2BBYzG1bt9/D88vd1QKlklFPT15RdyTYG4eud3vmZLrgntsWngXwkQZ3v+FOwSgNyH/ZeDY/hD
Zh0gKAlj0LFheYZyTJz0K6SaCDoXGBr9szx77H08Cyo+IQDASFxqn7fVwOZiKbcJ2EwjYw6Ek7Vj
iJrdznbv7pWRjbSVlYJlWoKhwUdILEj9W1xNexpED9sch3U6qUcil90MPYk4ojztEa8wBNDcSkSq
m6Jg0IIZRGabohFOcBuPWEf/w8Vrvd0WnWQnXVYebCCTouHncDrrkAFC7jQswNCEYidtprU5lFBI
1KLslVTmMAVAOSfj2jhcUKJTWqNvLhQtlD4TiMbGq6Hs5TdTOTJQpxDkzVXBu3FPBG+oTJUmEH/u
QcHNm0i2sowOeQESe8OhWewfIuS6eSU7HxERLcoagOaS8IfA8HRi5rVEFKlRLKc9xWgwBeF2A+Ml
9q95FbmN1CoOSlqhmFyiClaiRsCLO4Eh7Wo4QuzsmUSQi7SqHVIpQbosDHJrFFPj8pFJGX0c4mod
OUodTY6nADkFhUBmOoKNeneQ+8lVGBRc67GVVGGJaGQGuWBMe6wiZi8GGSMFV9ATbNmGGwSjUZBN
wSyBtbTFQ6gRljbCHKhBQbwTiJMj84SKUwOESPLIBBuxAp3UoGL7mqPJmO4EwGSZbKbRSWGWYO5n
P8ShL2qFUclQgFAAs1+cpseJ0Cl2vLq2XpXvlDNJwnlf63TiKRPYcY11KNEDx7a5HI4YJ9WD2vph
VUHHH4wfqsuTvfZOy6fEcQWGzUnqbEAThQzsGrUrmAvAGb3zsg0ICcOQ7mgkCvKtxQBAlAW5cIKC
1O84WyUK8aD+BuAmmg8K8mOgx0Zpax1QUN2gUUQSWfdsBFZ24BeK3S1/pKeMcoJCnCeRDX61mIK+
LxL1mfSDKZo8Q/Qr8fC1jvQkyTM0ZjyFWgn5k3jpzU+ZVEdyg+vaNuIRsnQx6eCC4YL5huSjwUNx
Yyig1jKjRgpuA0/ktgM1wkyAFVz0S8UclVLEwndyUSTGiCY7TUL2W7fWdSX4XrRk6WDFCSA41cKu
UxBSx1pnd/QnR9KZfA3FVhthpnjGBJRIfUHxzQDNKT1aALrZ1ZoBeiYybvQ1FNju4OHGirAbxk+9
fSHSFzSAmkhETN9QeXBpyVJjw0g/UQiN0HUuf3PJAUZU2uzjQEFtAMpfHLvWkVqll5hed8Y6GMxo
lB72uqQ2y7oDwIjv0eejvciiVlOQhgHs6NI3U0hidfpmTKehpUh0j42AJOoVO9upP3MhN7kxfDjq
MGZ2gD/ehNJL8iouF8iUbhBNx2xusW9kOXBB+PC1Tqd0QELZJVpBs7n9CzBYP4VwOkJzN5SYN0GN
JeI57Czul+Q0f4ZlY4qdAzLMI85HTotsuUTRcjPWFDxR5fv0CFfdZeo7QJ4OdAYU9B3byLNQHDNM
UQPUEnl1U0jDAJQEIb7WoSgfIFlxHhYaHAV5/9UhOtwnCoUnzUraespGSyvSJvAB7pM2g0o+csl+
VwfcMUh6SJ0MIoOyFzG6lTXfA/x8s2E//BSahZBo3OwJQeEKevxh+Br3qZHjcv3oegahAElZRAZC
FPdJlhNeWHJteqnh/Bpsx+eQzMVblrbLvl9AQzDZjVzKpqAnifGIM68PBku7ueDmsAwAOKoeiPeb
ZqOrmpEDwPMyDnMZbqkSIrLRYmRLLrwGsYhzRDGEdihOOE6naBO2PWJ4eEey8joJtnT4GkI+dv/d
ZwYchPmEVFHwyQ7OKUVPA1MQsaTEurkrgG+PVC9IHRdmQwKYs2GXu0gept5BHuATzuj1tZGJohMG
5qQfgnBv5AFRGjlwPDDFGMEDjvHy+23xAI3JMk3gOm7zQRbQdIvGaNtqbkYECT2/hA==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	UwuKRGwG+DQQuJM815fhdG3cW1KzgQB64YR3I1kdmw0uP1TUn3sjBc7MzN+t90lEtEKsuTXWgRm+
ovV9b995RcibRKm7wh8VQgCFGOSzC7f32Qyutcd3rb+LGJIxY+GrFXT0TKEAQPRTudE/uMjSpmsi
RhEWd5JWZh1xyfL2RB4qF3tElmpXIQDCuFqWuntHAGJrZlYTr0V0q1ulntH3z0FjMeLpV1W7qN4E
mDUQEwEcfMWcJE+PcJumM0TGUyhWgxn5iHnDLndLAZp9zl0wD0QRBGam6TkKnSdvQHi4OQ9mC6Xa
O4sFboC+UDAJdZ4jHccxnw2OUVaf0GZy215g2BmDQe4kSWJ1QXwaxNjuArawCbtiT5L35I6n7sld
NETjANh65CXOudtesVzjFZYnG6COiduV5W2XTNAIJ1/vcRXkC/P3iT3J+Xzvo9fNoQuWSUWmsycZ
Y/xWJPbA8SKsdoFgjAj01JAqZiqkXDROArJBPT5wj3UW6iOO6IMuX6QvrvAPjX35rn9LARE1jZUR
2ZFL0XTzQZPvXrtAZ3vNdvUs0OVBZ0u9fuy+CMyXxuYdYQvATdsQe5Kj1Fo0YLyN0cXqBf+kGun3
lK+SOQHwFV7xXbA+7/QVn7leDTbcbjSn4+p161nj8mQ7Ps8dyyFQxoxMXyGgnrjc2Cj7buYSGDdO
yW3DSMdTpCn6VA98nKmI3wcbFNUT/lnIKsfz+WzAUoJCzMKfvX9As5j5SJyyjDBI8cTyzmrwRxHg
eW9yoZSqiKi1aZ98aFbdoueJD21hfMPCt6YiU/cMdoZX+gobt97qR8U7MMcLJj5Rl99/Vqj3nGaF
7vrV1k5zxmM7XsIFJbcUzljVFFsgy3ZksYJp9h2zkuHdMPf8SNYZw9RnLzonSIzG+Aa10/s8dBJO
GoC13j9pXyt52i8V8VCKm9bm2prgQ9WahZjU/WJG2CJHWlugrSf2JJtpKkZrJPOs2vYNNchvlbPN
n4qI04Wc7N779fEEgKcntE8DtgGRNYJ4hbai1c+e5F7lDcNhgu521K43qiuP4okN279L5vjzzJL/
9s//5d/+c4gl/+v5/5NbcnG31AJ7F32lQKlgQqOojaTf/1oxKg5NyIiHEGR44m35Pkpi8CJES6ru
KJTekQVF456mjSJajB6VkKO0NN9NccJCxWPsLzkP+eqLchZcaGKQePiCGBj8U8VkXCyPv+s4HYT6
SlXaciaKhTGx8PVG+AFW4Y6yQUUchwFQyFelDArH/i7QUfPJtWTi+MSJMt8ZcQhMuqOX/ouICcqj
IRJFONIQWES3ofK7CopA3WaWdDwhL8+ohV0BUGX7T0zDnqGY0us8F+BBDA7OOoqOD6Wv9WnMAiq9
3zZz41YRQ3KDNBwNihE/M5blbM72eUwJ35PQWbhL7Rac+CFkTvg654HMQom9SwnhCb6SZfKcFUHs
1ouxRXV7hmiUHY+f06Quw/W7S7z3GBHj6xnlitBQPPiC92sLIRC1uCF8yK5q9zsv8ddnqybDnZkm
QkHnPElFBhgVBb7EwEvr4z3xjkifHTS7Yf0WyZ37yBXdQ3Yo+uyqcJCV4uMXl+yIYHxJ05tT9qgN
xF0zMf4TharLXPbSRu/pm8nrr+1WA8NCF55OZYauy6x7zrUZ0PV0YnQePqFWOzNG9lwVozXGBlMO
+KZWiTBARecpvrYl+47SLMh9IljCHcGsz2LzEo1O2bt9EPTreWnAuj51GsYQV/xSRh3k/W0Un+TC
swi/+JLvb6KFkwgAkBHRuKOox+bs9oa7fWeJGpFPuTw3KN/ASEga9kHCkiAB0+bWcm/aQFS9dwBB
EGMUErixEppcCeExFndxMafJGtrKsZ2T6NHMIlzMHOUMvZlLghQiVkoDcpxXxJkI340xVg2ZVwzJ
SQGgXtXP6XFGAov7oWNTo/Tf3t/jartHbPRJR6VeAuwSyUojJW2ywALtWNGcqIA3/1bpuXf7NO9N
1hkh0vIx5d9rC/wxy6wIDCeN26Mulh6PPD4NGBFzRRhrXeUugQb+fknLEy0bhOAv0CVM1td2YJLy
qaGx7xKhEXHD29W9pyJjpS77lxE/hsb7nLhMaS7wKUu7usR1XazSbZnbHH1rWZjMKmaeuimLl1dv
EV+qD51YBLydjC8Rky7XMI6fJTMyiZbwY0kzpWKkkahwsxTSu4Jj0gjpdVMoN8ndzrUl4d/8UDec
rc9Vv4cmLL7BuSVE/NQr7nolfAvY0giiXs+zfw1AOP0SEGl/z6s7QNWSw2ioTvFJqGd3BkvDUnHV
emTQaOWDuMkpID2DpAyVvPQhmH0+wee78ZCE8d1We9cLfelSU3RV1IhwZ6hJ2cUrApbbKnFdc5/H
OqHdcYYs6gEbHYaxz1dnhJik8wDetsUuDr7j5HR6XQnkckjrnyXAFaV74Mq1T0PE/E2NnqN2YuwK
8TS2n/uPDmJAY/uEj86XZXdoYY9e135HTmiBiEeWKLmYdkUHV2ZQT89YlzVuv+ooF8wx+7Pa8SHV
4ApXXNsTEVGtHiHq+fsrqfOcR/nDH4GqEXDxbZqnPdkhGwN5CA07SnkpZOEM4C83Nl06IJAI9Nd7
NDFUFqnBetMQDLHK7CFX/WZ0BP5bF5fTOk8AZmiXtf3xjzvicnDUL04xvNRg+xcTQAQ70G/6fg8h
qKvqsK0mtO5ogttVc1dIMKHqhiEU4wArCQYi7Wo2w1gvkkeSAtnw3Wj3pZfdQt4D6mOkmXdSMAIU
OHRBz3qtCeu8qcO4KjkBjMGnOL6Vr2R3TLh7JUF2sPefHPEl2V8PuiiBnPl86lbBnueN299G1DNJ
xZSKFrlGA47a2wCCLzFIwq2ysUGc9qba8p3mft++FSXcLfh1A5/4k+PZ3yjF/Ku8MaJvn8HDyoA6
v8beuKLvuhPUFreTsc5vsYkYtpFxukL0zezKWiJYcHsJZuSG+reTclLvLejKyjvokMFsjLINfHPa
9xCRnZ/3t1NThdNT9aokxrb2LmNnaCmVENA19Znu8+gqNQp+M2muvONEpQPnLuF5DE5JIs7Il3cs
RWyPYkJiANFQWwCcK78ZSJlrhWVLL5QMvdZYhOVHjKAO+tl3CrRIV8QcxEIwd7rG9OMCNE4RTuE+
FKRDo2XlKDYQ1IijbBBiWqupf8ZsW0SLsziY5yjZPmOUnon1ztox2IhVREt+VsydrcK0bx9FX0Li
dVfAW2BEsdEguQIMPiHCw/eOcKlMTVt2L6BocKxmfQaRNjIIodSE+vjdlLHi4HdunfwRBx2S7ztt
RLmNQoQbEBFC8353/ShpcgkqMWVovuf81PaZrZoRrp18UlqO6PxRF5sKPo2/p9Jg4DgIG+LVpaXP
f0Jb4Xr2aWaQ9U84w9HSt+BS8z4qWZshX/dS+Smh/MfEabHOroieSnlFcDDCjpa3A+m2PTspnHYd
chXH8SlIxuvPx7OP8gBdX+Mu2X86+NOSkDf0l99dKalHHiY26+9tJq66sMRWqWnGHSdtz/02xxgz
oMFRQpd5fwwC751oA56y10zKGH17V0WW9z6+8yTBlc0eV2l/NlxFT5MsWSLohWiwX0dF4NHeRFrb
FwCIMMoxOzKl1ItQiMZen3Mao92HHFkJ3JNKYnRlRpKLtUXFtGuNrYZKOJmJwaib2mIln0R0y9uT
Nb9hKJ+vyIFneS/N8nGW7qopmP5cJRVWdVN6K3gJz9vXl8r82msaHFDnRZmSOtTtK8huc8bvNPTr
bx2Lo04DCQXSEs2i/GCPj/xA+Jmhoq+YOvDQrrUzwEbf1do6teyMYLJ2NkB43ewUu6WXli3pTuVm
KJyJuOO9iJu0RXf16GO4sgP005b5x1MR780BKeg8F/avod0gTT5+BN9bsqh4tNe1+mBohkaCMuw1
Ij60VGa9axS7TR2OuQXU0Y1XGoA/75rJzqP8j6oYgQYfjAZY30ehK6AJmEFm9MSPmrkepK2qNNTG
oGuzz0M+WEv7LbS/8/zDE7T6APpmzFr3HvqWwnGPxgvJCs4EYQ58ryPDgx799xIUl480Yk94E7UO
/MMry+9GRsim4az75j6CxYboKgLGhEJuRBtzrQwnjiDH6jyqk8si/dzfS43TJ6+fJSbL78Zyc+E3
7fWGn+FA3s6nERNPMiVUFKpBQMRoT2wSQGBLXvgUFbTaDIgV0PtxKIiVkk4xL++90o8ZEsh57Ige
RTQW2HsVJ9nQY5apBwSaD2MJrVn2LkLoiZZsaB3kJtB4RgHr24b10gwwzjqIFQ3bIB72ibjjaGmR
cV9h85lfIH2UKVIA4uSzDAMi+//4A0uuoXJ1Z9qK9VAagomgphRIvZVMRPJf0OinDgEO2DIkKVuk
IJDVObAxFUKQPa4xtT2+D5RfFZJizM8Ku4+A165rXwdc98W5JIhV2P0ICRmgPHHL1LHyU1p8oZwn
amwaJDFkqp7Wm1Awx77jnQx4P1PG619V+81Hssw/uAKJABEJ6vU51u6uEZu7YneWtQC84l0+iYBB
3qWdGH+19381n0T4NXfXXl/VxBvUPaIekEU4rRf32G/6ung6+6QuRkYIkPeYC3oGK3sonyM4A0Lk
MumWyeaTOeCV/AYmroV7beiYCN3Jh9baedZebehFGC1uAXUe79oRDdCsBdzL6fEa/trxjXPe1YJS
zozB3eByFALYVWqIcPc6WEdL9l2nQaa9MufaP2dFBg/0Iz1WZtFEVEqFMpj6I9Z0R4opRLtAbrg0
XQnAZCe2M7Yh4xsTnsJNDOKugyjWnihZ5DPnfA3FZQ325TSjjpu6MrJ6nQelGgzi8E8SYS2N/tfe
RFHtyMKZ8K+EIIDT7wHd/uW9n8jMsSzs4SYE3U+4SqOMper0rChbnoHKNOYn3dTx2PMhEY3SzEr/
KSFYoJS3ovYpAKIcSuZOlgX83zh5aAKtBLz5kvps3uGvwP7zdaG0ewcaLWbENokvq953i7dJtPyz
pYqYaYZrr8r5ww8IYD4TpETAlGhf9Yhst5ifcJ07j937nm8GSGaTveZjEoxDUEYRMyoPImxGUkRZ
cB3Fd6lJdKqEZ2nOL9JY0ZB1DJgkztDbSmie4R7e3ucsN2IiNHyVlIKIdFZhGYNmfCPYQlC/pY+Z
iEfXkNRC37+YKLRhhF7SPo/5GD+Qld4oxsNt7K7xa6UXsZh0ymJ73f079twcGpfn41azATuA2a4d
8X4znvNTq+ck3AE2YVAlkRLT8CjQaew5s4UNxQyEfERdSY899512qog7QlAHtZm6kiyV1o6nP/s8
C4UE1HoddVeAmk6cuDt3n+7xuzfku8hCwSnabgJZnzurU5FmTY/04wjFg2eaZWu/B5c8/on4euBD
rcVzMx7MMYCd6Pfa0MwE9AHRQGhJHQpxZfcb8XivVkjbZyJIlbIOiJmA8/QUjCf5akSQxBAooGD+
5O6jpFrAqAPtg2g1Fir1ScDw7I4zYh91IdDwiJGjjOVmxK3e/Z+AyVmPBz1j8aGmNw==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	xo9SiCN6kCGEk13zWzeTBqQf7j1sozoPRT/FGqBXYswLKxnb5zEiblQvi21DWK5FgOioaoG+5a1D
3Pp3Hlz9Ff/K4zuPWSyQG/JFxRAJx5Ms6BT2UIjl77HuOo/8IK4Kz6zHDuZP9ZvJRW08cUVr8UjM
eUJVYCaUkXBwxJ64Dka9WmAxqVSfVbsbtzOt9R6S8hHlhKXFdWbKE2opzdS89byyU62rlK6YQddO
yxjR9KKHHewVZo97py1ep2FGqjTb+EploZbkExKGpBFNKHJq174SQhMn+sfda4MMLZHeSauDmOZj
sl9JiVws6VaT+nt/SKfEhp5Npl7yiv6ECA7osE/zpiEtMir7jkFqvzuSnKhOA1XNi4aAeR3Ein16
Uk+dpulPPkSsNu8LwOZM7VtCpNEbo5AyDF73HaH3965sQA/1UQPkXhrau85Bv4IOmYWYOgOT4KbY
Po4am1IY4lFdk0K/Ys7ZY6/NuIPLlrHWWngaUNkCwTb3bs63mNpZPH4SERl+NsMbzCwfh+uni1uv
AAXlK1Dso+/yPcKBOumFfj2Bbq/yuauKmEwf7ZO2Gzq6TEWfm1VPvdU0sNfkUZTrARKm2kwyctdc
nYkAipryIo0UBC5uCr2qUIoy7HWvgpSGn6vzEPpNblvwDncJd+7ToCTe5YK8wfPFR+5lwKMHcvH9
i6p5rUcG04gXcYKwnN4oUUe0our5gb8iq7cUZemBKGsU8/dZRdkxo+7mxairafFEwS4+6xmHTciT
qEYNxJCPzKKPosLNDMm7ouVa5z4PvZ43tQB8qTUY0TkNnGPef3aU9X7mR/yPa8+BUfTDgZXmtQH6
xBWjHpWzQKoSkKYqt6tdauUyyxnGfHotRxTRgrVfGaTcEADU3erNYkAlfb3HH35FneSO+sSdFlW9
0JDYdGoKzMu5Eiu15zuui5UgX5bbVTngFaudCMLUOwKecsYVtBw3xOgRnaqu0XZPxNAIROXe768J
3iGPHx8hYUSKN25R+a04cvj0s+3/cABshN3z3bSUvu+HzRC4OlYk5nTfnvUltO+27Z0f9Uqc1hYd
nfPePa70nyklVueMySBAP0fT7wWA26aGeh61usipTf5KSN373GLp+y4vR32voHgapr0WPsxNTjSB
ltdOqEQPR2ge33dDJ1RVWroD2ZVvxP6zZDHyWcDalz96ZVGTTvcRg92KcGN5tj6jGtfS0CdmNSVB
mlwFnI+72agUDykHuV8/f3+fzKnTHqyc792keoqWtfMdE2rNl4JwlOyTCSuwzLXPo9dUvmG9hi2E
UMiuzUg81CJ84DyTHat0+wmMaSHb1N73JN00Wt84ceM6XeZeZgh22StqqfduGd9p06brHwewpAMP
6OYs1Wn5N83nO/qf5047uKmzB9gBcoOOvjq/pCNkmet46s3hKqfsRCa/KkVCJmXdVWigDKhiFsz9
aD9Qshlkd9eGkmts3hmS7LsGSxiiLffDhMCZcT/IZ51nfkUrtN17yKU1A1GKzpmAocVF9zAiJiKq
g2Qa9l3NCL2QkE2h3rPW6ggd59xvluTljk2Qvz/pJq44QUTYroWQ2vdQkBmIHlsJZESFSEOXycRR
o8cj4ni3PlKdwfcTz8PozQGzDx5Q9I6+rPRke8rtZ1UEupVqFI1/nweQnWu8pmxiSOkggjy9PoDI
TN9aXlfNWmEr4JFnFJSOGJuuzDbmnoECkMPAzGo05unPVDOqq18Z6lJ/vDObqYPAnKjoat9nD/dm
Ae+yuo59x2RgRLPiVCsiVD0Lp93pL5VAg+TJymthwaqzvj3mfPtqbrwL+p2zImaMd4FR1/4hf/NL
MREvH6lcYHwXY9IheX+ugpiflFmO8CAqm+BtQCR6RYYDCF0BkVTo3smvZo8M86yxvnn3E27vLqO+
zHZdoyrURetdaQIaW9/lE6spTZprA8wtfu//mfFnSAR7FDtSoH6E94dtgZ71+P08sjjTmoKHW5li
mhjHuKgugTlHW2UVkoETNmBi2/MuqMbo8barsA4aGdEsGPuVNnnjb3RF6yExIwIGI2IjddtWYESz
thvIjfRG5GV7vjfVXZeUeW7sB68P6/n9LWeTf5FvM8LawZBQTgLM3LkepUhMYD+mcCgsHuTdxz7N
LVMlv0pgQgQFmEEI9ehfdYNpyxNAsyIxFG+PQft71T4HBRWyVzYkwJuGaSn53o+n29Xg7tsGkAPq
ngX4mN95tDwp5LYN32FSp/fYj32ezBdoPhYI1gVytMhjrrcNfdMa/0QcD4B8vV/9e4vmOr7iQzMe
zv5J6y3wcI1TyLtn7LcaVoWC9Sx8OGl5jZqdqIWwr59Ky2YW9rsFZgJm8b0Gf/sIAdez30Cx1OPh
3Rc791jkvRGUrvRnn2O/j4NH2IoiVgHIiYoN6p1XKV7/8Z0lM/jekUed1naSMfkv9L5RXKDfA6Hm
vVP3vpwDvwFuKID4bm4BRgsHs68GQVVG1+KiB2+NH0WevFIKAPmDDw4gSSG/41olMw1UMdK9N3s1
e18hsikMgndEmaTWHJ7OKS5iyADKF6ViXdjdEerhMrPE/MDSjUht1q/6JT3OUABjvdCN0e9Gw7UK
1RLKceO9KVEJKhgz7Ak629z0PPnhFSbyBh6GQHQCk+7OE9pr6bbtYzx2D2bnJT9Z/SsVpY/jrl87
iI8B256zNnuab9NbMvevLZV0+9uqhAFnFRix3Apa+NBGzhBEX8uLq7rNbDw7Jk5KD12KuzpN7+Zg
gDlH/ISYUpstE0lqX8fuglg+VSmFcaW3Fl3Jq0w39KvIqc49+hQT9Xgm6Pfu6fWkRGvWNtkIrGOs
MIM665fQQ8RHAZx+I8ZvKZdjF3SMr7dm28NWNUFumirkMU4IojoIOjQtqrx+bwA5BqVf7klapbTV
3NnwlFvaLsblNquv8cm75FgrCKnEDKWV0m9UoknJJEJUT4BrA3NZoq3jUWxCn4QBzhHZpTfC870i
dNdqv5YCxgxrMj5/Y6b/IEEJdSeJESQR3N2MDOYb0fAjYKqK+Ai+ETF/AOSVCOs8iI/B2T4PlwSr
6hlh1hb3rm6W5L9VltgiU0uKtyKs44y2CokvCVQv0vcr5D2EHAKE8+yX+n2id/yhAHevxKzIVqSz
3ncWB0k/0zJ+IwxlD6u9tlilV3Hf01MobCJ5//cuGjnfo7YEQ6zMP0aUPsW8GQsCAFftTUpsYcqj
J6+KAFt8dyd3ptK4oFc03/M64v1r+oChX32fJ+R1SJ00s9+YN7FDzh0tBowiMEOIpsf0q62o21Gs
/ZiP3ESxSYgIJCDsPs6GRWNMMghUMOXyWUOX3alLBVfBaZjNzivV/HPUD5n2sztywhtp2JFg0jCu
8ziECYZSc5/nLojZPOrx0JEaneX0UdAfT/16cievkDgWmT1br6q6UI8rdtCgdvuCF09rjk/3XnOY
SoctSFbs/fnnwUOakjdgS5EFlRI1jvcNvhF0tG/8+nuDOE/tR0tf0v03Qu4QzOPciRvPKG5dPQzO
xFy+pxkDqHunnXG5eHdjS5mIEdWv8ZZEO+889VI0X846jxvQox+679tC5LDgYMzV9VzxDTtju5NM
DlZYJe4n168lVcjap7aAQ+Ndez9rT0VoFi9+jmXVLKvUe3lT0Tt3PzHormaGqyC2d3l4vbfXC+mX
vD9c+YKNWTlll7Shg0iOTqDb920kFXMHEB0kL5R90CJP3Tdzdu3BFVScvBMadppp7OuhRSboLioZ
eQQ/zapy1519377Lu0/fM+dp5WSBQR4czhmZhThmtGfzH4cqOmDt/uzzvCllFuReiadKFRXyziM9
zRAf64UxWjLeFtcGucwMyjYxDFNuzrWbUZjnMNEkr7GvWM/wPOI1I2OEmJqxCKwjHLncqY1uEcUn
jNAN+c9Rx4iGRqBaR50lOtSNrP1Z9xUoiU5iyLlJGIm9+phiCuOOVFbzxOLTefiAd6XhsZ79W1JJ
czaLJrp8cFBqu9ShddciQcHLIXDDUAEffEGTyt+fjgRs9v22mfCeaIi6Ulddj149JajeNwEPgtGj
ienCmRdUZ3OUpH3IdViMhL6O/X2VN8QbUs44GBU1pCKVX18PNqEW9hhfKqc3i1ZpZ8xRYgGmlbYJ
Plpjmk496vMiAJsb/Z/qs4bEtQILG7Gz2KuB7eeMnUBIM96dA5ys7lsrqsQTXE4SKMPs9ZM9ID0F
0K6LWG+bBApz8eDmU2txXL+MtSt9fQiHu+b3go5aI2ncdgqihaV/IhJ0zri71r7S8VA9ieh5J4TL
kjlP3MPtT2ZjaVemcABj1A8703monRIc5H2b7qpg+BSZyeEghKyKc94iXx6ec52H3QCVnRGNSfs6
eRFrt9RAmuaLQ8tPL0fAGYiF4eqoNI29ycqKWYcgmrJAit66Mm91vI0QXGZ0/MUokkB8rlT3MrkQ
Z02RVkWEp0OqaD6VDtoCrLP3/hcDagUwup31EgwTJDwTT/pKzHt82EgFfiVqTJkjIJPhbBuFEuZq
GZh0i+XAacgIgbd/mRkBB48qssUkSXvv/VwV0wgNvblCjzeffyRB1MduvU78Zk6DlhmZqjrxiIy7
qUWrO825KXLCx7lvG5giU+F3Jal3CyrlJHlw9jrKDYoV2fAdQWfIrOpMd8YxNJttGsfa7ydRCPIn
c37X02MCeeRbri/BTnopL2b9fCjEMHrbVWUPcTtCJE8KFtcT1prmU/9KGqJ472MdbX33bRahE6Wz
SqPYGyLVj3pnU06rKevuA0i+mUKLDGMFSD7eV+C+n+KXoQJGvBPy7y//R8XcXkoWGHUQxiMsdUac
zv0QDTpr2V6D0NMYUvb0G+v5mWAbghXZGA1unXHavb67FnE720av4veIISy02H5l0yQhz5D8Cd+q
nfHnOtOyzp23ejxmLxXRGXqwFF3P93TgZQ3AFK+/im9FlXO2+3sJYgdomb0r4KDySDUmaj2KHF3g
B8l+1o7HRfykRj7b9/HERguF99jbppFLMynv+8faIFM2rHz6Z6hG3tmrGHajmhdy5tBkbL2kr3x0
Z/TWE0PmHD+pvoQT3NrStcLET4SNJU3nTWGildnoNkaAt2USTuM79JNEEJkGpAa5+q5Hn+vd88qd
UELiLhGrW8/4uW8sbA0/EwHWCZd53btqA4XIFCIu5RKfK/z3T8t5Px2dl3XtrIafgFFpGbm3UGuU
EjpMq/IrG6kFprd9Ywd0lWHk7lPyeVYN75q0jTDMaSekbpctQgzJhsOsedfL8F/fN3xGQVlWesTp
QBvuqbJPIaIPezyV/Q6TzChEV3tK4Rcu55PyoXJo4FyKavWdKwGOcsmtScYb4ZXA4W5718QteNLO
PyoPZxpiIRt3zd4UZLQRPdGzba2ThW60pJFVGp42mYdA9/61B00cULi2y74zszc4/bZZW6FbUSnb
L/UKSEZieEZ5Gm+rvXvVlYlclYYnMERA5VdF2KkmOsrxVC3VmMLh5BxVjmF0pXpc5w==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	QHVPOg3dHoZxD3oSD0h7tQJGdIKQAvdnw5PrfdSmRcf6jAKPsn2u3fEPRzFQ6lGrvKLy7xhXdC1m
WZtqV2NzjrCm92lmjMuAV/t2H7qAFSP9uXKQES93P9ddbi80RgIUrF+H51hMudM4/OOF1HnoVWJ2
ba/WNCVSIJh95Ch6SHK8eCnnht8aHmHsiFtY16LHqKbY2OsYb/og/Wcg/p3nuCKKBjBY99PSBohc
VM4CUqMNeG6nQZNQinUZi/f4+3mk3pHaX4HbEHzuLXj5xnD1OCIG1bdp10FBLcjqOkpqqA6y3gt1
syitx1Ptqcc64zqoOXXvnT4qc9Gcvb53gDJUXEnnp8YgZ5farPoAsYbSgKhKGT1HUZiMp176rmEG
MdK26oPSHKPV5rc/nbeqtoBD75RqgEzsyUQti4kPQ9cCTmNUhMYVbjNhmIqAFpDrtO2CHCeEvBjn
99zYQSCR3yV6cwa1aORZGlquxKCfAlOUkiMswKwXKoY2paXAesK/rcbtoFZICCNaQft+Uip7Hc9t
EndzR4EMTAVeazCMrdqyIgwTCPC/L2UtsI01IgLgUWIn7/FPqgdvrnV/G7Vn6zt/tj8IzeMF+bf6
uRMCDZ9V5ifwE9Ew6dfeX29jrpsA312aKwA6Plma/F/WMZOYlet4OXPYowGp60L12w8iP+fWMTHX
Dd06StE9eg6xcnmuWSozav0wg6/9yLazp2Hm2D57tuDFGDLiNZI5ba2SFigACcnqtwLhRlERgNgl
JvVBTHrJ4huqfSnh80QaBd6/YsItQvw1yhKxjD7fhRWhJTCUuExAF+QV0PONyoVuXF0rZ3CtoWe3
NXp0yXW25ja8gBeFH4Fr2E/lLVVJUxLBOwuoEpkM4Ac/uecmk9OJy/ZAJ+jdHZglPHvq3ePf+xSL
Yqs6xBAHXS6eGDs5JdU4xlO9xpadQAVWbwG6BU76+wWVlkK0p83Ar5Lf72nHopZ2sLVqWFKVBOke
Y79KWKAnaEQF8Aj0/j5BWjmN5qytvCIkCGj2pxbutVMCNF5KpMACiSHVY3e7osrVSyMTbcNEJBGg
zmqrtk/zd1f6fgOD/pi0v7TnxDjxjNxc9d2iWmUB2VmyTRmHfO6mNy4a9ax0j/LpkWI4kRl7Nddj
Sg+stdEiP/kt5M03J9cjZTx37M+TQ0WP8uNTswJ9BSzdVS+jCJMP6p5ri7khmFDI2XLbdZ5YCc/y
LwqQU8d+zScZH5fEFr37sNIzmtKOOjQRn30/wWR2MOSagLX0ZxD82neeK4+9hRVfQ98nQELDmDoP
1ih68Fq9RmDUgGF5ewbWIqLkjrS7tfa8FR4altI+j7Ry+H8lIcJJ9wyDc0U71v1g55LjL9tYZuYj
c6Vbpz+rZ4ATPq5VI92uOXnENO57p1mj3pGm6iVeM0yqyCyy1qsM1TyFI8MqVfJlM6aun8ZDjqGx
emZGmYh3NSHQ1yIvtc8jMXviflhq4aY79Gqu79Pg89yL/1zKjQTDjAusFnXH6BgK4FJBPQJi5zAB
ufH9PkdkQfXtt1p4Z7DzvufjrPPwTmAAvUr0zhB3pItDIGvXh5mHLO3SRDwSfTqAb9b5/T5/8xtS
s4SyCjnsqF8ZKVayXJ6vEc0cM+Cdtt/IC/OU61mpVDGpYS/xfk1vLbDLw795aeNSM402CA3Xz9NX
7vgAeyoNIzqBFxeKY9/OIQmOB0V54SAvjqjTnF+5SxRObl9ubGdT6zz+c1VqYc2hThhvuZIrda9J
UXc9HEcutKaSSI7oqU5Eujh7oWYZYJYRH6XY2NDZt1RZhLLaN+1nLIStvnpYQKUIvfadGNE9cUkq
J5yFjSkLf9/+PDXDxCirdSPF0nm99QCurUMpwmj+Us8cJRautovybd9X0kJ8O0gZleB4gzTji1s8
w9qNj6AI+tpH0eO+IzHUa/e6IuPOVyhXG8Ou21P+NkAId2P6e7USrY2392nlub4OTuwl3g3x2iHg
bItf0tgNnCruiJVGOrbL2mXU1RnXjjr0iIyPn+1yQ4WMwYFP6c/penFUiUN95N/Pq0YoSAqrGoFg
YtLap37gd8d/NF1Jsd3V9NKXUMjwU9iCwq6V+kX5jmquhULJ8/cu+XRFzsiYt3prBsGcoFmWl2wx
4hkUeK+Ae6SYYPhW2mAn6cDrQsLbJ6G9Z+j+Vjql0/xuyqQCfSez+qt3KISZ7VQEM5oYbZ0VQSeJ
PZch5Fai4zw8A8vPM+MOCbJ+hrNWMmVPkhOAhzNHIW7rdkZ8mrbFzaTCkfIw1hEt4+SSRcdCyT8g
+Jb3+eLruIhY8kEr/TeiTlbXSIyIQGU6yuNr+9eAWbsU+FcRGb8w5QhoJpprzHFvW0Te54s4wR0r
nTuLzbtyLMBOBfrKMQC+gCtHve/EPzkkcESxCFyRYiDlFmB4RaS/jtVcW+jFC1QSBEm0hRHJbw2G
SJrhF5QQ4uq7vcfPWMSKauJs+QIuoHejvzCp6nY1YwE+VpXuQnhHEhSe16eprfdLutT+8kZImuTa
6/nkyy3mEqtkjZfqiZOxpfPaUpGmsGxm7/Wdh0IqP+rz3qLM1m/yL0e0zt6IzHkGP+Ytx47THPHO
NL8v6KwWg98CgUUP+84YG9Qk52kxrdYAmWurNms9sTQ2fhaQHAnl/zMOoh9wavU3V3a1aspbNz69
9hF3pRYruToL45epM580P5LZZ0ZH7dmnSak1W1mqxxQI6XFK+yrgWWUzVn5ghEu17vy4W7r1Qgpu
USc8ox0phiELfEBkH6+eN7ybJ1z7sT5I3zpQPQ8NJzhwPVrqdR4btPFauqt1nqsUIVraXokJGSBo
jTrKHWl5o5f9E69ZkO8SSH0jitrPhXULpKKD6Xpy8Mp5LKdvMkD7KshGMWT1eAMlPbgw8qiYKUuv
em5PmCwINPl1dCtQGeJJtZWDvYxR77n2aUjwkGkOmzzaszrHI6ZFdZCAhimkzmtuIWSa9S38+EQ8
cYRXCBzbKglMW/1w1Glotb5PBcJySzJfrKXeL+6sd0BtFHMfBf+WWzYJ1NU7n4rQ+A3PsXQvjTtV
ju+vOwvKcSmONCuS1a6tPkz8mRard/xi/HSD5LJL31q7M1+gvWAmgkRe02Yfc+sTc4YGz6dkY/WU
8DWfCWjpln5uAU8F7pmjAIIo0Wbtn0Fy6nYjfJyJyEp7ZG6wnRtiXg8cV638K40wu/IMBi0xvCtI
u0Rz+rrTYwYGe9a+EglyrK+zwFwx4b6TNbX28+v0LDmzSp3Lu/WoOTTjK6YNFmOdD5LzqGzyngBj
bCFk81zyEjqoIlo2P9OMsT+vwcFlBB/qNBQ4zhhV359I/wrVxsRdpvlGxJ6lrTOacTkIXLEPZe3T
RP486shbGR+MqmV9LDDcxbZqqsCsifNnLWBq2TI0uEDypVFPBGFqzcFYf+OvsFcuLbkzQPJ2fmLz
73oUtstRrek3BkDJi3Ee2xKCqQjD8hkVThGg4oZt67Pa8Azevcav5e8DhgvIfa/B0MtLU2xUnXOV
WpZ+tzZ47UwzYxd4gfcogyC9cRVp8VUbE4lOGcDI2zcoZ5Sg8rYPoJ8dE8nYrznPgPmU4JSWXm3n
w6aqppU2DSTaGJvPWN4nAs/jzXhmxE0Hhlo84WjNb08MeN4Av4ofMUqVC+1GRzMxhB1Ao7trG4EJ
EaSU81YKNAPm7PozO+JkhEXC/t6pFtobFHSf3+1AnVgbnqTfcroWH6FW7mYiAkAj4Du3pO+bndjx
ULkqgmHdiDbf+vU5KMJGvK/Xz3nASoIluioRviHF9ebR53O1tE09uoAA5LAUxGEFskwN8j2nTnbo
YpUHMxmjaYjJ4LGdlE50+5AmK1emMf3EJtO7MwKFRv9v6/hcM2JWz4DpSYCED7m8FH17RILaDKSy
7uYNWfGwvbcrQUwy+WS1Hsu+EWEvuiH3XWkDZp9tBdHGV+Bu6CKTv9kVDLQDCPRTKvj1Cng11arP
roTwhmPCWC/szFSBiFff1RQCGiubNP4SoYGqF9SqOLS2vh/GvLdZZ2KanL2N+flRGX2Sho6doCvR
P6QvXZt1SxavDGdY9P16JKfzBKrWvfya7xJaXbwRUiW4XPFbYpphcqJwec56JOmJPGtsmx7p5lsv
L7AZ+1B+mxZbKK3Vqv6nHfOkPvzs8zQ7+bvwHVFr5ThGstE8bI79CsiAaGXOalW8mSoOGDnvKwE2
5bWBzYm4UOI05Y7xnabPFGA8tiqGv/v7dIlS1sWic1Fr3I5IGist40EN7IrQqiBDcW9rXwonKZar
jycE7ZKMUuAnXDNCm+OL0vZB2AcTQy0LVwUU4VJIMG+nSzXEfn9jUuqJYCTPXwE44rsdXS3lVFy8
9L2uCNpquV2/PzUY/TR0cAh0JWaMQOrLqcpIS/GoHh3q0puNEEa+/+rXQXId6c/jXeh0LpY5rT6d
FvEok/nPM8MmquuMeFmPLdWdIWRZYtiTANLOLeL7xoBqkA3aFtYMnaRNC9+orvbhgddndFSr/8l7
mq1NzzpN3C0Y7pMBTiKohJzpNxWDaRBcYQo4rlka03CWQA1MW3odJQTtmNIehWXHQ4WouyKOPKj9
+PaUlhsT+jA74CdWFeJAMGfCdD5BMQeJaVHr8mVf04CZUspFt6t608oPA7My6xAxI3aJxl2d58sc
KTaV4zvPkw3CDr073C1yl142r/mIHhjd4/fSni2pPKzBugB5UQgsarqW7EABZeV4sHvn3new+1Oq
tfPZjqUgiDRPeh91P8Ng9ZTDtOrpj1jeW0DqufaE61GddYjoKRwRbfluB7zw+YGgxFOBVNi7d8LJ
ivCFRnQxucUfIwK7wniBMtrK1CdTM72ln6/nJjBJlrK+QSBX9EaNob0h8CinDdzGdoJtum1qpGe/
1TcENg+8cvggIrTQ5+5eyL7EvOUDR5krXj7A0E+sUd/Xf2+S2oWXBa+majZaVmmaXXsDjH2mqe5Z
c52IrupiIqXVLhoHPyyA+Xwjpsu084wfV54JWRt6tHvW9VzRNuvXXkFXQAzaXjWAyowLE7FXryjP
7LRYxI2vRmrDvc14WOUgKaGP+EXWkEr9h6VSZuKJaDqqo6BbR2Si4NjPub3sxBCgCZZ9S5w/PkYS
JjF5cSW0jrIdbA9lXXRCU0+oP24H/8YDebY/hNb94XsbPysOsw585X5tI4pJW/hpsVypo9D1uZJA
VoSVuzPN+9bYZNbcVs7r83uOmaSHN35WthgPzvpSDtKqB9maDoiUo2SGQaNi9R0x8R3iqVn3E0nY
OzipeiY09BGon1KH+VmpAfLW9pmoBTVZa62gUWQ09q7JjvZCuqVRwasIfIh3eetpy8Wxu3szPMyx
05wnxBZb5WdnT3i9g96clebo4wIsk3WoqTc2Dcto6tY7/YD1IVm33d8hP2oE+p3mqZniFbNcw3VY
Y2VfFjIXe0asyo9UF+vx4CcgS9RpLEDahkmxCTiANkXFoX1JGw0SW1xpxXMZpQ6AqQ==
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
	<![CDATA[
	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
	]]>
</i:pgf>
</svg>



<h2>Compositions By Date</h2>
<br>

<$list filter="[tag[composition]each[date]sort[date]]">
<span class="bigbold">{{!!date}}</span><$appear show=" -- ">
<$list filter="[tag[composition]date{!!date}]">
<$link><<currentTiddler>></$link>, 
</$list>
</$appear>


</$list>








<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>





















































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>



<$select tiddler='$:/Select a Date'>
<$list filter='[tag[date]]'>
<option><$view field='title'/></option>
</$list>
</$select>

{{$:/Select a Date}}

<$transclude tiddler={{$:/Select a Date}}/>






















<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>




























































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>


























[[Map Tiddler]]
<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>

















<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
<br>^^[[Map Tiddler]]^^
</$list>




































































































































































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
</$list>









<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
</$list>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><div class="tc-site-subtitle" style="box-sizing: border-box; color: rgb(172, 172, 172); font-family: -apple-system, system-ui, &quot;Segoe UI&quot;, Helvetica, Arial, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(244, 244, 244); text-decoration-style: initial; text-decoration-color: initial;"><br class="Apple-interchange-newline">A Catalogue of Mozart's music</div><p style="box-sizing: border-box; color: rgb(172, 172, 172); font-family: -apple-system, system-ui, &quot;Segoe UI&quot;, Helvetica, Arial, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(244, 244, 244); text-decoration-style: initial; text-decoration-color: initial;"><div class="tc-page-controls" style="box-sizing: border-box; margin-top: 14px; font-size: 1.5em;"><span class=" tc-reveal" style="box-sizing: border-box;"><button class="tc-btn-invisible tc-btn-%24%3A%2Fcore%2Fui%2FButtons%2Fnew-tiddler" title="Create a new tiddler" aria-label="new tiddler" style="box-sizing: border-box; color: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.5em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none;"><svg class="tc-image-new-button tc-image-button" viewBox="0 0 128 128" width="22pt" height="22pt"><g fill-rule="evenodd"><path d="M56,72 L8.00697327,72 C3.59075293,72 0,68.418278 0,64 C0,59.5907123 3.58484404,56 8.00697327,56 L56,56 L56,8.00697327 C56,3.59075293 59.581722,0 64,0 C68.4092877,0 72,3.58484404 72,8.00697327 L72,56 L119.993027,56 C124.409247,56 128,59.581722 128,64 C128,68.4092877 124.415156,72 119.993027,72 L72,72 L72,119.993027 C72,124.409247 68.418278,128 64,128 C59.5907123,128 56,124.415156 56,119.993027 L56,72 L56,72 Z"></path></g></svg></button><span> </span></span><span class=" tc-reveal" style="box-sizing: border-box;"><button class="tc-btn-invisible tc-btn-%24%3A%2Fcore%2Fui%2FButtons%2Fcontrol-panel " title="Open control panel" aria-label="control panel" style="box-sizing: border-box; color: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.5em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none;"><svg class="tc-image-options-button tc-image-button" width="22pt" height="22pt" viewBox="0 0 128 128"><g fill-rule="evenodd"><path d="M110.48779,76.0002544 C109.354214,80.4045063 107.611262,84.5641217 105.354171,88.3838625 L105.354171,88.3838625 L112.07833,95.1080219 C115.20107,98.2307613 115.210098,103.299824 112.089164,106.420759 L106.420504,112.089418 C103.301049,115.208874 98.2346851,115.205502 95.1077675,112.078585 L88.3836082,105.354425 C84.5638673,107.611516 80.4042519,109.354468 76,110.488045 L76,110.488045 L76,119.993281 C76,124.409501 72.4220153,128.000254 68.0083475,128.000254 L59.9916525,128.000254 C55.5800761,128.000254 52,124.41541 52,119.993281 L52,110.488045 C47.5957481,109.354468 43.4361327,107.611516 39.6163918,105.354425 L32.8922325,112.078585 C29.7694931,115.201324 24.7004301,115.210353 21.5794957,112.089418 L15.9108363,106.420759 C12.7913807,103.301303 12.7947522,98.2349395 15.9216697,95.1080219 L22.6458291,88.3838625 C20.3887383,84.5641217 18.6457859,80.4045063 17.5122098,76.0002544 L8.00697327,76.0002544 C3.59075293,76.0002544 2.19088375e-16,72.4222697 4.89347582e-16,68.0086019 L9.80228577e-16,59.9919069 C1.25035972e-15,55.5803305 3.58484404,52.0002544 8.00697327,52.0002544 L17.5122098,52.0002544 C18.6457859,47.5960025 20.3887383,43.4363871 22.6458291,39.6166462 L15.9216697,32.8924868 C12.7989304,29.7697475 12.7899019,24.7006845 15.9108363,21.5797501 L21.5794957,15.9110907 C24.6989513,12.7916351 29.7653149,12.7950065 32.8922325,15.9219241 L39.6163918,22.6460835 C43.4361327,20.3889927 47.5957481,18.6460403 52,17.5124642 L52,8.00722764 C52,3.5910073 55.5779847,0.000254375069 59.9916525,0.000254375069 L68.0083475,0.000254375069 C72.4199239,0.000254375069 76,3.58509841 76,8.00722764 L76,17.5124642 C80.4042519,18.6460403 84.5638673,20.3889927 88.3836082,22.6460835 L95.1077675,15.9219241 C98.2305069,12.7991848 103.29957,12.7901562 106.420504,15.9110907 L112.089164,21.5797501 C115.208619,24.6992057 115.205248,29.7655693 112.07833,32.8924868 L105.354171,39.6166462 L105.354171,39.6166462 C107.611262,43.4363871 109.354214,47.5960025 110.48779,52.0002544 L119.993027,52.0002544 C124.409247,52.0002544 128,55.5782391 128,59.9919069 L128,68.0086019 C128,72.4201783 124.415156,76.0002544 119.993027,76.0002544 L110.48779,76.0002544 L110.48779,76.0002544 Z M64,96.0002544 C81.673112,96.0002544 96,81.6733664 96,64.0002544 C96,46.3271424 81.673112,32.0002544 64,32.0002544 C46.326888,32.0002544 32,46.3271424 32,64.0002544 C32,81.6733664 46.326888,96.0002544 64,96.0002544 Z"></path></g></svg></button><span> </span></span><span class=" tc-reveal" style="box-sizing: border-box;"><button class="tc-btn-invisible tc-btn-%24%3A%2Fcore%2Fui%2FButtons%2Fsave-wiki" title="Save changes" aria-label="save changes" style="box-sizing: border-box; color: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.5em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none;"><span class="tc-dirty-indicator" style="box-sizing: border-box; fill: rgb(255, 0, 0); color: rgb(255, 0, 0);"><svg class="tc-image-save-button tc-image-button" viewBox="0 0 128 128" width="22pt" height="22pt"><g fill-rule="evenodd"><path d="M120.78304,34.329058 C125.424287,43.1924006 128.049406,53.2778608 128.049406,63.9764502 C128.049406,99.3226742 99.3956295,127.97645 64.0494055,127.97645 C28.7031816,127.97645 0.0494055385,99.3226742 0.0494055385,63.9764502 C0.0494055385,28.6302262 28.7031816,-0.0235498012 64.0494055,-0.0235498012 C82.8568763,-0.0235498012 99.769563,8.08898558 111.479045,21.0056358 L114.159581,18.3250998 C117.289194,15.1954866 122.356036,15.1939641 125.480231,18.3181584 C128.598068,21.4359957 128.601317,26.5107804 125.473289,29.6388083 L120.78304,34.329058 Z M108.72451,46.3875877 C110.870571,51.8341374 112.049406,57.767628 112.049406,63.9764502 C112.049406,90.4861182 90.5590735,111.97645 64.0494055,111.97645 C37.5397375,111.97645 16.0494055,90.4861182 16.0494055,63.9764502 C16.0494055,37.4667822 37.5397375,15.9764502 64.0494055,15.9764502 C78.438886,15.9764502 91.3495036,22.308215 100.147097,32.3375836 L58.9411255,73.5435552 L41.975581,56.5780107 C38.8486152,53.4510448 33.7746915,53.4551552 30.6568542,56.5729924 C27.5326599,59.6971868 27.5372202,64.7670668 30.6618725,67.8917192 L53.279253,90.5090997 C54.8435723,92.073419 56.8951519,92.8541315 58.9380216,92.8558261 C60.987971,92.8559239 63.0389578,92.0731398 64.6049211,90.5071765 L108.72451,46.3875877 Z"></path></g></svg></span></button></span></div></p><div class="tc-sidebar-lists" style="box-sizing: border-box; color: rgb(172, 172, 172); font-family: -apple-system, system-ui, &quot;Segoe UI&quot;, Helvetica, Arial, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(244, 244, 244); text-decoration-style: initial; text-decoration-color: initial;"><p style="box-sizing: border-box; margin-top: 3px; margin-bottom: 3px;"><div class="tc-search" style="box-sizing: border-box;"><input type="search" class="tc-popup-handle" style="box-sizing: border-box; color: rgb(51, 51, 51); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: normal; font-family: inherit; margin: 0px; -webkit-appearance: textfield; background: rgb(255, 255, 255);"><span> </span><span class=" tc-reveal" style="box-sizing: border-box;"><button class="tc-btn-invisible" title="Advanced search" aria-label="advanced search" style="box-sizing: border-box; color: rgb(51, 51, 51); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none; fill: rgb(51, 51, 51);"><svg class="tc-image-advanced-search-button tc-image-button" width="22pt" height="22pt" viewBox="0 0 128 128"><g fill-rule="evenodd"><path d="M74.5651535,87.9848361 C66.9581537,93.0488876 57.8237115,96 48,96 C21.490332,96 0,74.509668 0,48 C0,21.490332 21.490332,0 48,0 C74.509668,0 96,21.490332 96,48 C96,57.8541369 93.0305793,67.0147285 87.9377231,74.6357895 L122.284919,108.982985 C125.978897,112.676963 125.973757,118.65366 122.284271,122.343146 C118.593975,126.033442 112.613238,126.032921 108.92411,122.343793 L74.5651535,87.9848361 Z M48,80 C65.673112,80 80,65.673112 80,48 C80,30.326888 65.673112,16 48,16 C30.326888,16 16,30.326888 16,48 C16,65.673112 30.326888,80 48,80 Z"></path><circle cx="48" cy="48" r="8"></circle><circle cx="28" cy="48" r="8"></circle><circle cx="68" cy="48" r="8"></circle></g></svg></button></span></div></p><p style="box-sizing: border-box; margin-top: 3px; margin-bottom: 3px;"><div class="tc-tab-set " style="box-sizing: border-box;"><div class="tc-tab-buttons " style="box-sizing: border-box; font-size: 0.85em; padding-top: 1em; margin-bottom: -1px;"><button class=" tc-tab-selected" style="box-sizing: border-box; color: rgb(102, 102, 102); font-style: inherit; font-variant: inherit; font-weight: 300; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.3em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; fill: rgb(51, 51, 51); padding: 3px 5px; border-bottom: none; border-image: initial; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(244, 244, 244); border-left: 1px solid rgb(216, 216, 216); border-top: 1px solid rgb(216, 216, 216); border-right: 1px solid rgb(216, 216, 216); border-radius: 2px 2px 0px 0px;">Open</button><button class="" style="box-sizing: border-box; color: rgb(102, 102, 102); font-style: inherit; font-variant: inherit; font-weight: 300; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.3em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; fill: rgb(51, 51, 51); padding: 3px 5px; border-bottom: none; border-image: initial; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(224, 224, 224); border-left: 1px solid rgb(204, 204, 204); border-top: 1px solid rgb(204, 204, 204); border-right: 1px solid rgb(204, 204, 204); border-radius: 2px 2px 0px 0px;">Recent</button><button class="" style="box-sizing: border-box; color: rgb(102, 102, 102); font-style: inherit; font-variant: inherit; font-weight: 300; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.3em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; fill: rgb(51, 51, 51); padding: 3px 5px; border-bottom: none; border-image: initial; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(224, 224, 224); border-left: 1px solid rgb(204, 204, 204); border-top: 1px solid rgb(204, 204, 204); border-right: 1px solid rgb(204, 204, 204); border-radius: 2px 2px 0px 0px;">Tools</button><button class="" style="box-sizing: border-box; color: rgb(102, 102, 102); font-style: inherit; font-variant: inherit; font-weight: 300; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px 0.3em 0px 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; fill: rgb(51, 51, 51); padding: 3px 5px; border-bottom: none; border-image: initial; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(224, 224, 224); border-left: 1px solid rgb(204, 204, 204); border-top: 1px solid rgb(204, 204, 204); border-right: 1px solid rgb(204, 204, 204); border-radius: 2px 2px 0px 0px;">More</button></div><div class="tc-tab-divider " style="box-sizing: border-box; border-top: none; height: 1px; background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 100%);"></div><div class="tc-tab-content " style="box-sizing: border-box; margin-top: 14px;"><div class=" tc-reveal" style="box-sizing: border-box;"><p style="box-sizing: border-box; margin-top: 3px; margin-bottom: 3px;"><div style="box-sizing: border-box; position: relative;"><span class=" tc-droppable" style="box-sizing: border-box;"><div style="box-sizing: border-box;"><button class="tc-btn-invisible tc-btn-mini" title="Close this tiddler" aria-label="close" style="box-sizing: border-box; color: rgb(192, 192, 192); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none; fill: rgb(51, 51, 51);">×</button><span> </span><a class="tc-tiddlylink tc-tiddlylink-resolves" href="http://sunypoly-dylan-wamozart.tiddlyspot.com/#Draft%20of%20'New%20Tiddler'" style="box-sizing: border-box; background: transparent; text-decoration: none; font-weight: 500; color: rgb(153, 153, 153); user-select: inherit;">Draft of 'New Tiddler'</a></div></span></div><span class=" tc-droppable" style="box-sizing: border-box;"><button class="tc-btn-invisible tc-btn-mini" style="box-sizing: border-box; color: rgb(192, 192, 192); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: 1.2; font-family: inherit; margin: 0px; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; padding: 0px; background: none; border: none; fill: rgb(51, 51, 51);">close all</button></span></p></div></div></div></p></div>
about:blank
about:blank
https://github.com/kixam/TW5-visjsTimeline





<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
</$list>


<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
</$list>

















































<$list filter="[is[current]tag[location]]">
<$list filter="[tag[composition]location{!!title}]">
<$link><<currentTiddler>></$link>, 
</$list>
<hr>^^[[Location Template]]^^
</$list>